Commit bae4c6074d8e3d2fe27639c124cf6212fb994908

Authored by Antonio Terceiro
1 parent b1fd97bf

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,6 +29,13 @@ class UploadedFile
29 attr_accessor :is_homepage, :filesystem_location 29 attr_accessor :is_homepage, :filesystem_location
30 end 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 class FileData < StringIO 39 class FileData < StringIO
33 attr_reader :original_filename, :content_type 40 attr_reader :original_filename, :content_type
34 def initialize(actual_filename, name, content_type) 41 def initialize(actual_filename, name, content_type)
@@ -39,15 +46,7 @@ class FileData &lt; StringIO @@ -39,15 +46,7 @@ class FileData &lt; StringIO
39 end 46 end
40 47
41 def import_environment(name) 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 end 50 end
52 51
53 for username in ARGV 52 for username in ARGV
@@ -59,12 +58,14 @@ for username in ARGV @@ -59,12 +58,14 @@ for username in ARGV
59 58
60 # create user 59 # create user
61 login = username.gsub(/@.*$/, '') 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 # import person data 63 # import person data
66 - person = user.person 64 + person = Person.new(:identifier => login)
  65 + user.person = person
  66 + person.user = user
67 person.from_xml(File.read(File.join(IMPORT_DIR, username + '.xml'))) 67 person.from_xml(File.read(File.join(IMPORT_DIR, username + '.xml')))
  68 + user.save!
68 puts "I: #{username} data imported" 69 puts "I: #{username} data imported"
69 70
70 # import articles 71 # import articles