discourse/script/import_scripts/drupal_json.rb
Peter Zhu c5fd8c42db
DEV: Fix methods removed in Ruby 3.2 ()
* File.exists? is deprecated and removed in Ruby 3.2 in favor of
File.exist?
* Dir.exists? is deprecated and removed in Ruby 3.2 in favor of
Dir.exist?
2022-01-05 18:45:08 +01:00

48 lines
986 B
Ruby

# frozen_string_literal: true
require File.expand_path(File.dirname(__FILE__) + "/base.rb")
# Edit the constants and initialize method for your import data.
class ImportScripts::DrupalJson < ImportScripts::Base
JSON_FILES_DIR = "/Users/techapj/Documents"
def initialize
super
@users_json = load_json("formatted_users.json")
end
def execute
puts "", "Importing from Drupal..."
import_users
puts "", "Done"
end
def load_json(arg)
filename = File.join(JSON_FILES_DIR, arg)
raise RuntimeError.new("File #{filename} not found!") if !File.exist?(filename)
JSON.parse(File.read(filename)).reverse
end
def import_users
puts '', "Importing users"
create_users(@users_json) do |u|
{
id: u["uid"],
name: u["name"],
email: u["mail"],
created_at: Time.zone.at(u["created"].to_i)
}
end
EmailToken.delete_all
end
end
if __FILE__ == $0
ImportScripts::DrupalJson.new.perform
end