On 13/10/10 11:35 +0200, [email protected] wrote:
>From: Tomas Sedovic <[email protected]>
>
>When a user didn't enter a correct URL while adding a new provider, an
>unintelligible error was displayed and no way to correct it.
>
>This fix shown the propper error messages and leaves the user on the 'add
>provider' form to fix it.
>---
> src/app/controllers/provider_controller.rb | 5 +-
> src/app/models/provider.rb | 3 +-
> src/app/stylesheets/aggregator.scss | 22 +++++-----
> src/app/views/provider/_form.haml | 62 ++++++++++++++++++++--------
> src/app/views/provider/show.haml | 44 +-------------------
> src/config/locales/en.yml | 2 +-
> src/config/navigation.rb | 2 +-
> 7 files changed, 64 insertions(+), 76 deletions(-)
>
>diff --git a/src/app/controllers/provider_controller.rb
>b/src/app/controllers/provider_controller.rb
>index 5e4d32c..d338214 100644
>--- a/src/app/controllers/provider_controller.rb
>+++ b/src/app/controllers/provider_controller.rb
>@@ -52,9 +52,10 @@ class ProviderController < ApplicationController
>
> def create
> require_privilege(Privilege::PROVIDER_MODIFY)
>+ @providers = Provider.list_for_user(@current_user,
>Privilege::PROVIDER_MODIFY)
> @provider = Provider.new(params[:provider])
>- if @provider.set_cloud_type && @provider.save &&
>- @provider.populate_hardware_profiles
>+ @provider.set_cloud_type
I thought that recommended way how to modify variable without returning
value is to use '.method!'.
@provider.set_cloud_type!
looks much better for me. Correct me, if I'm wrong.
>+ if @provider.save && @provider.populate_hardware_profiles
> flash[:notice] = "Provider added."
> redirect_to :action => "show", :id => @provider
> else
>diff --git a/src/app/models/provider.rb b/src/app/models/provider.rb
>index f5701aa..8ac99cd 100644
>--- a/src/app/models/provider.rb
>+++ b/src/app/models/provider.rb
>@@ -56,7 +56,8 @@ class Provider < ActiveRecord::Base
> end
>
> def set_cloud_type
>- self.cloud_type = connect.driver_name
>+ deltacloud = connect
>+ self.cloud_type = deltacloud.driver_name unless deltacloud.nil?
Deltacloud client supports 'block' syntax as well:
connect do |client|
self.cloud_type = client.driver_name if client
end
> end
>
> def connect
>diff --git a/src/app/stylesheets/aggregator.scss
>b/src/app/stylesheets/aggregator.scss
>index e2b316b..6a3cd7d 100644
>--- a/src/app/stylesheets/aggregator.scss
>+++ b/src/app/stylesheets/aggregator.scss
>@@ -839,6 +839,17 @@ fieldset.gap {
> margin-bottom: 7em;
> }
My suggestions was just minor, this patch works so ACKing it ;)
-- Michal
--
--------------------------------------------------------
Michal Fojtik, [email protected]
Deltacloud API: http://deltacloud.org
--------------------------------------------------------
_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel