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

Reply via email to