class Haora::WeekRenderer
Public Instance Methods
render(week_days)
click to toggle source
# File lib/haora/week_renderer.rb, line 5 def render(week_days) days = rendered_days(week_days) if days.length > 0 days << $/ << rendered_total(week_days) else 'none' end end
Private Instance Methods
rendered_date(date)
click to toggle source
# File lib/haora/week_renderer.rb, line 37 def rendered_date(date) date.strftime('%a %d.%m.%Y') end
rendered_day(day)
click to toggle source
# File lib/haora/week_renderer.rb, line 29 def rendered_day(day) start = day.tasks.first.start stop = day.tasks.last.stop '%s %s = %s' % [rendered_date(day.date), rendered_timespan(start, stop), rendered_duration(day.hours)] end
rendered_days(days)
click to toggle source
# File lib/haora/week_renderer.rb, line 16 def rendered_days(days) days.select { |day| day.tasks.length > 0 } .collect { |day| rendered_day(day) } .join($/) end
rendered_total(days)
click to toggle source
# File lib/haora/week_renderer.rb, line 22 def rendered_total(days) hours = days.select { |day| day.tasks.length > 0 } .collect { |day| day.hours } .reduce(:+) ' Total = %s' % rendered_duration(hours) end