<% # Redmine plugin for Document Management System "Features" # # Copyright © 2011-23 Karel Pičman # # 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. %> <% if @project %> <% @status = params[:status] || 1 %> <% @workflows = DmsfWorkflow.status(@status).where(project_id: @project.id).sorted %> <% @path = settings_project_path(@project, tab: 'dmsf_workflow') %>

<%= link_to l(:label_dmsf_workflow_new), new_dmsf_workflow_path(project_id: @project&.id), class: 'icon icon-add' %>

<% else %>
<%= link_to l(:label_dmsf_workflow_new), new_dmsf_workflow_path(project_id: @project&.id), class: 'icon icon-add' %>

<%= l(:label_dmsf_workflow_plural) %>

<% end %> <%= form_tag(@path, method: :get) do %>
<%= l(:label_filter_plural) %> <% worflows_count_by_status = DmsfWorkflow.where(project_id: @project&.id).group(:status).count.to_hash options = options_for_select([[l(:label_all), ''], ["#{l(:status_active)} (#{worflows_count_by_status[DmsfWorkflow::STATUS_ACTIVE].to_i})", DmsfWorkflow::STATUS_ACTIVE.to_s], ["#{l(:status_locked)} (#{worflows_count_by_status[DmsfWorkflow::STATUS_LOCKED].to_i})", DmsfWorkflow::STATUS_LOCKED.to_s]], @status.to_s) %> <%= select_tag 'status', options, class: 'small', onchange: 'this.form.submit(); return false;' %>
<% end %>  <% if @workflows.any? %> <% @workflows.each do |workflow| %> <% end %>
<%= l(:field_name) %>
<%= link_to(h(workflow.name), dmsf_workflow_path(workflow)) %> <% url = { controller: 'dmsf_workflows', action: 'update', id: workflow.id } %> <% if workflow.locked? %> <%= link_to l(:button_unlock), url.merge(dmsf_workflow: { status: DmsfWorkflow::STATUS_ACTIVE }), method: :put, class: 'icon icon-unlock' %> <% else %> <%= link_to l(:button_lock), url.merge(dmsf_workflow: { status: DmsfWorkflow::STATUS_LOCKED }), method: :put, class: 'icon icon-lock' %> <% end %> <%= delete_link dmsf_workflow_path(workflow, back_url: @path) %>
<% else %>

<%= l(:label_no_data) %>

<% end %> <% unless @project %> <%= pagination_links_full @workflow_pages %> <% end %>