Class: Collavre::Creatives::IndexQuery
- Inherits:
-
Object
- Object
- Collavre::Creatives::IndexQuery
- Defined in:
- app/services/collavre/creatives/index_query.rb
Defined Under Namespace
Classes: Result
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(user:, params: {}) ⇒ IndexQuery
constructor
A new instance of IndexQuery.
Constructor Details
#initialize(user:, params: {}) ⇒ IndexQuery
Returns a new instance of IndexQuery.
15 16 17 18 |
# File 'app/services/collavre/creatives/index_query.rb', line 15 def initialize(user:, params: {}) @user = user @params = params.with_indifferent_access end |
Instance Method Details
#call ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/services/collavre/creatives/index_query.rb', line 20 def call result = resolve_creatives shared_creative = result[:parent] || result[:creatives]&.first shared_list = shared_creative ? shared_creative.all_shared_users : [] Result.new( creatives: result[:creatives], parent_creative: result[:parent], shared_creative: shared_creative, shared_list: shared_list, overall_progress: result[:overall_progress] || 0, allowed_creative_ids: result[:allowed_ids], progress_map: result[:progress_map] ) end |