diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index ceb70ab92..48fc6fade 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -83,7 +83,8 @@ class UsersController < ApplicationController end if @user.update_attributes(params[:user]) flash[:notice] = l(:notice_successful_update) - redirect_to :action => 'list' + # Give a string to redirect_to otherwise it would use status param as the response code + redirect_to(url_for(:action => 'list', :status => params[:status], :page => params[:page])) end end @auth_sources = AuthSource.find(:all) diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb index 7bd137161..250ed8ce8 100644 --- a/app/helpers/users_helper.rb +++ b/app/helpers/users_helper.rb @@ -22,4 +22,16 @@ module UsersHelper [l(:status_registered), 2], [l(:status_locked), 3]], selected) end + + def change_status_link(user) + url = {:action => 'edit', :id => user, :page => params[:page], :status => params[:status]} + + if user.locked? + link_to l(:button_unlock), url.merge(:user => {:status => User::STATUS_ACTIVE}), :method => :post, :class => 'icon icon-unlock' + elsif user.registered? + link_to l(:button_activate), url.merge(:user => {:status => User::STATUS_ACTIVE}), :method => :post, :class => 'icon icon-unlock' + else + link_to l(:button_lock), url.merge(:user => {:status => User::STATUS_LOCKED}), :method => :post, :class => 'icon icon-lock' + end + end end diff --git a/app/views/users/list.rhtml b/app/views/users/list.rhtml index e12aa3425..d89672d19 100644 --- a/app/views/users/list.rhtml +++ b/app/views/users/list.rhtml @@ -33,17 +33,7 @@