ガントチャートとかカレンダー2

「こんなんじゃない!」と叫んだ、昨日の日記
 
こんどはガントチャートにチャレンジすることにする。

改造したコード

いらないものはいらない。

  def rentalgantt
    if params[:year] and params[:year].to_i >0
      @year_from = params[:year].to_i
      if params[:month] and params[:month].to_i >=1 and params[:month].to_i <= 12
        @month_from = params[:month].to_i
      else
        @month_from = 1
      end
    else
      @month_from ||= (Date.today << 1).month
      @year_from ||= (Date.today << 1).year
    end
    
    @zoom = (params[:zoom].to_i > 0 and params[:zoom].to_i < 5) ? params[:zoom].to_i : 2
    @months = (params[:months].to_i > 0 and params[:months].to_i < 25) ? params[:months].to_i : 6
    
    @date_from = Date.civil(@year_from, @month_from, 1)
    @date_to = (@date_from >> @months) - 1
    
    @events = []
    @events += Rental.find(:all, 
    :conditions =>["(lending>=? and lending<=?) or (rtning>=? and rtning<=?)",
    @date_from, @date_to, @date_from, @date_to], :order=>'status, member_name')
    @events.sort! {|x,y| x.lending <=> y.lending }

  end