snipplrCallback({"id":36721,"title":"create-a-todo-in-things","source":"
  1. require<\/span> "rubygems"<\/span><\/div><\/li>
  2. require<\/span> "appscript"<\/span><\/div><\/li>
  3. include<\/span> Appscript<\/div><\/li>
  4.  <\/div><\/li>
  5. @things<\/span> = app(<\/span>"Things"<\/span>)<\/span><\/div><\/li>
  6. @todos<\/span> = @things<\/span>.to_dos<\/span><\/div><\/li>
  7.  <\/div><\/li>
  8.  <\/div><\/li>
  9. def<\/span> create_to_do(<\/span>name,source,link)<\/span><\/div><\/li>
  10. unless<\/span> @todos<\/span>[<\/span>its.name<\/span>.eq<\/span>(<\/span>name)<\/span>]<\/span>.get<\/span>.length<\/span> ><\/span> 0<\/span><\/div><\/li>
  11. puts<\/span> "Didn't find a thing named #{name}. Creating a task."<\/span><\/div><\/li>
  12. if<\/span> link == ""<\/span><\/div><\/li>
  13. note = name<\/div><\/li>
  14. else<\/span> <\/div><\/li>
  15. note = "[url=#{link}]#{name} - #{source}[\/url]"<\/span><\/div><\/li>
  16. end<\/span><\/div><\/li>
  17.  <\/div><\/li>
  18. task = @things<\/span>.make<\/span>(<\/span>:at<\/span> =><\/span> app.lists<\/span>[<\/span>"Today"<\/span>]<\/span>.beginning<\/span>, :new<\/span> =><\/span> :to_do<\/span>, :with_properties<\/span> =><\/span> {<\/span><\/div><\/li>
  19. :name<\/span> =><\/span> name,<\/div><\/li>
  20. :tag_names<\/span> =><\/span> "panopticon,#{source}"<\/span>,<\/div><\/li>
  21. :notes<\/span> =><\/span> note,<\/div><\/li>
  22. :due_date<\/span> =><\/span> Time<\/span>.now<\/span> +<\/span> 8<\/span>.hours<\/span><\/div><\/li>
  23. }<\/span>)<\/span><\/div><\/li>
  24. end<\/span><\/div><\/li>
  25. end<\/span><\/div><\/li><\/ol><\/pre>","link":"https:\/\/snipplr.com\/view\/36721\/create-a-todo-in-things"});