user can't delete self and flash_messages
This commit is contained in:
parent
318c264cae
commit
e62df90117
|
@ -22,6 +22,7 @@ class Panel::UsersController < ApplicationController
|
||||||
def create
|
def create
|
||||||
@user = User.new(params[:user])
|
@user = User.new(params[:user])
|
||||||
if @user.save
|
if @user.save
|
||||||
|
flash[:notice] = t('panel.create_success_user')
|
||||||
redirect_to :action => :index
|
redirect_to :action => :index
|
||||||
else
|
else
|
||||||
render :action => :new
|
render :action => :new
|
||||||
|
@ -43,6 +44,7 @@ class Panel::UsersController < ApplicationController
|
||||||
@user.avatar = params[:file] if params[:file]
|
@user.avatar = params[:file] if params[:file]
|
||||||
|
|
||||||
if @user.update_attributes(params[:user])
|
if @user.update_attributes(params[:user])
|
||||||
|
flash[:notice] = t('panel.update_success_user')
|
||||||
redirect_to :action => :index
|
redirect_to :action => :index
|
||||||
else
|
else
|
||||||
@user_info_models = UserInfoModel.all.entries
|
@user_info_models = UserInfoModel.all.entries
|
||||||
|
@ -52,8 +54,12 @@ class Panel::UsersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
@user = User.find(params[:id])
|
if params[:id].eql?(session['warden.user.user.key'][1].to_s)
|
||||||
@user.destroy
|
flash[:error] = t('panel.cant_delete_self')
|
||||||
|
else
|
||||||
|
@user = User.find(params[:id])
|
||||||
|
@user.destroy
|
||||||
|
end
|
||||||
|
|
||||||
redirect_to :action => :index
|
redirect_to :action => :index
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,11 +1,31 @@
|
||||||
module ApplicationHelper
|
module ApplicationHelper
|
||||||
|
|
||||||
|
FLASH_NOTICE_KEYS = [:error, :notice, :warning]
|
||||||
|
|
||||||
def colorize_in_use_locale(locale)
|
def colorize_in_use_locale(locale)
|
||||||
@site_in_use_locales.include?(locale)? 'green' : 'red'
|
@site_in_use_locales.include?(locale)? 'green' : 'red'
|
||||||
end
|
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
|
def link_back
|
||||||
link_to t('back'), session[:last_page]
|
link_to t('back'), session[:last_page]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def message_for_item(message, item = nil)
|
||||||
|
if item.is_a?(Array)
|
||||||
|
message % link_to(*item)
|
||||||
|
else
|
||||||
|
message % item
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -12,6 +12,8 @@
|
||||||
</ul>
|
</ul>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
<h1><%= t('admin.list_items') %>: <%= show_parent_items_link unless @parent_item.nil? %></h1>
|
<h1><%= t('admin.list_items') %>: <%= show_parent_items_link unless @parent_item.nil? %></h1>
|
||||||
|
|
||||||
<% if !Layout.exist_one? %>
|
<% if !Layout.exist_one? %>
|
||||||
|
|
|
@ -4,6 +4,8 @@
|
||||||
</ul>
|
</ul>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
<h1><%= t('admin.list_layouts') %></h1>
|
<h1><%= t('admin.list_layouts') %></h1>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<% end %>
|
<% 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 %>
|
<% if @user_role_models %>
|
||||||
<fieldset id="roles" <%= raw(' style="display: none;"') unless (@user.active_roles.size > 0 rescue nil) %>>
|
<fieldset id="roles" <%= raw(' style="display: none;"') unless (@user.active_roles.size > 0 rescue nil) %>>
|
||||||
<legend><%= t('panel.roles') %></legend>
|
<legend><%= t('panel.roles') %></legend>
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
<% content_for :secondary do %>
|
<% content_for :secondary do %>
|
||||||
<ul class="list">
|
<ul class="list">
|
||||||
<li><%= link_to t('panel.new_user'), new_panel_user_path, :class => 'button positive' %></li>
|
<li><%= link_to t('panel.new_user'), new_panel_user_path, :class => 'button positive' %></li>
|
||||||
</ul>
|
</ul>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
<%= flash_messages %>
|
||||||
|
|
||||||
<h1><%= t('panel.list_users') %></h1>
|
<h1><%= t('panel.list_users') %></h1>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
|
@ -14,15 +16,16 @@
|
||||||
<th><%= t('panel.action') %></th>
|
<th><%= t('panel.action') %></th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<% @users.each do |user| %>
|
<% @users.each do |user| %>
|
||||||
<tr>
|
<tr>
|
||||||
<td><%= user.get_roles %></td>
|
<td><%= user.get_roles %></td>
|
||||||
<td><%= user[:name] %></td>
|
<td><%= user[:name] %></td>
|
||||||
<td><%= user.email %></td>
|
<td><%= user.email %></td>
|
||||||
<td>
|
<td>
|
||||||
<%= link_to t(:show), panel_user_path(user) %> |
|
<%= link_to t(:show), panel_user_path(user) %> |
|
||||||
<%= link_to t(:edit), edit_panel_user_path(user) %> |
|
<%= link_to t(:edit), edit_panel_user_path(user) %> |
|
||||||
<%= link_to t(:delete), panel_user_path(user), :method => :delete %></td>
|
<%= link_to t(:delete), panel_user_path(user), :confirm => t('sure?'), :method => :delete %>
|
||||||
</tr>
|
</td>
|
||||||
<% end %>
|
</tr>
|
||||||
|
<% end %>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -97,6 +97,8 @@ en:
|
||||||
|
|
||||||
panel:
|
panel:
|
||||||
action: Action
|
action: Action
|
||||||
|
cant_delete_self: You can not delete yourself.
|
||||||
|
create_success_user: User was successfully created.
|
||||||
email: Email
|
email: Email
|
||||||
home: Home
|
home: Home
|
||||||
list_users: Users list
|
list_users: Users list
|
||||||
|
@ -105,5 +107,6 @@ en:
|
||||||
new_user: New user
|
new_user: New user
|
||||||
infos: Information
|
infos: Information
|
||||||
roles: Roles
|
roles: Roles
|
||||||
|
update_success_user: User was successfully updated.
|
||||||
user: User
|
user: User
|
||||||
user_panel: User panel
|
user_panel: User panel
|
||||||
|
|
|
@ -94,6 +94,8 @@ zh_tw:
|
||||||
|
|
||||||
panel:
|
panel:
|
||||||
action: 行動
|
action: 行動
|
||||||
|
cant_delete_self: 您不可以刪除自己。
|
||||||
|
create_success_user: 用戶已成功創建。
|
||||||
email: Email
|
email: Email
|
||||||
home: 首頁
|
home: 首頁
|
||||||
list_users: 使用清單
|
list_users: 使用清單
|
||||||
|
@ -102,6 +104,7 @@ zh_tw:
|
||||||
new_user: 新增使用
|
new_user: 新增使用
|
||||||
infos: 資料
|
infos: 資料
|
||||||
roles: 角色
|
roles: 角色
|
||||||
|
update_success_user: 用戶已成功更新。
|
||||||
user: 用戶
|
user: 用戶
|
||||||
user_panel: 用戶面板
|
user_panel: 用戶面板
|
||||||
|
|
||||||
|
|
|
@ -10,3 +10,15 @@ ul.list li{
|
||||||
list-style:none;
|
list-style:none;
|
||||||
border-bottom:1px solid #ccc;
|
border-bottom:1px solid #ccc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.error{
|
||||||
|
color:red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notice, .message{
|
||||||
|
color:green;
|
||||||
|
}
|
||||||
|
|
||||||
|
.warning{
|
||||||
|
color:orange;
|
||||||
|
}
|
||||||
|
|
Reference in New Issue