Class: CreateTask::OmniFocus

Inherits:
Object
  • Object
show all
Defined in:
lib/ExtraCare2OF/services.rb

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ OmniFocus

Returns a new instance of OmniFocus.



8
9
10
11
12
13
14
15
# File 'lib/ExtraCare2OF/services.rb', line 8

def initialize(args)
  args[:due_date] = parse_date(args[:due_date]) if args[:due_date]
  args[:defer_date] = parse_date(args[:defer_date]) if args[:defer_date]

  of = app("OmniFocus")
  @dd= of.default_document
  @dd.make(:new => :inbox_task, :with_properties => args.to_hash)
end

Instance Method Details

#parse_date(datestring) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/ExtraCare2OF/services.rb', line 17

def parse_date(datestring)
  days = 0
  if datestring =~ /^\+(\d+)$/
    days = (60 * 60 * 24 * $1.to_i)
    newdate = Time.now + days
  else
    newdate = Chronic.parse(datestring.to_s, {:context => :future, :ambiguous_time_range => 8})
  end
  # parsed = newdate.strftime('%D %l:%M%p').gsub(/\s+/,' ');
  # return parsed =~ /1969/ ? false : parsed
  return newdate
end