Sha256: 62b21dfd8a7976bd61e26566d244a9f3107545ee0855300d7d15dd09a5e2a707

Contents?: true

Size: 1.33 KB

Versions: 31

Compression:

Stored size: 1.33 KB

Contents

require File.join(File.dirname(__FILE__), %w[.. properties todo.rb])

module RiCal
  class Component
    #- ©2009 Rick DeNatale
    #- All rights reserved. Refer to the file README.txt for the license
    #
    # A Todo (VTODO) calendar component groups properties describing a to-do
    # Todos may have multiple occurrences
    #
    # Todos may also contain one or more ALARM subcomponents
    # to see the property accessing methods for this class see the RiCal::Properties::Todo module
    # to see the methods for enumerating occurrences of recurring to-dos see the RiCal::OccurrenceEnumerator module
    class Todo < Component
      include Properties::Todo
      include OccurrenceEnumerator

      def self.entity_name #:nodoc:
        "VTODO"
      end

      def subcomponent_class #:nodoc:
        {:alarm => Alarm }
      end
      
      # Return a date_time representing the time at which the todo should start
      def start_time
        dtstart_property ? dtstart.to_datetime : nil
      end
      
      # Return a date_time representing the time at which the todo is due
      def finish_time
        if due
          due_property.to_finish_time
        elsif duration_property && dtstart_property
          (dtstart_property + duration_property).to_finish_time
        else
          nil
        end
      end
      
    end
  end
end

Version data entries

31 entries across 31 versions & 3 rubygems

Version Path
ebeigarts-ri_cal-0.8.1 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.5.3 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.6.0 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.6.1 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.6.2 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.6.3 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.0 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.1 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.2 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.4 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.5 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.7.7 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.8.0 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.8.1 lib/ri_cal/component/todo.rb
rubyredrick-ri_cal-0.8.2 lib/ri_cal/component/todo.rb
ri_cal-0.8.2 lib/ri_cal/component/todo.rb
ri_cal-0.8.1 lib/ri_cal/component/todo.rb
ri_cal-0.8.0 lib/ri_cal/component/todo.rb
ri_cal-0.7.6 lib/ri_cal/component/todo.rb
ri_cal-0.7.7 lib/ri_cal/component/todo.rb