diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-06-14 18:26:27 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-06-14 18:26:27 +0000 |
commit | f2acb56041b997812f4a2dc2e7258a16572df7d1 (patch) | |
tree | 46ae163fbeeba9ff056a448773632ba7620964b9 | |
parent | ff1343882ab9a1161b0c1308b65b66630c5b946e (diff) | |
download | redmine-f2acb56041b997812f4a2dc2e7258a16572df7d1.tar.gz redmine-f2acb56041b997812f4a2dc2e7258a16572df7d1.zip |
A wiki page can now be attached to each version.
For that, edit the version and set the wiki page name (project wiki must be enabled).
The wiki page content is displayed for each version on the roadmap view.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@564 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | app/controllers/wiki_controller.rb | 1 | ||||
-rw-r--r-- | app/models/version.rb | 7 | ||||
-rw-r--r-- | app/views/projects/roadmap.rhtml | 5 | ||||
-rw-r--r-- | app/views/projects/settings.rhtml | 10 | ||||
-rw-r--r-- | app/views/versions/_form.rhtml | 5 | ||||
-rw-r--r-- | app/views/wiki/_content.rhtml | 5 | ||||
-rw-r--r-- | app/views/wiki/show.rhtml | 6 | ||||
-rw-r--r-- | db/migrate/057_add_versions_wiki_page_title.rb | 9 | ||||
-rw-r--r-- | lang/bg.yml | 1 | ||||
-rw-r--r-- | lang/de.yml | 1 | ||||
-rw-r--r-- | lang/en.yml | 1 | ||||
-rw-r--r-- | lang/es.yml | 1 | ||||
-rw-r--r-- | lang/fr.yml | 1 | ||||
-rw-r--r-- | lang/it.yml | 1 | ||||
-rw-r--r-- | lang/ja.yml | 1 | ||||
-rw-r--r-- | lang/nl.yml | 1 | ||||
-rw-r--r-- | lang/pt-br.yml | 1 | ||||
-rw-r--r-- | lang/pt.yml | 1 | ||||
-rw-r--r-- | lang/sv.yml | 2 |
19 files changed, 49 insertions, 11 deletions
diff --git a/app/controllers/wiki_controller.rb b/app/controllers/wiki_controller.rb index f85c719bc..bad9b28f0 100644 --- a/app/controllers/wiki_controller.rb +++ b/app/controllers/wiki_controller.rb @@ -141,6 +141,7 @@ private def find_wiki @project = Project.find(params[:id]) @wiki = @project.wiki + render_404 unless @wiki rescue ActiveRecord::RecordNotFound render_404 end diff --git a/app/models/version.rb b/app/models/version.rb index a4e93118e..6234732d7 100644 --- a/app/models/version.rb +++ b/app/models/version.rb @@ -37,6 +37,13 @@ class Version < ActiveRecord::Base effective_date && effective_date <= Date.today end + def wiki_page + if project.wiki && !wiki_page_title.blank? + @wiki_page ||= project.wiki.find_page(wiki_page_title) + end + @wiki_page + end + # Versions are sorted by effective_date # Those with no effective_date are at the end, sorted by name def <=>(version) diff --git a/app/views/projects/roadmap.rhtml b/app/views/projects/roadmap.rhtml index 81ea703c6..8c7d460de 100644 --- a/app/views/projects/roadmap.rhtml +++ b/app/views/projects/roadmap.rhtml @@ -21,7 +21,7 @@ <% elsif version.effective_date %> <p><strong><%=l(:label_roadmap_due_in)%> <%= distance_of_time_in_words Time.now, version.effective_date %> (<%= format_date(version.effective_date) %>)</strong></p> <% end %> - <p><%=h version.description %></p> + <p><%=h version.description %></p> <% issues = version.fixed_issues.find(:all, :include => [:status, :tracker], :conditions => ["tracker_id in (#{@selected_tracker_ids.join(',')})"], @@ -44,7 +44,8 @@ <em><%= link_to(complete, :controller => 'projects', :action => 'list_issues', :id => @project, :status_id => 'c', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_closed_issues, complete) %> (<%= percentComplete %>%)   <%= link_to((total - complete), :controller => 'projects', :action => 'list_issues', :id => @project, :status_id => 'o', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_open_issues, total - complete)%> (<%= percentIncomplete %>%)</em> <br /> - <br /> + <br /> + <%= render(:partial => "wiki/content", :locals => {:content => version.wiki_page.content}) if version.wiki_page %> <ul> <% if total == 0 %> <li><%=l(:label_roadmap_no_issues)%></li> diff --git a/app/views/projects/settings.rhtml b/app/views/projects/settings.rhtml index bd73076cc..73367b26a 100644 --- a/app/views/projects/settings.rhtml +++ b/app/views/projects/settings.rhtml @@ -25,13 +25,21 @@ <div id="tab-content-versions" class="tab-content" style="display:none;"> <table class="list"> - <thead><th><%= l(:label_version) %></th><th><%= l(:field_effective_date) %></th><th><%= l(:field_description) %></th><th style="width:15%"></th><th style="width:15%"></th></thead> + <thead> + <th><%= l(:label_version) %></th> + <th><%= l(:field_effective_date) %></th> + <th><%= l(:field_description) %></th> + <th><%= l(:label_wiki_page) unless @project.wiki.nil? %></th> + <th style="width:15%"></th> + <th style="width:15%"></th> + </thead> <tbody> <% for version in @project.versions.sort %> <tr class="<%= cycle 'odd', 'even' %>"> <td><%=h version.name %></td> <td align="center"><%= format_date(version.effective_date) %></td> <td><%=h version.description %></td> + <td><%= link_to(version.wiki_page_title, :controller => 'wiki', :page => Wiki.titleize(version.wiki_page_title)) unless version.wiki_page_title.blank? || @project.wiki.nil? %></td> <td align="center"><small><%= link_to_if_authorized l(:button_edit), { :controller => 'versions', :action => 'edit', :id => version }, :class => 'icon icon-edit' %></small></td> <td align="center"><small><%= link_to_if_authorized l(:button_delete), {:controller => 'versions', :action => 'destroy', :id => version}, :confirm => l(:text_are_you_sure), :method => :post, :class => 'icon icon-del' %></small></td> </td> diff --git a/app/views/versions/_form.rhtml b/app/views/versions/_form.rhtml index 8dca13e36..cd3afcccd 100644 --- a/app/views/versions/_form.rhtml +++ b/app/views/versions/_form.rhtml @@ -1,11 +1,10 @@ <%= error_messages_for 'version' %> <div class="box"> -<!--[form:version]--> <p><%= f.text_field :name, :size => 20, :required => true %></p> <p><%= f.text_field :description, :size => 60 %></p> +<p><%= f.text_field :wiki_page_title, :label => :label_wiki_page, :size => 60, :disabled => @project.wiki.nil? %></p> <p><%= f.text_field :effective_date, :size => 10 %><%= calendar_for('version_effective_date') %></p> -<!--[eoform:version]--> </div> <% content_for :header_tags do %> @@ -13,4 +12,4 @@ <%= javascript_include_tag "calendar/lang/calendar-#{current_language}.js" %> <%= javascript_include_tag 'calendar/calendar-setup' %> <%= stylesheet_link_tag 'calendar' %> -<% end %>
\ No newline at end of file +<% end %> diff --git a/app/views/wiki/_content.rhtml b/app/views/wiki/_content.rhtml new file mode 100644 index 000000000..3f7c14201 --- /dev/null +++ b/app/views/wiki/_content.rhtml @@ -0,0 +1,5 @@ +<div class="wiki"> + <% cache "wiki/show/#{content.page.id}/#{content.version}" do %> + <%= textilizable content.text, :attachments => content.page.attachments %> + <% end %> +</div> diff --git a/app/views/wiki/show.rhtml b/app/views/wiki/show.rhtml index 8bb757ac0..3a830a47d 100644 --- a/app/views/wiki/show.rhtml +++ b/app/views/wiki/show.rhtml @@ -19,11 +19,7 @@ <hr /> <% end %> -<div class="wiki"> -<% cache "wiki/show/#{@page.id}/#{@content.version}" do %> -<%= textilizable @content.text, :attachments => @page.attachments %> -<% end %> -</div> +<%= render(:partial => "wiki/content", :locals => {:content => @content}) %> <%= link_to_attachments @page.attachments, :delete_url => (authorize_for('wiki', 'destroy_attachment') ? {:controller => 'wiki', :action => 'destroy_attachment', :page => @page.title} : nil) %> diff --git a/db/migrate/057_add_versions_wiki_page_title.rb b/db/migrate/057_add_versions_wiki_page_title.rb new file mode 100644 index 000000000..58b8fd9a8 --- /dev/null +++ b/db/migrate/057_add_versions_wiki_page_title.rb @@ -0,0 +1,9 @@ +class AddVersionsWikiPageTitle < ActiveRecord::Migration + def self.up + add_column :versions, :wiki_page_title, :string + end + + def self.down + remove_column :versions, :wiki_page_title + end +end diff --git a/lang/bg.yml b/lang/bg.yml index 71d4759ac..a91059f79 100644 --- a/lang/bg.yml +++ b/lang/bg.yml @@ -346,6 +346,7 @@ label_all_words: Всички думи label_wiki: Wiki label_wiki_edit: Wiki редакция label_wiki_edit_plural: Wiki редакции +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Индекс label_current_version: Текуща версия diff --git a/lang/de.yml b/lang/de.yml index f2965b35a..973e4fd91 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -346,6 +346,7 @@ label_all_words: Alle Wörter label_wiki: Wiki label_wiki_edit: Wiki Bearbeitung label_wiki_edit_plural: Wiki Bearbeitungen +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Index label_current_version: Gegenwärtige Version diff --git a/lang/en.yml b/lang/en.yml index 1cc12605b..6c3c38f78 100644 --- a/lang/en.yml +++ b/lang/en.yml @@ -346,6 +346,7 @@ label_all_words: All words label_wiki: Wiki label_wiki_edit: Wiki edit label_wiki_edit_plural: Wiki edits +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Index label_current_version: Current version diff --git a/lang/es.yml b/lang/es.yml index 484a947e5..717c1bf6b 100644 --- a/lang/es.yml +++ b/lang/es.yml @@ -346,6 +346,7 @@ label_all_words: Todas las palabras label_wiki: Wiki label_wiki_edit: Wiki edit label_wiki_edit_plural: Wiki edits +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Índice label_current_version: Versión actual diff --git a/lang/fr.yml b/lang/fr.yml index d0facf0d6..bab251425 100644 --- a/lang/fr.yml +++ b/lang/fr.yml @@ -346,6 +346,7 @@ label_all_words: Tous les mots label_wiki: Wiki label_wiki_edit: Révision wiki label_wiki_edit_plural: Révisions wiki +label_wiki_page: Page wiki label_wiki_page_plural: Pages wiki label_page_index: Index label_current_version: Version actuelle diff --git a/lang/it.yml b/lang/it.yml index a68c4102f..28d860af0 100644 --- a/lang/it.yml +++ b/lang/it.yml @@ -346,6 +346,7 @@ label_all_words: Tutte le parole label_wiki: Wiki label_wiki_edit: Modifica Wiki label_wiki_edit_plural: Modfiche wiki +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Indice label_current_version: Versione corrente diff --git a/lang/ja.yml b/lang/ja.yml index d8dcc61db..67f48d5ac 100644 --- a/lang/ja.yml +++ b/lang/ja.yml @@ -347,6 +347,7 @@ label_all_words: すべての単語 label_wiki: Wiki label_wiki_edit: Wiki編集 label_wiki_edit_plural: Wiki編集 +label_wiki_page: Wiki page label_wiki_page_plural: Wikiページ label_page_index: 索引 label_current_version: 最新版 diff --git a/lang/nl.yml b/lang/nl.yml index 3824925ac..1c115369d 100644 --- a/lang/nl.yml +++ b/lang/nl.yml @@ -346,6 +346,7 @@ label_all_words: Alle woorden label_wiki: Wiki label_wiki_edit: Wiki edit label_wiki_edit_plural: Wiki edits +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Index label_current_version: Huidige versie diff --git a/lang/pt-br.yml b/lang/pt-br.yml index 658d23696..1090c6907 100644 --- a/lang/pt-br.yml +++ b/lang/pt-br.yml @@ -346,6 +346,7 @@ label_all_words: Todas as palavras label_wiki: Wiki
label_wiki_edit: Wiki edit
label_wiki_edit_plural: Wiki edits
+label_wiki_page: Wiki page
label_wiki_page_plural: Wiki pages
label_page_index: Index
label_current_version: Versao atual
diff --git a/lang/pt.yml b/lang/pt.yml index 9d71a4af6..b1c02bc95 100644 --- a/lang/pt.yml +++ b/lang/pt.yml @@ -346,6 +346,7 @@ label_all_words: Todas as palavras label_wiki: Wiki label_wiki_edit: Wiki edit label_wiki_edit_plural: Wiki edits +label_wiki_page: Wiki page label_wiki_page_plural: Wiki pages label_page_index: Index label_current_version: Versão atual diff --git a/lang/sv.yml b/lang/sv.yml index 9d53e1b87..f781db9cc 100644 --- a/lang/sv.yml +++ b/lang/sv.yml @@ -346,6 +346,8 @@ label_all_words: Alla ord label_wiki: Wiki label_wiki_edit: Wiki editera label_wiki_edit_plural: Wiki editeringar +label_wiki_page: Wiki page +label_wiki_page_plural: Wiki pages label_page_index: Index label_current_version: Nuvarande version label_preview: Preview |