Sha256: a8bc1664dba6d6dc5fa58031772a413aa043f4d58bf0b2eaa4e4272544300b11

Contents?: true

Size: 1.28 KB

Versions: 7

Compression:

Stored size: 1.28 KB

Contents

module WidgetHelper
  def widget_values(concept, relation_class)
    concept.concept_relations_by_id(relation_class.name.to_relation_name)
  end

  def widget_values_ranked(concept, relation_class)
    concepts_with_ranks = concept.concept_relations_by_id_and_rank(relation_class.name.to_relation_name)
    concepts_with_ranks.map { |concept, rank| "#{concept.origin}:#{rank}" }.join(Iqvoc::InlineDataHelper::JOINER)
  end

  def widget_entities(concept, relation_class)
    origins = concept.
      concept_relations_by_id(relation_class.name.to_relation_name).
      split(Iqvoc::InlineDataHelper::SPLITTER)

    Iqvoc::Concept.base_class.
      editor_selectable.
      by_origin(origins).
      map { |c| concept_widget_data(c) }.
      to_json
  end

  def widget_entities_ranked(concept, relation_class)
    origins = concept.
      concept_relations_by_id(relation_class.name.to_relation_name).
      split(Iqvoc::InlineDataHelper::SPLITTER)

    allowed_concepts = Iqvoc::Concept.base_class.
      editor_selectable.
      by_origin(origins)

    concepts_with_ranks = concept.concept_relations_by_id_and_rank(relation_class.name.to_relation_name)

    concepts = concepts_with_ranks.reject { |k, v| !allowed_concepts.include?(k) }
    concepts.map { |c, r| concept_widget_data(c, r) }.to_json
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
iqvoc-4.7.0 app/helpers/widget_helper.rb
iqvoc-4.6.1 app/helpers/widget_helper.rb
iqvoc-4.5.2 app/helpers/widget_helper.rb
iqvoc-4.6.0 app/helpers/widget_helper.rb
iqvoc-4.5.1 app/helpers/widget_helper.rb
iqvoc-4.5.0 app/helpers/widget_helper.rb
iqvoc-4.4.0 app/helpers/widget_helper.rb