Redmine/app/views/projects/list_issues.rhtml

90 lines
4.1 KiB
Plaintext
Raw Normal View History

<% if @query.new_record? %>
<h2><%=l(:label_issue_plural)%></h2>
<% set_html_title l(:label_issue_plural) %>
<% form_tag({:action => 'list_issues'}, :id => 'query_form') do %>
<%= render :partial => 'queries/filters', :locals => {:query => @query} %>
<% end %>
<div class="contextual">
<%= link_to_remote l(:button_apply),
{ :url => { :controller => 'projects', :action => 'list_issues', :id => @project, :set_filter => 1 },
:update => "content",
:with => "Form.serialize('query_form')"
}, :class => 'icon icon-edit' %>
<%= link_to_remote l(:button_clear),
{ :url => {:controller => 'projects', :action => 'list_issues', :id => @project, :set_filter => 1},
:update => "content",
}, :class => 'icon icon-reload' %>
<% if current_role.allowed_to?(:save_queries) %>
<%= link_to_remote l(:button_save),
{ :url => { :controller => 'queries', :action => 'new', :project_id => @project },
:method => 'get',
:update => "content",
:with => "Form.serialize('query_form')"
}, :class => 'icon icon-save' %>
<% end %>
</div>
<br />
<% else %>
<div class="contextual">
<% if @query.editable_by?(User.current) %>
<%= link_to l(:button_edit), {:controller => 'queries', :action => 'edit', :id => @query}, :class => 'icon icon-edit' %>
<%= link_to l(:button_delete), {:controller => 'queries', :action => 'destroy', :id => @query}, :confirm => l(:text_are_you_sure), :method => :post, :class => 'icon icon-del' %>
<% end %>
</div>
<h2><%= @query.name %></h2>
<% set_html_title @query.name %>
<% end %>
<%= error_messages_for 'query' %>
<% if @query.valid? %>
<% if @issues.empty? %>
<p class="nodata"><%= l(:label_no_data) %></p>
<% else %>
&nbsp;
<% form_tag({:controller => 'projects', :action => 'move_issues', :id => @project}, :id => 'issues_form' ) do %>
<table class="list">
<thead><tr>
<th></th>
<%= sort_header_tag("#{Issue.table_name}.id", :caption => '#') %>
<%= sort_header_tag("#{Issue.table_name}.tracker_id", :caption => l(:field_tracker)) %>
<%= sort_header_tag("#{IssueStatus.table_name}.name", :caption => l(:field_status)) %>
<%= sort_header_tag("#{Issue.table_name}.priority_id", :caption => l(:field_priority)) %>
<th><%=l(:field_subject)%></th>
<%= sort_header_tag("#{User.table_name}.lastname", :caption => l(:field_assigned_to)) %>
<%= sort_header_tag("#{Issue.table_name}.updated_on", :caption => l(:field_updated_on)) %>
</tr></thead>
<tbody>
<% for issue in @issues %>
<tr class="<%= cycle("odd", "even") %>">
<th style="width:15px;"><%= check_box_tag "issue_ids[]", issue.id, false, :id => "issue_#{issue.id}" %></th>
<td align="center"><%= link_to issue.id, :controller => 'issues', :action => 'show', :id => issue %></td>
<td align="center"><%= issue.tracker.name %></td>
<td><%= issue.status.name %></td>
<td align="center"><%= issue.priority.name %></td>
<td><%= "#{issue.project.name} - " unless @project && @project == issue.project %><%= link_to h(issue.subject), :controller => 'issues', :action => 'show', :id => issue %></td>
<td align="center"><%= issue.assigned_to.name if issue.assigned_to %></td>
<td align="center"><%= format_time(issue.updated_on) %></td>
</tr>
<% end %>
</tbody>
</table>
<div class="contextual">
<%= l(:label_export_to) %>
<%= link_to 'CSV', {:action => 'export_issues_csv', :id => @project}, :class => 'icon icon-csv' %>,
<%= link_to 'PDF', {:action => 'export_issues_pdf', :id => @project}, :class => 'icon icon-pdf' %>
</div>
<p><%= submit_tag(l(:button_move), :class => "button-small") if authorize_for('projects', 'move_issues') %>
<%= pagination_links_full @issue_pages %>
[ <%= @issue_pages.current.first_item %> - <%= @issue_pages.current.last_item %> / <%= @issue_count %> ]
</p>
<% end %>
<% end %>
<% end %>
<% content_for :sidebar do %>
<%= render :partial => 'issues/sidebar' %>
<% end %>