Module: ImportExport

Defined in:
lib/import_export.rb,
lib/import_export/importer.rb,
lib/import_export/base_exporter.rb,
lib/import_export/group_exporter.rb,
lib/import_export/topic_exporter.rb,
lib/import_export/category_exporter.rb,
lib/import_export/category_structure_exporter.rb,
lib/import_export/translation_overrides_exporter.rb

Defined Under Namespace

Classes: BaseExporter, CategoryExporter, CategoryStructureExporter, GroupExporter, Importer, TopicExporter, TranslationOverridesExporter

Class Method Summary collapse

Class Method Details

.export_categories(category_ids, filename = nil) ⇒ Object



25
26
27
# File 'lib/import_export.rb', line 25

def self.export_categories(category_ids, filename = nil)
  ImportExport::CategoryExporter.new(category_ids).perform.save_to_file(filename)
end

.export_category_structure(include_users, filename = nil) ⇒ Object



21
22
23
# File 'lib/import_export.rb', line 21

def self.export_category_structure(include_users, filename = nil)
  ImportExport::CategoryStructureExporter.new(include_users).perform.save_to_file(filename)
end

.export_groups(include_users, filename = nil) ⇒ Object



33
34
35
# File 'lib/import_export.rb', line 33

def self.export_groups(include_users, filename = nil)
  ImportExport::GroupExporter.new(include_users).perform.save_to_file(filename)
end

.export_topics(topic_ids, filename = nil) ⇒ Object



29
30
31
# File 'lib/import_export.rb', line 29

def self.export_topics(topic_ids, filename = nil)
  ImportExport::TopicExporter.new(topic_ids).perform.save_to_file(filename)
end

.export_translation_overrides(filename = nil) ⇒ Object



37
38
39
# File 'lib/import_export.rb', line 37

def self.export_translation_overrides(filename = nil)
  ImportExport::TranslationOverridesExporter.new.perform.save_to_file(filename)
end

.import(filename) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/import_export.rb', line 13

def self.import(filename)
  data =
    ActiveSupport::HashWithIndifferentAccess.new(
      File.open(filename, "r:UTF-8") { |f| JSON.parse(f.read) },
    )
  ImportExport::Importer.new(data).perform
end