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
34 35 36 |
# File 'lib/mls/models/task.rb', line 34 def crawl? type == "crawl" end |
#duration ⇒ Object
42 43 44 |
# File 'lib/mls/models/task.rb', line 42 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
26 27 28 |
# File 'lib/mls/models/task.rb', line 26 def fix? type == "fix" end |
#for_source? ⇒ Boolean
14 15 16 |
# File 'lib/mls/models/task.rb', line 14 def for_source? subject_type == "Source" end |
#for_task? ⇒ Boolean
18 19 20 |
# File 'lib/mls/models/task.rb', line 18 def for_task? subject_type == "Task" end |
#parse? ⇒ Boolean
30 31 32 |
# File 'lib/mls/models/task.rb', line 30 def parse? type == "parse" end |
#pause ⇒ Object
46 47 48 49 50 51 |
# File 'lib/mls/models/task.rb', line 46 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
38 39 40 |
# File 'lib/mls/models/task.rb', line 38 def paused? status == 'paused' end |
#resume ⇒ Object
53 54 55 56 |
# File 'lib/mls/models/task.rb', line 53 def resume #time_logs << TimeLog.create(:started_at => Time.now) TimeLog.create(task_id: self.id, started_at: Time.now) end |
#review? ⇒ Boolean
22 23 24 |
# File 'lib/mls/models/task.rb', line 22 def review? type == "review" end |