Class: GetFieldTreeListTransaction
- Inherits:
-
Cortex::ApplicationTransaction
- Object
- Cortex::ApplicationTransaction
- GetFieldTreeListTransaction
- Defined in:
- app/transactions/get_field_tree_list_transaction.rb
Instance Method Summary collapse
Instance Method Details
#init(input) ⇒ Object
5 6 7 8 9 |
# File 'app/transactions/get_field_tree_list_transaction.rb', line 5 def init(input) field = Field.find_by_id(input[:args]['field_id']) field ? Success({ content_item: input[:content_item], field: field }) : Failure(:not_found) end |
#process(input) ⇒ Object
11 12 13 14 15 16 17 |
# File 'app/transactions/get_field_tree_list_transaction.rb', line 11 def process(input) tree_array = input[:field].['allowed_values']['data']['tree_array'] tree_values = input[:content_item].field_items.find {|field_item| field_item.field_id == input[:field].id}.data['values'] tree_list = tree_values.map {|value| tree_array.find {|node| node['id'] == value.to_i}['node']['name']}.join(',') Success(tree_list) end |