user can't delete self and flash_messages

This commit is contained in:
chris authored and ihower committed 2011-04-13 18:22:50 +08:00
1 parent 318c264cae
commit e62df90117
9 files changed
+67 -16

No files matched your search

+8 -2
View File
@@ -22,6 +22,7 @@ class Panel::UsersController < ApplicationController
def create
@user = User.new(params[:user])
if @user.save
flash[:notice] = t('panel.create_success_user')
redirect_to :action => :index
else
render :action => :new
@@ -43,6 +44,7 @@ class Panel::UsersController < ApplicationController
@user.avatar = params[:file] if params[:file]
if @user.update_attributes(params[:user])
flash[:notice] = t('panel.update_success_user')
redirect_to :action => :index
else
@user_info_models = UserInfoModel.all.entries
@@ -52,8 +54,12 @@ class Panel::UsersController < ApplicationController
end
def destroy
@user = User.find(params[:id])
@user.destroy
if params[:id].eql?(session['warden.user.user.key'][1].to_s)
flash[:error] = t('panel.cant_delete_self')
else
@user = User.find(params[:id])
@user.destroy
end
redirect_to :action => :index
end
+20
View File
@@ -1,11 +1,31 @@
module ApplicationHelper
FLASH_NOTICE_KEYS = [:error, :notice, :warning]
def colorize_in_use_locale(locale)
@site_in_use_locales.include?(locale)? 'green' : 'red'
end
def flash_messages
return unless messages = flash.keys.select{|k| FLASH_NOTICE_KEYS.include?(k)}
formatted_messages = messages.map do |type|
content_tag :div, :class => type.to_s do
message_for_item(flash[type], flash["#{type}_item".to_sym])
end
end
raw(formatted_messages.join)
end
def link_back
link_to t('back'), session[:last_page]
end
def message_for_item(message, item = nil)
if item.is_a?(Array)
message % link_to(*item)
else
message % item
end
end
end
+2
View File
@@ -12,6 +12,8 @@
</ul>
<% end -%>
<%= flash_messages %>
<h1><%= t('admin.list_items') %>: <%= show_parent_items_link unless @parent_item.nil? %></h1>
<% if !Layout.exist_one? %>
+2
View File
@@ -4,6 +4,8 @@
</ul>
<% end -%>
<%= flash_messages %>
<h1><%= t('admin.list_layouts') %></h1>
<table>
+1 -1
View File
@@ -32,7 +32,7 @@
</fieldset>
<% end %>
<%= hidden_field_tag :active_roles, @user.active_roles.size > 0 %>
<%= hidden_field_tag :active_roles, (@user.active_roles.size > 0 rescue nil ) %>
<% if @user_role_models %>
<fieldset id="roles" <%= raw(' style="display: none;"') unless (@user.active_roles.size > 0 rescue nil) %>>
<legend><%= t('panel.roles') %></legend>
+15 -12
View File
@@ -1,9 +1,11 @@
<% content_for :secondary do %>
<ul class="list">
<li><%= link_to t('panel.new_user'), new_panel_user_path, :class => 'button positive' %></li>
</ul>
<ul class="list">
<li><%= link_to t('panel.new_user'), new_panel_user_path, :class => 'button positive' %></li>
</ul>
<% end -%>
<%= flash_messages %>
<h1><%= t('panel.list_users') %></h1>
<table>
@@ -14,15 +16,16 @@
<th><%= t('panel.action') %></th>
</tr>
<% @users.each do |user| %>
<tr>
<td><%= user.get_roles %></td>
<td><%= user[:name] %></td>
<td><%= user.email %></td>
<td>
<% @users.each do |user| %>
<tr>
<td><%= user.get_roles %></td>
<td><%= user[:name] %></td>
<td><%= user.email %></td>
<td>
<%= link_to t(:show), panel_user_path(user) %> |
<%= link_to t(:edit), edit_panel_user_path(user) %> |
<%= link_to t(:delete), panel_user_path(user), :method => :delete %></td>
</tr>
<% end %>
<%= link_to t(:delete), panel_user_path(user), :confirm => t('sure?'), :method => :delete %>
</td>
</tr>
<% end %>
</table>