diff --git a/app/controllers/admin/journal_papers_controller.rb b/app/controllers/admin/journal_papers_controller.rb
index 1f61a64..9c656fc 100644
--- a/app/controllers/admin/journal_papers_controller.rb
+++ b/app/controllers/admin/journal_papers_controller.rb
@@ -222,6 +222,7 @@ class Admin::JournalPapersController < OrbitMemberController
@journal_levels = JournalLevel.all
@author_types = JournalPaperAuthorType.all
@paper_types = JournalPaperType.all
+ @journal_types = JournalType.all
end
def set_plugin
diff --git a/app/controllers/personal_journals_controller.rb b/app/controllers/personal_journals_controller.rb
index 0ef1f86..41d94ee 100644
--- a/app/controllers/personal_journals_controller.rb
+++ b/app/controllers/personal_journals_controller.rb
@@ -3,7 +3,15 @@ class PersonalJournalsController < ApplicationController
def index
params = OrbitHelper.params
page_data_count = OrbitHelper.page_data_count
- journal_papers = JournalPaper.sort_for_frontend.page(OrbitHelper.params[:page_no]).per(page_data_count)
+ page = OrbitHelper.page
+ journal_paper_query = JournalPaper.sort_for_frontend
+ if (!page.year.blank? rescue false)
+ journal_paper_query = journal_paper_query.where(:year.in => page.year.to_a )
+ end
+ if (!page.journal_type.blank? rescue false)
+ journal_paper_query = journal_paper_query.where(:journal_type_id.in => page.journal_type.to_a )
+ end
+ journal_papers = journal_paper_query.page(OrbitHelper.params[:page_no]).per(page_data_count)
page = Page.where(page_id: params[:page_id]).first rescue nil
if page.custom_string_field == 'table'
fields_to_show = page.custom_array_field rescue []
@@ -25,7 +33,7 @@ class PersonalJournalsController < ApplicationController
]
end
if !params[:selectbox].nil?
- journal_papers_temp = JournalPaper.where(is_hidden: false).sort_by { |tp| [-tp[:year].to_i, -tp[:publication_date].to_i] }
+ journal_papers_temp = journal_paper_query.sort_by { |tp| [-tp[:year].to_i, -tp[:publication_date].to_i] }
case params[:selectbox]
when 'paper_title', 'default'
if page.custom_string_field == 'table'
diff --git a/app/models/journal_paper.rb b/app/models/journal_paper.rb
index 4b296e8..b63177f 100644
--- a/app/models/journal_paper.rb
+++ b/app/models/journal_paper.rb
@@ -33,6 +33,8 @@ class JournalPaper
#relations
belongs_to :member_profile
belongs_to :journal_paper_type
+ belongs_to :journal_type
+
has_and_belongs_to_many :journal_levels
has_many :journal_paper_files, autosave: true, dependent: :destroy
diff --git a/app/views/admin/journal_papers/_form.html.erb b/app/views/admin/journal_papers/_form.html.erb
index bd346b9..87fc8d5 100644
--- a/app/views/admin/journal_papers/_form.html.erb
+++ b/app/views/admin/journal_papers/_form.html.erb
@@ -197,6 +197,14 @@
+
+
+
+
+ <%= f.select :journal_type_id, @journal_types.collect {|t| [ t.title, t.id ]}, {include_blank: ''}, :class => "span3" %>
+
+
+
diff --git a/app/views/admin/journal_papers/setting.html.erb b/app/views/admin/journal_papers/setting.html.erb
index af52d42..922efbc 100644
--- a/app/views/admin/journal_papers/setting.html.erb
+++ b/app/views/admin/journal_papers/setting.html.erb
@@ -98,6 +98,33 @@
+
+
@@ -113,4 +140,10 @@
+
+
+
\ No newline at end of file
diff --git a/config/locales/en.yml b/config/locales/en.yml
index f1300a1..1d4f0d2 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -44,6 +44,7 @@ en:
graph_by : "Graph By"
frontend:
writing_journals: "Journal Paper Front-end"
+ journal_type: Journal Name
strict_compare_mode: Strict Compare mode
create_success : "Successfully Create"
update_success : "Successfully Update"
diff --git a/config/locales/zh_tw.yml b/config/locales/zh_tw.yml
index 2693b3c..76afd96 100644
--- a/config/locales/zh_tw.yml
+++ b/config/locales/zh_tw.yml
@@ -43,6 +43,7 @@ zh_tw:
graph_by : "Graph By"
frontend:
writing_journals: "期刊論文前台"
+ journal_type: 期刊類別
strict_compare_mode: "嚴格比較模式"
create_success : "新增完成!!"
update_success : "更新完成!!"
diff --git a/config/routes.rb b/config/routes.rb
index caa0533..3739800 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -2,40 +2,41 @@ Rails.application.routes.draw do
locales = Site.find_by(site_active: true).in_use_locales rescue I18n.available_locales
scope "(:locale)", locale: Regexp.new(locales.join("|")) do
namespace :admin do
- get 'writing_journal_setting' => "journal_papers#setting"
- get 'journal_papers/download_excel_format' => 'journal_papers#excel_format'
- post 'journal_papers/import_from_excel' => 'journal_papers#import_from_excel'
-
- resources :journal_papers do
- collection do
- post 'merge_process' => 'journal_papers#merge_process'
- get 'merge' => 'journal_papers#merge'
- get 'toggle_hide' => 'journal_papers#toggle_hide'
- get 'analysis'
- get 'analysis_report'
- get "download_excel"
- end
+ get 'writing_journal_setting' => "journal_papers#setting"
+ get 'journal_papers/download_excel_format' => 'journal_papers#excel_format'
+ post 'journal_papers/import_from_excel' => 'journal_papers#import_from_excel'
+
+ resources :journal_papers do
+ collection do
+ post 'merge_process' => 'journal_papers#merge_process'
+ get 'merge' => 'journal_papers#merge'
+ get 'toggle_hide' => 'journal_papers#toggle_hide'
+ get 'analysis'
+ get 'analysis_report'
+ get "download_excel"
end
-
- resources :members do
- collection do
- scope '(:name-:uid)' do
- resources :journal_papers do
- collection do
- get 'frontend_setting' => 'journal_papers#frontend_setting'
- post 'update_frontend_setting' => 'journal_papers#update_frontend_setting'
- end
+ end
+
+ resources :members do
+ collection do
+ scope '(:name-:uid)' do
+ resources :journal_papers do
+ collection do
+ get 'frontend_setting' => 'journal_papers#frontend_setting'
+ post 'update_frontend_setting' => 'journal_papers#update_frontend_setting'
end
end
end
end
-
- resources :journal_levels
- resources :journal_paper_author_types
- resources :journal_paper_types
- resources :journal_paper_intros
+ end
+
+ resources :journal_levels
+ resources :journal_paper_author_types
+ resources :journal_paper_types
+ resources :journal_types
+ resources :journal_paper_intros
end
- get "/xhr/personal_journal/get_fields_for_index" => "personal_journals#get_fields_for_index"
- post "/xhr/personal_journal/save_index_fields" => "personal_journals#save_index_fields"
+ get "/xhr/personal_journal/get_fields_for_index" => "personal_journals#get_fields_for_index"
+ post "/xhr/personal_journal/save_index_fields" => "personal_journals#save_index_fields"
end
end
diff --git a/lib/personal_journal/engine.rb b/lib/personal_journal/engine.rb
index 5d81ffa..86c4a47 100644
--- a/lib/personal_journal/engine.rb
+++ b/lib/personal_journal/engine.rb
@@ -6,6 +6,12 @@ module PersonalJournal
base_url File.expand_path File.dirname(__FILE__)
personal_plugin :enable => true, :sort_number => '5', :app_name=>"JournalPaper", :intro_app_name=>"JournalPaperlIntro",:path=>"/plugin/personal_journal/profile",:front_path=>"/profile",:admin_path=>"/admin/journal_papers/",:i18n=>'module_name.journal_paper', :module_app_name=>'PersonalJournal', :one_line_title => true, :field_modifiable => true, :analysis => true, :analysis_path => "/admin/journal_papers/analysis"
+ begin
+ page_custom_option({year: '<%= f.select :year, (1930...(DateTime.now.year+5)).to_a.reverse, {:include_blank => ""}, {multiple: true} %>'})
+ page_custom_option({journal_type: '<% JournalType.all.each do |journal_type| %>
<% end %>'})
+ rescue => e
+ puts ['there_was_no_page_custom_option',e]
+ end
version "0.1"
desktop_enabled true
organization "Rulingcom"