git-svn-id: http://svn.redmine.org/redmine/trunk@16900 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/4.0.0
@@ -25,19 +25,19 @@ module JournalsHelper | |||
ids.any? ? Attachment.where(:id => ids).select(&:thumbnailable?) : [] | |||
end | |||
def render_notes(issue, journal, options={}) | |||
content = '' | |||
css_classes = "wiki" | |||
# Returns the action links for an issue journal | |||
def render_journal_actions(issue, journal, options={}) | |||
links = [] | |||
if journal.notes.present? | |||
links << link_to(l(:button_quote), | |||
quoted_issue_path(issue, :journal_id => journal), | |||
:remote => true, | |||
:method => 'post', | |||
:title => l(:button_quote), | |||
:class => 'icon-only icon-comment' | |||
) if options[:reply_links] | |||
if options[:reply_links] | |||
links << link_to(l(:button_quote), | |||
quoted_issue_path(issue, :journal_id => journal), | |||
:remote => true, | |||
:method => 'post', | |||
:title => l(:button_quote), | |||
:class => 'icon-only icon-comment' | |||
) | |||
end | |||
if journal.editable_by?(User.current) | |||
links << link_to(l(:button_edit), | |||
edit_journal_path(journal), | |||
@@ -53,12 +53,13 @@ module JournalsHelper | |||
:title => l(:button_delete), | |||
:class => 'icon-only icon-del' | |||
) | |||
css_classes << " editable" | |||
end | |||
end | |||
content << content_tag('div', links.join(' ').html_safe, :class => 'contextual') unless links.empty? | |||
content << textilizable(journal, :notes) | |||
content_tag('div', content.html_safe, :id => "journal-#{journal.id}-notes", :class => css_classes) | |||
safe_join(links, ' ') | |||
end | |||
def render_notes(issue, journal, options={}) | |||
content_tag('div', textilizable(journal, :notes), :id => "journal-#{journal.id}-notes", :class => "wiki") | |||
end | |||
def render_private_notes_indicator(journal) |
@@ -2,10 +2,15 @@ | |||
<% for journal in journals %> | |||
<div id="change-<%= journal.id %>" class="<%= journal.css_classes %>"> | |||
<div id="note-<%= journal.indice %>"> | |||
<h4><a href="#note-<%= journal.indice %>" class="journal-link">#<%= journal.indice %></a> | |||
<%= avatar(journal.user, :size => "24") %> | |||
<%= authoring journal.created_on, journal.user, :label => :label_updated_time_by %> | |||
<%= render_private_notes_indicator(journal) %></h4> | |||
<div class="contextual"> | |||
<span class="journal-actions"><%= render_journal_actions(issue, journal, :reply_links => reply_links) %></span> | |||
<a href="#note-<%= journal.indice %>" class="journal-link">#<%= journal.indice %></a> | |||
</div> | |||
<h4> | |||
<%= avatar(journal.user, :size => "24") %> | |||
<%= authoring journal.created_on, journal.user, :label => :label_updated_time_by %> | |||
<%= render_private_notes_indicator(journal) %> | |||
</h4> | |||
<% if journal.details.any? %> | |||
<ul class="details"> |
@@ -2,8 +2,9 @@ | |||
$("#change-<%= @journal.id %>").remove(); | |||
<% else %> | |||
$("#change-<%= @journal.id %>").attr('class', '<%= @journal.css_classes %>'); | |||
$("#journal-<%= @journal.id %>-notes").replaceWith('<%= escape_javascript(render_notes(@journal.issue, @journal, :reply_links => authorize_for('issues', 'edit'))) %>'); | |||
$("#change-<%= @journal.id %> .journal-actions").html('<%= escape_javascript(render_journal_actions(@journal.issue, @journal, :reply_links => authorize_for('issues', 'edit'))) %>'); | |||
$("#journal-<%= @journal.id %>-private_notes").replaceWith('<%= escape_javascript(render_private_notes_indicator(@journal)) %>'); | |||
$("#journal-<%= @journal.id %>-notes").replaceWith('<%= escape_javascript(render_notes(@journal.issue, @journal, :reply_links => authorize_for('issues', 'edit'))) %>'); | |||
$("#journal-<%= @journal.id %>-notes").show(); | |||
$("#journal-<%= @journal.id %>-form").remove(); | |||
<% end %> |