Admin can new/edit user_attributes
This commit is contained in:
parent
263da6aa9f
commit
bebc51e8bb
|
@ -0,0 +1,43 @@
|
||||||
|
class Admin::UserAttributesController < ApplicationController
|
||||||
|
|
||||||
|
layout "admin"
|
||||||
|
before_filter :authenticate_user!
|
||||||
|
|
||||||
|
def index
|
||||||
|
@user_attributes = UserAttribute.all
|
||||||
|
end
|
||||||
|
|
||||||
|
def show
|
||||||
|
@user_attribute = UserAttribute.find(params[:id])
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@user_attribute = UserAttribute.new
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@user_attribute = UserAttribute.find(params[:id])
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
@user_attribute = UserAttribute.new(params[:user_attribute])
|
||||||
|
@user_attribute.save
|
||||||
|
|
||||||
|
redirect_to :action => :index
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
@user_attribute = UserAttribute.find(params[:id])
|
||||||
|
@user_attribute.update_attributes(params[:user_attribute])
|
||||||
|
|
||||||
|
redirect_to :action => :index
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@user_attribute = UserAttribute.find(params[:id])
|
||||||
|
@user_attribute.destroy
|
||||||
|
|
||||||
|
redirect_to :action => :index
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
|
@ -0,0 +1,2 @@
|
||||||
|
module Admin::UserAttributesHelper
|
||||||
|
end
|
|
@ -0,0 +1,43 @@
|
||||||
|
<p>
|
||||||
|
<%= f.label :name %>
|
||||||
|
<%= f.text_field :name %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<fieldset>
|
||||||
|
<% @user_attribute.attrs.each_with_index do |attr, i| %>
|
||||||
|
<p>
|
||||||
|
<label><%= attr["key"] %></label>
|
||||||
|
<%= hidden_field_tag "user_attribute[attrs][][key]", attr["key"] %>
|
||||||
|
<%= text_field_tag "user_attribute[attrs][][name]", attr["name"] %>
|
||||||
|
<%= select_tag "user_attribute[attrs][][type]", options_for_select(["text_field"], attr["type"]) %>
|
||||||
|
<a href="#" class="remove">(remove)</a>
|
||||||
|
</p>
|
||||||
|
<% end -%>
|
||||||
|
|
||||||
|
<p id="newone">
|
||||||
|
<label>Key</label>
|
||||||
|
<%= text_field_tag "user_attribute[attrs][][key]", "" %>
|
||||||
|
<label>Name</label>
|
||||||
|
<%= text_field_tag "user_attribute[attrs][][name]", "" %>
|
||||||
|
<%= select_tag "user_attribute[attrs][][type]", options_for_select(["text_field"], "") %>
|
||||||
|
<a href="#" class="remove">(remove)</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<a href="#" class="add">(add)</a>
|
||||||
|
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<% content_for :page_specific_javascript do %>
|
||||||
|
<script type="text/javascript" charset="utf-8">
|
||||||
|
var newone = $('fieldset #newone').clone();
|
||||||
|
$('fieldset #newone').remove();
|
||||||
|
|
||||||
|
$('fieldset a.remove').live( "click", function(){
|
||||||
|
$(this).parent().remove();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('fieldset a.add').click(function(){
|
||||||
|
newone.clone().appendTo( $('fieldset') );
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
<% end -%>
|
|
@ -0,0 +1,12 @@
|
||||||
|
|
||||||
|
<h1>Editing user attribute: <%= @user_attribute.key %></h1>
|
||||||
|
|
||||||
|
<% form_for @user_attribute, :url => admin_user_attribute_path(@user_attribute) do |f| %>
|
||||||
|
|
||||||
|
<%= render :partial => "form", :locals => { :f => f } %>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<%= f.submit %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<% end -%>
|
|
@ -0,0 +1,23 @@
|
||||||
|
<h1>Listing user attributes</h1>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<th>名稱</th>
|
||||||
|
<th>Key</th>
|
||||||
|
<th></th>
|
||||||
|
<th></th>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<% @user_attributes.each do |user_attribute| %>
|
||||||
|
<tr>
|
||||||
|
<td><%= user_attribute.name %></td>
|
||||||
|
<td><%= user_attribute.key %></td>
|
||||||
|
<td><%= link_to t(:edit), edit_admin_user_attribute_path(user_attribute) %></td>
|
||||||
|
<td><%= link_to t(:delete), admin_user_attribute_path(user_attribute), :confirm => 'Are you sure?', :method => :delete %></td>
|
||||||
|
</tr>
|
||||||
|
<% end %>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<%= link_to t(:new_user_attribute, :scope => :admin), new_admin_user_attribute_path, :class => 'button positive' %>
|
|
@ -0,0 +1,17 @@
|
||||||
|
|
||||||
|
<h1>New user attribute: <%= @user_attribute.key %></h1>
|
||||||
|
|
||||||
|
<% form_for @user_attribute, :url => admin_user_attributes_path do |f| %>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<%= f.label :key, "Key" %>
|
||||||
|
<%= f.text_field :key %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<%= render :partial => "form", :locals => { :f => f } %>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<%= f.submit %>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<% end -%>
|
|
@ -24,6 +24,7 @@
|
||||||
<li><%= link_to t(:item, :scope => :admin), admin_items_path %></li>
|
<li><%= link_to t(:item, :scope => :admin), admin_items_path %></li>
|
||||||
<li><%= link_to t(:layout, :scope => :admin), admin_layouts_path %></li>
|
<li><%= link_to t(:layout, :scope => :admin), admin_layouts_path %></li>
|
||||||
<li><%= link_to t(:asset, :scope => :admin), admin_assets_path %></li>
|
<li><%= link_to t(:asset, :scope => :admin), admin_assets_path %></li>
|
||||||
|
<li><%= link_to t(:user_attribute, :scope => :admin), admin_user_attributes_path %></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,9 @@ zh_tw:
|
||||||
new_asset: 新增資產
|
new_asset: 新增資產
|
||||||
move_up: 往上移
|
move_up: 往上移
|
||||||
move_down: 往下移
|
move_down: 往下移
|
||||||
|
user_attribute: 人物屬性
|
||||||
|
new_user_attribute: 新增人物屬性
|
||||||
|
|
||||||
panel:
|
panel:
|
||||||
home: 首頁
|
home: 首頁
|
||||||
users: 使用者管理
|
users: 使用者管理
|
||||||
|
|
|
@ -17,6 +17,7 @@ R4::Application.routes.draw do |map|
|
||||||
resources :layouts
|
resources :layouts
|
||||||
resources :snippets
|
resources :snippets
|
||||||
resources :assets
|
resources :assets
|
||||||
|
resources :user_attributes
|
||||||
end
|
end
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
|
|
Loading…
Reference in New Issue