Commit ce19d6fd402c8a58fa798c89bd421712602ea08c

Authored by AntonioTerceiro
1 parent 91dd1533

ActionItem629: migrating user data

git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@2431 3f533792-8f58-4932-b0fe-aaf55b0a4547
app/models/environment.rb
@@ -275,19 +275,21 @@ class Environment < ActiveRecord::Base @@ -275,19 +275,21 @@ class Environment < ActiveRecord::Base
275 Person.find_by_id settings[:person_template_id] 275 Person.find_by_id settings[:person_template_id]
276 end 276 end
277 277
278 - after_create do |env|  
279 - pre = env.name.to_slug + '_'  
280 - ent_id = Enterprise.create!(:name => 'Enterprise template', :identifier => pre + 'enterprise_template', :environment => env, :public_profile => false).id  
281 - com_id = Community.create!(:name => 'Community template', :identifier => pre + 'community_template', :environment => env, :public_profile => false).id 278 + after_create :create_templates
  279 +
  280 + def create_templates
  281 + pre = self.name.to_slug + '_'
  282 + ent_id = Enterprise.create!(:name => 'Enterprise template', :identifier => pre + 'enterprise_template', :environment => self, :public_profile => false).id
  283 + com_id = Community.create!(:name => 'Community template', :identifier => pre + 'community_template', :environment => self, :public_profile => false).id
282 pass = Digest::MD5.hexdigest rand.to_s 284 pass = Digest::MD5.hexdigest rand.to_s
283 - user = User.create!(:login => (pre + 'person_template'), :email => (pre + 'template@template.noo'), :password => pass, :password_confirmation => pass, :environment => env).person 285 + user = User.create!(:login => (pre + 'person_template'), :email => (pre + 'template@template.noo'), :password => pass, :password_confirmation => pass, :environment => self).person
284 user.public_profile = false 286 user.public_profile = false
285 user.save! 287 user.save!
286 usr_id = user.id 288 usr_id = user.id
287 - env.settings[:enterprise_template_id] = ent_id  
288 - env.settings[:community_template_id] = com_id  
289 - env.settings[:person_template_id] = usr_id  
290 - env.save! 289 + self.settings[:enterprise_template_id] = ent_id
  290 + self.settings[:community_template_id] = com_id
  291 + self.settings[:person_template_id] = usr_id
  292 + self.save!
291 end 293 end
292 294
293 end 295 end
db/migrate/052_create_templates.rb 0 → 100644
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
  1 +class CreateTemplates < ActiveRecord::Migration
  2 + def self.up
  3 + Environment.find(:all).each do |env|
  4 + if env.person_template.nil? && env.community_template.nil? && env.enterprise_template.nil?
  5 + env.create_templates
  6 + end
  7 + end
  8 + end
  9 +
  10 + def self.down
  11 + # nothing
  12 + end
  13 +end