mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-11-27 01:26:18 -05:00
add Drupal JSON import script
This commit is contained in:
parent
bea06afd3d
commit
529528f122
1 changed files with 45 additions and 0 deletions
45
script/import_scripts/drupal_json.rb
Normal file
45
script/import_scripts/drupal_json.rb
Normal file
|
@ -0,0 +1,45 @@
|
|||
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.exists?(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
|
Loading…
Reference in a new issue