Class: Task
- Inherits:
-
MLS::Model
- Object
- ActiveRecord::Base
- MLS::Model
- Task
- Defined in:
- lib/mls/models/task.rb
Instance Method Summary collapse
- #crawl? ⇒ Boolean
- #duration ⇒ Object
- #fix? ⇒ Boolean
- #for_source? ⇒ Boolean
- #for_task? ⇒ Boolean
- #parse? ⇒ Boolean
- #pause ⇒ Object
- #paused? ⇒ Boolean
- #resume ⇒ Object
- #review? ⇒ Boolean
Instance Method Details
#crawl? ⇒ Boolean
36 37 38 |
# File 'lib/mls/models/task.rb', line 36 def crawl? type == "crawl" end |
#duration ⇒ Object
44 45 46 |
# File 'lib/mls/models/task.rb', line 44 def duration time_logs.where(TimeLog.arel_table[:started_at].not_eq(nil)).where(TimeLog.arel_table[:stopped_at].not_eq(nil)).sum("duration") end |
#fix? ⇒ Boolean
28 29 30 |
# File 'lib/mls/models/task.rb', line 28 def fix? type == "fix" end |
#for_source? ⇒ Boolean
16 17 18 |
# File 'lib/mls/models/task.rb', line 16 def for_source? subject_type == "Source" end |
#for_task? ⇒ Boolean
20 21 22 |
# File 'lib/mls/models/task.rb', line 20 def for_task? subject_type == "Task" end |
#parse? ⇒ Boolean
32 33 34 |
# File 'lib/mls/models/task.rb', line 32 def parse? type == "parse" end |
#pause ⇒ Object
48 49 50 51 52 53 |
# File 'lib/mls/models/task.rb', line 48 def pause log = time_logs.where(:stopped_at => nil).where(TimeLog.arel_table[:started_at].not_eq(nil)).first if log log.update(:stopped_at => Time.now) end end |
#paused? ⇒ Boolean
40 41 42 |
# File 'lib/mls/models/task.rb', line 40 def paused? status == 'paused' end |
#resume ⇒ Object
55 56 57 58 |
# File 'lib/mls/models/task.rb', line 55 def resume #time_logs << TimeLog.create(:started_at => Time.now) TimeLog.create(task_id: self.id, started_at: Time.now) end |
#review? ⇒ Boolean
24 25 26 |
# File 'lib/mls/models/task.rb', line 24 def review? type == "review" end |