@@ -278,10 +278,12 module QueriesHelper | |||||
278 | tags |
|
278 | tags | |
279 | end |
|
279 | end | |
280 |
|
280 | |||
281 | def sidebar_queries |
|
281 | # Returns the queries that are rendered in the sidebar | |
282 | @sidebar_queries ||= IssueQuery.visible.global_or_on_project(@project).sorted.to_a |
|
282 | def sidebar_queries(klass, project) | |
|
283 | klass.visible.global_or_on_project(@project).sorted.to_a | |||
283 | end |
|
284 | end | |
284 |
|
285 | |||
|
286 | # Renders a group of queries | |||
285 | def query_links(title, queries) |
|
287 | def query_links(title, queries) | |
286 | return '' if queries.empty? |
|
288 | return '' if queries.empty? | |
287 | # links to #index on issues/show |
|
289 | # links to #index on issues/show | |
@@ -298,10 +300,13 module QueriesHelper | |||||
298 | ) + "\n" |
|
300 | ) + "\n" | |
299 | end |
|
301 | end | |
300 |
|
302 | |||
301 | def render_sidebar_queries |
|
303 | # Renders the list of queries for the sidebar | |
|
304 | def render_sidebar_queries(klass, project) | |||
|
305 | queries = sidebar_queries(klass, project) | |||
|
306 | ||||
302 | out = ''.html_safe |
|
307 | out = ''.html_safe | |
303 |
out << query_links(l(:label_my_queries), |
|
308 | out << query_links(l(:label_my_queries), queries.select(&:is_private?)) | |
304 |
out << query_links(l(:label_query_plural), |
|
309 | out << query_links(l(:label_query_plural), queries.reject(&:is_private?)) | |
305 | out |
|
310 | out | |
306 | end |
|
311 | end | |
307 | end |
|
312 | end |
@@ -21,5 +21,5 | |||||
21 | <%= call_hook(:view_issues_sidebar_issues_bottom) %> |
|
21 | <%= call_hook(:view_issues_sidebar_issues_bottom) %> | |
22 | <%= call_hook(:view_issues_sidebar_planning_bottom) %> |
|
22 | <%= call_hook(:view_issues_sidebar_planning_bottom) %> | |
23 |
|
23 | |||
24 | <%= render_sidebar_queries %> |
|
24 | <%= render_sidebar_queries(IssueQuery, @project) %> | |
25 | <%= call_hook(:view_issues_sidebar_queries_bottom) %> |
|
25 | <%= call_hook(:view_issues_sidebar_queries_bottom) %> |
@@ -41,6 +41,10 | |||||
41 | </div> |
|
41 | </div> | |
42 | <% end %> |
|
42 | <% end %> | |
43 |
|
43 | |||
|
44 | <% content_for :sidebar do %> | |||
|
45 | <%= render_sidebar_queries(TimeEntryQuery, @project) %> | |||
|
46 | <% end %> | |||
|
47 | ||||
44 | <% html_title(@query.new_record? ? l(:label_spent_time) : @query.name, l(:label_details)) %> |
|
48 | <% html_title(@query.new_record? ? l(:label_spent_time) : @query.name, l(:label_details)) %> | |
45 |
|
49 | |||
46 | <% content_for :header_tags do %> |
|
50 | <% content_for :header_tags do %> |
@@ -70,5 +70,9 | |||||
70 | <% end %> |
|
70 | <% end %> | |
71 | <% end %> |
|
71 | <% end %> | |
72 |
|
72 | |||
|
73 | <% content_for :sidebar do %> | |||
|
74 | <%= render_sidebar_queries(TimeEntryQuery, @project) %> | |||
|
75 | <% end %> | |||
|
76 | ||||
73 | <% html_title(@query.new_record? ? l(:label_spent_time) : @query.name, l(:label_report)) %> |
|
77 | <% html_title(@query.new_record? ? l(:label_spent_time) : @query.name, l(:label_report)) %> | |
74 |
|
78 |
@@ -767,6 +767,7 class TimelogControllerTest < ActionController::TestCase | |||||
767 | get :index, :project_id => 'ecookbook', :query_id => query.id |
|
767 | get :index, :project_id => 'ecookbook', :query_id => query.id | |
768 | assert_response :success |
|
768 | assert_response :success | |
769 | assert_select 'h2', :text => query.name |
|
769 | assert_select 'h2', :text => query.name | |
|
770 | assert_select '#sidebar a.selected', :text => query.name | |||
770 | end |
|
771 | end | |
771 |
|
772 | |||
772 | def test_index_atom_feed |
|
773 | def test_index_atom_feed |
General Comments 0
You need to be logged in to leave comments.
Login now