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

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

Instance Method Summary collapse

Instance Method Details

#ability_classObject



167
168
169
# File 'lib/iqvoc/configuration/core.rb', line 167

def ability_class
  ability_class_name.constantize
end

#all_languagesObject

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



180
181
182
183
184
# File 'lib/iqvoc/configuration/core.rb', line 180

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



155
156
157
# File 'lib/iqvoc/configuration/core.rb', line 155

def change_note_class
  change_note_class_name.constantize
end

#config(&block) ⇒ Object

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



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

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

#engine?Boolean

Returns:

  • (Boolean)


192
193
194
# File 'lib/iqvoc/configuration/core.rb', line 192

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

#first_level_classesObject



163
164
165
# File 'lib/iqvoc/configuration/core.rb', line 163

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

#host_versionObject



211
212
213
214
215
# File 'lib/iqvoc/configuration/core.rb', line 211

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

#note_languagesObject



175
176
177
# File 'lib/iqvoc/configuration/core.rb', line 175

def note_languages
  config['languages.notes']
end

#rootObject



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

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

#routing_constraintObject



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

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



159
160
161
# File 'lib/iqvoc/configuration/core.rb', line 159

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

#titleObject



171
172
173
# File 'lib/iqvoc/configuration/core.rb', line 171

def title
  config['title']
end

#title=(value) ⇒ Object

Deprecated.


187
188
189
190
# File 'lib/iqvoc/configuration/core.rb', line 187

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