lib/controllers/generate.rb in evertils-0.3.2 vs lib/controllers/generate.rb in evertils-0.3.3

- old
+ new

@@ -7,10 +7,11 @@ NOTEBOOK_DAILY = :Daily NOTEBOOK_WEEKLY = :Weekly NOTEBOOK_MONTHLY = :Monthly NOTEBOOK_DEPLOYMENT = :Deployments NOTEBOOK_MTS = :'Monthly Task Summaries' + NOTEBOOK_PRIORITY_QUEUE = :'Priority Queue' def pre_exec @methods_require_internet.push(:daily, :weekly, :monthly, :mts) OptionParser.new do |opt| @@ -34,78 +35,88 @@ # generate daily notes def daily title = @format.date_templates[NOTEBOOK_DAILY] body = @format.template_contents - body += to_enml($config.custom_sections[NOTEBOOK_DAILY]) if $config.custom_sections[NOTEBOOK_DAILY] + body += to_enml($config.custom_sections[NOTEBOOK_DAILY]) unless $config.custom_sections.nil? parent_notebook = NOTEBOOK_DAILY @model.create_note(title: title, body: body, parent_notebook: parent_notebook) end # generate weekly notes def weekly title = @format.date_templates[NOTEBOOK_WEEKLY] body = @format.template_contents - body += to_enml($config.custom_sections[NOTEBOOK_WEEKLY]) if $config.custom_sections[NOTEBOOK_WEEKLY] + body += to_enml($config.custom_sections[NOTEBOOK_WEEKLY]) unless $config.custom_sections.nil? parent_notebook = NOTEBOOK_WEEKLY if !@force if !Date.today.monday? Notify.error("Sorry, you can only create new weekly logs on Mondays", {}) end end note = @model.create_note(title: title, body: body, parent_notebook: parent_notebook) - tag_manager = Evertils::Common::Manager::Tag.new + tag_manager = Evertils::Common::Manager::Tag.instance week_tag = tag_manager.find("week-#{DateTime.now.cweek + 1}") note.tag(week_tag.prop(:name)) end # generate monthly notes def monthly title = @format.date_templates[NOTEBOOK_MONTHLY] body = @format.template_contents - body += to_enml($config.custom_sections[NOTEBOOK_MONTHLY]) if $config.custom_sections[NOTEBOOK_MONTHLY] + body += to_enml($config.custom_sections[NOTEBOOK_MONTHLY]) unless $config.custom_sections.nil? parent_notebook = NOTEBOOK_MONTHLY note = @model.create_note(title: title, body: body, parent_notebook: parent_notebook) - tag_manager = Evertils::Common::Manager::Tag.new + tag_manager = Evertils::Common::Manager::Tag.instance month_tag = tag_manager.find("month-#{DateTime.now.strftime('%-m')}") note.tag(month_tag.prop(:name)) end # generate monthly task summary templates def mts Notify.error("Name argument is required", {}) if @name.nil? title = "#{@name} #{DateTime.now.strftime('%m-%Y')}" body = @format.template_contents - body += to_enml($config.custom_sections[NOTEBOOK_MTS]) if $config.custom_sections[NOTEBOOK_MTS] + body += to_enml($config.custom_sections[NOTEBOOK_MTS]) unless $config.custom_sections.nil? parent_notebook = NOTEBOOK_MTS # create the note from template mts_note = @model.create_note(title: title, body: body, parent_notebook: parent_notebook) # tag it # TODO: maybe move this out of controller? - tag_manager = Evertils::Common::Manager::Tag.new + tag_manager = Evertils::Common::Manager::Tag.instance month_tag = tag_manager.find("month-#{DateTime.now.strftime('%-m')}") mts_note.tag(month_tag.prop(:name)) # TODO: commented out until support for multiple tags is added # client_tag = tag_manager.find_or_create(@name) # mts_note.tag(client_tag.prop(:name)) end + # generate priority queue notes + def pq + title = @format.date_templates[NOTEBOOK_PRIORITY_QUEUE] + body = @format.template_contents + body += to_enml($config.custom_sections[NOTEBOOK_PRIORITY_QUEUE]) unless $config.custom_sections.nil? + parent_notebook = NOTEBOOK_PRIORITY_QUEUE + + note = @model.create_note(title: title, body: body, parent_notebook: parent_notebook) + end + private # # @since 0.3.1 def to_enml(hash) - enml = Evertils::Helper::EvernoteENML::with_list(hash) + Evertils::Helper::EvernoteENML.with_list(hash) end end end end