| 98 |
98 |
common_params.merge({:year => (date_from >> months).year, :month => (date_from >> months).month, :zoom => zoom, :months => months })
|
| 99 |
99 |
end
|
| 100 |
100 |
|
| 101 |
|
### Extracted from the HTML view/helpers
|
|
101 |
# Returns the list of projects to render
|
|
102 |
def project_list
|
|
103 |
projects = @project ? [@project] : Project.roots.visible.has_module('issue_tracking')
|
|
104 |
@query && @query.has_filter?('project_id') ? projects & Project.find(@query.values_for('project_id')) : projects
|
|
105 |
end
|
|
106 |
|
|
107 |
### Extracted from the HTML view/helpers
|
| 102 |
108 |
# Returns the number of rows that will be rendered on the Gantt chart
|
| 103 |
109 |
def number_of_rows
|
| 104 |
110 |
return @number_of_rows if @number_of_rows
|
| 105 |
111 |
|
| 106 |
|
rows = if @project
|
| 107 |
|
number_of_rows_on_project(@project)
|
| 108 |
|
else
|
| 109 |
|
Project.roots.visible.has_module('issue_tracking').inject(0) do |total, project|
|
| 110 |
|
total += number_of_rows_on_project(project)
|
| 111 |
|
end
|
|
112 |
rows = project_list().each do |total, project|
|
|
113 |
total += number_of_rows_on_project(project)
|
| 112 |
114 |
end
|
| 113 |
115 |
|
| 114 |
116 |
rows > @max_rows ? @max_rows : rows
|
| ... | ... | |
| 161 |
163 |
@subjects = '' unless options[:only] == :lines
|
| 162 |
164 |
@lines = '' unless options[:only] == :subjects
|
| 163 |
165 |
@number_of_rows = 0
|
| 164 |
|
|
| 165 |
|
if @project
|
| 166 |
|
render_project(@project, options)
|
| 167 |
|
else
|
| 168 |
|
Project.roots.visible.has_module('issue_tracking').each do |project|
|
| 169 |
|
render_project(project, options)
|
| 170 |
|
break if abort?
|
| 171 |
|
end
|
|
166 |
|
|
167 |
project_list().each do |project|
|
|
168 |
render_project(project, options)
|
|
169 |
break if abort?
|
| 172 |
170 |
end
|
| 173 |
|
|
|
171 |
|
| 174 |
172 |
@subjects_rendered = true unless options[:only] == :lines
|
| 175 |
173 |
@lines_rendered = true unless options[:only] == :subjects
|
| 176 |
174 |
|
| ... | ... | |
| 373 |
371 |
output
|
| 374 |
372 |
end
|
| 375 |
373 |
|
| 376 |
|
def line_for_issue(issue, options)
|
|
374 |
def line_for_issue(issue, options)
|
| 377 |
375 |
# Skip issues that don't have a due_before (due_date or version's due_date)
|
| 378 |
376 |
if issue.is_a?(Issue) && issue.due_before
|
| 379 |
377 |
coords = coordinates(issue.start_date, issue.due_before, issue.done_ratio, options[:zoom])
|