diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index f7b945875..f14a637dc 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -46,6 +46,11 @@ module ApplicationHelper def authorize_for(controller, action) User.current.allowed_to?({:controller => controller, :action => action}, @project) end + + # add by nwb + def authorize_for_course(controller, action) + User.current.allowed_to?({:controller => controller, :action => action}, @course) + end def authorize_for_contest(controller, action) User.current.allowed_to?({:controller => controller, :action => action}, @contest) diff --git a/app/views/messages/_course_show.html.erb b/app/views/messages/_course_show.html.erb new file mode 100644 index 000000000..243406a3c --- /dev/null +++ b/app/views/messages/_course_show.html.erb @@ -0,0 +1,200 @@ + + +
+ + <%= render :partial => "/praise_tread/praise_tread",:locals => {:obj => @topic,:show_flag => true,:user_id =>User.current.id,:horizontal => true}%> +
+ <%= watcher_link(@topic, User.current) %> + <%= link_to( + l(:button_quote), + {:action => 'quote', :id => @topic}, + :remote => true, + :method => 'get', + :class => 'icon icon-comment', + :remote => true) if !@topic.locked? && authorize_for('messages', 'reply') %> + <%= link_to( + l(:button_edit), + {:action => 'edit', :id => @topic}, + :class => 'icon icon-edit' + ) if @message.editable_by?(User.current) %> + <%= link_to( + l(:button_delete), + {:action => 'destroy', :id => @topic}, + :method => :post, + :data => {:confirm => l(:text_are_you_sure)}, + :class => 'icon icon-del' + ) if @message.destroyable_by?(User.current) %> +
+ +
+
+ <%= link_to image_tag(url_to_avatar(@topic.author), :class => "avatar"), user_path(@topic.author) %> +
+

+ <%= link_to @topic.author, user_path(@topic.author) %> +

+
+
+
+ <% if @project %> + <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, project_boards_path(@topic.project) %> + <% elsif @course %> + <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, course_boards_path(@topic.course) %> + <% end %> +
+
+ <%= textilizable(@topic, :content) %> + <%= link_to_attachments @topic, :author => false %> +
+
+
<%= authoring @topic.created_on, @topic.author %>
+ + +
<%= toggle_link l(:button_reply), "reply", :focus => 'message_content' %>
+
+ + + + +
+
+
+ +<% unless @replies.empty? %> +
+
+
+
+

<%= l(:label_reply_plural) %> (<%= @reply_count %>)

+ <% reply_count = 0 %> + <% @replies.each do |message| %> +
"> + + + + + + + + + + + + + + +
<%= link_to image_tag(url_to_avatar(message.author), :class => "avatar"), user_path(message.author) %> +
+ <%= link_to( + "引用", + {:action => 'quote', :id => message}, + :remote => true, + :method => 'get', + :title => l(:button_quote)) if !@topic.locked? && authorize_for('messages', 'reply') %> + <%= link_to( + #image_tag('edit.png'), + "编辑", + {:action => 'edit', :id => message}, + :title => l(:button_edit) + ) if message.editable_by?(User.current) %> + <%= link_to( + #image_tag('delete.png'), + "删除", + {:action => 'destroy', :id => message}, + :method => :post, + :data => {:confirm => l(:text_are_you_sure)}, + :title => l(:button_delete) + ) if message.destroyable_by?(User.current) %> +
+
+ <%= textilizable message, :content, :attachments => message.attachments %> +
+ <%= link_to_attachments message, :author => false %>
<%= authoring message.created_on, message.author %>
+
+ + <% end %> + +<% end %> + + + + +<% if !@topic.locked? && authorize_for_course('messages', 'reply') %> + +<% end %> + +<% html_title @topic.subject %> + + \ No newline at end of file diff --git a/app/views/messages/_project_show.html.erb b/app/views/messages/_project_show.html.erb new file mode 100644 index 000000000..4456f36e9 --- /dev/null +++ b/app/views/messages/_project_show.html.erb @@ -0,0 +1,200 @@ + + +
+ + <%= render :partial => "/praise_tread/praise_tread",:locals => {:obj => @topic,:show_flag => true,:user_id =>User.current.id,:horizontal => true}%> +
+ <%= watcher_link(@topic, User.current) %> + <%= link_to( + l(:button_quote), + {:action => 'quote', :id => @topic}, + :remote => true, + :method => 'get', + :class => 'icon icon-comment', + :remote => true) if !@topic.locked? && authorize_for('messages', 'reply') %> + <%= link_to( + l(:button_edit), + {:action => 'edit', :id => @topic}, + :class => 'icon icon-edit' + ) if @message.editable_by?(User.current) %> + <%= link_to( + l(:button_delete), + {:action => 'destroy', :id => @topic}, + :method => :post, + :data => {:confirm => l(:text_are_you_sure)}, + :class => 'icon icon-del' + ) if @message.destroyable_by?(User.current) %> +
+ +
+
+ <%= link_to image_tag(url_to_avatar(@topic.author), :class => "avatar"), user_path(@topic.author) %> +
+

+ <%= link_to @topic.author, user_path(@topic.author) %> +

+
+
+
+ <% if @project %> + <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, project_boards_path(@topic.project) %> + <% elsif @course %> + <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, course_boards_path(@topic.course) %> + <% end %> +
+
+ <%= textilizable(@topic, :content) %> + <%= link_to_attachments @topic, :author => false %> +
+
+
<%= authoring @topic.created_on, @topic.author %>
+ + +
<%= toggle_link l(:button_reply), "reply", :focus => 'message_content' %>
+
+ + + + +
+
+
+ +<% unless @replies.empty? %> +
+
+
+
+

<%= l(:label_reply_plural) %> (<%= @reply_count %>)

+ <% reply_count = 0 %> + <% @replies.each do |message| %> +
"> + + + + + + + + + + + + + + +
<%= link_to image_tag(url_to_avatar(message.author), :class => "avatar"), user_path(message.author) %> +
+ <%= link_to( + "引用", + {:action => 'quote', :id => message}, + :remote => true, + :method => 'get', + :title => l(:button_quote)) if !@topic.locked? && authorize_for('messages', 'reply') %> + <%= link_to( + #image_tag('edit.png'), + "编辑", + {:action => 'edit', :id => message}, + :title => l(:button_edit) + ) if message.editable_by?(User.current) %> + <%= link_to( + #image_tag('delete.png'), + "删除", + {:action => 'destroy', :id => message}, + :method => :post, + :data => {:confirm => l(:text_are_you_sure)}, + :title => l(:button_delete) + ) if message.destroyable_by?(User.current) %> +
+
+ <%= textilizable message, :content, :attachments => message.attachments %> +
+ <%= link_to_attachments message, :author => false %>
<%= authoring message.created_on, message.author %>
+
+ + <% end %> + +<% end %> + + + + +<% if !@topic.locked? && authorize_for('messages', 'reply') %> + +<% end %> + +<% html_title @topic.subject %> + + \ No newline at end of file diff --git a/app/views/messages/show.html.erb b/app/views/messages/show.html.erb index 24dffbc41..6e5888363 100644 --- a/app/views/messages/show.html.erb +++ b/app/views/messages/show.html.erb @@ -1,200 +1,5 @@ - - -
- - <%= render :partial => "/praise_tread/praise_tread",:locals => {:obj => @topic,:show_flag => true,:user_id =>User.current.id,:horizontal => true}%> -
- <%= watcher_link(@topic, User.current) %> - <%= link_to( - l(:button_quote), - {:action => 'quote', :id => @topic}, - :remote => true, - :method => 'get', - :class => 'icon icon-comment', - :remote => true) if !@topic.locked? && authorize_for('messages', 'reply') %> - <%= link_to( - l(:button_edit), - {:action => 'edit', :id => @topic}, - :class => 'icon icon-edit' - ) if @message.editable_by?(User.current) %> - <%= link_to( - l(:button_delete), - {:action => 'destroy', :id => @topic}, - :method => :post, - :data => {:confirm => l(:text_are_you_sure)}, - :class => 'icon icon-del' - ) if @message.destroyable_by?(User.current) %> -
- -
-
- <%= link_to image_tag(url_to_avatar(@topic.author), :class => "avatar"), user_path(@topic.author) %> -
-

- <%= link_to @topic.author, user_path(@topic.author) %> -

-
-
-
- <% if @project %> - <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, project_boards_path(@topic.project) %> - <% elsif @course %> - <%= label_tag l(:field_subject) %>: <%= link_to @topic.subject, course_boards_path(@topic.course) %> - <% end %> -
-
- <%= textilizable(@topic, :content) %> - <%= link_to_attachments @topic, :author => false %> -
-
-
<%= authoring @topic.created_on, @topic.author %>
- - -
<%= toggle_link l(:button_reply), "reply", :focus => 'message_content' %>
-
- - - - -
-
-
- -<% unless @replies.empty? %> -
-
-
-
-

<%= l(:label_reply_plural) %> (<%= @reply_count %>)

-<% reply_count = 0 %> -<% @replies.each do |message| %> -
"> - - - - - - - - - - - - - - -
<%= link_to image_tag(url_to_avatar(message.author), :class => "avatar"), user_path(message.author) %> -
- <%= link_to( - "引用", - {:action => 'quote', :id => message}, - :remote => true, - :method => 'get', - :title => l(:button_quote)) if !@topic.locked? && authorize_for('messages', 'reply') %> - <%= link_to( - #image_tag('edit.png'), - "编辑", - {:action => 'edit', :id => message}, - :title => l(:button_edit) - ) if message.editable_by?(User.current) %> - <%= link_to( - #image_tag('delete.png'), - "删除", - {:action => 'destroy', :id => message}, - :method => :post, - :data => {:confirm => l(:text_are_you_sure)}, - :title => l(:button_delete) - ) if message.destroyable_by?(User.current) %> -
-
- <%= textilizable message, :content, :attachments => message.attachments %> -
- <%= link_to_attachments message, :author => false %>
<%= authoring message.created_on, message.author %>
-
- +<% if @project %> + <%= render :partial => 'project_show', locals: {project: @project} %> +<% elsif @course %> + <%= render :partial => 'course_show', locals: {course: @course} %> <% end %> - -<% end %> - - - - -<% if !@topic.locked? && authorize_for('messages', 'reply') %> - -<% end %> - -<% html_title @topic.subject %> - - \ No newline at end of file