module MyTodoActions

Public Instance Methods

ask_status() click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 2
def ask_status
  list_statuses
  @status = ask("Choose a status for item", default: set_default_status)
end
assign_detailed_status() click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 21
def assign_detailed_status
  ask_status
  @item.write_attribute(:detailed_status, detailed_statuses[@status.to_i])
end
create_item(options) click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 7
def create_item(options)
  @item = Item.new(options.except(:tags))
  assign_detailed_status
  @item.save!
  set_tags
end
set_default_status() click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 30
def set_default_status
  @item.detailed_status.nil? ? 1 : detailed_statuses.index(@item.detailed_status)
end
set_tags() click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 26
def set_tags
  options[:tags].split(' ').each{|tag| @item.tags.create(name: tag) } if options[:tags]
end
update_item(options) click to toggle source
# File lib/my_todo/modules/my_todo_actions.rb, line 14
def update_item(options)
  item.assign_attributes(options)
  @item = item #Find a better way!!!!
  assign_detailed_status
  item.save!
end