OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openproject/app/views/project_settings/versions.html.erb

180 lines
7.2 KiB

<%#-- copyright
OpenProject is an open source project management software.
Copyright (C) 2012-2020 the OpenProject GmbH
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License version 3.
OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
Copyright (C) 2006-2017 Jean-Philippe Lang
Copyright (C) 2010-2013 the ChiliProject Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
See docs/COPYRIGHT.rdoc for more details.
++#%>
<%= toolbar title: l(:label_version_plural) do %>
<% if current_user.allowed_to?(:manage_versions, @project) %>
<li class="toolbar-item">
<%= link_to_if_authorized({ controller: '/versions', action: 'new', project_id: @project },
{ class: 'button -alt-highlight',
aria: {label: t(:label_version_new)},
title: t(:label_version_new)}) do %>
<%= op_icon('button--icon icon-add') %>
<span class="button--text"><%= t('activerecord.models.version') %></span>
<% end %>
</li>
<% end %>
<% end %>
<% if @project.shared_versions.any? %>
<div class="generic-table--container">
<div class="generic-table--results-container">
<table class="generic-table">
<colgroup>
<col highlight-col>
<col highlight-col>
<col highlight-col>
<col highlight-col>
<col highlight-col>
<col highlight-col>
<col highlight-col>
<col>
</colgroup>
<thead>
<tr>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.model_name.human %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.human_attribute_name(:start_date) %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.human_attribute_name(:effective_date) %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.human_attribute_name(:description) %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.human_attribute_name(:status) %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= Version.human_attribute_name(:sharing) %>
</span>
</div>
</div>
</th>
<th>
<div class="generic-table--sort-header-outer">
<div class="generic-table--sort-header">
<span>
<%= WikiPage.model_name.human %>
</span>
</div>
</div>
</th>
<th><div class="generic-table--empty-header"></div></th>
</tr>
</thead>
<tbody>
<% @project.shared_versions.order_by_newest_date.each do |version| %>
<tr class="version <%= 'shared' if version.project != @project %>">
<td class="name <%=h version.status %><%= ' icon-context icon-link' if version.project != @project %>">
<%= link_to_version version %>
</td>
<td class="date"><%= format_date(version.start_date) %></td>
<td class="date"><%= format_date(version.effective_date) %></td>
<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_if_authorized( h(version.wiki_page_title),
{ controller: '/wiki',
action: 'show',
project_id: version.project,
id: 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 '',
{ controller: '/versions', action: 'edit', id: version },
class: 'icon icon-edit',
title: t(:button_edit) %>
<%= link_to_if_authorized '',
{ controller: '/versions', action: 'destroy', id: version },
data: { confirm: l(:text_are_you_sure) },
method: :delete,
class: 'icon icon-delete',
title: t(:button_delete) %>
<% end %>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>
</div>
<% if @project.versions.any? %>
<div class="generic-table--action-buttons">
<%= link_to l(:label_close_versions),
close_completed_project_versions_path(@project),
method: :put,
class: 'button' %>
</div>
<% end %>
<% else %>
<%= no_results_box action_url: new_project_version_path(@project),
display_action: authorize_for('versions', 'new'),
custom_title: t('projects.settings.versions.no_results_title_text'),
custom_action_text: t('projects.settings.versions.no_results_content_text')
%>
<% end %>