Adds REST API for versions (#7403).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6180 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang
2011-07-04 19:34:58 +00:00
parent daa426167f
commit b86a748b1d
8 changed files with 249 additions and 46 deletions
+3 -3
View File
@@ -19,9 +19,9 @@
<td class="sharing"><%=h format_version_sharing(version.sharing) %></td>
<td><%= link_to_if_authorized(h(version.wiki_page_title), {:controller => 'wiki', :action => 'show', :project_id => version.project, :id => Wiki.titleize(version.wiki_page_title)}) || h(version.wiki_page_title) unless version.wiki_page_title.blank? || version.project.wiki.nil? %></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_delete), {:controller => 'versions', :action => 'destroy', :id => version}, :confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
<% if version.project == @project && User.current.allowed_to?(:manage_versions, @project) %>
<%= link_to l(:button_edit), edit_project_version_path(@project, version), :class => 'icon icon-edit' %>
<%= link_to l(:button_delete), project_version_path(@project, version), :confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
<% end %>
</td>
</tr>
+18
View File
@@ -0,0 +1,18 @@
api.array :versions, api_meta(:total_count => @versions.size) do
@versions.each do |version|
api.version do
api.id version.id
api.project(:id => version.project_id, :name => version.project.name) unless version.project.nil?
api.name version.name
api.description version.description
api.status version.status
api.due_date version.effective_date
render_api_custom_values version.custom_field_values, api
api.created_on version.created_on
api.updated_on version.updated_on
end
end
end
+14
View File
@@ -0,0 +1,14 @@
api.version do
api.id @version.id
api.project(:id => @version.project_id, :name => @version.project.name) unless @version.project.nil?
api.name @version.name
api.description @version.description
api.status @version.status
api.due_date @version.effective_date
render_api_custom_values @version.custom_field_values, api
api.created_on @version.created_on
api.updated_on @version.updated_on
end
+3 -3
View File
@@ -1,8 +1,8 @@
<div class="contextual">
<%= link_to_if_authorized l(:button_edit), {:controller => 'versions', :action => 'edit', :id => @version}, :class => 'icon icon-edit' %>
<%= link_to(l(:button_edit), edit_project_version_path(@version.project, @version), :class => 'icon icon-edit') if User.current.allowed_to?(:manage_versions, @version.project) %>
<%= link_to_if_authorized(l(:button_edit_associated_wikipage, :page_title => @version.wiki_page_title), {:controller => 'wiki', :action => 'edit', :project_id => @version.project, :id => Wiki.titleize(@version.wiki_page_title)}, :class => 'icon icon-edit') unless @version.wiki_page_title.blank? || @version.project.wiki.nil? %>
<%= link_to_if_authorized l(:button_delete), {:controller => 'versions', :action => 'destroy', :id => @version, :back_url => url_for(:controller => 'versions', :action => 'index', :project_id => @version.project)},
:confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
<%= link_to(l(:button_delete), project_version_path(@version.project, @version, :back_url => url_for(:controller => 'versions', :action => 'index', :project_id => @version.project)),
:confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del') if User.current.allowed_to?(:manage_versions, @version.project) %>
<%= call_hook(:view_versions_show_contextual, { :version => @version, :project => @project }) %>
</div>