プロジェクト

全般

プロフィール

Vote #68166

完了

Links to wikipages bound to versions do not respect version-sharing in Settings -> Versions

Admin Redmine さんが約4年前に追加. 約4年前に更新.

ステータス:
Closed
優先度:
通常
担当者:
-
カテゴリ:
Roadmap_22
対象バージョン:
開始日:
2010/09/20
期日:
進捗率:

100%

予定工数:
category_id:
22
version_id:
25
issue_org_id:
6435
author_id:
1565
assigned_to_id:
1565
comments:
6
status_id:
5
tracker_id:
1
plus1:
0
affected_version:
closed_on:
affected_version_id:
ステータス-->[Closed]

説明

While reviewing the implementation for issue #4416 I noticed that the links to wikipages bound to versions do not respect version-sharing (introduced in r3123 for issue #465 and enhanced with r3133 for issue #4357) in Settings -> Versions.

This leads to incorrect links when the version does not belong to the current project. More specifically, the links always point to the current project wiki instead of the wiki of the actual versions project.

Another side-effect is that in the @unless@-statement again only the current project wiki is checked for existence instead of the actual versions project wiki.


journals

I've fixed this by wrapping source:/trunk/app/views/projects/settings/_versions.rhtml#L20 into a basic if-else structure (checking for @version.project == @project@) and adding a modified else-case statement (added @:id@-param containing @version.project@-value and changed @unless@ statement to check @version.project.wiki.nil?@ instead of @@project.wiki.nil?@).

Here follows my patch (which also "fixes" two coding-standard inconsistencies (my third and fourth change)) which I'll attach seperately also:
<pre><code class="diff">
Index: app/views/projects/settings/_versions.rhtml
===================================================================
--- app/views/projects/settings/_versions.rhtml (revision 4101)
+++ app/views/projects/settings/_versions.rhtml (working copy)
@@ -6,7 +6,7 @@
<th><%= l(:field_description) %></th>
<th><%= l(:field_status) %></th>
<th><%= l(:field_sharing) %></th>
- <th><%= l(:label_wiki_page) unless @project.wiki.nil? %></th>
+ <th><%= l(:label_wiki_page) %></th>
<th style="width:15%"></th>
</tr></thead>
<tbody>
@@ -17,13 +17,19 @@
<td class="description"><%=h version.description %></td>
<td class="status"><%= l("version_status_#{version.status}") %></td>
<td class="sharing"><%=h format_version_sharing(version.sharing) %></td>
- <td><%= link_to(h(version.wiki_page_title), :controller => 'wiki', :page => Wiki.titleize(version.wiki_page_title)) unless version.wiki_page_title.blank? || @project.wiki.nil? %></td>
+ <td>
+ <% if version.project == @project %>
+ <%= link_to(h(version.wiki_page_title), :controller => 'wiki', :page => Wiki.titleize(version.wiki_page_title)) unless version.wiki_page_title.blank? || @project.wiki.nil? %>
+ <% else %>
+ <%= link_to(h(version.wiki_page_title), :controller => 'wiki', :id => version.project, :page => Wiki.titleize(version.wiki_page_title)) unless version.wiki_page_title.blank? || version.project.wiki.nil? %>
+ <% end %>
+ </td>
<td class="buttons">
<% if version.project == @project %>
- <%= link_to_if_authorized l(:button_edit), {:controller => 'versions', :action => 'edit', :id => version }, :class => 'icon icon-edit' %>
+ <%= link_to_if_authorized l(:button_edit), {:controller => 'versions', :action => 'edit', :id => version}, :class => 'icon icon-edit' %>
<%= link_to_if_authorized l(:button_delete), {:controller => 'versions', :action => 'destroy', :id => version}, :confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
<% end %>
- </td>
+ </td>
</tr>
<% end; reset_cycle %>
</tbody>

</code></pre>

As visible from my 1st change it is required in Redmine now to always show the Wikipage heading because of that it is possible that inherited versions contain bound wikipages while the current projects wiki does not exist.
--------------------------------------------------------------------------------
Added relation to issue #4416 cause of its similarity regarding the scoping of links (started by Jean-Baptiste Barth in "note-6":http://www.redmine.org/issues/4416#note-6).
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Included in a fix for #4416, I didn't take the if-block though, as it seems superfluous.
--------------------------------------------------------------------------------
Fix applied in r4307, thanks Mischa & Felix.
--------------------------------------------------------------------------------
Merged into 1.0-stable for release in 1.0.3
--------------------------------------------------------------------------------


related_issues

relates,Closed,4416,Link from version details page to edit the wiki.

Admin Redmine さんが約4年前に更新

  • カテゴリRoadmap_22 にセット
  • 対象バージョン1.0.3_25 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0