85 lines
3.9 KiB
Plaintext
85 lines
3.9 KiB
Plaintext
<div class="contextual">
|
|
<% if !@query.new_record? && @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.new_record? ? l(:label_issue_plural) : h(@query.name) %></h2>
|
|
<% html_title(@query.new_record? ? l(:label_issue_plural) : @query.name) %>
|
|
|
|
<% form_tag({ :controller => 'queries', :action => 'new' }, :id => 'query_form') do %>
|
|
<%= hidden_field_tag('project_id', @project.to_param) if @project %>
|
|
<div id="query_form_content" class="hide-when-print">
|
|
<fieldset id="filters" class="collapsible <%= @query.new_record? ? "" : "collapsed" %>">
|
|
<legend onclick="toggleFieldset(this);"><%= l(:label_filter_plural) %></legend>
|
|
<div style="<%= @query.new_record? ? "" : "display: none;" %>">
|
|
<%= render :partial => 'queries/filters', :locals => {:query => @query} %>
|
|
</div>
|
|
</fieldset>
|
|
<fieldset class="collapsible collapsed">
|
|
<legend onclick="toggleFieldset(this);"><%= l(:label_options) %></legend>
|
|
<div style="display: none;">
|
|
<table>
|
|
<tr>
|
|
<td><%= l(:field_column_names) %></td>
|
|
<td><%= render :partial => 'queries/columns', :locals => {:query => @query} %></td>
|
|
</tr>
|
|
<tr>
|
|
<td><%= l(:field_group_by) %></td>
|
|
<td><%= select_tag('group_by', options_for_select([[]] + @query.groupable_columns.collect {|c| [c.caption, c.name.to_s]}, @query.group_by)) %></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<p class="buttons hide-when-print">
|
|
|
|
<%= link_to_remote l(:button_apply),
|
|
{ :url => { :set_filter => 1 },
|
|
:before => 'selectAllOptions("selected_columns");',
|
|
:update => "content",
|
|
:with => "Form.serialize('query_form')"
|
|
}, :class => 'icon icon-checked' %>
|
|
|
|
<%= link_to_remote l(:button_clear),
|
|
{ :url => { :set_filter => 1, :project_id => @project },
|
|
:method => :get,
|
|
:update => "content",
|
|
}, :class => 'icon icon-reload' %>
|
|
|
|
<% if @query.new_record? && User.current.allowed_to?(:save_queries, @project, :global => true) %>
|
|
<%= link_to l(:button_save), {}, :onclick => "selectAllOptions('selected_columns'); $('query_form').submit(); return false;", :class => 'icon icon-save' %>
|
|
<% end %>
|
|
</p>
|
|
<% end %>
|
|
|
|
<%= error_messages_for 'query' %>
|
|
<% if @query.valid? %>
|
|
<% if @issues.empty? %>
|
|
<p class="nodata"><%= l(:label_no_data) %></p>
|
|
<% else %>
|
|
<%= render :partial => 'issues/list', :locals => {:issues => @issues, :query => @query} %>
|
|
<p class="pagination"><%= pagination_links_full @issue_pages, @issue_count %></p>
|
|
<% end %>
|
|
|
|
<% other_formats_links do |f| %>
|
|
<%= f.link_to 'Atom', :url => { :project_id => @project, :query_id => (@query.new_record? ? nil : @query), :key => User.current.rss_key } %>
|
|
<%= f.link_to 'CSV', :url => { :project_id => @project } %>
|
|
<%= f.link_to 'PDF', :url => { :project_id => @project } %>
|
|
<% end %>
|
|
|
|
<% end %>
|
|
<%= call_hook(:view_issues_index_bottom, { :issues => @issues, :project => @project, :query => @query }) %>
|
|
|
|
<% content_for :sidebar do %>
|
|
<%= render :partial => 'issues/sidebar' %>
|
|
<% end %>
|
|
|
|
<% content_for :header_tags do %>
|
|
<%= auto_discovery_link_tag(:atom, {:query_id => @query, :format => 'atom', :page => nil, :key => User.current.rss_key}, :title => l(:label_issue_plural)) %>
|
|
<%= auto_discovery_link_tag(:atom, {:controller => 'journals', :action => 'index', :query_id => @query, :format => 'atom', :page => nil, :key => User.current.rss_key}, :title => l(:label_changes_details)) %>
|
|
<% end %>
|
|
|
|
<%= context_menu issues_context_menu_path %>
|