fix dashboard & announcement
This commit is contained in:
		
							parent
							
								
									5223a7a3e9
								
							
						
					
					
						commit
						00ab773942
					
				|  | @ -1,4 +1,4 @@ | |||
| $('.bulletin_urls_block a.delete').live('click', function(){ | ||||
| $('.bulletin_links_block a.delete').live('click', function(){ | ||||
|   $(this).parents('.list_item').remove(); | ||||
| }); | ||||
| 
 | ||||
|  | @ -9,4 +9,5 @@ $('.bulletin_files_block a.delete').live('click', function(){ | |||
| $('.action a.remove_existing_record').live('click', function(){ | ||||
|   $(this).next('.should_destroy').attr('value', 1); | ||||
|   $("#bulletin_" + $(this).prev().attr('value')).hide(); | ||||
|   $("tr#bulletin_" + $(this).prev().attr('value')).hide(); | ||||
| }); | ||||
|  | @ -16,16 +16,25 @@ | |||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-member') + t('admin.member'), panel_web_resource_back_end_web_links_path %> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= content_tag :li, :class => active_for_controllers(nil) do -%> | ||||
| <%= content_tag :li, :class => active_for_controllers('page_contexts') do -%> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-page') + t('admin.page'), panel_page_content_back_end_page_contexts_path %> | ||||
| 	  <%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('page_contexts')) do -%> | ||||
| 		<%= content_tag :li, link_to(t('admin.all_articles'), panel_page_content_back_end_page_contexts_path), :class => active_for_action('page_context', 'index') %> | ||||
| 	<% end -%> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= content_tag :li, :class => active_for_controllers('designs') do -%> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-window-block') + t('admin.design'), admin_designs_path %> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= content_tag :li, :class => active_for_controllers(nil) do -%> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-link') + t('admin.link'), nil %> | ||||
| <%= content_tag :li, :class => active_for_controllers('web_links', 'tags', 'web_link_categorys') do -%> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icons-link') + t('admin.link'), panel_web_resource_back_end_web_links_path %> | ||||
| 	  <%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('web_links', 'tags', 'web_link_categorys')) do -%> | ||||
| 		<%= content_tag :li, link_to(t('admin.all_articles'), panel_web_resource_back_end_web_links_path), :class => active_for_action('web_link', 'index') %> | ||||
| 		<%= content_tag :li, link_to(t('admin.add_new'), new_panel_web_resource_back_end_web_link_path), :class => active_for_action('web_link', 'new') %> | ||||
| 		<%= content_tag :li, link_to(t('admin.categories'), panel_web_resource_back_end_web_link_categorys_path), :class => active_for_action('web_link_categorys', 'index') %> | ||||
| 		<%= content_tag :li, link_to(t('admin.tags'), panel_web_resource_back_end_tags_path), :class => active_for_action('tags', 'index') %> | ||||
| 	<% end -%> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= content_tag :li, :class => active_for_controllers(nil) do -%> | ||||
|  |  | |||
|  | @ -9,6 +9,7 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|     # @bulletins = Bulletin.all | ||||
|     # @bulletins = Bulletin.desc("postdate desc") | ||||
| 	  get_categorys(params[:bulletin_category_id]) | ||||
| 	  get_tags | ||||
| 	 | ||||
|     # @bulletins = Bulletin.where("bulletin_category_id" => params[:bulletin_category_id]).desc("postdate") if params[:bulletin_category_id] | ||||
|      | ||||
|  | @ -17,9 +18,6 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|     @bulletins = params[:sort] ? get_sorted_bulletins : Bulletin.all | ||||
|   	@bulletin_categories = BulletinCategory.all | ||||
| 
 | ||||
|   	module_app = ModuleApp.first(:conditions => {:key => 'announcement'}) | ||||
|   	@tags = Tag.all(:conditions => {:module_app_id => module_app.id}).order_by(I18n.locale, :asc) | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       format.html # index.html.erb | ||||
|       format.js | ||||
|  | @ -31,6 +29,7 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|   # GET /bulletins/1.xml | ||||
|   def show | ||||
|     @bulletin = Bulletin.find(params[:id]) | ||||
| 	get_tags | ||||
| 	# get_categorys | ||||
| 	 | ||||
|     # @bulletin_categorys = BulletinCategory.where("_id" => params[:id]) | ||||
|  | @ -52,10 +51,13 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|   def new | ||||
|     @bulletin = Bulletin.new | ||||
| 	 | ||||
| 	@link_url = panel_announcement_back_end_bulletins_path | ||||
|      | ||||
| 	# @bulletin.bulletin_files.build | ||||
| 	# @bulletin.bulletin_files.new | ||||
| 	 | ||||
| 	get_categorys | ||||
| 	get_tags | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       format.html # new.html.erb | ||||
|  | @ -67,7 +69,11 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|   def edit | ||||
|     @bulletin = Bulletin.find(params[:id]) | ||||
|     # @summary_variable = @bulletin.summary_variable | ||||
| 	 | ||||
| 	@link_url = panel_announcement_back_end_bulletin_path(@bulletin) | ||||
| 	 | ||||
| 	get_categorys | ||||
| 	get_tags | ||||
|   end | ||||
| 
 | ||||
|   # POST /bulletins | ||||
|  | @ -90,6 +96,32 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|     end | ||||
|   end | ||||
| 
 | ||||
|   def link_quick_add | ||||
| 	# debugger | ||||
| 	 | ||||
|     @bulletin = Bulletin.find(params[:bulletin_id]) | ||||
| 	 | ||||
| 	@link_url = panel_announcement_back_end_bulletins_path | ||||
| 	 | ||||
|     respond_to do |format| | ||||
|       format.js | ||||
|     end | ||||
| 	 | ||||
|   end | ||||
| 
 | ||||
|   def link_quick_edit | ||||
| 	# debugger | ||||
| 	 | ||||
|     @bulletin = Bulletin.find(params[:bulletin_id]) | ||||
| 	 | ||||
| 	@link_url = panel_announcement_back_end_bulletin_path(@bulletin) | ||||
| 	 | ||||
|     respond_to do |format| | ||||
|       format.js | ||||
|     end | ||||
| 	 | ||||
|   end | ||||
| 
 | ||||
|   # PUT /bulletins/1 | ||||
|   # PUT /bulletins/1.xml | ||||
|   def update | ||||
|  | @ -98,11 +130,11 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|     @bulletin.update_user_id = current_user.id | ||||
| 	 | ||||
| 	# @bulletin.image.clear if params[:bulletin][:image_del] == '1' | ||||
| 	if params[:bulletin][:image_del] == '1'  | ||||
| 		@bulletin.remove_image! | ||||
| 	# if params[:bulletin][:image_del] == '1'  | ||||
| 		# @bulletin.remove_image! | ||||
| 		# @bulletin.image_del = nil | ||||
| 		params[:bulletin][:image_del] = nil | ||||
| 	end | ||||
| 		# params[:bulletin][:image_del] = nil | ||||
| 	# end | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       if @bulletin.update_attributes(params[:bulletin]) | ||||
|  | @ -148,6 +180,11 @@ class Panel::Announcement::BackEnd::BulletinsController < ApplicationController | |||
|     @bulletin_categorys = (id ? BulletinCategory.find(id).to_a : BulletinCategory.excludes('disabled' => true)) | ||||
|   end | ||||
|    | ||||
|   def get_tags | ||||
|   	module_app = ModuleApp.first(:conditions => {:key => 'announcement'}) | ||||
|   	@tags = Tag.all(:conditions => {:module_app_id => module_app.id}).order_by(I18n.locale, :asc) | ||||
|   end | ||||
| 
 | ||||
|   def get_sorted_bulletins | ||||
|     bulletins = Bulletin.all | ||||
|     case params[:sort] | ||||
|  |  | |||
|  | @ -26,10 +26,11 @@ class Bulletin | |||
|    | ||||
|   belongs_to :bulletin_category | ||||
|    | ||||
|   embeds_many :bulletin_links, :cascade_callbacks => true | ||||
|   embeds_many :bulletin_files, :cascade_callbacks => true | ||||
|   # embeds_many :bulletin_links, :cascade_callbacks => true | ||||
|   # embeds_many :bulletin_files, :cascade_callbacks => true | ||||
| 
 | ||||
|   # has_many :bulletin_files, :autosave => true, :dependent => :destroy | ||||
|   has_many :bulletin_links, :autosave => true, :dependent => :destroy | ||||
|   has_many :bulletin_files, :autosave => true, :dependent => :destroy | ||||
|    | ||||
|   accepts_nested_attributes_for :bulletin_files, :allow_destroy => true | ||||
|   accepts_nested_attributes_for :bulletin_links, :allow_destroy => true | ||||
|  | @ -38,6 +39,9 @@ class Bulletin | |||
|    | ||||
|   before_save :set_key | ||||
|    | ||||
|   after_save :save_bulletin_links | ||||
|   after_save :save_bulletin_files | ||||
|    | ||||
| 
 | ||||
|   def self.search( search = nil, category_id = nil ) | ||||
|    | ||||
|  | @ -94,6 +98,22 @@ class Bulletin | |||
|     self.is_hidden | ||||
|   end | ||||
|    | ||||
|   def save_bulletin_links | ||||
| 	self.bulletin_links.each do |t| | ||||
| 	  if t.should_destroy | ||||
| 		t.destroy | ||||
| 	  end | ||||
|     end | ||||
|   end | ||||
|    | ||||
|   def save_bulletin_files | ||||
| 	self.bulletin_files.each do |t| | ||||
| 	  if t.should_destroy | ||||
| 		t.destroy | ||||
| 	  end | ||||
|     end | ||||
|   end | ||||
|    | ||||
|    | ||||
|   def title | ||||
|     @title ||= I18nVariable.first(:conditions => {:key => 'title', :language_value_id => self.id, :language_value_type => self.class}) rescue nil | ||||
|  |  | |||
|  | @ -5,13 +5,27 @@ class BulletinFile | |||
| 
 | ||||
|   mount_uploader :file, AssetUploader | ||||
|    | ||||
|   field :filetitle | ||||
|   field :description | ||||
|   # field :filetitle | ||||
|   # field :description | ||||
|   has_one :filetitle, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|   has_one :description, :class_name => "I18nVariable", :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|    | ||||
|   # field :to_save, :type => Boolean | ||||
|   field :should_destroy, :type => Boolean | ||||
|    | ||||
|   # belongs_to :bulletin | ||||
|   embedded_in :bulletin | ||||
|   belongs_to :bulletin | ||||
|   # embedded_in :bulletin | ||||
|    | ||||
|    | ||||
|   protected | ||||
|    | ||||
|   def set_key | ||||
|     if filetitle.new_record? | ||||
|       filetitle.key = 'filetitle' | ||||
|     end | ||||
|     if description.new_record? | ||||
|       description.key = 'description' | ||||
|     end | ||||
|   end   | ||||
| 
 | ||||
| end | ||||
|  |  | |||
|  | @ -4,10 +4,12 @@ class BulletinLink | |||
|   include Mongoid::Timestamps | ||||
|    | ||||
|   field :url | ||||
|   field :name | ||||
|   # field :name | ||||
|    | ||||
|   has_one :i18n_variable, :as => :language_value, :autosave => true, :dependent => :destroy | ||||
|    | ||||
|   field :should_destroy, :type => Boolean | ||||
|    | ||||
|   embedded_in :bulletin | ||||
| 
 | ||||
|   # embedded_in :bulletin | ||||
|   belongs_to :bulletin | ||||
| end | ||||
|  |  | |||
|  | @ -1,13 +1,17 @@ | |||
| 
 | ||||
| <tr id="<%= dom_id bulletin_category %>"> | ||||
| 	<td><%= bulletin_category.key %></td> | ||||
| 	<tr id="<%= dom_id bulletin_category %>" class="with_action"> | ||||
| 		<td> | ||||
| 			<%= bulletin_category.key %> | ||||
| 			<div class="quick-edit"> | ||||
| 				<ul class="nav nav-pills hide"> | ||||
| 					<li><%= link_to t('bulletin_category.edit'), edit_panel_announcement_back_end_bulletin_category_path(bulletin_category), :remote => true %></li> | ||||
| 					<li><%= link_to t('bulletin_category.quick_edit'), panel_announcement_back_end_bulletin_category_quick_edit_path(bulletin_category), :remote => true %></li> | ||||
| 					<li><%= link_to t('bulletin_category.delete'), panel_announcement_back_end_bulletin_category_path(bulletin_category), :confirm => t('announcement.sure?'), :method => :delete, :remote => true %></li> | ||||
| 				</ul> | ||||
| 			</div> | ||||
| 		</td> | ||||
| 		<% @site_valid_locales.each do |locale| %> | ||||
| 		<td><%= bulletin_category.i18n_variable[locale] rescue nil %></td> | ||||
| 		<% end %> | ||||
| 		<td><%= bulletin_category.display %></td> | ||||
| 	<td> | ||||
| 	<%= link_to t('bulletin_category.edit'), edit_panel_announcement_back_end_bulletin_category_path(bulletin_category), :remote => true %> | | ||||
| 	<%= link_to t('bulletin_category.quick_edit'), panel_announcement_back_end_bulletin_category_quick_edit_path(bulletin_category), :remote => true %> | | ||||
| 	<%= link_to t('bulletin_category.delete'), panel_announcement_back_end_bulletin_category_path(bulletin_category), :confirm => t('announcement.sure?'), :method => :delete, :remote => true %> | ||||
| 	</td> | ||||
| 	</tr> | ||||
|  | @ -1,36 +1,36 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <%= form_for(@bulletin_category, :remote => true, :url => @url) do |f| %> | ||||
| <%#= form_for(@bulletin_category, :remote => true, :url => panel_announcement_back_end_bulletin_category_path(@bulletin_category)) do |f| %> | ||||
| 
 | ||||
|   <div class="field"> | ||||
|     <%= f.label :key %><br /> | ||||
| 	<h2><%= (@bulletin_category.new_record? ? 'Add' : 'Edit') %></h2> | ||||
| 
 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :key %> | ||||
| 		<%= f.text_field :key %> | ||||
| 	</div> | ||||
| 	 | ||||
|   <div class="field"> | ||||
|     <%= f.label :name %><br /> | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.fields_for :i18n_variable, (@bulletin_category.new_record? ? @bulletin_category.build_i18n_variable : @bulletin_category.i18n_variable) do |f| %> | ||||
| 		  <% @site_valid_locales.each do |locale| %> | ||||
| 		<%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %> | ||||
| 		<%= f.text_field locale, :style => "width:130px" %> | ||||
| 				<div class="control-group"> | ||||
| 					<%= label_tag "name-#{locale}", "Name-#{I18nVariable.from_locale(locale)}", :class => 'control-label' %> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.text_field locale, :class => 'input-xxlarge' %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 		  <% end %> | ||||
| 		<% end %> | ||||
| 	</div> | ||||
| 	 | ||||
|   <div class="field"> | ||||
| 	<%= f.label :display %> <br /> | ||||
| 	<%#= f.select :display, BulletinCategory::PAYMENT_TYPES, :prompt => 'Select a display method' %> | ||||
| 
 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :display %> | ||||
| 		<%= f.radio_button :display, "List" %>List | ||||
| 	<%#= f.label :display, 'list', :value => '1', :checked => @a %>  | ||||
| 		<%= f.radio_button :display, "Picture" %>Picture | ||||
| 	<%#= f.label :display, 'picture', :value => '2', :checked => @b %>  | ||||
| 		<br />顯示方式是設定在前台頁面時,資訊所呈現的樣式 | ||||
| 	</div> | ||||
|    | ||||
|   <div class="actions"> | ||||
|     <%= f.submit %> | ||||
|   <div class="form-actions"> | ||||
|     <%= f.submit 'Submit/送出', :class=>'btn btn-primary' %> | ||||
|   </div> | ||||
|    | ||||
| <% end %> | ||||
|  |  | |||
|  | @ -0,0 +1,13 @@ | |||
| <!-- <tr class="qe-block hide"> --> | ||||
| <tr class="qe-block hide"> | ||||
| 	<td colspan="8"> | ||||
| 		<legend><%= t(:quick_edit) %></legend> | ||||
| 		<%= form_for bulletin_category, :url => panel_announcement_back_end_bulletin_category_path(bulletin_category), :html => {:class => 'form-horizontal'} do |f| %> | ||||
| 			<%= render :partial => "quick_edit_qe", :locals => { :f => f, :bulletin_category => bulletin_category } %> | ||||
| 			<div class="form-actions"> | ||||
| 				<%= f.submit t(:submit), :class => 'btn btn-primary' %> | ||||
| 				<%= f.submit t(:cancel), :class => 'btn', :type => 'reset' %> | ||||
| 			</div> | ||||
| 		<% end %> | ||||
| 	</td> | ||||
| </tr> | ||||
|  | @ -0,0 +1,28 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <div id="qe-basic" class="qe-edit-div"> | ||||
| 	 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :key %> | ||||
| 		<%= f.text_field :key %> | ||||
| 	</div> | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.fields_for :i18n_variable, bulletin_category.i18n_variable  do |f| %> | ||||
| 		  <% @site_valid_locales.each do |locale| %> | ||||
| 				<div class="control-group"> | ||||
| 					<%= label_tag "title-#{locale}", "Title-#{I18nVariable.from_locale(locale)}", :class => 'control-label' %> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.text_field locale, :class => 'input-xxlarge' %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 		  <% end %> | ||||
| 		<% end %> | ||||
| 	</div> | ||||
| 	 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :display %> | ||||
| 		<%= f.radio_button :display, "List" %>List | ||||
| 		<%= f.radio_button :display, "Picture" %>Picture | ||||
| 		<br />顯示方式是設定在前台頁面時,資訊所呈現的樣式 | ||||
| 	</div> | ||||
| </div> | ||||
|  | @ -1,43 +1,23 @@ | |||
| <% content_for :secondary do %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
|   <ul class="list"> | ||||
| 	  <li><%#= link_to t('bulletin_category.new_announcement_class'), new_panel_announcement_back_end_bulletin_category_path, :class => 'seclink1' %></li> | ||||
|   </ul> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| 
 | ||||
| <h1><%= t('bulletin_category.list_announcement_class') %></h1> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <table id="bulletin_categorys"> | ||||
| <table id="bulletin_categorys" class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
|     <th><%= t('bulletin_category.key') %></th> | ||||
| 			<th class="span1-2"><%= t('bulletin_category.key') %></th> | ||||
| 			<% @site_valid_locales.each do |locale| %> | ||||
| 	<th><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th> | ||||
| 			<th class="span1-2"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th> | ||||
| 			<% end %> | ||||
|     <th><%= t('bulletin_category.display') %></th> | ||||
|     <th><%= t('bulletin.action') %></th> | ||||
| 			<th class="span1-2"><%= t('bulletin_category.display') %></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| 
 | ||||
| <%# @bulletin_categorys.each do |post| %> | ||||
| 	<%= render :partial => 'bulletin_category', :collection => @bulletin_categorys %> | ||||
| <%# end %> | ||||
| 	 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h2>Add New</h2> | ||||
| <div id="form"><%= render :partial => "form" %></div> | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -6,10 +6,22 @@ | |||
| 			<%= f.file_field :file %> | ||||
| 
 | ||||
| 			<%= f.label :file_title %> | ||||
| 			<%= f.text_field :filetitle %> | ||||
| 			<%#= f.text_field :filetitle %> | ||||
| 			<%= f.fields_for :filetitle, (bulletin_file.new_record? ? bulletin_file.build_filetitle : bulletin_file.filetitle ) do |f| %> | ||||
| 				<% @site_valid_locales.each do |locale| %> | ||||
| 				 <%= I18nVariable.from_locale(locale) %> | ||||
| 				 <%= f.text_field locale %> | ||||
| 				<% end %> | ||||
| 			<% end %> | ||||
| 
 | ||||
| 			<%= f.label :file_description %> | ||||
| 			<%= f.text_field :description %> | ||||
| 			<%#= f.text_field :description %> | ||||
| 			<%= f.fields_for :description, (bulletin_file.new_record? ? bulletin_file.build_description : bulletin_file.description ) do |f| %> | ||||
| 				<% @site_valid_locales.each do |locale| %> | ||||
| 				 <%= I18nVariable.from_locale(locale) %> | ||||
| 				 <%= f.text_field locale %> | ||||
| 				<% end %> | ||||
| 			<% end %> | ||||
| 
 | ||||
| 			<span class="action"> | ||||
| 			<% if bulletin_file.new_record? %> | ||||
|  |  | |||
|  | @ -0,0 +1,27 @@ | |||
| 
 | ||||
| 		<div  id="<%= "bulletin_#{bulletin_link.id}" if !bulletin_link.new_record? %>" class='list_item'> | ||||
| 		  <div class="field"> | ||||
| 
 | ||||
| 			<%= f.label :link_url %> | ||||
| 			<%= f.text_field :url %> | ||||
| 
 | ||||
| 			<%= f.label :link_name %> | ||||
| 			<%#= f.text_field :name %>			 | ||||
| 			<%= f.fields_for :i18n_variable, (bulletin_link.new_record? ? bulletin_link.build_i18n_variable : bulletin_link.i18n_variable) do |f| %> | ||||
| 			  <% @site_valid_locales.each do |locale| %> | ||||
| 				<%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %> | ||||
| 				<%= f.text_field locale, :style => "width:130px" %> | ||||
| 			  <% end %> | ||||
| 			<% end %> | ||||
| 
 | ||||
| 			<span class="action"> | ||||
| 			<% if bulletin_link.new_record? %> | ||||
| 			  <a href="#" class="delete"><%= t(:delete) %></a> | ||||
| 			<% else %>	 | ||||
| 			  <%= f.hidden_field :id %> | ||||
| 			  <a href="#" class="remove_existing_record"><%= t(:delete) %></a> | ||||
| 			  <%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %> | ||||
| 			<% end %> | ||||
| 			</span> | ||||
| 		  </div> | ||||
| 		</div> | ||||
|  | @ -6,7 +6,13 @@ | |||
| 			<%= f.text_field :url %> | ||||
| 
 | ||||
| 			<%= f.label :link_name %> | ||||
| 			<%= f.text_field :name %> | ||||
| 			<%#= f.text_field :name %>			 | ||||
| 			<%= f.fields_for :i18n_variable, (bulletin_link.new_record? ? bulletin_link.build_i18n_variable : bulletin_link.i18n_variable) do |f| %> | ||||
| 			  <% @site_valid_locales.each do |locale| %> | ||||
| 				<%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %> | ||||
| 				<%= f.text_field locale, :style => "width:130px" %> | ||||
| 			  <% end %> | ||||
| 			<% end %> | ||||
| 
 | ||||
| 			<span class="action"> | ||||
| 			<% if bulletin_link.new_record? %> | ||||
|  |  | |||
|  | @ -0,0 +1,16 @@ | |||
| 		 | ||||
| 				<tr id="<%= "bulletin_#{bulletin_link2.id}" %>"> | ||||
| 					<td><%= link_to bulletin_link2.i18n_variable.zh_tw, bulletin_link2.url, :target => '_blank' %></td> | ||||
| 					<td><%= link_to bulletin_link2.i18n_variable.en, bulletin_link2.url, :target => '_blank' %></td> | ||||
| 					<td><a href="#modal-link" data-toggle="modal" class="action"><i class="icon-pencil"></i></a> | ||||
| 					<span class="action"> | ||||
| 					 <%= f.hidden_field :id %> | ||||
| 					 <a href class="remove_existing_record"><i class="icon-remove"></i></a> | ||||
| 					 <%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %> | ||||
| 					 </span> | ||||
| 					</td> | ||||
| 				</tr> | ||||
| 
 | ||||
| 
 | ||||
| 				 | ||||
| 				 | ||||
|  | @ -0,0 +1,17 @@ | |||
| 		 | ||||
| 				<tr id="<%= "bulletin_#{bulletin_link2.id}" %>"> | ||||
| 					<td><%= link_to bulletin_link2.i18n_variable.zh_tw, bulletin_link2.url, :target => '_blank' %></td> | ||||
| 					<td><%= link_to bulletin_link2.i18n_variable.en, bulletin_link2.url, :target => '_blank' %></td> | ||||
| 					<td> | ||||
| 					<a href="<%= panel_announcement_back_end_bulletin_link_quick_edit_path(bulletin_link2) %>#modal-link" data-toggle="modal" data-remote="true" class="action"><i class="icon-pencil"></i></a> | ||||
| 					<span class="action"> | ||||
| 					 <%= f.hidden_field :id %> | ||||
| 					 <a href class="remove_existing_record"><i class="icon-remove"></i></a> | ||||
| 					 <%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %> | ||||
| 					 </span> | ||||
| 					</td> | ||||
| 				</tr> | ||||
| 
 | ||||
| 
 | ||||
| 				 | ||||
| 				 | ||||
|  | @ -0,0 +1,41 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| 		<%= form_for(@bulletin.bulletin_links, :remote => true, :url => @link_url) do |f| %> | ||||
| 		 | ||||
|         <div id="modal-link" class="modal hide fade"> | ||||
|             <div class="modal-header"> | ||||
|                 <a class="close" data-dismiss="modal">×</a> | ||||
|                 <h3>Add Link / Edit Link</h3> | ||||
|             </div> | ||||
|             <div class="modal-body form-horizontal"> | ||||
|                 <div class="control-group"> | ||||
|                     <label for="http" class="control-label">URL</label> | ||||
|                     <div class="controls"> | ||||
| 					<%= f.text_field :url %> | ||||
|                     <span class="help-inline">Please correct the error</span> | ||||
|                     </div> | ||||
|                 </div> | ||||
| 				 | ||||
| 				<% @site_valid_locales.each do |locale| %> | ||||
| 					<div class="control-group error"> | ||||
| 						<label for="link-<%= locale %>" class="control-label"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></label> | ||||
| 						<div class="controls"> | ||||
| 						<input type="text" value="" id="link-<%= locale %>" class="input-xlarge"> | ||||
| 						<span class="help-inline">Please correct the error</span> | ||||
| 						</div> | ||||
| 					</div> | ||||
| 				<% end %> | ||||
| 				 | ||||
|             </div> | ||||
| 			 | ||||
|             <div class="modal-footer"> | ||||
|                 <a class="btn btn-primary" href="#">Submit/確定</a> | ||||
|                 <a class="btn" data-dismiss="modal" href="#">Cancel/取消</a> | ||||
|             </div> | ||||
| 
 | ||||
|         </div> | ||||
| 		 | ||||
| 		<% end %> | ||||
| 		 | ||||
| 
 | ||||
|  		 | ||||
|  | @ -1,70 +1,149 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
|   <%= f.error_messages %> | ||||
|   <%= f.select :bulletin_category_id, @bulletin_categorys.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-medium" %> | ||||
|    | ||||
|   <div class="field"> | ||||
|     <%= f.label :image, t('announcement.image') %><br /> | ||||
|     <%= f.file_field :image %> | ||||
| 	<!--Widget start--> | ||||
| 	 | ||||
| 	<div id="sub-wiget"> | ||||
| 		 | ||||
| 		<div id="widget-picture" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a class="action"><i title="Upload pictures" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-picture icons-white"></i>Picture</h3> | ||||
| 			<div class="widget-content clear"> | ||||
| 				<div class="control-group"> | ||||
| 					<img class="pull-left upload-picture" src="images/default-img.png" /> | ||||
| 					<div class="controls file-upload"> | ||||
| 					<label class="control-label btn" for="input-upload"> | ||||
| 						Browse/選擇檔案 | ||||
| 						<%= f.file_field :image, :id => "input-upload", :class => 'upload', :onchange => "document.getElementById('fu').innerHTML = this.form.fu.value = this.value;" %> | ||||
| 					</label> | ||||
| 					<span id='fu' class="file-name"></span> | ||||
| 					<br> | ||||
| 					<input name='fu' class="input-large" type="text"> | ||||
| 					<br> | ||||
| 					<% if @bulletin.image.file %> | ||||
| 	  <%= check_box_tag 'bulletin[image_del]' %> | ||||
| 					  <%= f.check_box :remove_image %> | ||||
| 					  <%= t('announcement.刪除已上傳檔案') %> | ||||
| 					<% end %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 
 | ||||
| 	<div class="field"> | ||||
| 		<div id="widget-date" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a href="#" class="action"><i title="Set the announcement to start and end dates" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-calendar icons-white"></i> Date</h3> | ||||
| 				<div class="widget-content clear"> | ||||
| 				<div class="control-group"> | ||||
| 					<label class="control-label">Start</label> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.date_select :postdate, {:use_month_numbers => true, :prompt => { :month => 'Month', :day => 'Day', :year => 'Year'}, :order => [:day, :month, :year] }, {:class => 'input-small'} %>				 | ||||
| 					</div> | ||||
| 				</div> | ||||
| 				<div class="control-group"> | ||||
| 					<label class="control-label">End</label> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.date_select :deadline, {:use_month_numbers => true, :prompt => { :month => 'Month', :day => 'Day', :year => 'Year'}, :order => [:day, :month, :year] }, {:class => 'input-small'} %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 		   | ||||
| 		<div id="widget-status" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a class="action"><i title="Setting the announcement state" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-star-thin icons-white"></i>Status</h3> | ||||
| 			<div class="widget-content clear"> | ||||
| 				<div class="controls"> | ||||
| 					<%= f.check_box :is_top %><%= t('top') %> | ||||
| 					<%= f.check_box :is_hot %><%= t('hot') %> | ||||
| 					<%= f.check_box :is_hidden %><%= t('hide') %> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 
 | ||||
| 		<div id="widget-tags" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a class="action"><i title="Setting" class="icon-cog icon-white tip"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-tag icons-white"></i>Tags</h3> | ||||
| 				<div class="widget-content clear form-horizontal"> | ||||
| 					<% @tags.each do |tag| %> | ||||
| 					<%= check_box_tag 'bulletin[tag_ids][]', tag.id, @bulletin.tag_ids.include?(tag.id)%> | ||||
| 					<%= tag[I18n.locale] %> | ||||
| 					<% end %> | ||||
| 				</div> | ||||
| 		</div>   | ||||
|    | ||||
| 	</div> | ||||
|    | ||||
|    | ||||
| <!--Wiget End--> | ||||
| <!--Post Start--> | ||||
| 
 | ||||
| 	<div id="post-body"> | ||||
| 		<div id="post-body-content" class="clear"> | ||||
| 		 | ||||
| 			<%= f.label :category %> | ||||
| 			<%= f.select :bulletin_category_id, @bulletin_categorys.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-medium" %> | ||||
| 
 | ||||
| 			<div class="btn-group pull-right"> | ||||
| 				<a class="btn dropdown-toggle" href="#" data-toggle="dropdown"> | ||||
| 					English | ||||
| 					<span class="caret"></span> | ||||
| 				</a> | ||||
| 				<ul class="dropdown-menu"> | ||||
| 					<li><a href="#">English</a></li> | ||||
| 					<li><a href="#">Chinese</a></li> | ||||
| 					<li><a href="#">Japanese</a></li> | ||||
| 					<li><a href="#">French</a></li> | ||||
| 					<li><a href="#">German</a></li> | ||||
| 					<!--<li class="divider"></li> | ||||
| 					<li><a href="#">Separated link</a></li>--> | ||||
| 				</ul> | ||||
| 			</div> | ||||
| 
 | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :title %> | ||||
| 				<%= f.fields_for :title, (@bulletin.new_record? ? @bulletin.build_title : @bulletin.title ) do |f| %> | ||||
| 				  <% @site_valid_locales.each do |locale| %> | ||||
| 					<td> | ||||
| 							<%= I18nVariable.from_locale(locale) %> | ||||
| 					<%= f.text_field locale %> | ||||
| 							<%= f.text_field locale, :class=>'post-title' %> | ||||
| 						</td> | ||||
| 				  <% end %> | ||||
| 				<% end %> | ||||
| 			</div>	 | ||||
| 
 | ||||
| 	<div class="field"> | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :subtitle %> | ||||
| 				<%= f.fields_for :subtitle, (@bulletin.new_record? ? @bulletin.build_subtitle : @bulletin.subtitle ) do |f| %> | ||||
| 					<% @site_valid_locales.each do |locale| %> | ||||
| 						<td> | ||||
| 							<%= I18nVariable.from_locale(locale) %> | ||||
| 					<%= f.text_area locale, :rows => 10, :cols => 40 %> | ||||
| 							<%= f.text_area locale, :style=>"width:100%" %> | ||||
| 						</td> | ||||
| 					<% end %> | ||||
| 				<% end %> | ||||
| 			</div>   | ||||
| 
 | ||||
| 	<div class="field"> | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :text %> | ||||
| 				<%= f.fields_for :text, (@bulletin.new_record? ? @bulletin.build_text : @bulletin.text ) do |f| %> | ||||
| 					<% @site_valid_locales.each do |locale| %> | ||||
| 						<td> | ||||
| 							<%= I18nVariable.from_locale(locale) %> | ||||
| 					<%= f.text_area locale, :rows => 10, :cols => 40 %> | ||||
| 							<%= f.text_area locale, :style=>"width:100%" %> | ||||
| 						</td> | ||||
| 					<% end %> | ||||
| 				<% end %> | ||||
| 			</div> | ||||
| 			 | ||||
|   <div class="field"> | ||||
|     <%= f.label :postdate %><br /> | ||||
|     <%= f.date_select :postdate, :order => [:year, :month, :day], :use_month_numbers => true %> | ||||
|     <%#= date_select("bulletin", "postdate", :use_month_numbers => true) %> | ||||
|   </div> | ||||
|    | ||||
|   <div class="field"> | ||||
|     <%= f.label :deadline %><br /> | ||||
|     <%= f.date_select :deadline, :use_month_numbers => true, :prompt => { :day => 'Select day', :month => 'Select month', :year => 'Select year'}  %> | ||||
|     <%#= f.date_select :deadline, :order => [:year, :month, :day],:default => 1.years.from_now, :use_month_numbers => true  %> | ||||
|   </div> | ||||
|    | ||||
|   <div class="field"> | ||||
|     <%#= f.label :url %><br /> | ||||
|     <%#= f.text_field :url, :size => 60 %> | ||||
|   </div> | ||||
|    | ||||
| 		   | ||||
| 		  <div id='bulletin_links' class="bulletin_links_block <%= @class %>"> | ||||
| 			 | ||||
|  | @ -87,6 +166,50 @@ | |||
| 		  </div> | ||||
| 		   | ||||
| 		   | ||||
| 
 | ||||
| <div class="main-wiget"> | ||||
| 	<div id="widget-link" class="widget-box"> | ||||
| 		<div class="widget-action clear"> | ||||
| 			<a class="action"><i title="Add a reference link" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
| 		</div> | ||||
| 		<h3 class="widget-title"><i class="icons-link icons-white"></i>Link</h3> | ||||
| 		<div class="widget-content"> | ||||
| 			<table class="table table-condensed"> | ||||
| 				<thead> | ||||
| 					<tr> | ||||
| 						<th>Chinese</th> | ||||
| 						<th>English</th> | ||||
| 						<th class="span1"></th> | ||||
| 					</tr> | ||||
| 				</thead> | ||||
|                 <tfoot> | ||||
|                     <tr> | ||||
|                         <td style="text-align:center" colspan="3"> | ||||
|                             <a class="btn btn-primary btn-small" href="#modal-link" data-toggle="modal"><i class="icon-plus icon-white"></i> ADD/新增</a> | ||||
|                         </td> | ||||
|                     </tr> | ||||
|                 </tfoot> | ||||
|                 <tbody> | ||||
| 					<%#= render :partial => 'bulletin_link2', :collection => @bulletin.bulletin_links %> | ||||
| 					 | ||||
| 					<% @bulletin.bulletin_links.each_with_index do |bulletin_link2, i| %> | ||||
| 						<%= f.fields_for :bulletin_links, bulletin_link2 do |f| %> | ||||
| 							<%= render :partial => 'bulletin_link2', :object => bulletin_link2, :locals => {:f => f, :i => i} %> | ||||
| 						<% end %> | ||||
| 					<% end %>	 | ||||
| 					 | ||||
|                 </tbody> | ||||
|             </table> | ||||
|         </div> | ||||
| 		 | ||||
| 		<div id="bulletin_link_qe"><%= render :partial => "bulletin_link_qe" %></div> | ||||
| 		 | ||||
|     </div> | ||||
| </div>		   | ||||
| 		   | ||||
| 		   | ||||
| 		   | ||||
| 		   | ||||
| 		  <div id='bulletin_files' class="bulletin_files_block <%= @class %>"> | ||||
| 			 | ||||
| 			<div id='add_bulletin_file' class="info_input bulletin_files_block"> | ||||
|  | @ -110,9 +233,14 @@ | |||
| 		  <br /> | ||||
| 		  <br /> | ||||
| 	 | ||||
| 	</div> | ||||
| 	 | ||||
| 	<!--Post End--> | ||||
|    | ||||
| 	  <div class="form-actions"> | ||||
| 		<%= f.submit 'Submit/送出', :class=>'btn btn-primary' %> | ||||
| 	  </div> | ||||
|    | ||||
|   <div class="actions"> | ||||
|     <%= f.submit %> | ||||
|   </div> | ||||
|    | ||||
|    | ||||
|  | @ -141,391 +269,3 @@ | |||
| 	  }); | ||||
| 	</script> | ||||
| <% end %> | ||||
| 
 | ||||
| <!--Widget start--> | ||||
| <!-- <div id="sub-wiget"> | ||||
|     <div id="widget-date" class="widget-box"> | ||||
|         <div class="widget-action clear"> | ||||
|             <a href="#" class="action"><i title="Set the announcement to start and end dates" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|         </div> | ||||
|         <h3 class="widget-title"><i class="icons-calendar icons-white"></i> Date</h3> | ||||
|             <div class="widget-content clear"> | ||||
|             <div class="control-group"> | ||||
|                 <label class="control-label">Start</label> | ||||
|                 <div class="controls"> | ||||
|                     <select id="start-day" class="input-small"> | ||||
|                         <option>Day</option> | ||||
|                         <option>1</option> | ||||
|                         <option>2</option> | ||||
|                         <option>3</option> | ||||
|                         <option>4</option> | ||||
|                         <option>5</option> | ||||
|                         <option>6</option> | ||||
|                         <option>7</option> | ||||
|                         <option>8</option> | ||||
|                         <option>9</option> | ||||
|                         <option>10</option> | ||||
|                         <option>11</option> | ||||
|                         <option>12</option> | ||||
|                         <option>13</option> | ||||
|                         <option>14</option> | ||||
|                         <option>15</option> | ||||
|                         <option>16</option> | ||||
|                         <option>17</option> | ||||
|                         <option>18</option> | ||||
|                         <option>19</option> | ||||
|                         <option>20</option> | ||||
|                         <option>21</option> | ||||
|                         <option>22</option> | ||||
|                         <option>23</option> | ||||
|                         <option>24</option> | ||||
|                         <option>25</option> | ||||
|                         <option>26</option> | ||||
|                         <option>27</option> | ||||
|                         <option>28</option> | ||||
|                         <option>29</option> | ||||
|                         <option>30</option> | ||||
|                         <option>31</option> | ||||
|                     </select> | ||||
|                     <select id="start-month" class="input-small"> | ||||
|                         <option>Month</option> | ||||
|                         <option>1</option> | ||||
|                         <option>2</option> | ||||
|                         <option>3</option> | ||||
|                         <option>4</option> | ||||
|                         <option>5</option> | ||||
|                         <option>6</option> | ||||
|                         <option>7</option> | ||||
|                         <option>8</option> | ||||
|                         <option>9</option> | ||||
|                         <option>10</option> | ||||
|                         <option>11</option> | ||||
|                         <option>12</option> | ||||
|                     </select> | ||||
|                     <select id="start-year" class="input-small"> | ||||
|                         <option>Year</option> | ||||
|                         <option>2012</option> | ||||
|                         <option>2011</option> | ||||
|                         <option>2010</option> | ||||
|                         <option>2009</option> | ||||
|                     </select> | ||||
|                 </div> | ||||
|             </div> | ||||
|             <div class="control-group"> | ||||
|                 <label class="control-label">End</label> | ||||
|                 <div class="controls"> | ||||
|                     <select id="start-day" class="input-small"> | ||||
|                         <option>Day</option> | ||||
|                         <option>1</option> | ||||
|                         <option>2</option> | ||||
| 												<option>3</option> | ||||
| 												<option>4</option> | ||||
| 												<option>5</option> | ||||
| 												<option>6</option> | ||||
| 												<option>7</option> | ||||
| 												<option>8</option> | ||||
| 												<option>9</option> | ||||
|                         <option>10</option> | ||||
|                         <option>11</option> | ||||
|                         <option>12</option> | ||||
|                         <option>13</option> | ||||
|                         <option>14</option> | ||||
|                         <option>15</option> | ||||
|                         <option>16</option> | ||||
|                         <option>17</option> | ||||
|                         <option>18</option> | ||||
|                         <option>19</option> | ||||
|                         <option>20</option> | ||||
|                         <option>21</option> | ||||
|                         <option>22</option> | ||||
|                         <option>23</option> | ||||
|                         <option>24</option> | ||||
|                         <option>25</option> | ||||
|                         <option>26</option> | ||||
|                         <option>27</option> | ||||
|                         <option>28</option> | ||||
|                         <option>29</option> | ||||
|                         <option>30</option> | ||||
|                         <option>31</option> | ||||
|                     </select> | ||||
|                     <select id="start-month" class="input-small"> | ||||
|                         <option>Month</option> | ||||
|                         <option>1</option> | ||||
|                         <option>2</option> | ||||
|                         <option>3</option> | ||||
|                         <option>4</option> | ||||
|                         <option>5</option> | ||||
|                         <option>6</option> | ||||
|                         <option>7</option> | ||||
|                         <option>8</option> | ||||
|                         <option>9</option> | ||||
|                         <option>10</option> | ||||
|                         <option>11</option> | ||||
|                         <option>12</option> | ||||
|                     </select> | ||||
|                     <select id="start-year" class="input-small"> | ||||
|                         <option>Year</option> | ||||
|                         <option>2012</option> | ||||
|                         <option>2011</option> | ||||
|                         <option>2010</option> | ||||
|                         <option>2009</option> | ||||
|                     </select> | ||||
|                 </div> | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
|     <div id="widget-status" class="widget-box"> | ||||
|         <div class="widget-action clear"> | ||||
|             <a class="action"><i title="Setting the announcement state" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|         </div> | ||||
|         <h3 class="widget-title"><i class="icons-star-thin icons-white"></i>Status</h3> | ||||
|         <div class="widget-content clear"> | ||||
|             <div class="controls"> | ||||
|                 <label class="checkbox inline"><input type="checkbox" value="hot">Hot</label> | ||||
|                 <label class="checkbox inline"><input type="checkbox" value="top">Top</label> | ||||
|                 <label class="checkbox inline"><input type="checkbox" value="hide">Hide</label> | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
|     <div id="widget-role" class="widget-box"> | ||||
|         <div class="widget-action clear"> | ||||
|             <a class="action"><i title="Set the read role" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|             <a class="action"><i title="Setting" class="icon-cog icon-white tip"></i></a> | ||||
|         </div> | ||||
|         <h3 class="widget-title"><i class="icons-lock icons-white"></i>Permissions</h3> | ||||
|         <div class="widget-content clear"> | ||||
|             <div class="controls"> | ||||
|                 <label class="radio inline"><input class="privacy" type="radio" value="public" name="privacy">Public</label> | ||||
|                 <label class="radio inline"><input class="privacy" type="radio" value="private" name="privacy">Private</label> | ||||
|                 <div class="well select-role"> | ||||
|                     <label class="checkbox inline"><input type="checkbox" value="hot">Student</label> | ||||
|                     <label class="checkbox inline"><input type="checkbox" value="top">Teacher</label> | ||||
|                     <label class="checkbox inline"><input type="checkbox" value="hide">Staff</label> | ||||
|                 </div> | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
|     <div id="widget-picture" class="widget-box"> | ||||
|         <div class="widget-action clear"> | ||||
|             <a class="action"><i title="Upload pictures" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|         </div> | ||||
|         <h3 class="widget-title"><i class="icons-picture icons-white"></i>Picture</h3> | ||||
|         <div class="widget-content clear"> | ||||
|             <div class="control-group"> | ||||
|                 <img class="pull-left upload-picture" src="images/default-img.png" /> | ||||
|                 <div class="controls file-upload"> | ||||
|                 <label class="control-label btn" for="input-upload"> | ||||
|                     Browse/選擇檔案 | ||||
|                     <input id="input-upload" class="upload" type="file" name="upload" onchange="document.getElementById('fu').innerHTML = this.form.fu.value = this.value;"> | ||||
|                 </label> | ||||
|                 <span id='fu' class="file-name"></span> | ||||
|                 <br> | ||||
|                 <input name='fu' class="input-medium" type="text"> | ||||
|                 </div> | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
|      | ||||
|     <div id="widget-tags" class="widget-box"> | ||||
|         <div class="widget-action clear"> | ||||
|             <a class="action"><i title="Enter post tags, Chinese and English required" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|             <a class="action"><i title="Setting" class="icon-cog icon-white tip"></i></a> | ||||
|         </div> | ||||
|         <h3 class="widget-title"><i class="icons-tag icons-white"></i>Tags</h3> | ||||
|             <div class="widget-content clear form-horizontal"> | ||||
|                 <div class="control-group error"> | ||||
|                     <label class="control-label" for="tags-zh-tw"> | ||||
|                         Chinese | ||||
|                     </label> | ||||
|                     <div class="controls"> | ||||
|                         <input id='tags-zh-tw' class="input-prepend" type="text"> | ||||
|                         <span class="help-inline">Please correct the error</span> | ||||
|                     </div> | ||||
|                 </div> | ||||
|                 <div class="control-group"> | ||||
|                     <label class="control-label" for="tags-en"> | ||||
|                         English | ||||
|                     </label> | ||||
|                     <div class="controls"> | ||||
|                         <input id='tags-en' class="input-prepend" type="text"> | ||||
|                         <span class="help-inline">Please correct the error</span> | ||||
|                     </div> | ||||
|                 </div> | ||||
|                 <div class="clear"> | ||||
|                     <a class="pull-right btn btn-primary" href="#">Add/新增</a> | ||||
|                 </div> | ||||
|                 <hr> | ||||
|                 <span class="label label-tags">Default<a href><i class="icon-remove icon-white"></i></a></span> | ||||
|                 <span class="label label-tags">Default<a href><i class="icon-remove icon-white"></i></a></span> | ||||
|                 <span class="label label-tags">Default<a href><i class="icon-remove icon-white"></i></a></span> | ||||
|                 <span class="label label-tags">Default<a href><i class="icon-remove icon-white"></i></a></span> | ||||
|             </div> | ||||
|     </div> | ||||
| </div> --> | ||||
| <!--Wiget End--> | ||||
| <!--Post Start--> | ||||
| <!-- <div id="post-body"> | ||||
|   <div id="post-body-content" class="clear"> | ||||
|     <%= f.select :bulletin_category_id, @bulletin_categorys.collect{|t| [ t.i18n_variable[I18n.locale], t.id ]}, {}, :class => "input-medium" %>      <div class="btn-group pull-right"> | ||||
|       <a class="btn dropdown-toggle" href="#" data-toggle="dropdown"> | ||||
|                 English | ||||
|                 <span class="caret"></span> | ||||
|             </a> | ||||
|             <ul class="dropdown-menu"> | ||||
|                 <li><a href="#">English</a></li> | ||||
|                 <li><a href="#">Chinese</a></li> | ||||
|                 <li><a href="#">Japanese</a></li> | ||||
|                 <li><a href="#">French</a></li> | ||||
|                 <li><a href="#">German</a></li> | ||||
|                 <!--<li class="divider"></li> | ||||
|              <li><a href="#">Separated link</a></li>--> | ||||
|             </ul> | ||||
|         </div> | ||||
| 
 | ||||
| 
 | ||||
|         <div class="title"> | ||||
|             <input class="post-title" type="text" placeholder="Enter title here"> | ||||
|         </div> | ||||
| 
 | ||||
| 
 | ||||
|         <div class="editor"> | ||||
|         	<%= text_area_tag 'locale', nil, :style=>"width:100%" %> | ||||
|         </div> | ||||
|         <div class="main-wiget"> | ||||
|             <div id="widget-link" class="widget-box"> | ||||
|                 <div class="widget-action clear"> | ||||
|                     <a class="action"><i title="Add a reference link" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|                 </div> | ||||
|                 <h3 class="widget-title"><i class="icons-link icons-white"></i>Link</h3> | ||||
|                 <div class="widget-content"> | ||||
|                     <table class="table table-condensed"> | ||||
|                         <thead> | ||||
|                             <tr> | ||||
|                                 <th>Chinese</th> | ||||
|                                 <th>English</th> | ||||
|                                 <th class="span1"></th> | ||||
|                             </tr> | ||||
|                         </thead> | ||||
|                         <tfoot> | ||||
|                             <tr> | ||||
|                                 <td style="text-align:center" colspan="3"> | ||||
|                                     <a class="btn btn-primary btn-small" href="#modal-link" data-toggle="modal"><i class="icon-plus icon-white"></i> ADD/新增</a> | ||||
|                                 </td> | ||||
|                             </tr> | ||||
|                         </tfoot> | ||||
|                         <tbody> | ||||
|                             <tr> | ||||
|                                 <td>…</td> | ||||
|                                 <td>…</td> | ||||
|                                 <td><a href="#modal-link" data-toggle="modal" class="action"><i class="icon-pencil"></i></a><a href class="action"><i class="icon-remove"></i></a></td> | ||||
|                             </tr> | ||||
|                         </tbody> | ||||
|                     </table> | ||||
|                 </div> | ||||
|                 <div id="modal-link" class="modal hide fade"> | ||||
|                     <div class="modal-header"> | ||||
|                         <a class="close" data-dismiss="modal">×</a> | ||||
|                         <h3>Add Link / Edit Link</h3> | ||||
|                     </div> | ||||
|                     <div class="modal-body form-horizontal"> | ||||
|                         <div class="control-group"> | ||||
|                             <label for="http" class="control-label">http://</label> | ||||
|                             <div class="controls"> | ||||
|                             <input type="text" value="" id="http" class="input-xlarge"> | ||||
|                             <span class="help-inline">Please correct the error</span> | ||||
|                             </div> | ||||
|                         </div> | ||||
|                         <div class="control-group error"> | ||||
|                             <label for="link-zh-tw" class="control-label">Chinese</label> | ||||
|                             <div class="controls"> | ||||
|                             <input type="text" value="" id="link-zh-tw" class="input-xlarge"> | ||||
|                             <span class="help-inline">Please correct the error</span> | ||||
|                             </div> | ||||
|                         </div> | ||||
|                         <div class="control-group"> | ||||
|                             <label for="link-en" class="control-label">English</label> | ||||
|                             <div class="controls"> | ||||
|                             <input type="text" value="" id="link-en" class="input-xlarge"> | ||||
|                             <span class="help-inline">Please correct the error</span> | ||||
|                             </div> | ||||
|                         </div> | ||||
|                     </div> | ||||
|                     <div class="modal-footer"> | ||||
|                         <a class="btn btn-primary" href="#">Submit/確定</a> | ||||
|                         <a class="btn" data-dismiss="modal" href="#">Cancel/取消</a> | ||||
|                     </div> | ||||
|                 </div> | ||||
|             </div> | ||||
|             <div id="widget-file" class="widget-box"> | ||||
|                 <div class="widget-action clear"> | ||||
|                     <a class="action"><i title="Added to the file" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
|                 </div> | ||||
|                 <h3 class="widget-title"><i class="icons-paperclip icons-white"></i>File</h3> | ||||
|                 <div class="widget-content"> | ||||
|                     <table class="table table-condensed"> | ||||
|                         <thead> | ||||
|                             <tr> | ||||
|                                 <th>Chinese</th> | ||||
|                                 <th>English</th> | ||||
|                                 <th class="span1"></th> | ||||
|                             </tr> | ||||
|                         </thead> | ||||
|                         <tfoot> | ||||
|                             <tr> | ||||
|                                 <td style="text-align:center" colspan="3"> | ||||
|                                     <a class="btn btn-primary btn-small" href="#modal-file" data-toggle="modal"><i class="icon-plus icon-white"></i> ADD/新增</a> | ||||
|                                 </td> | ||||
|                             </tr> | ||||
|                         </tfoot> | ||||
|                         <tbody> | ||||
|                             <tr> | ||||
|                                 <td>…</td> | ||||
|                                 <td>…</td> | ||||
|                                 <td><a href="#modal-file" data-toggle="modal" class="action"><i class="icon-pencil"></i></a><a href class="action"><i class="icon-remove"></i></a></td> | ||||
|                             </tr> | ||||
|                         </tbody> | ||||
|                     </table> | ||||
|                 </div> | ||||
|                 <div id="modal-file" class="modal hide fade"> | ||||
|                     <div class="modal-header"> | ||||
|                         <a class="close" data-dismiss="modal">×</a> | ||||
|                         <h3>Add File / Edit File</h3> | ||||
|                     </div> | ||||
|                     <div class="modal-body form-horizontal"> | ||||
|                         <div class="controls file-upload"> | ||||
|                         <label class="control-label btn" for="input-upload"> | ||||
|                             Browse | ||||
|                             <input id="input-upload" class="upload" type="file" name="upload" onchange="document.getElementById('fn').innerHTML = this.value;"> | ||||
|                         </label> | ||||
|                         <span id='fn' class="file-name"></span> | ||||
|                         </div> | ||||
|                         <div class="control-group"> | ||||
|                             <label for="file-zh-tw" class="control-label">Chinese</label> | ||||
|                             <div class="controls"> | ||||
|                             <input type="text" value="" id="file-zh-tw" class="input-xlarge"> | ||||
|                             <span class="help-inline">Please correct the error</span> | ||||
|                             </div> | ||||
|                         </div> | ||||
|                         <div class="control-group"> | ||||
|                             <label for="file-en" class="control-label">English</label> | ||||
|                             <div class="controls"> | ||||
|                             <input type="text" value="" id="file-en" class="input-xlarge"> | ||||
|                             <span class="help-inline">Please correct the error</span> | ||||
|                             </div> | ||||
|                         </div> | ||||
|                     </div> | ||||
|                     <div class="modal-footer"> | ||||
|                         <a class="btn btn-primary" href="#">Submit/確定</a> | ||||
|                         <a class="btn" data-dismiss="modal" href="#">Cancel/取消</a> | ||||
|                     </div> | ||||
|                 </div> | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
| </div> --> | ||||
| <!--Post End--> | ||||
| <!-- <div class="form-actions"> --> | ||||
|   <button class="btn btn-success" type="submit">Preview/預覽</button> | ||||
|     <button class="btn btn-primary" type="submit">Submit/送出</button> | ||||
|     <button class="btn" type="reset">Cancel/取消</button> | ||||
| <!-- </div> --> | ||||
|  |  | |||
|  | @ -17,11 +17,13 @@ | |||
|                     </tr> | ||||
|                 </tfoot> | ||||
|                 <tbody> | ||||
| 					<% bulletin.bulletin_links.each_with_index do |blink, i| %> | ||||
|                     <tr> | ||||
|                         <td>…</td> | ||||
|                         <td>…</td> | ||||
|                         <td><%= link_to blink.i18n_variable.zh_tw, blink.url, :target => '_blank' %></td> | ||||
|                         <td><%= link_to blink.i18n_variable.en, blink.url, :target => '_blank' %></td> | ||||
|                         <td><a href="#modal-link" data-toggle="modal" class="action"><i class="icon-pencil"></i></a><a href class="action"><i class="icon-remove"></i></a></td> | ||||
|                     </tr> | ||||
| 					<% end %> | ||||
|                 </tbody> | ||||
|             </table> | ||||
|         </div> | ||||
|  | @ -32,27 +34,25 @@ | |||
|             </div> | ||||
|             <div class="modal-body form-horizontal"> | ||||
|                 <div class="control-group"> | ||||
|                     <label for="http" class="control-label">http://</label> | ||||
|                     <label for="http" class="control-label">URL</label> | ||||
|                     <div class="controls"> | ||||
|                     <input type="text" value="" id="http" class="input-xlarge"> | ||||
|                     <span class="help-inline">Please correct the error</span> | ||||
|                     </div> | ||||
|                 </div> | ||||
| 				 | ||||
| 				<% @site_valid_locales.each do |locale| %> | ||||
| 					<div class="control-group error"> | ||||
|                     <label for="link-zh-tw" class="control-label">Chinese</label> | ||||
| 						<label for="link-<%= locale %>" class="control-label"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></label> | ||||
| 						<div class="controls"> | ||||
|                     <input type="text" value="" id="link-zh-tw" class="input-xlarge"> | ||||
|                     <span class="help-inline">Please correct the error</span> | ||||
|                     </div> | ||||
|                 </div> | ||||
|                 <div class="control-group"> | ||||
|                     <label for="link-en" class="control-label">English</label> | ||||
|                     <div class="controls"> | ||||
|                     <input type="text" value="" id="link-en" class="input-xlarge"> | ||||
| 						<input type="text" value="" id="link-<%= locale %>" class="input-xlarge"> | ||||
| 						<span class="help-inline">Please correct the error</span> | ||||
| 						</div> | ||||
| 					</div> | ||||
| 				<% end %> | ||||
| 				 | ||||
|             </div> | ||||
| 			 | ||||
|             <div class="modal-footer"> | ||||
|                 <a class="btn btn-primary" href="#">Submit/確定</a> | ||||
|                 <a class="btn" data-dismiss="modal" href="#">Cancel/取消</a> | ||||
|  |  | |||
|  | @ -7,11 +7,16 @@ | |||
|                 <div class="controls file-upload"> | ||||
| 				<label class="control-label btn" for="input-upload"> | ||||
| 					Browse/選擇檔案 | ||||
|                     <input id="input-upload" class="upload" type="file" name="upload" onchange="document.getElementById('fu').innerHTML = this.form.fu.value = this.value;"> | ||||
| 					<%= f.file_field :image, :id => "input-upload", :class => 'upload', :onchange => "document.getElementById('fu').innerHTML = this.form.fu.value = this.value;" %> | ||||
| 				</label> | ||||
|                 <span id='fu' class="file-name"></span> | ||||
|                 <br> | ||||
|                 <input name='fu' class="input-large" type="text"> | ||||
| 				<br> | ||||
| 				<% if bulletin.image.file %> | ||||
| 					<%= f.check_box :remove_image %> | ||||
| 					<%= t('announcement.刪除已上傳檔案') %> | ||||
| 				<% end %> | ||||
|                 </div> | ||||
|             </div> | ||||
|         </div> | ||||
|  |  | |||
|  | @ -0,0 +1,9 @@ | |||
| <%= render 'filter' %> | ||||
| <table id="bulettin_sort_list" class="table main-list"> | ||||
| 	<%= render 'bulletins' %> | ||||
| </table> | ||||
| 
 | ||||
| <div class="form-actions"> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icon-plus icon-white') + t('admin.add'), new_panel_announcement_back_end_bulletin_path, :class => 'btn btn-primary' %> | ||||
| </div> | ||||
| 
 | ||||
|  | @ -0,0 +1,2 @@ | |||
| //$.each($(".quick_edit"),function(obj){ $(this).remove(); }); | ||||
| $("#<%= "bulletin_#{bulletin_link2.id}" %>").append("<%= j render "bulletin_link_qe" %>"); | ||||
|  | @ -17,7 +17,7 @@ | |||
| 	</li> | ||||
| 	<li> | ||||
|   <b><%= t('announcement.title') %></b> | ||||
|   <%= @bulletin.title %> | ||||
|   <%= @bulletin.title[I18n.locale] %> | ||||
| 	</li> | ||||
| 	<li> | ||||
|   <%#= image_tag(@bulletin.image.url, :size => "320x240") if @bulletin.image.file %> | ||||
|  | @ -25,23 +25,23 @@ | |||
| 	</li> | ||||
| 	<li> | ||||
|   <b><%= t('announcement.subtitle') %></b> | ||||
|   <%= @bulletin.subtitle %> | ||||
|   <%= @bulletin.subtitle[I18n.locale].html_safe %> | ||||
| 	</li> | ||||
| 	<li> | ||||
|   <b><%= t('announcement.text') %></b> | ||||
|   <%= @bulletin.text %> | ||||
|   <%= @bulletin.text[I18n.locale].html_safe %> | ||||
| 	</li> | ||||
| 	<li> | ||||
| 	<li> | ||||
| 	<b><%= t('announcement.link') %></b> | ||||
| 	<% @bulletin.bulletin_links.each do | blink | %> | ||||
|     <%= link_to blink.name, blink.url, :target => '_blank' %> | ||||
|     <%= link_to blink.i18n_variable[I18n.locale], blink.url, :target => '_blank' %> | ||||
| 	<% end %> | ||||
| 	</li> | ||||
| 	<li> | ||||
| 	<b><%= t('announcement.file') %></b> | ||||
| 	<% @bulletin.bulletin_files.each do | bfile | %> | ||||
| 	<%= link_to bfile.filetitle, bfile.file.url, {:target => '_blank', :title => bfile.description} if bfile.file.file %> | ||||
| 	<%= link_to bfile.filetitle[I18n.locale], bfile.file.url, {:target => '_blank', :title => bfile.description[I18n.locale]} if bfile.file.file %> | ||||
| 	<% end %> | ||||
| 	</li> | ||||
| 	<li> | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ | |||
| 		<li> | ||||
| 			<div class="news_img"><%= image_tag(post.image.url, :size => "290x130") if post.image.file %></div> | ||||
| 			<h3 class="h3 news_title"><%= link_to post.title[I18n.locale], panel_announcement_front_end_bulletin_path(post, :category_id => post.bulletin_category_id) %></h3> | ||||
| 			<p class="news_wrap"><%= post.subtitle[I18n.locale] %></p> | ||||
| 			<p class="news_wrap"><%= post.subtitle[I18n.locale].html_safe %></p> | ||||
| 		</li> | ||||
| 		<% end %> | ||||
| 	</ul> | ||||
|  |  | |||
|  | @ -3,7 +3,10 @@ Rails.application.routes.draw do | |||
|     namespace :announcement do | ||||
|       namespace :back_end do | ||||
|         root :to => "bulletins#index" | ||||
|         resources :bulletins | ||||
|         resources :bulletins do | ||||
|           match "link_quick_add/:bulletin_id" => "bulletins#link_quick_add" ,:as => :link_quick_add | ||||
|           match "link_quick_edit/:bulletin_id" => "bulletins#link_quick_edit" ,:as => :link_quick_edit | ||||
|         end | ||||
|         resources :bulletin_categorys, :controller => 'bulletin_categorys' do | ||||
|           match "quick_edit/:bulletin_category_id" => "bulletin_categorys#quick_edit" ,:as => :quick_edit | ||||
|         end | ||||
|  |  | |||
|  | @ -1,30 +1,31 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <%= f.error_messages %> | ||||
|   <%#= debugger %> | ||||
| 
 | ||||
|  <div class="field"> | ||||
| <div id="post-body"> | ||||
| 
 | ||||
| 	<div class="title"> | ||||
| 	  <%= f.label :name %> | ||||
| 	  <%= @page_context.page.i18n_variable[I18n.locale] %> | ||||
| 	</div> | ||||
| 
 | ||||
|  <div class="field"> | ||||
| 	<div class="title"> | ||||
| 		<%= f.label :context %> | ||||
| 		<%= f.fields_for :context, (@page_context.new_record? ? @page_context.build_context : @page_context.context ) do |f| %> | ||||
| 			<% @site_valid_locales.each do |locale| %> | ||||
| 				<td> | ||||
| 					<%= I18nVariable.from_locale(locale) %> | ||||
|      <%= f.text_area locale, :rows => 10, :cols => 40 %> | ||||
| 					<%= f.text_area locale, :style=>"width:100%" %> | ||||
| 				</td> | ||||
| 			<% end %> | ||||
| 		<% end %> | ||||
| 	</div> | ||||
| 	   | ||||
|   <br /> | ||||
|   <br /> | ||||
| 	   | ||||
|   <div class="actions"> | ||||
|     <%= f.submit %> | ||||
| 	<div class="form-actions"> | ||||
| 		<%= f.submit 'Submit/送出', :class=>'btn btn-primary' %> | ||||
| 	</div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,10 +1,14 @@ | |||
| 
 | ||||
| <tr id="<%= dom_id page_context %>"> | ||||
| 	<td><%= page_context.page.i18n_variable[I18n.locale] %></td> | ||||
| 			<tr id="<%= dom_id page_context %>" class="with_action"> | ||||
| 				<td> | ||||
| 					<%= page_context.page.i18n_variable[I18n.locale] %> | ||||
| 					<div class="quick-edit"> | ||||
| 						<ul class="nav nav-pills hide"> | ||||
| 							<li><%= link_to t('page_context.edit'), edit_panel_page_content_back_end_page_context_path(page_context) %></li> | ||||
| 						</ul> | ||||
| 					</div> | ||||
| 				</td> | ||||
| 				<td><%= link_to page_context.version, panel_page_content_back_end_view_path(page_context.page_id) %></td> | ||||
| 				<td><%= page_context.updated_at.strftime("%Y-%m-%d %H:%I:%S") %></td> | ||||
| 				<td><%= User.find(page_context.create_user_id).name %></td> | ||||
| 	<td> | ||||
| 	<%= link_to t('page_context.edit'), edit_panel_page_content_back_end_page_context_path(page_context) %>  | ||||
| 	</td> | ||||
| 			</tr> | ||||
|  | @ -1,10 +1,15 @@ | |||
| 
 | ||||
| <tr id="<%= dom_id view_page_context %>"> | ||||
| 	<td><%= view_page_context.page.i18n_variable[I18n.locale] %></td> | ||||
| 
 | ||||
| 			<tr id="<%= dom_id view_page_context %>" class="with_action"> | ||||
| 				<td> | ||||
| 					<%= view_page_context.page.i18n_variable[I18n.locale] %> | ||||
| 					<div class="quick-edit"> | ||||
| 						<ul class="nav nav-pills hide"> | ||||
| 							<li><%= link_to t('view_page_context.show'), panel_page_content_back_end_page_context_path(view_page_context) %></li> | ||||
| 						</ul> | ||||
| 					</div> | ||||
| 				</td> | ||||
| 				<td><%= view_page_context.version %></td> | ||||
| 				<td><%= view_page_context.updated_at.strftime("%Y-%m-%d %H:%I:%S") %></td> | ||||
| 				<td><%= User.find(view_page_context.create_user_id).name %></td> | ||||
| 	<td> | ||||
| 	<%= link_to t('view_page_context.show'), panel_page_content_back_end_page_context_path(view_page_context) %> | ||||
| 	</td> | ||||
| 			</tr> | ||||
|  | @ -1,7 +1,3 @@ | |||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h1><%= t('page_content.editing_page_content') %></h1> | ||||
| 
 | ||||
|  | @ -9,8 +5,4 @@ | |||
| 	<%= render :partial => 'form', :locals => {:f => f} %> | ||||
| <% end %> | ||||
| 
 | ||||
| <%= link_back %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <%#= link_back %> | ||||
|  | @ -1,36 +1,20 @@ | |||
| <% content_for :secondary do %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
|   <ul class="list"> | ||||
| 	  <li><%= link_to t('page_context.page_content_list'), panel_page_content_back_end_page_contexts_path %></li> | ||||
|   </ul> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h1><%= t('page_context.list_page_content') %></h1> | ||||
| 
 | ||||
| 	<table> | ||||
| <table class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 		<th><%= t('page_context.name') %></th> | ||||
| 		<th><%= t('page_context.version') %></th> | ||||
| 		<th><%= t('page_context.update_time') %></th> | ||||
| 		<th><%= t('page_context.last_modified') %></th> | ||||
| 		<th><%= t('page_context.action') %></th> | ||||
| 			<th class="span7 select"><%= t('page_context.name') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.version') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.update_time') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.last_modified') %></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| 	   | ||||
| 		<%= render :partial => 'page_context', :collection => @page_contexts %> | ||||
| 
 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <br /> | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,36 +1,19 @@ | |||
| <% content_for :secondary do %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
|   <ul class="list"> | ||||
| 	  <li><%= link_to t('page_context.page_content_list'), panel_page_content_back_end_page_contexts_path %></li> | ||||
|   </ul> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h1><%= t('page_context.list_page_content') %></h1> | ||||
| 
 | ||||
| 	<table> | ||||
| <table class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 		<th><%= t('page_context.name') %></th> | ||||
| 		<th><%= t('page_context.version') %></th> | ||||
| 		<th><%= t('page_context.update_time') %></th> | ||||
| 		<th><%= t('page_context.last_modified') %></th> | ||||
| 		<th><%= t('page_context.action') %></th> | ||||
| 			<th class="span7 select"><%= t('page_context.name') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.version') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.update_time') %></th> | ||||
| 			<th class="span1-2"><%= t('page_context.last_modified') %></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| 	   | ||||
| 	<%= render :partial => 'view_page_context', :collection => @page_contexts %> | ||||
| 
 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <br /> | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| class Panel::WebResource::BackEnd::WebLinkCategorysController < ApplicationController | ||||
|    | ||||
|   layout 'admin' | ||||
|   layout 'new_admin' | ||||
|    | ||||
|   def index | ||||
|     @web_link_categorys = WebLinkCategory.all | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| class Panel::WebResource::BackEnd::WebLinksController < ApplicationController | ||||
| 
 | ||||
|    | ||||
|   layout 'admin' | ||||
|   layout 'new_admin' | ||||
|    | ||||
|   before_filter :authenticate_user! | ||||
|   before_filter :is_admin? | ||||
|  |  | |||
|  | @ -1,25 +1,29 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <%= form_for(@web_link_category, :remote => true, :url => @url) do |f| %> | ||||
| <%#= form_for(@web_link_category, :remote => true, :url => panel_web_resource_back_end_web_link_category_path(@web_link_category)) do |f| %> | ||||
| 
 | ||||
|   <div class="field"> | ||||
|     <%= f.label :key %><br /> | ||||
| 	<h2><%= (@web_link_category.new_record? ? 'Add' : 'Edit') %></h2> | ||||
| 
 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :key %> | ||||
| 		<%= f.text_field :key %> | ||||
| 	</div> | ||||
| 	 | ||||
|   <div class="field"> | ||||
|     <%= f.label :name %><br /> | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.fields_for :i18n_variable, (@web_link_category.new_record? ? @web_link_category.build_i18n_variable : @web_link_category.i18n_variable) do |f| %> | ||||
| 		  <% @site_valid_locales.each do |locale| %> | ||||
| 		<%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %> | ||||
| 		<%= f.text_field locale, :style => "width:130px" %> | ||||
| 				<div class="control-group"> | ||||
| 					<%= label_tag "name-#{locale}", "Name-#{I18nVariable.from_locale(locale)}", :class => 'control-label' %> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.text_field locale, :class => 'input-xxlarge' %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 		  <% end %> | ||||
| 		<% end %> | ||||
| 	</div> | ||||
|    | ||||
|   <div class="actions"> | ||||
|     <%= f.submit %> | ||||
|   <div class="form-actions"> | ||||
|     <%= f.submit 'Submit/送出', :class=>'btn btn-primary' %> | ||||
|   </div> | ||||
|    | ||||
| <% end %> | ||||
|  |  | |||
|  | @ -1,12 +1,16 @@ | |||
| 
 | ||||
| <tr id="<%= dom_id web_link_category %>"> | ||||
| 	<td><%= web_link_category.key %></td> | ||||
| 
 | ||||
| 	<tr id="<%= dom_id web_link_category %>" class="with_action"> | ||||
| 		<td> | ||||
| 			<%= web_link_category.key %> | ||||
| 			<div class="quick-edit"> | ||||
| 				<ul class="nav nav-pills hide"> | ||||
| 					<li><%= link_to t('web_link_category.edit'), edit_panel_web_resource_back_end_web_link_category_path(web_link_category), :remote => true %></li> | ||||
| 					<li><%= link_to t('web_link_category.delete'), panel_web_resource_back_end_web_link_category_quick_edit_path(web_link_category), :confirm => t('announcement.sure?'), :method => :delete, :remote => true %></li> | ||||
| 				</ul> | ||||
| 			</div> | ||||
| 		</td> | ||||
| 		<% @site_valid_locales.each do |locale| %> | ||||
| 		<td><%= web_link_category.i18n_variable[locale] rescue nil %></td> | ||||
| 		<% end %> | ||||
| 	<td> | ||||
| 	<%= link_to t('web_link_category.edit'), edit_panel_web_resource_back_end_web_link_category_path(web_link_category), :remote => true %> | | ||||
| 	<%= link_to t('web_link_category.quick_edit'), panel_web_resource_back_end_web_link_category_quick_edit_path(web_link_category), :remote => true %> | | ||||
| 	<%= link_to t('web_link_category.delete'), panel_web_resource_back_end_web_link_category_path(web_link_category), :confirm => t('sure?'), :method => :delete, :remote => true %> | ||||
| 	</td> | ||||
| 	</tr> | ||||
|  | @ -1,43 +1,23 @@ | |||
| <% content_for :secondary do %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
|   <ul class="list"> | ||||
| 	  <li><%#= link_to t('web_link_category.new_web_resource_class'), new_panel_web_resource_back_end_web_link_category_path, :class => 'seclink1' %></li> | ||||
|   </ul> | ||||
| <% end -%> | ||||
| 
 | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| 
 | ||||
| <h1><%= t('web_link_category.list_web_resource_class') %></h1> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <table id="web_link_categorys"> | ||||
| <table id="web_link_categorys" class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
|     <th><%= t('web_link_category.key') %></th> | ||||
| 			<th class="span1-2"><%= t('web_link_category.key') %></th> | ||||
| 			<% @site_valid_locales.each do |locale| %> | ||||
| 	<th><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th> | ||||
| 			<th class="span1-2"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th> | ||||
| 			<% end %> | ||||
|     <th><%= t('web_link.action') %></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| 
 | ||||
| <%# @web_link_categorys.each do |post| %> | ||||
| 	<%= render :partial => 'web_link_category', :collection => @web_link_categorys %> | ||||
| <%# end %> | ||||
| 	 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h2>Add New</h2> | ||||
| <div id="form"><%= render :partial => "form" %></div> | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,62 +1,101 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
|   <%= f.error_messages %> | ||||
|   <%#= debugger %> | ||||
| 
 | ||||
|   <div class="field"> | ||||
|     <%= f.label :category %><br /> | ||||
| 	<%= f.select :web_link_category_id, @web_link_categorys.collect {|t| [ t.i18n_variable[I18n.locale], t.id ]} %> | ||||
| 	<!--Widget start--> | ||||
| 	 | ||||
| 	<div id="sub-wiget"> | ||||
| 		   | ||||
| 		<div id="widget-status" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a class="action"><i title="Setting the announcement state" class="icon-exclamation-sign icon-white tip"></i></a> | ||||
| 			</div> | ||||
|    | ||||
|  <div class="field"> | ||||
|   <%= f.label :name %> | ||||
|   <%= f.fields_for :name, (@web_link.new_record? ? @web_link.build_name : @web_link.name ) do |f| %> | ||||
|    <% @site_valid_locales.each do |locale| %> | ||||
|     <td> | ||||
|      <%= I18nVariable.from_locale(locale) %> | ||||
|      <%= f.text_field locale %> | ||||
|     </td> | ||||
|    <% end %> | ||||
|   <% end %> | ||||
|  </div> | ||||
|    | ||||
|   <div class="field"> | ||||
|     <%= f.label :url %><br /> | ||||
|     <%= f.text_field :url, :size => 60 %> | ||||
|   </div> | ||||
| 
 | ||||
|  <div class="field"> | ||||
|   <%= f.label :describe %> | ||||
|   <%= f.fields_for :context, (@web_link.new_record? ? @web_link.build_context : @web_link.context ) do |f| %> | ||||
|    <% @site_valid_locales.each do |locale| %> | ||||
|     <td> | ||||
|      <%= I18nVariable.from_locale(locale) %> | ||||
|      <%= f.text_area locale, :rows => 10, :cols => 40 %> | ||||
|     </td> | ||||
|    <% end %> | ||||
|   <% end %> | ||||
|  </div> | ||||
|    | ||||
|   <div class="field"> | ||||
|     <%= f.label :status %><br /> | ||||
| 			<h3 class="widget-title"><i class="icons-star-thin icons-white"></i>Status</h3> | ||||
| 			<div class="widget-content clear"> | ||||
| 				<div class="controls"> | ||||
| 					<%= f.check_box :is_top %><%= t('top') %> | ||||
| 					<%= f.check_box :is_hot %><%= t('hot') %> | ||||
|     <%= f.check_box :is_hidden %><%= t('hidden') %> | ||||
| 					<%= f.check_box :is_hidden %><%= t('hide') %> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 
 | ||||
|   <div class="field"> | ||||
|     <%= f.label :tags %><br /> | ||||
| 		<div id="widget-tags" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear"> | ||||
| 				<a class="action"><i title="Setting" class="icon-cog icon-white tip"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-tag icons-white"></i>Tags</h3> | ||||
| 				<div class="widget-content clear form-horizontal"> | ||||
| 					<% @tags.each do |tag| %> | ||||
| 					<%= check_box_tag 'web_link[tag_ids][]', tag.id, @web_link.tag_ids.include?(tag.id)%> | ||||
| 					<%= tag[I18n.locale] %> | ||||
| 					<% end %> | ||||
| 				</div> | ||||
|    | ||||
|   <br /> | ||||
|   <br /> | ||||
|    | ||||
|    | ||||
|   <div class="actions"> | ||||
|     <%= f.submit %> | ||||
| 		</div>   | ||||
|    | ||||
| 	</div> | ||||
|    | ||||
|    | ||||
| <!--Wiget End--> | ||||
| <!--Post Start--> | ||||
| 
 | ||||
| 	<div id="post-body"> | ||||
| 		<div id="post-body-content" class="clear"> | ||||
| 		 | ||||
| 			<%= f.label :category %> | ||||
| 			<%= f.select :web_link_category_id, @web_link_categorys.collect {|t| [ t.i18n_variable[I18n.locale], t.id ]} %> | ||||
| 
 | ||||
| 			<div class="btn-group pull-right"> | ||||
| 				<a class="btn dropdown-toggle" href="#" data-toggle="dropdown"> | ||||
| 					English | ||||
| 					<span class="caret"></span> | ||||
| 				</a> | ||||
| 				<ul class="dropdown-menu"> | ||||
| 					<li><a href="#">English</a></li> | ||||
| 					<li><a href="#">Chinese</a></li> | ||||
| 					<li><a href="#">Japanese</a></li> | ||||
| 					<li><a href="#">French</a></li> | ||||
| 					<li><a href="#">German</a></li> | ||||
| 					<!--<li class="divider"></li> | ||||
| 					<li><a href="#">Separated link</a></li>--> | ||||
| 				</ul> | ||||
| 			</div> | ||||
| 
 | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :name %> | ||||
| 				<%= f.fields_for :name, (@web_link.new_record? ? @web_link.build_name : @web_link.name ) do |f| %> | ||||
| 				  <% @site_valid_locales.each do |locale| %> | ||||
| 					<td> | ||||
| 						<%= I18nVariable.from_locale(locale) %> | ||||
| 						<%= f.text_field locale, :class=>'post-title' %> | ||||
| 					</td> | ||||
| 				  <% end %> | ||||
| 				<% end %> | ||||
| 			</div> | ||||
| 
 | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :url %> | ||||
| 				<%= f.text_field :url %> | ||||
| 			</div> | ||||
| 
 | ||||
| 			<div class="title"> | ||||
| 				<%= f.label :describe %> | ||||
| 				<%= f.fields_for :context, (@web_link.new_record? ? @web_link.build_context : @web_link.context ) do |f| %> | ||||
| 				  <% @site_valid_locales.each do |locale| %> | ||||
| 					<td> | ||||
| 						<%= I18nVariable.from_locale(locale) %> | ||||
| 						<%= f.text_area locale, :style=>"width:100%" %> | ||||
| 					</td> | ||||
| 				  <% end %> | ||||
| 				<% end %> | ||||
| 			</div> | ||||
| 	 | ||||
| 	</div> | ||||
| 	 | ||||
| 	<!--Post End--> | ||||
|    | ||||
|    | ||||
|   <div class="form-actions"> | ||||
|     <%= f.submit 'Submit/送出', :class=>'btn btn-primary' %> | ||||
|   </div> | ||||
|   | ||||
|  | @ -1,5 +1,5 @@ | |||
| 
 | ||||
| <tr id="<%= dom_id post %>"> | ||||
| <tr id="<%= dom_id post %>" class="with_action"> | ||||
| 	<td> | ||||
| 		<% if post.is_top? %> | ||||
| 			<span class="label label-success"><%= t(:top) %></span> | ||||
|  | @ -10,6 +10,12 @@ | |||
| 		<% if post.is_hidden? %> | ||||
| 			<span class="label"><%= t(:hidden) %></span> | ||||
| 		<% end %>	 | ||||
| 		<div class="quick-edit"> | ||||
| 			<ul class="nav nav-pills hide"> | ||||
| 				<li><%= link_to t('web_link.edit'), edit_panel_web_resource_back_end_web_link_path(post) %></li> | ||||
| 				<li><%= link_to t('web_link.delete'), panel_web_resource_back_end_web_link_path(post), :confirm => t('sure?'), :method => :delete, :remote => true %></li> | ||||
| 			</ul> | ||||
| 		</div> | ||||
| 	</td> | ||||
| 	<td><%= post.web_link_category.i18n_variable[I18n.locale] %></td> | ||||
| 	<td> | ||||
|  | @ -20,12 +26,5 @@ | |||
| 			<span class="label label-tags"><%= tag[I18n.locale] %></span> | ||||
| 		<% end %> | ||||
| 	</td> | ||||
| 	<td> | ||||
| 	<%= link_to t('web_link.edit'), edit_panel_web_resource_back_end_web_link_path(post) %> |  | ||||
| 	 | ||||
| 	<%= link_to t(:set_top), eval("panel_web_resource_back_end_web_link_path(post, :authenticity_token => form_authenticity_token, :web_link => {:is_top => true})"), :remote => true, :method => :put, :id => "disable_#{post.id}", :style => "display:#{post.is_top? ? 'none' : ''}", :class => 'switch' %> | ||||
| 	<%= link_to t(:cancel_top), eval("panel_web_resource_back_end_web_link_path(post, :authenticity_token => form_authenticity_token, :web_link => {:is_top => false})"), :remote => true, :method => :put, :id => "enable_#{post.id}", :style => "display:#{post.is_top? ? '' : 'none'}", :class => 'switch' %> | ||||
| 			 | ||||
| 	 | <%= link_to t('web_link.delete'), panel_web_resource_back_end_web_link_path(post), :confirm => t('sure?'), :method => :delete, :remote => true %> | ||||
| 	</td> | ||||
| </tr> | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,52 +1,21 @@ | |||
| <% content_for :secondary do %> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
|   <ul class="list"> | ||||
| 	  <li><%= link_to t('web_link.new_link'), new_panel_web_resource_back_end_web_link_path %></li> | ||||
| 	  <li><%= link_to t('web_link.link_list'), panel_web_resource_back_end_web_links_path %></li> | ||||
| 	  <li><%= link_to t('web_link.new_link_class'), panel_web_resource_back_end_web_link_categorys_path %></li> | ||||
|   </ul> | ||||
| <% end -%> | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
|   <%= form_for :web_link, :action => 'search', :method => 'get', :url => panel_web_resource_back_end_web_links_path do |f| %> | ||||
|    | ||||
|   <%#= f.select :web_link_category_id, @web_link_categorys.collect {|t| [ t.i18n_variable[I18n.locale], t.id ] },{ :include_blank => t('web_link.select') }%> | ||||
|    | ||||
|   Category <%= select_tag "category_id", options_for_select(@web_link_categorys.collect{|t| [t.i18n_variable[I18n.locale], t.id]}), :prompt => t('web_link.select') %> | ||||
|    | ||||
|   <%= submit_tag "OK", :name => nil %>  | ||||
|    | ||||
|   <% end %> | ||||
| 
 | ||||
| <br /> | ||||
| <br /> | ||||
| 
 | ||||
| <h1><%= t('web_link.list_link') %></h1> | ||||
| 
 | ||||
| 	<table> | ||||
| <table class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 		<th><%= t('web_link.status') %></th> | ||||
| 		<th><%= t('web_link.category') %></th> | ||||
| 		<th><%= t('web_link.name') %></th> | ||||
| 		<th><%= t('web_link.tags') %></th> | ||||
| 		<th><%= t('web_link.action') %></th> | ||||
| 			<th class="span1-2"><%= t('web_link.status') %></th> | ||||
| 			<th class="span1-2"><%= t('web_link.category') %></th> | ||||
| 			<th class="span1-2"><%= t('web_link.name') %></th> | ||||
| 			<th class="span1-2"><%= t('web_link.tags') %></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody> | ||||
| 
 | ||||
| 	<% @web_links.each do |post| %> | ||||
| 		<%= render :partial => 'web_links', :locals => {:post => post} %> | ||||
| 	<% end %> | ||||
| 	 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <br /> | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue