annotate app/controllers/calendars_controller.rb @ 0:513646585e45
* Import Redmine trunk SVN rev 3859
author |
Chris Cannam |
date |
Fri, 23 Jul 2010 15:52:44 +0100 |
parents |
|
children |
1d32c0a0efbf |
rev |
line source |
Chris@0
|
1 class CalendarsController < ApplicationController
|
Chris@0
|
2 before_filter :find_optional_project
|
Chris@0
|
3
|
Chris@0
|
4 rescue_from Query::StatementInvalid, :with => :query_statement_invalid
|
Chris@0
|
5
|
Chris@0
|
6 helper :issues
|
Chris@0
|
7 helper :projects
|
Chris@0
|
8 helper :queries
|
Chris@0
|
9 include QueriesHelper
|
Chris@0
|
10
|
Chris@0
|
11 def show
|
Chris@0
|
12 if params[:year] and params[:year].to_i > 1900
|
Chris@0
|
13 @year = params[:year].to_i
|
Chris@0
|
14 if params[:month] and params[:month].to_i > 0 and params[:month].to_i < 13
|
Chris@0
|
15 @month = params[:month].to_i
|
Chris@0
|
16 end
|
Chris@0
|
17 end
|
Chris@0
|
18 @year ||= Date.today.year
|
Chris@0
|
19 @month ||= Date.today.month
|
Chris@0
|
20
|
Chris@0
|
21 @calendar = Redmine::Helpers::Calendar.new(Date.civil(@year, @month, 1), current_language, :month)
|
Chris@0
|
22 retrieve_query
|
Chris@0
|
23 @query.group_by = nil
|
Chris@0
|
24 if @query.valid?
|
Chris@0
|
25 events = []
|
Chris@0
|
26 events += @query.issues(:include => [:tracker, :assigned_to, :priority],
|
Chris@0
|
27 :conditions => ["((start_date BETWEEN ? AND ?) OR (due_date BETWEEN ? AND ?))", @calendar.startdt, @calendar.enddt, @calendar.startdt, @calendar.enddt]
|
Chris@0
|
28 )
|
Chris@0
|
29 events += @query.versions(:conditions => ["effective_date BETWEEN ? AND ?", @calendar.startdt, @calendar.enddt])
|
Chris@0
|
30
|
Chris@0
|
31 @calendar.events = events
|
Chris@0
|
32 end
|
Chris@0
|
33
|
Chris@0
|
34 render :layout => false if request.xhr?
|
Chris@0
|
35 end
|
Chris@0
|
36
|
Chris@0
|
37
|
Chris@0
|
38 end
|