Module: Iqvoc::Configuration::Core::ClassMethods

Defined in:
lib/iqvoc/configuration/core.rb

Instance Method Summary collapse

Instance Method Details

#ability_classObject



169
170
171
# File 'lib/iqvoc/configuration/core.rb', line 169

def ability_class
  ability_class_name.constantize
end

#all_languagesObject

returns a list of all languages selectable for labels and/or notes



182
183
184
185
186
# File 'lib/iqvoc/configuration/core.rb', line 182

def all_languages
  (Iqvoc::Concept.pref_labeling_languages +
      Iqvoc::Concept.further_labeling_class_names.values.flatten +
      note_languages).compact.map(&:to_s).uniq
end

#change_note_classObject



157
158
159
# File 'lib/iqvoc/configuration/core.rb', line 157

def change_note_class
  change_note_class_name.constantize
end

#config(&block) ⇒ Object

************** instance configuration **************



148
149
150
151
152
153
154
155
# File 'lib/iqvoc/configuration/core.rb', line 148

def config(&block)
  cfg = Iqvoc::Configuration::InstanceConfiguration.instance
  if block
    block.call(cfg)
  else
    return cfg
  end
end

#engine?Boolean

Returns:

  • (Boolean)


194
195
196
# File 'lib/iqvoc/configuration/core.rb', line 194

def engine?
  Iqvoc.const_defined?(:Engine)
end

#first_level_classesObject



165
166
167
# File 'lib/iqvoc/configuration/core.rb', line 165

def first_level_classes
  self.first_level_class_configuration_modules.map { |mod| mod.send(:base_class) }
end

#host_versionObject



213
214
215
216
217
# File 'lib/iqvoc/configuration/core.rb', line 213

def host_version
  if Iqvoc.host_namespace
    Iqvoc.host_namespace::VERSION
  end
end

#note_languagesObject



177
178
179
# File 'lib/iqvoc/configuration/core.rb', line 177

def note_languages
  config['languages.notes']
end

#rootObject



198
199
200
201
202
203
204
# File 'lib/iqvoc/configuration/core.rb', line 198

def root
  if engine?
    Iqvoc::Engine.root
  else
    Rails.root
  end
end

#routing_constraintObject



206
207
208
209
210
211
# File 'lib/iqvoc/configuration/core.rb', line 206

def routing_constraint
  lambda do |params, req|
    langs = Iqvoc::Concept.pref_labeling_languages.join('|').presence || 'en'
    return params[:lang].to_s =~ /^#{langs}$/
  end
end

#searchable_classesObject



161
162
163
# File 'lib/iqvoc/configuration/core.rb', line 161

def searchable_classes
  searchable_class_names.keys.map(&:constantize)
end

#titleObject



173
174
175
# File 'lib/iqvoc/configuration/core.rb', line 173

def title
  config['title']
end

#title=(value) ⇒ Object

Deprecated.


189
190
191
192
# File 'lib/iqvoc/configuration/core.rb', line 189

def title=(value)
  ActiveSupport::Deprecation.warn 'title has been moved into instance configuration', caller
  self.config.register_setting('title', value)
end