diff --git a/app/controllers/at_controller.rb b/app/controllers/at_controller.rb index 69c33f90e..0e48cd962 100644 --- a/app/controllers/at_controller.rb +++ b/app/controllers/at_controller.rb @@ -10,7 +10,7 @@ class AtController < ApplicationController @users = users.uniq { |u| u.id }.delete_if { |u| u.id == User.current.id }.sort{|x,y| to_pinyin(x.show_name) <=> to_pinyin(y.show_name)} if users #加上all - if @users.size > 0 + if @user && @users.size > 0 allUser = Struct.new(:id, :name).new allUser.id = @users.map{|u| u.id}.join(",") allUser.name = "all" diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 450be2af1..ca91106e9 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -483,12 +483,21 @@ class IssuesController < ApplicationController if User.current.logged? jour = Journal.find(params[:journal_id]) @issue = Issue.find params[:id] - new_jour = @issue.journals.build(:user_id => User.current.id, :reply_id => params[:journal_id], :notes => params[:content], :parent_id => jour.id) + @project = @issue.project + @allowed_statuses = @issue.new_statuses_allowed_to(User.current) + @priorities = IssuePriority.active + new_jour = Journal.new + new_jour.user_id = User.current.id + new_jour.reply_id = params[:journal_id] + new_jour.parent_id = jour.id + new_jour.notes = params[:content] + new_jour.journalized = @issue + new_jour.save_attachments(params[:attachments]) + # new_jour = @issue.journals.build(:user_id => User.current.id, :reply_id => params[:journal_id], :notes => params[:content], :parent_id => jour.id) @user_activity_id = params[:user_activity_id] if new_jour.save update_user_activity(@issue.class,@issue.id) update_forge_activity(@issue.class,@issue.id) - respond_to do |format| format.js end @@ -496,13 +505,14 @@ class IssuesController < ApplicationController end end - # + # 需要刷新详情页面,代码同步一致 + # 获取project和issue状态是为了刷新页面 def delete_journal @issue = Issue.find(params[:id]) Journal.destroy(params[:journal_id]) @user_activity_id = params[:user_activity_id] respond_to do |format| - format.js + format.html{ redirect_to issue_url(@issue)} end end diff --git a/app/views/issues/_issue_replies.html.erb b/app/views/issues/_issue_replies.html.erb index 344987913..2a5007bc3 100644 --- a/app/views/issues/_issue_replies.html.erb +++ b/app/views/issues/_issue_replies.html.erb @@ -40,7 +40,6 @@ l(:button_delete), {:controller => 'issues',:action => 'delete_journal', :id => issue.id,:journal_id=>comment.id}, :method => :get, - :remote=>true, :class => 'fr mr20', :data => {:confirm => l(:text_are_you_sure)}, :title => l(:button_delete) diff --git a/app/views/issues/_jounal_refresh.js.erb b/app/views/issues/_jounal_refresh.js.erb new file mode 100644 index 000000000..0945ba04d --- /dev/null +++ b/app/views/issues/_jounal_refresh.js.erb @@ -0,0 +1,21 @@ +$("#reply_div_<%= @issue.id %>").html("<%= escape_javascript(render :partial => 'issues/issue_replies', :locals => {:issue => @issue}) %>"); +$("#issue_detail_show").html('<%= escape_javascript(render :partial => 'issues/detail') %>') +$("#issue_edit_show").html('<%= escape_javascript(render :partial => 'issues/edit') %>') +$("#div_issue_attachment_<%=@issue.id %>").html("<%= escape_javascript(render :partial => 'issues/issue_attachments', :locals => {:issue => @issue}) %>"); +sd_create_editor_from_data(<%= @issue.id %>, null, "100%", "<%= @issue.class.name %>"); +issue_desc_editor = KindEditor.create('#issue_description', + {"width":"85%", + "resizeType":0, + "no_label":true, + "at_id":<%= @issue.project_id%>, + "at_type":"Project", + "autoHeightMode":true, + "afterCreate":"eval(function(){ if(typeof enablePasteImg ==='function'){enablePasteImg(self);};if(typeof enableAt ==='function'){enableAt(self, \"<%=@issue.project_id %>\", 'Project');}; this.loadPlugin('autoheight')})", + "emotionsBasePath":'<%= Setting.host_name%>', + "height":300, + "allowFileManager":true, + "uploadJson":"/kindeditor/upload", + "fileManagerJson":"/kindeditor/filemanager"}); +// $("#issue_test_<%#= @issue.id %>").html("<%#= escape_javascript(render :partial => 'issues/edit', :locals => {:issue => Issue.find( @issue_id)}) %>"); +$(".homepagePostReplyBannerCount").html('回复(<%= @issue.journals.count %>)'); +sd_create_editor_from_data(<%= @issue.id%>, null, "100%","<%= @issue.class.name %>"); \ No newline at end of file diff --git a/app/views/issues/add_journal.js.erb b/app/views/issues/add_journal.js.erb index 838e2d83d..eeaa52faa 100644 --- a/app/views/issues/add_journal.js.erb +++ b/app/views/issues/add_journal.js.erb @@ -1,25 +1,5 @@ <% if @issue_id %> //issue详情中回复 - $("#reply_div_<%= @issue_id %>").html("<%= escape_javascript(render :partial => 'issues/issue_replies', :locals => {:issue => Issue.find( @issue_id),:replies_all_i=>0}) %>"); - $("#div_issue_attachment_<%=@issue.id %>").html("<%= escape_javascript(render :partial => 'issues/issue_attachments', :locals => {:issue => Issue.find( @issue_id)}) %>"); - $("#issue_detail_show").html('<%= escape_javascript(render :partial => 'issues/detail') %>') - $("#issue_edit_show").html('<%= escape_javascript(render :partial => 'issues/edit') %>') - sd_create_editor_from_data(<%= @issue.id %>, null, "100%", "<%= @issue.class.name %>"); - issue_desc_editor = KindEditor.create('#issue_description', - {"width":"85%", - "resizeType":0, - "no_label":true, - "at_id":<%= @issue.project_id%>, - "at_type":"Project", - "autoHeightMode":true, - "afterCreate":"eval(function(){ if(typeof enablePasteImg ==='function'){enablePasteImg(self);};if(typeof enableAt ==='function'){enableAt(self, \"<%=@issue.project_id %>\", 'Project');}; this.loadPlugin('autoheight')})", - "emotionsBasePath":'<%= Setting.host_name%>', - "height":300, - "allowFileManager":true, - "uploadJson":"/kindeditor/upload", - "fileManagerJson":"/kindeditor/filemanager"}); -// $("#issue_test_<%#= @issue.id %>").html("<%#= escape_javascript(render :partial => 'issues/edit', :locals => {:issue => Issue.find( @issue_id)}) %>"); - $(".homepagePostReplyBannerCount").html('回复(<%= Issue.find( @issue_id).journals.count %>)') - sd_create_editor_from_data(<%= @issue.id %>, null, "100%","<%=@issue.class.name%>"); + <%= render "jounal_refresh" %> <%else%> $("#div_user_issue_reply_<%=@user_activity_id %>").html("<%= escape_javascript(render :partial => 'users/project_issue_reply', :locals => {:activity => @issue, :user_activity_id => @user_activity_id}) %>"); sd_create_editor_from_data(<%= @user_activity_id %>, null, "100%", "UserActivity"); diff --git a/app/views/issues/add_reply.js.erb b/app/views/issues/add_reply.js.erb index a818830cd..22581e37a 100644 --- a/app/views/issues/add_reply.js.erb +++ b/app/views/issues/add_reply.js.erb @@ -1,8 +1,8 @@ <% if @user_activity_id %> +<%# 动态中 %> $("#div_user_issue_reply_<%=@user_activity_id%>").html("<%= escape_javascript(render :partial => 'users/project_issue_reply', :locals => {:activity => @issue, :user_activity_id => @user_activity_id}) %>"); sd_create_editor_from_data(<%= @user_activity_id%>, null, "100%","<%=@issue.class.name%>"); <% else %> - $("#reply_div_<%= @issue.id %>").html("<%= escape_javascript(render :partial => 'issues/issue_replies', :locals => {:issue => @issue}) %>"); - $(".homepagePostReplyBannerCount").html('回复(<%= @issue.journals.count %>)'); - sd_create_editor_from_data(<%= @issue.id%>, null, "100%","<%=@issue.class.name%>"); +<%# issue详情 %> + <%= render "jounal_refresh" %> <% end %> \ No newline at end of file diff --git a/app/views/issues/delete_journal.js.erb b/app/views/issues/delete_journal.js.erb index 120c4bf7e..d105fe90f 100644 --- a/app/views/issues/delete_journal.js.erb +++ b/app/views/issues/delete_journal.js.erb @@ -2,7 +2,5 @@ $("#div_user_issue_reply_<%=@user_activity_id%>").html("<%= escape_javascript(render :partial => 'users/project_issue_reply', :locals => {:activity => @issue, :user_activity_id => @user_activity_id}) %>"); sd_create_editor_from_data(<%= @user_activity_id%>, null, "100%","<%=@issue.class.name%>"); <% else %> -$("#reply_div_<%= @issue.id %>").html("<%= escape_javascript(render :partial => 'issues/issue_replies', :locals => {:issue => @issue,:replies_all_i=>0}) %>"); -$(".homepagePostReplyBannerCount").html('回复(<%= @issue.journals.count %>)') -sd_create_editor_from_data(<%= @issue.id%>, null, "100%","<%=@issue.class.name%>"); + <%= render "jounal_refresh" %> <% end %> \ No newline at end of file