To check out this repository please hg clone the following URL, or open the URL using EasyMercurial or your preferred Mercurial client.
root / app / views / workflows / permissions.html.erb @ 1591:63650ae64bf2
History | View | Annotate | Download (3.68 KB)
| 1 |
<%= render :partial => 'action_menu' %>
|
|---|---|
| 2 |
|
| 3 |
<%= title l(:label_workflow) %>
|
| 4 |
|
| 5 |
<div class="tabs"> |
| 6 |
<ul>
|
| 7 |
<li><%= link_to l(:label_status_transitions), {:action => 'edit', :role_id => @role, :tracker_id => @tracker} %></li> |
| 8 |
<li><%= link_to l(:label_fields_permissions), {:action => 'permissions', :role_id => @role, :tracker_id => @tracker}, :class => 'selected' %></li> |
| 9 |
</ul>
|
| 10 |
</div>
|
| 11 |
|
| 12 |
<p><%=l(:text_workflow_edit)%>:</p> |
| 13 |
|
| 14 |
<%= form_tag({}, :method => 'get') do %>
|
| 15 |
<p>
|
| 16 |
<label><%=l(:label_role)%>: |
| 17 |
<%= select_tag 'role_id', options_from_collection_for_select(@roles, "id", "name", @role && @role.id) %></label> |
| 18 |
|
| 19 |
<label><%=l(:label_tracker)%>: |
| 20 |
<%= select_tag 'tracker_id', options_from_collection_for_select(@trackers, "id", "name", @tracker && @tracker.id) %></label> |
| 21 |
|
| 22 |
<%= submit_tag l(:button_edit), :name => nil %>
|
| 23 |
|
| 24 |
<%= hidden_field_tag 'used_statuses_only', '0' %>
|
| 25 |
<label><%= check_box_tag 'used_statuses_only', '1', @used_statuses_only %> <%= l(:label_display_used_statuses_only) %></label> |
| 26 |
</p>
|
| 27 |
<% end %>
|
| 28 |
|
| 29 |
<% if @tracker && @role && @statuses.any? %>
|
| 30 |
<%= form_tag({}, :id => 'workflow_form' ) do %>
|
| 31 |
<%= hidden_field_tag 'tracker_id', @tracker.id %>
|
| 32 |
<%= hidden_field_tag 'role_id', @role.id %>
|
| 33 |
<%= hidden_field_tag 'used_statuses_only', params[:used_statuses_only] %>
|
| 34 |
<div class="autoscroll"> |
| 35 |
<table class="list fields_permissions"> |
| 36 |
<thead>
|
| 37 |
<tr>
|
| 38 |
<th>
|
| 39 |
</th>
|
| 40 |
<th colspan="<%= @statuses.length %>"><%=l(:label_issue_status)%></th> |
| 41 |
</tr>
|
| 42 |
<tr>
|
| 43 |
<td></td> |
| 44 |
<% for status in @statuses %>
|
| 45 |
<td style="width:<%= 75 / @statuses.size %>%;"> |
| 46 |
<%=h status.name %>
|
| 47 |
</td>
|
| 48 |
<% end %>
|
| 49 |
</tr>
|
| 50 |
</thead>
|
| 51 |
<tbody>
|
| 52 |
<tr class="group open"> |
| 53 |
<td colspan="<%= @statuses.size + 1 %>"> |
| 54 |
<span class="expander" onclick="toggleRowGroup(this);"> </span> |
| 55 |
<%= l(:field_core_fields) %>
|
| 56 |
</td>
|
| 57 |
</tr>
|
| 58 |
<% @fields.each do |field, name| %>
|
| 59 |
<tr class="<%= cycle("odd", "even") %>"> |
| 60 |
<td class="name"> |
| 61 |
<%=h name %> <%= content_tag('span', '*', :class => 'required') if field_required?(field) %> |
| 62 |
</td>
|
| 63 |
<% for status in @statuses -%>
|
| 64 |
<td class="<%= @permissions[status.id][field] %>"> |
| 65 |
<%= field_permission_tag(@permissions, status, field, @role) %>
|
| 66 |
<% unless status == @statuses.last %><a href="#" class="repeat-value">»</a><% end %> |
| 67 |
</td>
|
| 68 |
<% end -%>
|
| 69 |
</tr>
|
| 70 |
<% end %>
|
| 71 |
<% if @custom_fields.any? %>
|
| 72 |
<tr class="group open"> |
| 73 |
<td colspan="<%= @statuses.size + 1 %>"> |
| 74 |
<span class="expander" onclick="toggleRowGroup(this);"> </span> |
| 75 |
<%= l(:label_custom_field_plural) %>
|
| 76 |
</td>
|
| 77 |
</tr>
|
| 78 |
<% @custom_fields.each do |field| %>
|
| 79 |
<tr class="<%= cycle("odd", "even") %>"> |
| 80 |
<td class="name"> |
| 81 |
<%=h field.name %> <%= content_tag('span', '*', :class => 'required') if field_required?(field) %> |
| 82 |
</td>
|
| 83 |
<% for status in @statuses -%>
|
| 84 |
<td class="<%= @permissions[status.id][field.id.to_s] %>"> |
| 85 |
<%= field_permission_tag(@permissions, status, field, @role) %>
|
| 86 |
<% unless status == @statuses.last %><a href="#" class="repeat-value">»</a><% end %> |
| 87 |
</td>
|
| 88 |
<% end -%>
|
| 89 |
</tr>
|
| 90 |
<% end %>
|
| 91 |
<% end %>
|
| 92 |
</tbody>
|
| 93 |
</table>
|
| 94 |
</div>
|
| 95 |
<%= submit_tag l(:button_save) %>
|
| 96 |
<% end %>
|
| 97 |
<% end %>
|
| 98 |
|
| 99 |
<%= javascript_tag do %>
|
| 100 |
$("a.repeat-value").click(function(e){
|
| 101 |
e.preventDefault(); |
| 102 |
var td = $(this).closest('td');
|
| 103 |
var selected = td.find("select").find(":selected").val();
|
| 104 |
td.nextAll('td').find("select").val(selected);
|
| 105 |
}); |
| 106 |
<% end %>
|