During testing #1755 I found that some flash messages weren't implemented on multi_destroy actions so this patch adds those messages.
From: Jozef Zigmund jzigmund@redhat.com
--- .../controllers/hardware_profiles_controller.rb | 19 +++++++++- src/app/controllers/providers_controller.rb | 39 ++++++++++++++------ src/app/controllers/realms_controller.rb | 29 +++++++++++---- src/app/controllers/roles_controller.rb | 18 +++++++++- src/features/realm.feature | 3 +- src/features/role.feature | 3 +- 6 files changed, 86 insertions(+), 25 deletions(-)
diff --git a/src/app/controllers/hardware_profiles_controller.rb b/src/app/controllers/hardware_profiles_controller.rb index 0967f68..49c6a88 100644 --- a/src/app/controllers/hardware_profiles_controller.rb +++ b/src/app/controllers/hardware_profiles_controller.rb @@ -115,7 +115,24 @@ class HardwareProfilesController < ApplicationController end
def multi_destroy - HardwareProfile.destroy(params[:hardware_profile_selected]) + deleted=[] + not_deleted=[] + + HardwareProfile.find(params[:hardware_profile_selected]).each do |hwp| + if hwp.destroy + deleted << hwp.name + else + not_deleted << hwp.name + end + end + + unless deleted.empty? + flash[:notice] = "These Hardware Profiles were deleted: #{deleted.join(', ')}" + end + unless not_deleted.empty? + flash[:error] = "Could not deleted these Hardware Profiles: #{not_deleted.join(', ')}" + end + redirect_to hardware_profiles_path end
diff --git a/src/app/controllers/providers_controller.rb b/src/app/controllers/providers_controller.rb index ad0838b..99beefc 100644 --- a/src/app/controllers/providers_controller.rb +++ b/src/app/controllers/providers_controller.rb @@ -41,7 +41,7 @@ class ProvidersController < ApplicationController
@url_params = params.clone require_privilege(Privilege::VIEW, @provider) - @tab_captions = ['Properties', 'HW Profiles', 'Realms', 'Provider Accounts', 'Services','History','Permissions'] + @tab_captions = ['Properties', 'HW Profiles', 'Realms', 'Provider Accounts', 'Services', 'History', 'Permissions'] @details_tab = params[:details_tab].blank? ? 'properties' : params[:details_tab]
if params.delete :test_provider @@ -101,9 +101,24 @@ class ProvidersController < ApplicationController end
def multi_destroy + deleted = [] + not_deleted = [] Provider.find(params[:provider_selected]).each do |provider| - provider.destroy if check_privilege(Privilege::MODIFY, provider) + check_privilege(Privilege::MODIFY, provider) + if provider.destroy + deleted << provider.name + else + not_deleted << provider.name + end + end + + unless deleted.empty? + flash[:notice] = "These Realms were deleted: #{deleted.join(', ')}" + end + unless not_deleted.empty? + flash[:error] = "Could not deleted these Realms: #{not_deleted.join(', ')}" end + redirect_to providers_url end
@@ -129,18 +144,18 @@ class ProvidersController < ApplicationController
protected def set_view_envs - @header = [{ :name => "Provider name", :sort_attr => :name }, - { :name => "Provider URL", :sort_attr => :name } + @header = [{:name => "Provider name", :sort_attr => :name}, + {:name => "Provider URL", :sort_attr => :name} ] @url_params = params.clone end
- def load_providers - @header = [{ :name => "Provider name", :sort_attr => :name }, - { :name => "Provider URL", :sort_attr => :name }, - { :name => "Provider Type", :sort_attr => :name } - ] - @providers = Provider.list_for_user(@current_user, Privilege::VIEW) - @url_params = params.clone - end + def load_providers + @header = [{:name => "Provider name", :sort_attr => :name}, + {:name => "Provider URL", :sort_attr => :name}, + {:name => "Provider Type", :sort_attr => :name} + ] + @providers = Provider.list_for_user(@current_user, Privilege::VIEW) + @url_params = params.clone + end end diff --git a/src/app/controllers/realms_controller.rb b/src/app/controllers/realms_controller.rb index 88b3747..72599a0 100644 --- a/src/app/controllers/realms_controller.rb +++ b/src/app/controllers/realms_controller.rb @@ -1,6 +1,6 @@ class RealmsController < ApplicationController before_filter :require_user - before_filter :load_realms, :only =>[:index,:show] + before_filter :load_realms, :only =>[:index, :show] layout 'application'
def top_section @@ -59,11 +59,26 @@ class RealmsController < ApplicationController end
def multi_destroy + deleted = [] + not_deleted = [] if params[:realm_selected].blank? flash[:error] = 'You must select at least one realm to delete.' else - require_privilege(Privilege::MODIFY, Realm) - FrontendRealm.destroy(params[:realm_selected]) + FrontendRealm.find(params[:realm_selected]).each do |realm| + require_privilege(Privilege::MODIFY, Realm) + if realm.destroy + deleted << realm.name + else + not_deleted << realm.name + end + end + end + + unless deleted.empty? + flash[:notice] = "These Realms were deleted: #{deleted.join(', ')}" + end + unless not_deleted.empty? + flash[:error] = "Could not deleted these Realms: #{not_deleted.join(', ')}" end redirect_to realms_path end @@ -75,8 +90,8 @@ class RealmsController < ApplicationController @tab_captions = ['Properties', 'Mapping'] @details_tab = params[:details_tab].blank? ? 'properties' : params[:details_tab]
- @backend_realm_targets = @realm.realm_backend_targets.select {|x| x.realm_or_provider_type == 'Realm'} - @backend_provider_targets = @realm.realm_backend_targets.select {|x| x.realm_or_provider_type == 'Provider'} + @backend_realm_targets = @realm.realm_backend_targets.select { |x| x.realm_or_provider_type == 'Realm' } + @backend_provider_targets = @realm.realm_backend_targets.select { |x| x.realm_or_provider_type == 'Provider' }
respond_to do |format| format.js do @@ -85,7 +100,7 @@ class RealmsController < ApplicationController end render :partial => @details_tab end - format.html { render :action => 'show'} + format.html { render :action => 'show' } end end
@@ -98,7 +113,7 @@ class RealmsController < ApplicationController end
def load_realms - @header = [{ :name => "Name", :sort_attr => :name}] + @header = [{:name => "Name", :sort_attr => :name}] @url_params = params.clone @realms = FrontendRealm.all end diff --git a/src/app/controllers/roles_controller.rb b/src/app/controllers/roles_controller.rb index 07a6080..1311517 100644 --- a/src/app/controllers/roles_controller.rb +++ b/src/app/controllers/roles_controller.rb @@ -81,8 +81,24 @@ class RolesController < ApplicationController end
def multi_destroy + deleted=[] + not_deleted=[] require_privilege(Privilege::PERM_SET) - Role.destroy(params[:role_selected]) + Role.find(params[:role_selected]).each do |role| + if role.destroy + deleted << role.name + else + not_deleted << role.name + end + end + + unless deleted.empty? + flash[:notice] = "These Roles were deleted: #{deleted.join(', ')}" + end + unless not_deleted.empty? + flash[:error] = "Could not deleted these Roles: #{not_deleted.join(', ')}" + end + redirect_to roles_url end
diff --git a/src/features/realm.feature b/src/features/realm.feature index 1ebe3d1..79779e6 100644 --- a/src/features/realm.feature +++ b/src/features/realm.feature @@ -52,8 +52,7 @@ Feature: Manage Realms And I press "Delete" Then there should be only 0 realms And I should be on the realms page - And I should not see "testrealm1" - And I should not see "testrealm2" + And I should see "These Realms were deleted: testrealm1, testrealm2"
Scenario: Delete realm without selecting one Given I am on the realms page diff --git a/src/features/role.feature b/src/features/role.feature index 47ca082..abd0157 100644 --- a/src/features/role.feature +++ b/src/features/role.feature @@ -40,8 +40,7 @@ Feature: Manage Roles And I press "Delete" Then there should be 0 more roles And I should be on the roles page - And I should not see "Captain" - And I should not see "Admiral" + And I should see "These Roles were deleted: Captain, Admiral"
# Scenario: Search roles # Given a role "Admiral" exists
ACK
Dne 13.6.2011 17:19, jzigmund@redhat.com napsal(a):
From: Jozef Zigmundjzigmund@redhat.com
.../controllers/hardware_profiles_controller.rb | 19 +++++++++- src/app/controllers/providers_controller.rb | 39 ++++++++++++++------ src/app/controllers/realms_controller.rb | 29 +++++++++++---- src/app/controllers/roles_controller.rb | 18 +++++++++- src/features/realm.feature | 3 +- src/features/role.feature | 3 +- 6 files changed, 86 insertions(+), 25 deletions(-)
diff --git a/src/app/controllers/hardware_profiles_controller.rb b/src/app/controllers/hardware_profiles_controller.rb index 0967f68..49c6a88 100644 --- a/src/app/controllers/hardware_profiles_controller.rb +++ b/src/app/controllers/hardware_profiles_controller.rb @@ -115,7 +115,24 @@ class HardwareProfilesController< ApplicationController end
def multi_destroy
- HardwareProfile.destroy(params[:hardware_profile_selected])
- deleted=[]
- not_deleted=[]
- HardwareProfile.find(params[:hardware_profile_selected]).each do |hwp|
if hwp.destroy
deleted<< hwp.name
else
not_deleted<< hwp.name
end
- end
- unless deleted.empty?
flash[:notice] = "These Hardware Profiles were deleted: #{deleted.join(', ')}"
- end
- unless not_deleted.empty?
flash[:error] = "Could not deleted these Hardware Profiles: #{not_deleted.join(', ')}"
- end
endredirect_to hardware_profiles_path
diff --git a/src/app/controllers/providers_controller.rb b/src/app/controllers/providers_controller.rb index ad0838b..99beefc 100644 --- a/src/app/controllers/providers_controller.rb +++ b/src/app/controllers/providers_controller.rb @@ -41,7 +41,7 @@ class ProvidersController< ApplicationController
@url_params = params.clone require_privilege(Privilege::VIEW, @provider)
- @tab_captions = ['Properties', 'HW Profiles', 'Realms', 'Provider Accounts', 'Services','History','Permissions']
@tab_captions = ['Properties', 'HW Profiles', 'Realms', 'Provider Accounts', 'Services', 'History', 'Permissions'] @details_tab = params[:details_tab].blank? ? 'properties' : params[:details_tab]
if params.delete :test_provider
@@ -101,9 +101,24 @@ class ProvidersController< ApplicationController end
def multi_destroy
- deleted = []
- not_deleted = [] Provider.find(params[:provider_selected]).each do |provider|
provider.destroy if check_privilege(Privilege::MODIFY, provider)
check_privilege(Privilege::MODIFY, provider)
if provider.destroy
deleted<< provider.name
else
not_deleted<< provider.name
end
- end
- unless deleted.empty?
flash[:notice] = "These Realms were deleted: #{deleted.join(', ')}"
- end
- unless not_deleted.empty?
flash[:error] = "Could not deleted these Realms: #{not_deleted.join(', ')}" end
endredirect_to providers_url
@@ -129,18 +144,18 @@ class ProvidersController< ApplicationController
protected def set_view_envs
- @header = [{ :name => "Provider name", :sort_attr => :name },
{ :name => "Provider URL", :sort_attr => :name }
- @header = [{:name => "Provider name", :sort_attr => :name},
end{:name => "Provider URL", :sort_attr => :name} ] @url_params = params.clone
- def load_providers
@header = [{ :name => "Provider name", :sort_attr => :name },
{ :name => "Provider URL", :sort_attr => :name },
{ :name => "Provider Type", :sort_attr => :name }
]
@providers = Provider.list_for_user(@current_user, Privilege::VIEW)
@url_params = params.clone
- end
- def load_providers
- @header = [{:name => "Provider name", :sort_attr => :name},
{:name => "Provider URL", :sort_attr => :name},
{:name => "Provider Type", :sort_attr => :name}
- ]
- @providers = Provider.list_for_user(@current_user, Privilege::VIEW)
- @url_params = params.clone
- end end
diff --git a/src/app/controllers/realms_controller.rb b/src/app/controllers/realms_controller.rb index 88b3747..72599a0 100644 --- a/src/app/controllers/realms_controller.rb +++ b/src/app/controllers/realms_controller.rb @@ -1,6 +1,6 @@ class RealmsController< ApplicationController before_filter :require_user
- before_filter :load_realms, :only =>[:index,:show]
before_filter :load_realms, :only =>[:index, :show] layout 'application'
def top_section
@@ -59,11 +59,26 @@ class RealmsController< ApplicationController end
def multi_destroy
- deleted = []
- not_deleted = [] if params[:realm_selected].blank? flash[:error] = 'You must select at least one realm to delete.' else
require_privilege(Privilege::MODIFY, Realm)
FrontendRealm.destroy(params[:realm_selected])
FrontendRealm.find(params[:realm_selected]).each do |realm|
require_privilege(Privilege::MODIFY, Realm)
if realm.destroy
deleted<< realm.name
else
not_deleted<< realm.name
end
end
- end
- unless deleted.empty?
flash[:notice] = "These Realms were deleted: #{deleted.join(', ')}"
- end
- unless not_deleted.empty?
endflash[:error] = "Could not deleted these Realms: #{not_deleted.join(', ')}" end redirect_to realms_path
@@ -75,8 +90,8 @@ class RealmsController< ApplicationController @tab_captions = ['Properties', 'Mapping'] @details_tab = params[:details_tab].blank? ? 'properties' : params[:details_tab]
- @backend_realm_targets = @realm.realm_backend_targets.select {|x| x.realm_or_provider_type == 'Realm'}
- @backend_provider_targets = @realm.realm_backend_targets.select {|x| x.realm_or_provider_type == 'Provider'}
@backend_realm_targets = @realm.realm_backend_targets.select { |x| x.realm_or_provider_type == 'Realm' }
@backend_provider_targets = @realm.realm_backend_targets.select { |x| x.realm_or_provider_type == 'Provider' }
respond_to do |format| format.js do
@@ -85,7 +100,7 @@ class RealmsController< ApplicationController end render :partial => @details_tab end
format.html { render :action => 'show'}
endformat.html { render :action => 'show' } end
@@ -98,7 +113,7 @@ class RealmsController< ApplicationController end
def load_realms
- @header = [{ :name => "Name", :sort_attr => :name}]
- @header = [{:name => "Name", :sort_attr => :name}] @url_params = params.clone @realms = FrontendRealm.all end
diff --git a/src/app/controllers/roles_controller.rb b/src/app/controllers/roles_controller.rb index 07a6080..1311517 100644 --- a/src/app/controllers/roles_controller.rb +++ b/src/app/controllers/roles_controller.rb @@ -81,8 +81,24 @@ class RolesController< ApplicationController end
def multi_destroy
- deleted=[]
- not_deleted=[] require_privilege(Privilege::PERM_SET)
- Role.destroy(params[:role_selected])
- Role.find(params[:role_selected]).each do |role|
if role.destroy
deleted<< role.name
else
not_deleted<< role.name
end
- end
- unless deleted.empty?
flash[:notice] = "These Roles were deleted: #{deleted.join(', ')}"
- end
- unless not_deleted.empty?
flash[:error] = "Could not deleted these Roles: #{not_deleted.join(', ')}"
- end
endredirect_to roles_url
diff --git a/src/features/realm.feature b/src/features/realm.feature index 1ebe3d1..79779e6 100644 --- a/src/features/realm.feature +++ b/src/features/realm.feature @@ -52,8 +52,7 @@ Feature: Manage Realms And I press "Delete" Then there should be only 0 realms And I should be on the realms page
- And I should not see "testrealm1"
- And I should not see "testrealm2"
And I should see "These Realms were deleted: testrealm1, testrealm2"
Scenario: Delete realm without selecting one Given I am on the realms page
diff --git a/src/features/role.feature b/src/features/role.feature index 47ca082..abd0157 100644 --- a/src/features/role.feature +++ b/src/features/role.feature @@ -40,8 +40,7 @@ Feature: Manage Roles And I press "Delete" Then there should be 0 more roles And I should be on the roles page
- And I should not see "Captain"
- And I should not see "Admiral"
And I should see "These Roles were deleted: Captain, Admiral"
# Scenario: Search roles # Given a role "Admiral" exists
aeolus-devel@lists.fedorahosted.org