Class: UiHelper::Summary
- Inherits:
-
Object
- Object
- UiHelper::Summary
- Defined in:
- app/models/ui_helper/summary.rb
Instance Attribute Summary collapse
-
#current_page ⇒ Object
Returns the value of attribute current_page.
-
#summary_items ⇒ Object
Returns the value of attribute summary_items.
Instance Method Summary collapse
- #add(item) ⇒ Object
-
#initialize(options = {}) ⇒ Summary
constructor
A new instance of Summary.
- #load(study) ⇒ Object
- #load_asset(asset) ⇒ Object
- #load_event(event) ⇒ Object
- #load_request(request) ⇒ Object
- #load_study(study) ⇒ Object
- #size ⇒ Object
- #summaries ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Summary
Returns a new instance of Summary.
10 11 12 13 14 |
# File 'app/models/ui_helper/summary.rb', line 10 def initialize( = {}) @summary_items = [] @current_page = [:page].to_i || 1 @item_per_page = [:per_page].to_i || 10 end |
Instance Attribute Details
#current_page ⇒ Object
Returns the value of attribute current_page.
8 9 10 |
# File 'app/models/ui_helper/summary.rb', line 8 def current_page @current_page end |
#summary_items ⇒ Object
Returns the value of attribute summary_items.
8 9 10 |
# File 'app/models/ui_helper/summary.rb', line 8 def summary_items @summary_items end |
Instance Method Details
#add(item) ⇒ Object
64 65 66 |
# File 'app/models/ui_helper/summary.rb', line 64 def add(item) @summary_items << item end |
#load(study) ⇒ Object
16 17 18 19 20 21 22 |
# File 'app/models/ui_helper/summary.rb', line 16 def load(study) study.submissions.each do |submission| submission.events.where('message LIKE "Run%"').find_each { |event| load_event(event) } end load_study(study) summaries end |
#load_asset(asset) ⇒ Object
26 27 28 |
# File 'app/models/ui_helper/summary.rb', line 26 def load_asset(asset) asset.events_on_requests.where('message LIKE "Run%"').find_each { |event| load_event(event) } end |
#load_event(event) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 |
# File 'app/models/ui_helper/summary.rb', line 34 def load_event(event) add( SummaryItem.new( message: event., object: event.eventful, timestamp: event.created_at, external_message: "Run #{event.identifier}", external_link: "#{configatron.run_information_url}#{event.identifier}" ) ) end |
#load_request(request) ⇒ Object
30 31 32 |
# File 'app/models/ui_helper/summary.rb', line 30 def load_request(request) request.run_events.each { |event| load_event(event) } end |
#load_study(study) ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'app/models/ui_helper/summary.rb', line 46 def load_study(study) study.events.find_each do |event| add( SummaryItem.new( message: event., object: study, timestamp: event.created_at, external_message: "Study #{study.id}", external_link: '' ) ) end end |
#size ⇒ Object
68 69 70 |
# File 'app/models/ui_helper/summary.rb', line 68 def size @summary_items.size end |
#summaries ⇒ Object
60 61 62 |
# File 'app/models/ui_helper/summary.rb', line 60 def summaries summary_items.sort_by(&:timestamp).reverse end |