From: martyntaylor mtaylor@redhat.com
--- src/app/models/quota.rb | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/app/models/quota.rb b/src/app/models/quota.rb index ad35076..83c20c4 100644 --- a/src/app/models/quota.rb +++ b/src/app/models/quota.rb @@ -25,8 +25,17 @@ class Quota < ActiveRecord::Base has_one :cloud_account has_one :user
- validates_numericality_of :maximum_total_instances, :greater_than_or_equal_to => 0, :allow_nil => true - validates_numericality_of :maximum_running_instances, :greater_than_or_equal_to => 0, :allow_nil => true + validates_numericality_of :maximum_total_instances, + :greater_than_or_equal_to => 0, + :less_than_or_equal_to => 2147483647, + :integer_only => true, + :allow_nil => true + + validates_numericality_of :maximum_running_instances, + :greater_than_or_equal_to => 0, + :less_than_or_equal_to => 2147483647, + :integer_only => true, + :allow_nil => true
QuotaResource = Struct.new(:name, :used, :max, :available, :unit)
From: martyntaylor mtaylor@redhat.com
--- src/app/controllers/quota_controller.rb | 4 +++- src/app/views/provider/accounts.haml | 1 + src/app/views/quota/edit.haml | 10 +++------- src/app/views/users/_form.haml | 1 + 4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/app/controllers/quota_controller.rb b/src/app/controllers/quota_controller.rb index 0cc1e2f..04537ac 100644 --- a/src/app/controllers/quota_controller.rb +++ b/src/app/controllers/quota_controller.rb @@ -47,11 +47,13 @@ class QuotaController < ApplicationController require_privilege(Privilege::QUOTA_MODIFY, @parent)
@quota = @parent.quota + @name = get_parent_name(@parent, @parent_type) if @quota.update_attributes(params[:quota]) flash[:notice] = "Quota updated!" redirect_to :action => 'show', :id => @parent, :parent_type => @parent_type else - render :action => :edit + flash[:notice] = "Could not update quota, please check you have entered valid values" + render :action => "edit" end end
diff --git a/src/app/views/provider/accounts.haml b/src/app/views/provider/accounts.haml index 509e727..87d85f1 100644 --- a/src/app/views/provider/accounts.haml +++ b/src/app/views/provider/accounts.haml @@ -33,6 +33,7 @@ = text_field cloud_account_id, :label, :title => t('.account_name'), :value => acct.label, :disabled => disabled, :class => "grid_4 alpha" = text_field cloud_account_id, :username, :title => t('.access_key'), :value => acct.username, :disabled => disabled, :class => "grid_3" = password_field cloud_account_id, :password, :title => t('.secret_access_key'), :disabled => disabled, :class => "grid_3" + = error_message_on :maximum_running_instances, 'Maximum Running Instances ' = text_field "quota[#{acct.id}]", :maximum_running_instances, :title => t('.quota_instances'), :value => (acct.quota.maximum_running_instances.nil? ? "unlimited" : acct.quota.maximum_running_instances), :disabled => disabled, :id => "quota_instances#{acct.id}", :class => "grid_3 omega" %fieldset.nomargin.clearfix .grid_3.prefix_10.alpha.omega diff --git a/src/app/views/quota/edit.haml b/src/app/views/quota/edit.haml index cb985b9..87ab25d 100644 --- a/src/app/views/quota/edit.haml +++ b/src/app/views/quota/edit.haml @@ -1,17 +1,13 @@ .dcloud_form - = error_messages_for @parent_type - = error_messages_for 'quota' %h2 Edit Quota for #{@parent_type + ": " + @name} %br/ - - form_tag :action => 'update' do + - form_for @quota, :url => {:controller => :quota, :action => "update", :parent_type => @parent_type}, :class => "dcloud_form" do |f| = hidden_field_tag 'id', @parent.id = hidden_field_tag 'parent_type', @parent_type %ul %li %label Max Running Instances - = text_field :quota, :maximum_running_instances - %li - %label Max Total Instances - = text_field :quota, :maximum_total_instances + = f.error_message_on :maximum_running_instances, 'maximum_running_instances' + = f.text_field :maximum_running_instances = submit_tag "Save", :class => "submit" diff --git a/src/app/views/users/_form.haml b/src/app/views/users/_form.haml index bb3c0c2..1e5dc59 100644 --- a/src/app/views/users/_form.haml +++ b/src/app/views/users/_form.haml @@ -35,3 +35,4 @@ = quota_form.label :maximum_running_instances, t(:maximum_running_instances), :class => "alpha grid_3" = quota_form.text_field :maximum_running_instances, :class => "grid_5" (instances) + = quota_form.error_message_on :maximum_running_instances, 'Maximum Running Instances ' \ No newline at end of file
mtaylor@redhat.com wrote:
From: martyntaylor mtaylor@redhat.com
src/app/controllers/quota_controller.rb | 4 +++- src/app/views/provider/accounts.haml | 1 + src/app/views/quota/edit.haml | 10 +++------- src/app/views/users/_form.haml | 1 + 4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/app/controllers/quota_controller.rb b/src/app/controllers/quota_controller.rb index 0cc1e2f..04537ac 100644 --- a/src/app/controllers/quota_controller.rb +++ b/src/app/controllers/quota_controller.rb @@ -47,11 +47,13 @@ class QuotaController < ApplicationController require_privilege(Privilege::QUOTA_MODIFY, @parent)
@quota = @parent.quota
- @name = get_parent_name(@parent, @parent_type) if @quota.update_attributes(params[:quota]) flash[:notice] = "Quota updated!" redirect_to :action => 'show', :id => @parent, :parent_type => @parent_type else
render :action => :edit
flash[:notice] = "Could not update quota, please check you have entered valid values"
end endrender :action => "edit"
diff --git a/src/app/views/provider/accounts.haml b/src/app/views/provider/accounts.haml index 509e727..87d85f1 100644 --- a/src/app/views/provider/accounts.haml +++ b/src/app/views/provider/accounts.haml @@ -33,6 +33,7 @@ = text_field cloud_account_id, :label, :title => t('.account_name'), :value => acct.label, :disabled => disabled, :class => "grid_4 alpha" = text_field cloud_account_id, :username, :title => t('.access_key'), :value => acct.username, :disabled => disabled, :class => "grid_3" = password_field cloud_account_id, :password, :title => t('.secret_access_key'), :disabled => disabled, :class => "grid_3"
= error_message_on :maximum_running_instances, 'Maximum Running Instances ' = text_field "quota[#{acct.id}]", :maximum_running_instances, :title => t('.quota_instances'), :value => (acct.quota.maximum_running_instances.nil? ? "unlimited" : acct.quota.maximum_running_instances), :disabled => disabled, :id => "quota_instances#{acct.id}", :class => "grid_3 omega" %fieldset.nomargin.clearfix .grid_3.prefix_10.alpha.omega
diff --git a/src/app/views/quota/edit.haml b/src/app/views/quota/edit.haml index cb985b9..87ab25d 100644 --- a/src/app/views/quota/edit.haml +++ b/src/app/views/quota/edit.haml @@ -1,17 +1,13 @@ .dcloud_form
- = error_messages_for @parent_type
- = error_messages_for 'quota' %h2 Edit Quota for #{@parent_type + ": " + @name} %br/
- form_tag :action => 'update' do
- form_for @quota, :url => {:controller => :quota, :action => "update", :parent_type => @parent_type}, :class => "dcloud_form" do |f| = hidden_field_tag 'id', @parent.id = hidden_field_tag 'parent_type', @parent_type %ul %li %label Max Running Instances
= text_field :quota, :maximum_running_instances
%li
%label Max Total Instances
= text_field :quota, :maximum_total_instances
= f.error_message_on :maximum_running_instances, 'maximum_running_instances'
= submit_tag "Save", :class => "submit"= f.text_field :maximum_running_instances
diff --git a/src/app/views/users/_form.haml b/src/app/views/users/_form.haml index bb3c0c2..1e5dc59 100644 --- a/src/app/views/users/_form.haml +++ b/src/app/views/users/_form.haml @@ -35,3 +35,4 @@ = quota_form.label :maximum_running_instances, t(:maximum_running_instances), :class => "alpha grid_3" = quota_form.text_field :maximum_running_instances, :class => "grid_5" (instances)
= quota_form.error_message_on :maximum_running_instances, 'Maximum Running Instances '
\ No newline at end of file
ACK to both.
Works for me.
Scott
deltacloud-devel@lists.fedorahosted.org