Added a checkbox on custom query form to explicitly say if the query uses default columns or not.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@783 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
e5f5671d66
commit
96b4ac12cb
|
@ -31,6 +31,7 @@ class QueriesController < ApplicationController
|
||||||
@query.user = logged_in_user
|
@query.user = logged_in_user
|
||||||
@query.executed_by = logged_in_user
|
@query.executed_by = logged_in_user
|
||||||
@query.is_public = false unless current_role.allowed_to?(:manage_public_queries)
|
@query.is_public = false unless current_role.allowed_to?(:manage_public_queries)
|
||||||
|
@query.column_names = nil if params[:default_columns]
|
||||||
|
|
||||||
params[:fields].each do |field|
|
params[:fields].each do |field|
|
||||||
@query.add_filter(field, params[:operators][field], params[:values][field])
|
@query.add_filter(field, params[:operators][field], params[:values][field])
|
||||||
|
@ -52,7 +53,8 @@ class QueriesController < ApplicationController
|
||||||
end if params[:fields]
|
end if params[:fields]
|
||||||
@query.attributes = params[:query]
|
@query.attributes = params[:query]
|
||||||
@query.is_public = false unless current_role.allowed_to?(:manage_public_queries)
|
@query.is_public = false unless current_role.allowed_to?(:manage_public_queries)
|
||||||
|
@query.column_names = nil if params[:default_columns]
|
||||||
|
|
||||||
if @query.save
|
if @query.save
|
||||||
flash[:notice] = l(:notice_successful_update)
|
flash[:notice] = l(:notice_successful_update)
|
||||||
redirect_to :controller => 'projects', :action => 'list_issues', :id => @project, :query_id => @query
|
redirect_to :controller => 'projects', :action => 'list_issues', :id => @project, :query_id => @query
|
||||||
|
|
|
@ -208,11 +208,10 @@ class Query < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
|
|
||||||
def columns
|
def columns
|
||||||
if column_names && !column_names.empty?
|
if has_default_columns?
|
||||||
available_columns.select {|c| column_names.include?(c.name) }
|
|
||||||
else
|
|
||||||
# default columns
|
|
||||||
available_columns.select {|c| c.default? }
|
available_columns.select {|c| c.default? }
|
||||||
|
else
|
||||||
|
available_columns.select {|c| column_names.include?(c.name) }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -225,6 +224,10 @@ class Query < ActiveRecord::Base
|
||||||
def has_column?(column)
|
def has_column?(column)
|
||||||
column_names && column_names.include?(column.name)
|
column_names && column_names.include?(column.name)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def has_default_columns?
|
||||||
|
column_names.nil? || column_names.empty?
|
||||||
|
end
|
||||||
|
|
||||||
def statement
|
def statement
|
||||||
# project/subprojects clause
|
# project/subprojects clause
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
<% content_tag 'fieldset', :id => 'columns', :style => (query.has_default_columns? ? 'display:none;' : nil) do %>
|
||||||
|
<legend><%= l(:field_column_names) %></legend>
|
||||||
|
<% query.available_columns.each do |column| %>
|
||||||
|
<label><%= check_box_tag 'query[column_names][]', column.name, query.has_column?(column) %> <%= l("field_#{column.name}") %></label><br />
|
||||||
|
<% end %>
|
||||||
|
<%= hidden_field_tag 'query[column_names][]', '' %>
|
||||||
|
<% end %>
|
|
@ -10,13 +10,11 @@
|
||||||
<%= check_box 'query', 'is_public' %></p>
|
<%= check_box 'query', 'is_public' %></p>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<p><label for="query_column_names"><%=l(:field_column_names)%></label>
|
<p><label for="query_default_columns"><%=l(:label_default_columns)%></label>
|
||||||
<% @query.available_columns.each do |column| %>
|
<%= check_box_tag 'default_columns', 1, @query.has_default_columns?, :id => 'query_default_columns',
|
||||||
<%= check_box_tag 'query[column_names][]', column.name, @query.has_column?(column) %> <%= l("field_#{column.name}") %><br />
|
:onchange => 'if (this.checked) {Element.hide("columns")} else {Element.show("columns")}' %></p>
|
||||||
<% end %>
|
|
||||||
<%= hidden_field_tag 'query[column_names][]', '' %>
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<%= render :partial => 'queries/columns', :locals => {:query => query}%>
|
||||||
<%= render :partial => 'queries/filters', :locals => {:query => query}%>
|
<%= render :partial => 'queries/filters', :locals => {:query => query}%>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Дейности (time tracking)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ label_added_time_by: Added by %s %s ago
|
||||||
field_estimated_hours: Estimated time
|
field_estimated_hours: Estimated time
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Aktivitäten (Zeiterfassung)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -423,6 +423,7 @@ label_updated_time: Updated %s ago
|
||||||
label_jump_to_a_project: Jump to a project...
|
label_jump_to_a_project: Jump to a project...
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
||||||
button_login: Login
|
button_login: Login
|
||||||
button_submit: Submit
|
button_submit: Submit
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Activities (time tracking)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -423,6 +423,7 @@ label_updated_time: Mis à jour il y a %s
|
||||||
label_jump_to_a_project: Aller à un projet...
|
label_jump_to_a_project: Aller à un projet...
|
||||||
label_file_plural: Fichiers
|
label_file_plural: Fichiers
|
||||||
label_changeset_plural: Révisions
|
label_changeset_plural: Révisions
|
||||||
|
label_default_columns: Colonnes par défaut
|
||||||
|
|
||||||
button_login: Connexion
|
button_login: Connexion
|
||||||
button_submit: Soumettre
|
button_submit: Soumettre
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Attività (time tracking)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -513,3 +513,4 @@ enumeration_activities: 作業分類 (時間トラッキング)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -513,3 +513,4 @@ text_comma_separated: Multiple values allowed (comma separated).
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ field_estimated_hours: Szacowany czas
|
||||||
label_file_plural: Pliki
|
label_file_plural: Pliki
|
||||||
label_changeset_plural: Zestawienia zmian
|
label_changeset_plural: Zestawienia zmian
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Atividades (time tracking)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ enumeration_activities: Atividades (time tracking)
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -512,3 +512,4 @@ label_index_by_title: Index by title
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -513,3 +513,4 @@ field_comments: Comment
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
|
@ -515,3 +515,4 @@ label_wiki_page: Wiki page
|
||||||
label_file_plural: Files
|
label_file_plural: Files
|
||||||
label_changeset_plural: Changesets
|
label_changeset_plural: Changesets
|
||||||
field_column_names: Columns
|
field_column_names: Columns
|
||||||
|
label_default_columns: Default columns
|
||||||
|
|
Loading…
Reference in New Issue