<%= render :partial => 'action_menu' %>

<%= title l(:label_workflow) %>

<div class="tabs">
  <ul>
    <li><%= link_to l(:label_status_transitions), workflows_edit_path(:role_id => @roles, :tracker_id => @trackers), :class => 'selected' %></li>
    <li><%= link_to l(:label_fields_permissions), workflows_permissions_path(:role_id => @roles, :tracker_id => @trackers) %></li>
  </ul>
</div>

<p><%=l(:text_workflow_edit)%>:</p>

<%= form_tag({}, :method => 'get') do %>
<p>
  <label><%=l(:label_role)%>:
  <%= options_for_workflow_select 'role_id[]', Role.sorted.select(&:consider_workflow?), @roles, :id => 'role_id', :class => 'expandable' %>
  </label>
  <a href="#" data-expands="#role_id"><span class="toggle-multiselect icon-only icon-toggle-plus"></span></a>

  <label><%=l(:label_tracker)%>:
  <%= options_for_workflow_select 'tracker_id[]', Tracker.sorted, @trackers, :id => 'tracker_id', :class => 'expandable' %>
  </label>
  <a href="#" data-expands="#tracker_id"><span class="toggle-multiselect icon-only icon-toggle-plus"></span></a>

  <%= submit_tag l(:button_edit), :name => nil %>

  <%= hidden_field_tag 'used_statuses_only', '0', :id => nil %>
  <label><%= check_box_tag 'used_statuses_only', '1', @used_statuses_only %> <%= l(:label_display_used_statuses_only) %></label>

</p>
<% end %>

<% if @trackers && @roles && @statuses.any? %>
  <%= form_tag({}, :id => 'workflow_form' ) do %>
    <%= @trackers.map {|tracker| hidden_field_tag 'tracker_id[]', tracker.id, :id => nil}.join.html_safe %>
    <%= @roles.map {|role| hidden_field_tag 'role_id[]', role.id, :id => nil}.join.html_safe %>
    <%= hidden_field_tag 'used_statuses_only', params[:used_statuses_only], :id => nil %>
    <div class="autoscroll">
      <%= render :partial => 'form', :locals => {:name => 'always', :workflows => @workflows['always']} %>

      <fieldset class="collapsible" style="padding: 0; margin-top: 0.5em;">
        <legend onclick="toggleFieldset(this);" class="icon icon-collapsed"><%= l(:label_additional_workflow_transitions_for_author) %></legend>
        <div id="author_workflows" style="margin: 0.5em 0 0.5em 0;">
          <%= render :partial => 'form', :locals => {:name => 'author', :workflows => @workflows['author']} %>
        </div>
      </fieldset>
      <%= javascript_tag "hideFieldset($('#author_workflows'))" unless @workflows['author'].present? %>

      <fieldset class="collapsible" style="padding: 0;">
        <legend onclick="toggleFieldset(this);" class="icon icon-collapsed"><%= l(:label_additional_workflow_transitions_for_assignee) %></legend>
        <div id="assignee_workflows" style="margin: 0.5em 0 0.5em 0;">
      <%= render :partial => 'form', :locals => {:name => 'assignee', :workflows => @workflows['assignee']} %>
        </div>
      </fieldset>
      <%= javascript_tag "hideFieldset($('#assignee_workflows'))" unless @workflows['assignee'].present? %>
    </div>
    <%= submit_tag l(:button_save) %>
  <% end %>
<% end %>

<%= javascript_tag do %>
$("a[data-expands]").click(function(e){
  e.preventDefault();
  var target = $($(this).attr("data-expands"));
  if (target.attr("multiple")) {
    $(this).find('span').switchClass('icon-toggle-minus', 'icon-toggle-plus');
    target.attr("multiple", false);
    target.find("option[value=all]").show();
  } else {
    $(this).find('span').switchClass('icon-toggle-plus', 'icon-toggle-minus');
    target.attr("multiple", true);
    target.find("option[value=all]").attr("selected", false).hide();
  }
});

<% end %>
