diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-03-18 10:17:59 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-03-18 10:17:59 +0000 |
commit | db3e8616c89ba34196fd12eafb3680df9479a024 (patch) | |
tree | b7d0ca11af7c9ec464357c9e5193a8250f1d96eb /app | |
parent | 8fdef1f82098258e2d5dda840ce5f4a921726f51 (diff) | |
download | redmine-db3e8616c89ba34196fd12eafb3680df9479a024.tar.gz redmine-db3e8616c89ba34196fd12eafb3680df9479a024.zip |
better rendering time for projects/calendar
git-svn-id: http://redmine.rubyforge.org/svn/trunk@343 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/projects_controller.rb | 7 | ||||
-rw-r--r-- | app/views/projects/calendar.rhtml | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index f02a0e1e6..8feb5f5de 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -519,7 +519,12 @@ class ProjectsController < ApplicationController # finish on sunday @date_to = @date_to + (7-@date_to.cwday) - @issues = @project.issues.find(:all, :include => [:tracker, :status, :assigned_to, :priority], :conditions => ["((start_date>=? and start_date<=?) or (due_date>=? and due_date<=?))", @date_from, @date_to, @date_from, @date_to]) + @issues = @project.issues.find(:all, :include => [:tracker, :status, :assigned_to, :priority], + :conditions => ["((start_date>=? and start_date<=?) or (due_date>=? and due_date<=?))", @date_from, @date_to, @date_from, @date_to]) + + @ending_issues_by_days = @issues.group_by {|issue| issue.due_date} + @starting_issues_by_days = @issues.group_by {|issue| issue.start_date} + render :layout => false if request.xhr? end diff --git a/app/views/projects/calendar.rhtml b/app/views/projects/calendar.rhtml index 154c5618a..8db92a938 100644 --- a/app/views/projects/calendar.rhtml +++ b/app/views/projects/calendar.rhtml @@ -43,9 +43,7 @@ while day <= @date_to <% end %> <td valign="top" class="<%= day.month==@month ? "even" : "odd" %>" style="width:14%; <%= Date.today == day ? 'background:#FDFED0;' : '' %>"> <p class="textright"><%= day==Date.today ? "<b>#{day.day}</b>" : day.day %></p> - <% day_issues = [] - @issues.each { |i| day_issues << i if i.start_date == day or i.due_date == day } - day_issues.each do |i| %> + <% ((@ending_issues_by_days[day] || []) + (@starting_issues_by_days[day] || [])).uniq.each do |i| %> <div class="tooltip"> <%= if day == i.start_date and day == i.due_date image_tag('arrow_bw.png') |