opf/openproject

View on GitHub
app/views/workflows/_form.html.erb

Summary

Maintainability
Test Coverage
<%#-- copyright
OpenProject is an open source project management software.
Copyright (C) 2012-2024 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-2013 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 COPYRIGHT and LICENSE files for more details.

++#%>
<div id="workflow_form_<%= name %>" class="generic-table--container">
  <div class="generic-table--results-container">
    <table class="generic-table workflow-table transitions-<%= name %>">
      <thead>
        <tr>
          <th></th>
          <th colspan="<%= @statuses.length%>">
            <div class="generic-table--sort-header-outer -no-border">
              <div class="generic-table--sort-header workflow-table--header">
                <span>
                  <%=t(:label_new_statuses_allowed)%>
                </span>
                <span class="workflow-table--check-all">
                  (<%= check_all_links 'workflow_form_' + name %>)
                </span>
              </div>
            </div>
          </th>
        </tr>
        <tr>
          <th class="-table-border-bottom  -table-border-right"></th>
          <% for new_status in @statuses %>
              <th class="workflow-table--current-status -table-border-top -table-border-bottom">
                <%= link_to_function(icon_wrapper('icon-context icon-checkmark',"#{t(:label_check_uncheck_all_in_column)}"),
                                     "OpenProject.helpers.toggleCheckboxesBySelector('table.transitions-#{name} input.new-status-#{new_status.id}')",
                                     class: 'no-decoration-on-hover',
                                     title: "#{t(:label_check_uncheck_all_in_column)}",
                                     alt: "#{t(:label_check_uncheck_all_in_column)}") %>
                <%=h new_status.name %>
              </th>
          <% end %>
        </tr>
      </thead>
      <tbody>
        <% for old_status in @statuses %>
          <tr class="-table-border-left">
            <td class="workflow-table--current-status -table-border-right">
              <%= link_to_function(icon_wrapper('icon-context icon-checkmark',"#{t(:label_check_uncheck_all_in_row)}"),
                                   "OpenProject.helpers.toggleCheckboxesBySelector('table.transitions-#{name} input.old-status-#{old_status.id}')",
                                   class: 'no-decoration-on-hover',
                                   title: "#{t(:label_check_uncheck_all_in_row)}",
                                   alt: "#{t(:label_check_uncheck_all_in_row)}") %>
              <%=h old_status.name %>
            </td>
            <% for new_status in @statuses -%>
              <td>
                <%= check_box_tag "status[#{ old_status.id }][#{new_status.id}][]", name, workflows.detect {|w| w.old_status_id == old_status.id && w.new_status_id == new_status.id},
                class: "old-status-#{old_status.id} new-status-#{new_status.id}" %>
              </td>
            <% end -%>
          </tr>
        <% end %>
        <tr class="-no-highlighting">
          <td colspan="<%= @statuses.length + 2 %>">
                        <span class="workflow-table--turned-header">
              <%=t(:label_current_status)%>
            </span>
          </td>
        </tr>
      </tbody>
    </table>
    <div class="generic-table--header-background -no-border"></div>
  </div>
</div>