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:
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>
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.