diff --git a/app/controllers/admin/journal_papers_controller.rb b/app/controllers/admin/journal_papers_controller.rb index 7166af5..9e552f0 100644 --- a/app/controllers/admin/journal_papers_controller.rb +++ b/app/controllers/admin/journal_papers_controller.rb @@ -23,14 +23,50 @@ class Admin::JournalPapersController < OrbitMemberController end def create - @member = MemberProfile.find(journal_paper_params['member_profile_id']) rescue nil - @journal_paper = JournalPaper.new(journal_paper_params) - @journal_paper.save - if params[:desktop] == "true" - render json: {"data" => get_paper_list}.to_json - else + + if !journal_paper_params['member_profile_id'].blank? + + @member = MemberProfile.find(journal_paper_params['member_profile_id']) rescue nil + @journal_paper = JournalPaper.new(journal_paper_params) + @journal_paper.save + + if params[:desktop] == "true" + render json: {"data" => get_paper_list}.to_json + else + redirect_to params['referer_url'] + end + + elsif !params[:author_members].blank? + + params[:author_members].each do |author_member| + + journal_paper_params['member_profile_id'] = author_member + @journal_paper = JournalPaper.new(journal_paper_params) + @journal_paper.save + + if params[:desktop] == "true" + render json: {"data" => get_paper_list}.to_json + end + + end + redirect_to params['referer_url'] + + else + + journal_paper_params['member_profile_id'] = User.find(current_user.id).member_profile_id + + @journal_paper = JournalPaper.new(journal_paper_params) + @journal_paper.save + + if params[:desktop] == "true" + render json: {"data" => get_paper_list}.to_json + end + + redirect_to params['referer_url'] + end + end def edit diff --git a/app/views/admin/journal_papers/_form.html.erb b/app/views/admin/journal_papers/_form.html.erb index 082e7bb..a1bab4b 100644 --- a/app/views/admin/journal_papers/_form.html.erb +++ b/app/views/admin/journal_papers/_form.html.erb @@ -117,14 +117,27 @@
+ <% if !@member.nil? %> +
<%= @member.name rescue ''%> - <%= f.hidden_field :member_profile_id, :value => @member.id if !@member.nil? %> + <%= f.hidden_field :member_profile_id, :value => @member.id %>
+ <% else %> + +
+ +
+ <%= render partial: 'admin/member_selects/email_selection_box', locals: {field: 'author_members[]', email_members:[]} %> +
+
+ + <% end %> +
diff --git a/app/views/admin/journal_papers/index.html.erb b/app/views/admin/journal_papers/index.html.erb index f15c993..71a8015 100644 --- a/app/views/admin/journal_papers/index.html.erb +++ b/app/views/admin/journal_papers/index.html.erb @@ -13,6 +13,7 @@
+ <%= link_to content_tag(:i, nil, :class => 'icon-plus icon-white') + t(:new_), new_admin_journal_paper_path, :class => 'btn btn-primary' %> <%= link_to content_tag(:i, nil, :class => 'icon-cog icon-white') + t('setting'), admin_writing_journal_setting_path, :class => 'btn btn-primary pull-right' %>