new ui for faq and announcement status fixed.
This commit is contained in:
		
							parent
							
								
									21a7b5da5c
								
							
						
					
					
						commit
						897ed49d2e
					
				|  | @ -307,6 +307,15 @@ | |||
|           $(this).parents('.start-line').hide(); | ||||
|         } | ||||
|       }); | ||||
|       $(document).on('click',"*[data-toggle=buttons-checkbox] input",function(){ | ||||
|         var d = $(this).parent().find("input[type=hidden]"); | ||||
|         if($(this).is(":checked")){ | ||||
|             d.val("1"); | ||||
|         }else{ | ||||
|             d.val("0"); | ||||
|         } | ||||
| 
 | ||||
|       }) | ||||
|     }); | ||||
|   </script> | ||||
| <% end %> | ||||
|  |  | |||
|  | @ -1,104 +0,0 @@ | |||
| class Panel::Faq::BackEnd::QaCategorysController < OrbitBackendController | ||||
|     before_filter :for_app_manager,:except => [:index]  | ||||
|     include OrbitControllerLib::DivisionForDisable | ||||
| 
 | ||||
|   def index | ||||
|     @qa_categorys =  get_categories_for_index("QaCategory") | ||||
|     @qa_category = QaCategory.new(:display => 'List') | ||||
| 	 | ||||
| 	@url = panel_faq_back_end_qa_categorys_path | ||||
| 	 | ||||
|     respond_to do |format| | ||||
|       format.html # index.html.erb | ||||
|       format.js | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   # GET /qas/1 | ||||
|   # GET /qas/1.xml | ||||
|   def show | ||||
|     @qa_category = QaCategory.find(params[:id]) | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       format.html # show.html.erb | ||||
|       format.js | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   # GET /qas/new | ||||
|   # GET /qas/new.xml | ||||
|   def new | ||||
|     @qa_category = QaCategory.new(:display => 'List') | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       format.html # new.html.erb | ||||
|       format.js | ||||
|     end | ||||
|   end | ||||
|    | ||||
|   # GET /qas/1/edit | ||||
|   def edit | ||||
|     @qa_category = QaCategory.find(params[:id]) | ||||
| 	 | ||||
| 	@url = panel_faq_back_end_qa_category_path(@qa_category) | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       format.html | ||||
|       format.js | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   # POST /qas | ||||
|   # POST /qas.xml | ||||
|   def create | ||||
|     @qa_category = QaCategory.new(params[:qa_category]) | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       if @qa_category.save | ||||
|         format.html { redirect_to(panel_faq_back_end_qa_categorys_url, :notice => t('qa.create_qa_category_success')) } | ||||
|         format.js | ||||
|       else | ||||
|         format.html { render :action => "new" } | ||||
|         format.js { render action: "new" } | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   # PUT /qas/1 | ||||
|   # PUT /qas/1.xml | ||||
|   def update | ||||
|     @qa_category = QaCategory.find(params[:id]) | ||||
| 	 | ||||
| 	@url = panel_faq_back_end_qa_category_path(@qa_category) | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       if @qa_category.update_attributes(params[:qa_category]) | ||||
|         format.html { redirect_to(panel_faq_back_end_qa_categorys_url, :notice => t('qa.update_qa_category_success')) } | ||||
|         # format.xml  { head :ok } | ||||
|         format.js | ||||
|       else | ||||
|         format.html { render :action => "edit" } | ||||
|         format.js { render :action => "edit" } | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   # DELETE /qas/1 | ||||
|   # DELETE /qas/1.xml | ||||
|   def destroy | ||||
|     @qa_category = QaCategory.find(params[:id]) | ||||
|     @qa_category.disable = @qa_category.disable ? false : true | ||||
| 
 | ||||
|     if @qa_category.save! | ||||
|       respond_to do |format| | ||||
|         format.html { redirect_to(panel_faq_back_end_qa_categorys_url) } | ||||
|         # format.xml  { head :ok } | ||||
|         format.js | ||||
|       end       | ||||
|     else | ||||
|       flash[:error] = t("update.fail") | ||||
|       format.html { render :action => "index" } | ||||
|     end | ||||
| 
 | ||||
|   end | ||||
| end | ||||
|  | @ -1,44 +1,24 @@ | |||
| class Panel::Faq::BackEnd::QasController < OrbitBackendController | ||||
|   # before_filter :for_app_manager,:except => [:index,:show]  | ||||
|   include AdminHelper | ||||
|   include OrbitControllerLib::DivisionForDisable | ||||
|   # include OrbitControllerLib::DivisionForDisable | ||||
| 
 | ||||
|   before_filter :force_order_for_visitor,:only=>[:index] | ||||
|   before_filter :force_order_for_user,:except => [:index] | ||||
| 
 | ||||
|   before_filter :for_app_sub_manager,:except => [:index] | ||||
|   before_filter :only => [ :new,:edit,:update,:create] do |controller| | ||||
|     controller.get_categorys('QaCategory') | ||||
|   before_filter :only => [ :new, :create, :edit, :update ] do |controller| | ||||
|     @categories = get_categories_for_form | ||||
|   end | ||||
| 
 | ||||
|   def index | ||||
| 
 | ||||
|   get_categorys("QaCategory",params[:qa_category_id]) | ||||
|   @filter = params[:filter] | ||||
|   new_filter = params[:new_filter] | ||||
| 
 | ||||
|   if @filter && params[:clear] | ||||
|     @filter.delete(params[:type]) | ||||
|   elsif @filter && new_filter | ||||
|     if @filter.has_key?(new_filter[:type]) && @filter[new_filter[:type]].include?(new_filter[:id].to_s) | ||||
|       @filter[new_filter[:type]].delete(new_filter[:id].to_s) | ||||
|     elsif @filter.has_key?(new_filter[:type]) | ||||
|       @filter[new_filter[:type]] << new_filter[:id].to_s | ||||
|     else | ||||
|       @filter.merge!({new_filter[:type] => [new_filter[:id].to_s]}) | ||||
|     end | ||||
|   elsif new_filter | ||||
|     @filter = {new_filter[:type] => [new_filter[:id].to_s]} | ||||
|   end | ||||
|   @qa_categories =  get_categories_for_index("QaCategory") | ||||
|   @qa_category_ids = @qa_categories.collect{|t| t.id.to_s} + [nil] | ||||
| 
 | ||||
| 	# @qas = Qa.search(params[:category_id]) | ||||
| 	#@qas = (params[:sort] || @filter) ? get_sorted_and_filtered_qas : Qa.all.page(params[:page]).per(10) | ||||
|   @qas = (params[:sort] || @filter) ? get_sorted_and_filtered("qa",:qa_category_id.in => @qa_category_ids) : get_viewable("qa",:qa_category_id.in => @qa_category_ids) | ||||
|   @all_qas = @qas.page params[:page] | ||||
|   @tags = get_tags | ||||
|   @categories = get_categories_for_index | ||||
|   @statuses = get_statuses | ||||
|   category_ids = @categories.collect{|t| t.id} | ||||
| 
 | ||||
|     @qas = get_sorted_and_filtered("qa", :category_id.in => category_ids) | ||||
|     respond_to do |format| | ||||
|       format.html # index.html.erb | ||||
|       format.xml  { render :xml => @qas } | ||||
|  | @ -61,7 +41,7 @@ class Panel::Faq::BackEnd::QasController < OrbitBackendController | |||
|   def new | ||||
|     @qa = Qa.new | ||||
|     @tags = get_tags | ||||
| 
 | ||||
|     @statuses = get_statuses | ||||
|     respond_to do |format| | ||||
|       format.html # new.html.erb | ||||
|       format.xml  { render :xml => @qa } | ||||
|  | @ -71,7 +51,8 @@ class Panel::Faq::BackEnd::QasController < OrbitBackendController | |||
|   # GET /qas/1/edit | ||||
|   def edit | ||||
|     @qa = Qa.find(params[:id]) | ||||
| 	@tags = get_tags | ||||
|      @statuses = get_statuses | ||||
| 	   @tags = get_tags | ||||
|   end | ||||
| 
 | ||||
|   # POST /qas | ||||
|  | @ -97,15 +78,13 @@ class Panel::Faq::BackEnd::QasController < OrbitBackendController | |||
|   # PUT /qas/1.xml | ||||
|   def update | ||||
|     @qa = Qa.find(params[:id]) | ||||
| 	 | ||||
|     @qa.update_user_id = current_user.id | ||||
| 	 | ||||
| 	params[:qa][:tag_ids] ||=[] | ||||
| 
 | ||||
|     respond_to do |format| | ||||
|       if @qa.update_attributes(params[:qa]) | ||||
|         format.html { redirect_to(panel_faq_back_end_qas_url(:page => params[:page])) } | ||||
| 		format.js  { render 'toggle_enable' } | ||||
| 
 | ||||
|         format.html { redirect_to(panel_faq_back_end_qas_path) } | ||||
| 		    format.js  { render 'toggle_enable' } | ||||
|         format.xml  { head :ok } | ||||
|       else | ||||
|         format.html { render :action => "edit" } | ||||
|  |  | |||
|  | @ -8,6 +8,7 @@ class Qa | |||
|   include OrbitModel::LanguageRestrict | ||||
|   include OrbitModel::Status | ||||
|   include OrbitTag::Taggable | ||||
|   include OrbitCategory::Categorizable | ||||
| 
 | ||||
|   field :title, localize: true | ||||
|   field :answer, localize: true | ||||
|  |  | |||
|  | @ -1,27 +0,0 @@ | |||
| # encoding: utf-8 | ||||
| 
 | ||||
| class QaCategory | ||||
|   include Mongoid::Document | ||||
|   include Mongoid::Timestamps | ||||
|   include OrbitCoreLib::ObjectAuthable | ||||
|   include OrbitCoreLib::ObjectDisable | ||||
|   # include Mongoid::MultiParameterAttributes | ||||
|   AfterObjectAuthUrl = '/panel/page_content/back_end/page_contexts' | ||||
|   APP_NAME = 'faq' | ||||
|   ObjectAuthTitlesOptions = %W{edit} | ||||
| 
 | ||||
|   field :key | ||||
|    | ||||
|   field :title, localize: true | ||||
|    | ||||
|   has_many :qas | ||||
|    | ||||
|   def pp_object | ||||
|     title | ||||
|   end | ||||
| 
 | ||||
|   def self.from_id(id) | ||||
|     QaCategory.find(id) rescue nil | ||||
|   end | ||||
| 
 | ||||
| end | ||||
|  | @ -1,30 +0,0 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <%= form_for(@qa_category, :remote => true, :url => @url) do |f| %> | ||||
| 
 | ||||
| 	<h2><%= (@qa_category.new_record? ? t(:add) : t(:edit)) %></h2> | ||||
| 
 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.label :key, t(:key) %> | ||||
| 		<%= f.text_field :key %> | ||||
| 	</div> | ||||
| 	 | ||||
| 	<div id="widget-title"> | ||||
| 		<%= f.fields_for :title_translations do |f| %> | ||||
| 		  <% @site_valid_locales.each do |locale| %> | ||||
| 				<div class="control-group"> | ||||
| 					<%= label_tag "name-#{locale}", "#{t(:name)}-#{I18nVariable.from_locale(locale)}", :class => 'control-label' %> | ||||
| 					<div class="controls"> | ||||
| 						<%= f.text_field locale, :class => 'input-xxlarge', :value => (@qa_category.title_translations[locale] rescue nil) %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 		  <% end %> | ||||
| 		<% end %> | ||||
| 	</div> | ||||
|    | ||||
|   <div class="form-actions"> | ||||
|     <%= f.submit t(:submit), :class=>'btn btn-primary' %> | ||||
|   </div> | ||||
|    | ||||
| <% end %> | ||||
|   | ||||
|  | @ -1,19 +0,0 @@ | |||
| 
 | ||||
| 
 | ||||
| 	<tr id="<%= dom_id qa_category %>" class="with_action"> | ||||
| 		<td> | ||||
| 			<%= qa_category.key %> | ||||
| 			<%if at_least_module_manager %> | ||||
| 				<div class="quick-edit"> | ||||
| 					<ul class="nav nav-pills hide"> | ||||
| 						<li><%= link_to t(:edit), edit_panel_faq_back_end_qa_category_path(qa_category), :remote => true %></li> | ||||
| 						<li><%= link_to   show_toggle_archive_btn(qa_category), panel_faq_back_end_qa_category_path(qa_category), :confirm => t(:sure?), :method => :delete, :remote => true ,:class=> "archive_toggle"%></li> | ||||
| 						<li><%#= show_qa_permission_link qa_category %></li> | ||||
| 					</ul> | ||||
| 				</div> | ||||
| 			<% end -%> | ||||
| 		</td> | ||||
| 		<% @site_valid_locales.each do |locale| %> | ||||
| 		<td><%= qa_category.title_translations[locale] rescue nil %></td> | ||||
| 		<% end %> | ||||
| 	</tr> | ||||
|  | @ -1,2 +0,0 @@ | |||
| $('<%= j render :partial => 'qa_category', :collection => [@qa_category] %>').appendTo('#qa_categorys').hide().fadeIn(); | ||||
| $("#new_qa_category")[0].reset(); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#<%= dom_id @qa_category %>").find(".archive_toggle").text("<%= show_toggle_archive_btn(@qa_category) %>  "); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1,39 +0,0 @@ | |||
| 
 | ||||
| 
 | ||||
| <%= flash_messages %> | ||||
| <div id="filter" class="subnav"> | ||||
| 	<div class="filters"> | ||||
| 		<div id="sort_headers" class="table-label"> | ||||
| 			<table class="table main-list"> | ||||
| 				<thead> | ||||
| 					<tr> | ||||
| 						<th class="span1-2"><%= t(:key) %></th> | ||||
| 						<% @site_valid_locales.each do |locale| %> | ||||
| 						<th class="span1-2"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></th> | ||||
| 						<% end %> | ||||
| 					</tr> | ||||
| 				</thead> | ||||
| 			</table> | ||||
| 		</div> | ||||
| 	</div> | ||||
| </div> | ||||
| 
 | ||||
| <table id="qa_categorys" class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 			<th class="span1-2"></th> | ||||
| 			<% @site_valid_locales.each do |locale| %> | ||||
| 			<th class="span1-2"></th> | ||||
| 			<% end %> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody class="sort-holder"> | ||||
| 
 | ||||
| 	<%= render :partial => 'qa_category', :collection => @qa_categorys %> | ||||
| 	 | ||||
| 	</tbody> | ||||
| </table> | ||||
| 
 | ||||
| <div id="form"><%= render :partial => "form"  if at_least_module_manager%></div> | ||||
| 
 | ||||
| 
 | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1 +0,0 @@ | |||
| $("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1,3 +0,0 @@ | |||
| $.each($(".quick_edit"),function(obj){ $(this).remove(); }); | ||||
| $("#<%= dom_id @qa_category %>").append("<div class='quick_edit'><%= j render "form" %></div>"); | ||||
| //$("#form > form").replaceWith("<%= j render "form" %>"); | ||||
|  | @ -1,4 +0,0 @@ | |||
| $("#<%= dom_id @qa_category %>").replaceWith("<%= j render :partial => 'qa_category', :collection => [@qa_category] %>"); | ||||
| <% @qa_category = QaCategory.new(:display => 'List') # reset for new form %> | ||||
| $(".edit_qa_category").replaceWith("<%= j render "form" %>") | ||||
| $(".new_qa_category")[0].reset(); | ||||
|  | @ -1,228 +1,233 @@ | |||
| <div id= "poststuff"> | ||||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
|   <%= f.error_messages %> | ||||
| 
 | ||||
| 	<!--Widget start--> | ||||
| 	 | ||||
| 	<div id="sub-wiget"> | ||||
| 		   | ||||
| 		<div id="widget-status" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear tip" title="Setting the announcement state"> | ||||
| 				<a class="action"><i class="icon-exclamation-sign icon-white"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-star"></i><%= t(:status) %></h3> | ||||
| 			<div class="widget-content clear"> | ||||
| 				<div class="controls"> | ||||
| 					<%= content_tag :label,:class => "checkbox inline" do -%> | ||||
| 						<%= f.check_box :is_top %> | ||||
| 						<%= t('top') %> | ||||
| 					<% end -%> | ||||
| 					<%= content_tag :label,:class => "checkbox inline" do -%> | ||||
| 						<%= f.check_box :is_hot %> | ||||
| 						<%= t('hot') %> | ||||
| 					<% end -%> | ||||
| 					<%= content_tag :label,:class => "checkbox inline" do -%> | ||||
| 						<%= f.check_box :is_hidden %> | ||||
| 						<%= t('hide') %> | ||||
| 					<% end -%> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 
 | ||||
| 		<div id="widget-tags" class="widget-box widget-size-300"> | ||||
| 			<div class="widget-action clear tip" title="Setting"> | ||||
| 				<a class="action"><i class="icon-cog icon-white"></i></a> | ||||
| 			</div> | ||||
| 			<h3 class="widget-title"><i class="icons-tag"></i><%= t('nccu.tags') %></h3> | ||||
| 			<div class="widget-content clear form-horizontal"> | ||||
| 				<% @tags.each do |tag| %> | ||||
| 					<%= content_tag :label,:class => "checkbox inline" do -%> | ||||
| 						<%= check_box_tag 'qa[tag_ids][]', tag.id, @qa.tag_ids.include?(tag.id)%> | ||||
| 						<%= tag.name %> | ||||
|             <%= hidden_field_tag 'qa[tag_ids][]', '' %> | ||||
| 					<% end %> | ||||
| 				<% end %> | ||||
| 			</div> | ||||
| 		</div>   | ||||
|    | ||||
| 	</div> | ||||
|    | ||||
|    | ||||
| <!--Wiget End--> | ||||
| <!--Post Start--> | ||||
| 
 | ||||
| 	<div id="post-body"> | ||||
| 		<div id="post-body-content" class="clear"> | ||||
| 		 | ||||
| 			<%= f.label :category ,t(:category)%> | ||||
| 			<%= f.select :qa_category_id, @qa_categorys.collect {|t| [ t.title, t.id ]} %> | ||||
| 			 | ||||
| 			<ul class="nav nav-tabs"> | ||||
| 				<% @site_valid_locales.each_with_index do |locale, i| %> | ||||
| 			    <li <%= ( i == 0 ) ? "class=active" : '' %>><a data-toggle="tab" href=".<%= locale %>"><%= I18nVariable.from_locale(locale) %></a></li> | ||||
| 				<% end %> | ||||
| 			</ul> | ||||
| 			 | ||||
| 			<div class="tab-content"> | ||||
| 			 | ||||
| 				<% @site_valid_locales.each_with_index do |locale, i| %> | ||||
| 				 | ||||
| 				<div class="<%= locale %> fade tab-pane <%= ( i == 0 ) ? "in active" : '' %>"> | ||||
| 					<div class="title"> | ||||
| 						<%= f.label :title , t('faq.question') %> | ||||
| 						<%= f.fields_for :title_translations do |f| %> | ||||
| 							<%= I18nVariable.from_locale(locale) %> | ||||
| 							<%= f.text_field locale, :class=>'post-title', :value => (@qa.title_translations[locale] rescue nil) %> | ||||
| 						<% end %> | ||||
| 					</div> | ||||
| 					 | ||||
| 					<div class="editor"> | ||||
| 						<%= f.label :answer ,t('faq.answer') %> | ||||
| 						<%= f.fields_for :answer_translations do |f| %> | ||||
| 							<%= I18nVariable.from_locale(locale) %> | ||||
| 							<%= f.text_area locale, :style=>"width:100%", :class => 'tinymce_textarea', :value => (@qa.answer_translations[locale] rescue nil) %> | ||||
| 						<% end %>				 | ||||
| 					</div> | ||||
| 					 | ||||
| 				</div> | ||||
| 
 | ||||
| 				<% end %> | ||||
| 				 | ||||
| 			</div> | ||||
| 			 | ||||
| 			 | ||||
| 			<div class="main-wiget"> | ||||
| 				<div id="widget-link" class="widget-box"> | ||||
| 					<div class="widget-action clear tip" title="Add a reference link"> | ||||
| 						<a class="action"><i class="icon-exclamation-sign icon-white"></i></a> | ||||
| 					</div> | ||||
| 					<h3 class="widget-title"><i class="icons-link"></i><%= t(:link) %></h3> | ||||
| 					<div class="widget-content"> | ||||
| 					 | ||||
| 					<div id='qa_links' class="qa_links_block"> | ||||
| 					 | ||||
| 					<table class="table table-condensed"> | ||||
| 						<thead> | ||||
| 							<tr> | ||||
| 								<th><%= t('nccu.url') %></th> | ||||
| 								<th><%= t('nccu.link_name') %></th> | ||||
| 								<th class="span1"></th> | ||||
| 							</tr> | ||||
| 						</thead> | ||||
| 						<tfoot> | ||||
| 							<tr> | ||||
| 								<td style="text-align:center" colspan="4"> | ||||
| 									<div id='add_qa_link' class="info_input qa_links_block"> | ||||
| 										<%= hidden_field_tag 'qa_link_field_count', @qa.qa_links.count %> | ||||
| 										<a class="add"><span class="btn btn-primary btn-small"><i class="icon-plus icon-white"></i><%= t(:add) %></span></a> | ||||
| 									</div> | ||||
| 								</td> | ||||
| 							</tr> | ||||
| 						</tfoot> | ||||
| 						<tbody> | ||||
| 						 | ||||
| 							<% @qa.qa_links.each_with_index do |qa_link, i| %> | ||||
| 								<%= f.fields_for :qa_links, qa_link do |f| %> | ||||
| 									<%= render :partial => 'form_qa_link', :object => qa_link, :locals => {:f => f, :i => i} %> | ||||
| 								<% end %> | ||||
| 							<% end %>	 | ||||
| 							 | ||||
| 						</tbody> | ||||
| 					</table> | ||||
| 					 | ||||
| 								 | ||||
| 					</div> | ||||
| 							 | ||||
| 					</div> | ||||
| 				</div> | ||||
| 				<div id="widget-file" class="widget-box"> | ||||
| 					<div class="widget-action clear tip" title="Added to the file"> | ||||
| 						<a class="action"><i class="icon-exclamation-sign icon-white"></i></a> | ||||
| 					</div> | ||||
| 					<h3 class="widget-title"><i class="icons-paperclip"></i><%= t('nccu.file') %></h3> | ||||
| 					<div class="widget-content"> | ||||
| 						 | ||||
| 					<div id='qa_files' class="qa_files_block"> | ||||
| 							 | ||||
| 					<table class="table table-condensed"> | ||||
| 						<thead> | ||||
| 							<tr> | ||||
| 								<th><%= t('nccu.selected_file') %></th> | ||||
| 								<th><%= t('nccu.file_name') %></th> | ||||
| 								<th><%= t('nccu.file_description') %></th> | ||||
| 								<th class="span1"></th> | ||||
| 							</tr> | ||||
| 						</thead> | ||||
| 						<tfoot> | ||||
| 							<tr> | ||||
| 								<td style="text-align:center" colspan="4"> | ||||
| 									<div id='add_qa_file' class="info_input qa_files_block"> | ||||
| 										<%= hidden_field_tag 'qa_file_field_count', @qa.qa_files.count %> | ||||
| 										<a class="add"><span class="btn btn-primary btn-small"><i class="icon-plus icon-white"></i><%= t(:add) %></span></a> | ||||
| 										<p><%= t("sys.limit_of_upload_file_size",:best_size => '3MB') %></p> | ||||
| 										<p><%= t("sys.preview_only_for_img") %></p> | ||||
| 									</div> | ||||
| 								</td> | ||||
| 							</tr> | ||||
| 						</tfoot> | ||||
| 						<tbody> | ||||
| 								<% @qa.qa_files.each_with_index do |qa_file, i| %> | ||||
| 									<%= f.fields_for :qa_files, qa_file do |f| %> | ||||
| 										<%= render :partial => 'form_qa_file', :object => qa_file, :locals => {:f => f, :i => i} %> | ||||
| 									<% end %> | ||||
| 								<% end %>	 | ||||
| 							 | ||||
| 						</tbody> | ||||
| 					</table> | ||||
| 								 | ||||
| 					</div> | ||||
| 					 | ||||
| 					</div> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 
 | ||||
| 			 | ||||
| 		</div> | ||||
| 	 | ||||
| <!--Post End--> | ||||
| 	</div> | ||||
| 
 | ||||
|    | ||||
| 	<div class="form-actions"> | ||||
|     <%= hidden_field_tag 'page', params[:page] if !params[:page].blank? %> | ||||
| 	<%= f.submit t('submit'), :class=>'btn btn-primary' %> | ||||
| 	<%= link_to t('cancel'), get_go_back, :class=>"btn" %>  | ||||
| 	</div>  | ||||
| </div>  | ||||
|    | ||||
|    | ||||
| 
 | ||||
| <% content_for :page_specific_javascript do %> | ||||
| 	<%= javascript_include_tag "faq/qa_form" %> | ||||
| 	<%= javascript_include_tag "inc/jquery.imagesloaded.js" %> | ||||
| 	<script> | ||||
| 	$(document).ready(function() { | ||||
| 
 | ||||
| 		$('#add_qa_link a.add').live('click', function(){ | ||||
| 			var new_id = $(this).prev().attr('value'); | ||||
| 			var old_id = new RegExp("new_qa_links", "g"); | ||||
| 			$(this).prev().attr('value', parseInt(new_id) + 1); | ||||
| 			$(this).parents('table').append(("<%= escape_javascript(add_attribute 'form_qa_link', f, :qa_links) %>").replace(old_id, new_id)); | ||||
| 		}); | ||||
| 		$('#add_qa_file a.add').live('click', function(){ | ||||
| 			var new_id = $(this).prev().attr('value'); | ||||
| 			var old_id = new RegExp("new_qa_files", "g"); | ||||
| 			$(this).prev().attr('value', parseInt(new_id) + 1); | ||||
| 			$(this).parents('table').append(("<%= escape_javascript(add_attribute 'form_qa_file', f, :qa_files) %>").replace(old_id, new_id)); | ||||
| 		}); | ||||
| 		$('.for_preview').popover({ html : true }); | ||||
| 	}); | ||||
| 	</script> | ||||
| <% content_for :page_specific_css do %> | ||||
|   <%= stylesheet_link_tag "lib/main-forms" %> | ||||
|   <%= stylesheet_link_tag "lib/fileupload" %> | ||||
|   <%= stylesheet_link_tag "lib/main-list" %> | ||||
| <% end %> | ||||
| <% content_for :page_specific_javascript do %> | ||||
|   <%= javascript_include_tag "lib/bootstrap-fileupload" %> | ||||
|   <%= javascript_include_tag "lib/bootstrap-datetimepicker" %> | ||||
|   <%= javascript_include_tag "lib/datetimepicker/datetimepicker.js" %> | ||||
|   <%= javascript_include_tag "lib/modal-preview" %> | ||||
|   <%= javascript_include_tag "lib/file-type" %> | ||||
| <% end %> | ||||
| <%= f.error_messages %> | ||||
| <fieldset> | ||||
| <!-- Input Area --> | ||||
| <div class="input-area"> | ||||
| 
 | ||||
| <!-- Module Tabs --> | ||||
|     <div class="nav-name"><strong>Module</strong></div> | ||||
|     <ul class="nav nav-pills module-nav"> | ||||
|         <li class="active"> | ||||
|           <a href="#basic" data-toggle="tab">Basic</a> | ||||
|         </li> | ||||
|         <li> | ||||
|           <a href="#status" data-toggle="tab">Status</a> | ||||
|         </li> | ||||
|         <li> | ||||
|           <a href="#tag" data-toggle="tab">Tags</a> | ||||
|         </li> | ||||
|     </ul> | ||||
| 
 | ||||
| <!-- Module --> | ||||
|     <div class="tab-content module-area"> | ||||
| 
 | ||||
| <!-- Basic Module --> | ||||
| <div class="tab-pane fade in active" id="basic"> | ||||
| 
 | ||||
|   <!-- Category --> | ||||
|   <div class="control-group"> | ||||
|     <%= f.label :category ,t(:category), :class=>"control-label muted" %> | ||||
|     <div class="controls"> | ||||
|       <%= f.select :category_id, @categories.collect{|t| [ t.title, t.id ]} %> | ||||
|     </div> | ||||
|   </div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| <!-- Status Module --> | ||||
| <div class="tab-pane fade" id="status"> | ||||
| 
 | ||||
|   <!-- Status --> | ||||
|   <div class="control-group"> | ||||
|     <label class="control-label muted">Status</label> | ||||
|     <div class="controls" data-toggle="buttons-checkbox"> | ||||
|         <label class="checkbox inline btn <%= 'active' if @qa.is_top? %>"> | ||||
|           <%= f.check_box :is_top %> <%= t(:top) %> | ||||
|         </label> | ||||
|         <label class="checkbox inline btn <%= 'active' if @qa.is_hot? %>"> | ||||
|           <%= f.check_box :is_hot %> <%= t(:hot) %> | ||||
|         </label> | ||||
|         <label class="checkbox inline btn <%= 'active' if @qa.is_hidden? %>"> | ||||
|           <%= f.check_box :is_hidden %> <%= t(:hide) %> | ||||
|         </label> | ||||
|     </div> | ||||
|   </div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| <!-- Tag Module --> | ||||
| <div class="tab-pane fade" id="tag"> | ||||
| 
 | ||||
|   <!-- Tag --> | ||||
|   <div class="control-group"> | ||||
|     <label class="control-label muted">Tag</label> | ||||
|     <div class="controls" data-toggle="buttons-checkbox"> | ||||
|         <% @tags.each do |tag| %> | ||||
|           <label class="checkbox inline btn <%= 'active' if @qa.tag_ids.include?(tag.id) %>"> | ||||
|                 <%= check_box_tag 'qa[tag_ids][]', tag.id, @qa.tag_ids.include?(tag.id)%> | ||||
|                 <%= tag.name %> | ||||
|         <% end %> | ||||
|     </div> | ||||
|   </div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| <!-- Language Tabs --> | ||||
| <div class="nav-name"><strong>Language</strong></div> | ||||
| <ul class="nav nav-pills language-nav"> | ||||
|     <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
|         <li <%= ( i == 0 ) ? "class=active" : '' %>><a data-toggle="tab" href=".<%= locale %>"><%= I18nVariable.from_locale(locale) %></a></li> | ||||
|     <% end %> | ||||
| </ul> | ||||
| 
 | ||||
| <!-- Language --> | ||||
| <div class="tab-content language-area"> | ||||
| <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
|     <div class="<%= locale %> fade tab-pane <%= ( i == 0 ) ? "in active" : '' %>"> | ||||
|         <div class="control-group input-title"> | ||||
|             <%= f.label :title , t('faq.question'), :class=>"control-label muted" %> | ||||
|             <div class="controls"> | ||||
|                 <%= f.fields_for :title_translations do |f| %> | ||||
|                     <%= f.text_field locale, :class=>'post-title', :value => (@qa.title_translations[locale] rescue nil) %> | ||||
|                 <% end %> | ||||
|             </div> | ||||
|         </div> | ||||
|         <div class="control-group input-content"> | ||||
|             <%= f.label :answer ,t('faq.answer'), :class => "control-label muted" %> | ||||
|             <%= f.fields_for :answer_translations do |f| %> | ||||
|                 <div class="controls"> | ||||
|                     <div class="textarea"> | ||||
|                         <%= f.text_area locale, :style=>"width:100%", :class => 'ckeditor input-block-level', :value => (@qa.answer_translations[locale] rescue nil) %> | ||||
|                     </div> | ||||
|                 </div> | ||||
|             <% end %> | ||||
|         </div> | ||||
|     </div> | ||||
| <% end %> | ||||
| <!-- Link --> | ||||
| <div class="control-group"> | ||||
|   <label class="control-label muted">Link</label> | ||||
|   <div class="controls add-input"> | ||||
| 
 | ||||
|      <!-- Exist --> | ||||
|     <% if @qa && !@qa.qa_links.blank? %> | ||||
|       <div class="exist"> | ||||
|         <% @qa.qa_links.each_with_index do |qa_link, i| %> | ||||
|           <%= f.fields_for :qa_links, qa_link do |f| %> | ||||
|             <%= render :partial => 'form_qa_link', :object => qa_link, :locals => {:f => f, :i => i} %> | ||||
|           <% end %> | ||||
|         <% end %>  | ||||
|         <hr> | ||||
|       </div> | ||||
|     <% end %> | ||||
| 
 | ||||
|     <!-- Add --> | ||||
|     <div class="add-target"></div> | ||||
|     <p class="add-btn"> | ||||
|       <%= hidden_field_tag 'qa_link_field_count', @qa.qa_links.count %> | ||||
|       <a id="add_link" class="trigger btn btn-small btn-primary"><i class="icons-plus"></i> <%= t(:add) %></a> | ||||
|     </p> | ||||
| 
 | ||||
|   </div> | ||||
| </div> | ||||
| 
 | ||||
| <!-- File --> | ||||
| <div class="control-group"> | ||||
|   <label class="control-label muted">File</label> | ||||
|   <div class="controls"> | ||||
| 
 | ||||
|     <!-- Exist --> | ||||
|     <% if @qa && !@qa.qa_files.blank? %> | ||||
|       <div class="exist"> | ||||
|         <% @qa.qa_files.each_with_index do |qa_file, i| %> | ||||
|           <%= f.fields_for :qa_files, qa_file do |f| %> | ||||
|             <%= render :partial => 'form_qa_file', :object => qa_file, :locals => {:f => f, :i => i} %> | ||||
|           <% end %> | ||||
|         <% end %>  | ||||
|         <hr> | ||||
|       </div> | ||||
|     <% end %> | ||||
| 
 | ||||
|     <!-- Add --> | ||||
|     <div class="add-target"> | ||||
|     </div> | ||||
|     <p class="add-btn"> | ||||
|       <%= hidden_field_tag 'qa_file_field_count', @qa.qa_files.count %> | ||||
|       <a id="add_file" class="trigger btn btn-small btn-primary"><i class="icons-plus"></i> <%= t(:add) %></a> | ||||
|     </p> | ||||
| 
 | ||||
|   </div> | ||||
| </div> | ||||
| </div> | ||||
| 
 | ||||
| </div> | ||||
| <!-- Form Actions --> | ||||
| <div class="form-actions"> | ||||
|  <%= f.submit t('submit'), class: 'btn btn-primary' %> | ||||
|   <%= button_tag t("preview"), id: "button_for_preview", name: "commit", class: 'btn post_preview', type: :button, url: preview_panel_announcement_back_end_bulletins_path %> | ||||
|   <%= link_to t('cancel'), get_go_back, :class=>"btn" %>   | ||||
| </div> | ||||
| 
 | ||||
| </fieldset> | ||||
| <% content_for :page_specific_javascript do %> | ||||
|   <script> | ||||
|     $(function() { | ||||
|       $(document).on('click', '#add_link', function(){ | ||||
|         var new_id = $(this).prev().attr('value'); | ||||
|         var old_id = new RegExp("new_qa_links", "g"); | ||||
|         var on = $('.language-nav li.active').index(); | ||||
|         var le = $(this).parent('.add-btn').prev('.add-target').children('.start-line').length; | ||||
|         $(this).prev().attr('value', parseInt(new_id) + 1); | ||||
|         $(this).parent().siblings('.add-target').append(("<%= escape_javascript(add_attribute 'form_qa_link', f, :qa_links) %>").replace(old_id, new_id)); | ||||
|         $(this).parent('.add-btn').prev('.add-target').children('.start-line').eq(le).children('.tab-content').children('.tab-pane').eq(on).addClass('in active').siblings().removeClass('in active'); | ||||
|         formTip(); | ||||
|       }); | ||||
|       $(document).on('click', '#add_file', function(){ | ||||
|         var new_id = $(this).prev().attr('value'); | ||||
|         var old_id = new RegExp("new_qa_files", "g"); | ||||
|         var on = $('.language-nav li.active').index(); | ||||
|         var le = $(this).parent('.add-btn').prev('.add-target').children('.start-line').length; | ||||
|         $(this).prev().attr('value', parseInt(new_id) + 1); | ||||
|         $(this).parent().siblings('.add-target').append(("<%= escape_javascript(add_attribute 'form_qa_file', f, :qa_files) %>").replace(old_id, new_id)); | ||||
|         $(this).parent('.add-btn').prev('.add-target').children('.start-line').eq(le).children('.input-append').find('.tab-content').each(function() { | ||||
|           $(this).children('.tab-pane').eq(on).addClass('in active').siblings().removeClass('in active'); | ||||
|         }); | ||||
|         formTip(); | ||||
|       }); | ||||
|       $(document).on('click', '.delete_link', function(){ | ||||
|         $(this).parents('.input-prepend').remove(); | ||||
|       }); | ||||
|       $(document).on('click', '.delete_file', function(){ | ||||
|         $(this).parents('.input-prepend').remove(); | ||||
|       }); | ||||
|       $(document).on('click', '.remove_existing_record', function(){ | ||||
|         if(confirm("<%= I18n.t(:sure?)%>")){ | ||||
|           $(this).children('.should_destroy').attr('value', 1); | ||||
|           $(this).parents('.start-line').hide(); | ||||
|         } | ||||
|       }); | ||||
|       $(document).on('click',"*[data-toggle=buttons-checkbox] input",function(){ | ||||
|         var d = $(this).parent().find("input[type=hidden]"); | ||||
|         if($(this).is(":checked")){ | ||||
|             d.val("1"); | ||||
|         }else{ | ||||
|             d.val("0"); | ||||
|         } | ||||
| 
 | ||||
|       }) | ||||
|     }); | ||||
|   </script> | ||||
| <% end %> | ||||
|  | @ -1,74 +1,55 @@ | |||
| <% # encoding: utf-8 %> | ||||
| 
 | ||||
| <tr id="<%= "qa_file_#{form_qa_file.id}" if !form_qa_file.new_record? %>" class='list_item'> | ||||
|   <td> | ||||
|     <div class="control-group"> | ||||
|       <div class="controls"> | ||||
| <% if form_qa_file.new_record? %> | ||||
|   <div class="fileupload fileupload-new start-line" data-provides="fileupload"> | ||||
| <% else %> | ||||
|   <div class="fileupload fileupload-exist start-line" data-provides="fileupload"> | ||||
|     <% if form_qa_file.file.blank? %> | ||||
|       <%= t(:no_file) %> | ||||
|     <% else %> | ||||
|       <%= link_to content_tag(:i) + form_qa_file.file_identifier, form_qa_file.file.url, {:class => 'file-link file-type', :target => '_blank', :title => form_qa_file.file_identifier} %> | ||||
|     <% end %> | ||||
| <% end %> | ||||
|   <div class="input-prepend input-append"> | ||||
|     <label> | ||||
|       <span class="add-on btn btn-file" title='<%= t(:file_) %>'> | ||||
|         <i class="icons-paperclip"></i> | ||||
|         <%= f.file_field :file %> | ||||
|         <%= form_qa_file.file.file ? ( link_to t(:view), form_qa_file.file.url, {:class => 'btn', :target => '_blank', :title => t(:view)} ) : '' %> | ||||
|       </span> | ||||
|       <div class="uneditable-input input-medium"> | ||||
|         <i class="icon-file fileupload-exists"></i> | ||||
|         <span class="fileupload-preview"><%= (form_qa_file.new_record? || form_qa_file.file.blank?) ? t(:select_file) : t(:change_file) %></span> | ||||
|       </div> | ||||
|     </div> | ||||
|   </td>  | ||||
|   <td>  | ||||
| 
 | ||||
|     <div class="tab-content"> | ||||
| 
 | ||||
|     </label> | ||||
|     <span class="add-on icons-pencil" title='<%= t(:alternative) %>'></span> | ||||
|     <span class="tab-content"> | ||||
|       <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
| 
 | ||||
|         <div class="<%= locale %> fade tab-pane <%= ( i == 0 ) ? "in active" : '' %>"> | ||||
| 
 | ||||
|         <span class="tab-pane fade <%= ( i == 0 ) ? "in active" : '' %> <%= locale %>"> | ||||
|           <%= f.fields_for :title_translations do |f| %> | ||||
|             <div class="control-group"> | ||||
|               <label for="link-<%= locale %>" class="control-label"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></label> | ||||
|               <div class="controls"> | ||||
|                 <%= f.text_field locale, :id => "link-#{locale}", :value => (form_qa_file.title_translations[locale] rescue nil) %> | ||||
|               </div> | ||||
|             </div> | ||||
|             <%= f.text_field locale, :class => "input-medium", placeholder: t(:alternative), :value => (form_qa_file.title_translations[locale] rescue nil) %> | ||||
|           <% end %> | ||||
| 
 | ||||
|         </div> | ||||
| 
 | ||||
|       <% end %> | ||||
| 
 | ||||
|     </div> | ||||
| 
 | ||||
|   </td> | ||||
|   <td>  | ||||
| 
 | ||||
|     <div class="tab-content"> | ||||
| 
 | ||||
|       <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
| 
 | ||||
|         <div class="<%= locale %> fade tab-pane <%= ( i == 0 ) ? "in active" : '' %>"> | ||||
| 
 | ||||
|           <%= f.fields_for :description_translations do |f| %> | ||||
|             <div class="control-group"> | ||||
|               <label for="link-<%= locale %>" class="control-label"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></label> | ||||
|               <div class="controls"> | ||||
|                 <%= f.text_field locale, :id => "link-#{locale}", :value => (form_qa_file.description_translations[locale] rescue nil) %> | ||||
|               </div> | ||||
|             </div> | ||||
|           <% end %> | ||||
| 
 | ||||
|         </div> | ||||
| 
 | ||||
|       <% end %> | ||||
| 
 | ||||
|     </div> | ||||
| 
 | ||||
|   </td>  | ||||
|   <td> | ||||
|     <span class="action"> | ||||
|       <% if form_qa_file.new_record? %> | ||||
|         <a class="delete"><i class="icon-remove"></i></a> | ||||
|       <% else %>  | ||||
|         <%= f.hidden_field :id %> | ||||
|         <%= hidden_field_tag :tr, (dom_id form_qa_file) %> | ||||
|         <a class="remove_existing_record"><i class="icon-remove"></i></a> | ||||
|         <%= f.hidden_field :_destroy, :value => nil, :class => 'should_destroy' %> | ||||
|         </span> | ||||
|       <% end %> | ||||
|     </span> | ||||
| 
 | ||||
|   </td> | ||||
| </tr> | ||||
| 
 | ||||
|     <span class="add-on icons-pencil" title='<%= t(:description) %>'></span> | ||||
|     <span class="tab-content"> | ||||
|       <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
|         <span class="tab-pane fade <%= ( i == 0 ) ? "in active" : '' %> <%= locale %>"> | ||||
|           <%= f.fields_for :description_translations do |f| %> | ||||
|             <%= f.text_field locale, :class => "input-medium", placeholder: t(:description), :value => (form_qa_file.description_translations[locale] rescue nil) %> | ||||
|           <% end %> | ||||
|         </span> | ||||
|       <% end %> | ||||
|     </span> | ||||
|     </span> | ||||
|     <% if form_qa_file.new_record? %> | ||||
|       <span class="delete_file add-on btn" title="<%= t(:delete_) %>"> | ||||
|         <a class="icon-trash"></a> | ||||
|       </span> | ||||
|     <% else %>  | ||||
|       <span class="remove_existing_record add-on btn" title="<%= t(:remove) %>"> | ||||
|         <%= f.hidden_field :id %> | ||||
|         <a class="icon-remove"></a> | ||||
|         <%= f.hidden_field :_destroy, :value => nil, :class => 'should_destroy' %> | ||||
|       </span> | ||||
|     <% end %> | ||||
|   </div> | ||||
| </div> | ||||
|  | @ -1,48 +1,26 @@ | |||
| 
 | ||||
| 		<tr id="<%= "qa_link_#{form_qa_link.id}" if !form_qa_link.new_record? %>" class='list_item'> | ||||
| 			 | ||||
| 			<td> | ||||
| 				<div class="control-group"> | ||||
| 					<div class="controls"> | ||||
| 					<%= f.text_field :url %> | ||||
| 					</div> | ||||
| 				</div> | ||||
| 			</td>	 | ||||
| 			<td> | ||||
| 	 | ||||
| 			 | ||||
| 				<div class="tab-content"> | ||||
| 				 | ||||
| 					<% @site_valid_locales.each_with_index do |locale, i| %> | ||||
| 					 | ||||
| 					<div class="<%= locale %> fade tab-pane <%= ( i == 0 ) ? "in active" : '' %>"> | ||||
| 						 | ||||
| 						<%= f.fields_for :title_translations do |f| %> | ||||
| 							<div class="control-group"> | ||||
| 								<label for="link-<%= locale %>" class="control-label"><%= I18nVariable.first(:conditions => {:key => locale})[I18n.locale] %></label> | ||||
| 								<div class="controls"> | ||||
| 								<%= f.text_field locale, :id => "link-#{locale}", :class => "input-xlarge", :value => (form_qa_link.title_translations[locale] rescue nil) %> | ||||
| 								</div> | ||||
| 							</div> | ||||
| 						<% end %> | ||||
| 						 | ||||
| 					</div> | ||||
| 
 | ||||
| 					<% end %> | ||||
| 					 | ||||
| 				</div> | ||||
| 				 | ||||
| 			</td> | ||||
| 			<td> | ||||
| 			<span class="action"> | ||||
| 			<% if form_qa_link.new_record? %> | ||||
| 			  <a class="delete"><i class="icon-remove"></i></a> | ||||
| 			<% else %>	 | ||||
| 			  <%= f.hidden_field :id %> | ||||
| 			  <%= hidden_field_tag :tr, (dom_id form_qa_link) %> | ||||
| 			  <a class="remove_existing_record"><i class="icon-remove"></i></a> | ||||
| 			  <%= f.hidden_field :_destroy, :value => nil, :class => 'should_destroy' %> | ||||
| 			<% end %> | ||||
| 			</span> | ||||
| 			</td> | ||||
| 		</tr> | ||||
| <div class="input-prepend input-append start-line"> | ||||
|   <span class="add-on icons-link" title="<%= t(:url) %>"></span> | ||||
|   <%= f.text_field :url, class: "input-large", placeholder: t(:url) %> | ||||
|   <span class="add-on icons-pencil" title="<%= t(:url_alt) %>"></span> | ||||
|   <span class="tab-content"> | ||||
|     <% @site_valid_locales.each_with_index do |locale, i| %> | ||||
|       <span class="tab-pane fade <%= ( i == 0 ) ? "in active" : '' %> <%= locale %>"> | ||||
|         <%= f.fields_for :title_translations do |f| %> | ||||
|           <%= f.text_field locale, :class => "input-large", placeholder: t(:url_alt), :value => (form_link.title_translations[locale] rescue nil) %> | ||||
|         <% end %> | ||||
|       </span> | ||||
|     <% end %> | ||||
|   </span> | ||||
|    | ||||
|   <% if form_qa_link.new_record? %> | ||||
|     <span class="delete_link add-on btn" title="<%= t(:delete_) %>"> | ||||
|       <a class="icon-trash"></a> | ||||
|     </span> | ||||
|   <% else %>   | ||||
|     <span class="remove_existing_record add-on btn" title="<%= t(:remove) %>"> | ||||
|       <%= f.hidden_field :id %> | ||||
|       <a class="remove_existing_record icon-remove"></a> | ||||
|       <%= f.hidden_field :_destroy, :value => nil, :class => 'should_destroy' %> | ||||
|     </span> | ||||
|   <% end %> | ||||
| </div> | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| <h1><%= t('qa.editing_faq') %></h1> | ||||
| 
 | ||||
| <%= form_for @qa, :url => panel_faq_back_end_qa_path(@qa), :html => {:class => 'clear'} do |f| %> | ||||
| <%= form_for @qa, :url => panel_faq_back_end_qa_path(@qa), :html => {:class => 'form-horizontal main-forms'} do |f| %> | ||||
| 	<%= render :partial => 'form', :locals => {:f => f} %> | ||||
| <% end %> | ||||
|  |  | |||
|  | @ -1,22 +1,41 @@ | |||
| <%= render 'filter' %> | ||||
| <table class="table main-list"> | ||||
| 	<thead> | ||||
| 		<tr> | ||||
| 			<th class="span1"></th> | ||||
| 			<th class="span1"></th> | ||||
| 			<th class="span2"></th> | ||||
| 			<th class="span3"></th> | ||||
| 			<th class="span2"></th> | ||||
| 		</tr> | ||||
| 	</thead> | ||||
| 	<tbody id="tbody_qas" class="sort-holder"> | ||||
| 		<%= render :partial => 'qa', :collection => @qas %> | ||||
| 	</tbody> | ||||
| </table> | ||||
| <% set_default_index do  | ||||
| 	objects @qas | ||||
| 	quick_edit_link type: 'edit', | ||||
| 									link: 'edit_panel_faq_back_end_qa_path' | ||||
| 	quick_edit_link type: 'delete', | ||||
| 									link: 'panel_faq_back_end_qa_path' | ||||
| 	field type: 'status', | ||||
| 				db_field: @statuses, | ||||
| 				translation: 'status', | ||||
| 				hide: 'phone', | ||||
| 				sort: 'status' | ||||
| 	field type: 'associated', | ||||
| 				db_field: 'category', | ||||
| 				model_field: 'title', | ||||
| 				translation: 'category', | ||||
| 				hide: 'phone', | ||||
| 				sort: 'category' | ||||
| 	field db_field: 'title', | ||||
| 				translation: 'title', | ||||
| 				sort: 'title', | ||||
| 				display_option: 'link_to value, panel_faq_front_end_qa_path(object)', | ||||
| 				quick_edit: true, | ||||
| 				header_class: 'span5' | ||||
| 	field type: 'tags', | ||||
| 				hide: 'phone', | ||||
| 				sort: 'tags' | ||||
| 	filter_field  type: 'array', | ||||
| 								values: @statuses, | ||||
| 								translation: 'status' | ||||
| 	filter_field  type: 'objects', | ||||
| 								values: @categories, | ||||
| 								translation: 'category', | ||||
| 								object_field: 'title' | ||||
| 	filter_field  type: 'objects', | ||||
| 								values: @tags, | ||||
| 								translation: 'tags', | ||||
| 								object_field: 'name' | ||||
| 	footer link: 'new_panel_faq_back_end_qa_path' | ||||
| end %> | ||||
| 
 | ||||
| <div class="form-actions form-fixed pagination-right"> | ||||
| 	<%= link_to content_tag(:i, nil, :class => 'icon-plus icon-white') + t(:add), new_panel_faq_back_end_qa_path, :class => 'btn btn-primary pull-right' if (is_manager? rescue nil) %> | ||||
| 	<div id="qa_pagination" class="paginationFixed"> | ||||
| 	<%= paginate @all_qas, :params => {:direction => params[:direction], :sort => params[:sort], :filter => @filter, :new_filter => nil} %> | ||||
| 	</div> | ||||
| </div> | ||||
| <%= render 'admin/default_index/index' %> | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ | |||
| <%= flash_messages %> | ||||
| <div id="poststuff"> | ||||
| <h1><%= t('qa.new_faq') %></h1> | ||||
| <%= form_for @qa, :url => panel_faq_back_end_qas_path, :html => {:class => 'clear'} do |f| %> | ||||
| <%= form_for @qa, :url => panel_faq_back_end_qas_path, :html => {:class => 'form-horizontal main-forms'} do |f| %> | ||||
| 	<%= render :partial => 'form', :locals => {:f => f} %> | ||||
| <% end %> | ||||
| </div> | ||||
|  |  | |||
|  | @ -15,7 +15,6 @@ en: | |||
|     read_more: Read More | ||||
|     question: Question | ||||
|     answer: Answer | ||||
| 
 | ||||
|   qa: | ||||
|     create_qa_category_success: FAQ category was successfully created | ||||
|     editing_web_resource: Editing FAQ | ||||
|  |  | |||
|  | @ -20,6 +20,7 @@ module Faq | |||
|     data_count 1..20 | ||||
| 
 | ||||
|     taggable | ||||
|     categorizable | ||||
| 
 | ||||
|     widgets do | ||||
|       default_widget do | ||||
|  | @ -61,10 +62,10 @@ module Faq | |||
|                             :active_for_action=>{:qas=>:new}, | ||||
|                             :available_for => [:sub_manager] | ||||
|        | ||||
|       context_link 'categories', | ||||
|                             :link_path=>"panel_faq_back_end_qa_categorys_path" , | ||||
|        context_link 'categories', | ||||
|                             :link_path=>"admin_module_app_categories_path(get_module_app)" , | ||||
|                             :priority=>3, | ||||
|                             :active_for_action=>{:qa_categorys=>:index}, | ||||
|                             :active_for_category => 'Qa', | ||||
|                             :available_for => [:manager] | ||||
| 
 | ||||
|       context_link 'tags', | ||||
|  |  | |||
		Reference in New Issue