Commit bae4c6074d8e3d2fe27639c124cf6212fb994908
1 parent
b1fd97bf
Exists in
master
and in
22 other branches
ActionItem305: importing passwords
Showing
1 changed file
with
13 additions
and
12 deletions
Show diff stats
script/import-cooperation.net
... | ... | @@ -29,6 +29,13 @@ class UploadedFile |
29 | 29 | attr_accessor :is_homepage, :filesystem_location |
30 | 30 | end |
31 | 31 | |
32 | +Person # forces loading Noosfero class before adding stuff to id | |
33 | +class Person | |
34 | + delegate :crypted_password=, :to => :user | |
35 | + delegate :salt=, :to => :user | |
36 | + delegate :password_type=, :to => :user | |
37 | +end | |
38 | + | |
32 | 39 | class FileData < StringIO |
33 | 40 | attr_reader :original_filename, :content_type |
34 | 41 | def initialize(actual_filename, name, content_type) |
... | ... | @@ -39,15 +46,7 @@ class FileData < StringIO |
39 | 46 | end |
40 | 47 | |
41 | 48 | def import_environment(name) |
42 | - environment = Environment.find_by_name(name) | |
43 | - if environment | |
44 | - puts "I: environment <#{name}> already exists, loading it." | |
45 | - else | |
46 | - environment = Environment.create!(:name => name) | |
47 | - Domain.create!(:name => domainname(name), :owner => environment) | |
48 | - puts "I: environment <#{name}> created." | |
49 | - end | |
50 | - environment | |
49 | + return Environment.default | |
51 | 50 | end |
52 | 51 | |
53 | 52 | for username in ARGV |
... | ... | @@ -59,12 +58,14 @@ for username in ARGV |
59 | 58 | |
60 | 59 | # create user |
61 | 60 | login = username.gsub(/@.*$/, '') |
62 | - user = User.create!(:login => login, :email => username, :environment => environment, :password => password(username), :password_confirmation => password(username)) | |
63 | - puts "I: user account for #{username} created" | |
61 | + user = User.new(:login => login, :email => username, :environment => environment) | |
64 | 62 | |
65 | 63 | # import person data |
66 | - person = user.person | |
64 | + person = Person.new(:identifier => login) | |
65 | + user.person = person | |
66 | + person.user = user | |
67 | 67 | person.from_xml(File.read(File.join(IMPORT_DIR, username + '.xml'))) |
68 | + user.save! | |
68 | 69 | puts "I: #{username} data imported" |
69 | 70 | |
70 | 71 | # import articles | ... | ... |