Make /user/new handle already logged in users better
[rails.git] / app / controllers / user_blocks_controller.rb
index 7d3830c251791c029b737fb5a2885da4b73bc418..75c9df9dc90be24f13f1ebee83f895bd94d80e4f 100644 (file)
@@ -60,7 +60,7 @@ class UserBlocksController < ApplicationController
     end
 
     if @user_block.creator_id != @user.id
-      flash[:notice] = t('user_block.update.only_creator_can_edit')
+      flash[:error] = t('user_block.update.only_creator_can_edit')
       redirect_to :action => "edit"
       return
     end
@@ -109,11 +109,10 @@ class UserBlocksController < ApplicationController
   private
   ##
   # require that the user is a moderator, or fill out a helpful error message
-  # and return them to the login screen where they might be able to login as
-  # a moderator.
+  # and return them to the blocks index.
   def require_moderator
     unless @user.moderator?
-      flash[:notice] = t('user_block.filter.not_a_moderator')
+      flash[:error] = t('user_block.filter.not_a_moderator')
       redirect_to :action => 'index'
     end
   end
@@ -122,12 +121,16 @@ class UserBlocksController < ApplicationController
   # ensure that there is a "this_user" instance variable
   def lookup_this_user
     @this_user = User.find_by_display_name(params[:display_name])
+  rescue ActiveRecord::RecordNotFound
+    redirect_to :controller => 'user', :action => 'view', :display_name => params[:display_name] unless @this_user
   end
 
   ##
   # ensure that there is a "user_block" instance variable
   def lookup_user_block
     @user_block = UserBlock.find(params[:id])
+  rescue ActiveRecord::RecordNotFound
+    render :action => "not_found", :status => :not_found
   end
 
   ##
@@ -140,10 +143,10 @@ class UserBlocksController < ApplicationController
     @valid_params = false
 
     if !UserBlock::PERIODS.include?(@block_period)
-      flash[:notice] = t('user_block.filter.block_period')
+      flash[:error] = t('user_block.filter.block_period')
       
     elsif @user_block and !@user_block.active?
-      flash[:notice] = t('user_block.filter.block_expired')
+      flash[:error] = t('user_block.filter.block_expired')
       
     else
       @valid_params = true