Launchpad automatic translations update.
[odoo/odoo.git] / addons / base_contact / base_contact_installer.py
index 3cb3201..3936b33 100644 (file)
@@ -25,41 +25,38 @@ from osv import fields, osv
 class base_contact_installer(osv.osv_memory):
     _name = 'base.contact.installer'
     _inherit = 'res.config.installer'
-    
+
     _columns = {
-        'name': fields.char('Name', size=64), 
-        'migrate': fields.boolean('Migrate', help="If you select this, all addresses will be migrated."), 
+        'name': fields.char('Name', size=64),
+        'migrate': fields.boolean('Migrate', help="If you select this, all addresses will be migrated."),
     }
 
     def execute(self, cr, uid, ids, context=None):
         """
-        This function is used to create contact and address from existing partner address 
+        This function is used to create contact and address from existing partner address
         """
-        cr.execute("""DROP TRIGGER  IF EXISTS contactjob on res_partner_contact;
-                        DROP LANGUAGE  IF EXISTS  plpgsql CASCADE;
-                        CREATE LANGUAGE plpgsql ;
-                        CREATE OR REPLACE FUNCTION add_to_job() RETURNS TRIGGER AS $contactjob$
-                        DECLARE
-                        new_name varchar;
-                        new_phonenum varchar;
-                        BEGIN
-                        IF(TG_OP='INSERT') THEN
-                        INSERT INTO res_partner_job(contact_id, address_id, function, state) VALUES(NEW.id, NEW.website::integer,NEW.first_name, 'current');
-                        UPDATE res_partner_contact set first_name=Null, website=Null, active=True where id=NEW.id;
-                        END IF;
-                        RETURN NEW;
-                        END;
-                        $contactjob$ LANGUAGE plpgsql;
-                        CREATE TRIGGER contactjob AFTER INSERT ON res_partner_contact FOR EACH ROW EXECUTE PROCEDURE add_to_job();""")
-        cr.commit()
+        obj = self.pool.get("base.contact.installer").browse(cr, uid, uid, context=context)
+        if obj.migrate:
+            cr.execute("""DROP TRIGGER  IF EXISTS contactjob on res_partner_contact;
+                            CREATE OR REPLACE FUNCTION add_to_job() RETURNS TRIGGER AS $contactjob$
+                            DECLARE
+                            new_name varchar;
+                            new_phonenum varchar;
+                            BEGIN
+                            IF(TG_OP='INSERT') THEN
+                            INSERT INTO res_partner_job(contact_id, address_id, function, state) VALUES(NEW.id, NEW.website::integer,NEW.first_name, 'current');
+                            UPDATE res_partner_contact set first_name=Null, website=Null, active=True where id=NEW.id;
+                            END IF;
+                            RETURN NEW;
+                            END;
+                            $contactjob$ LANGUAGE plpgsql;
+                            CREATE TRIGGER contactjob AFTER INSERT ON res_partner_contact FOR EACH ROW EXECUTE PROCEDURE add_to_job();""")
 
-        cr.execute("INSERT into res_partner_contact (name, title, email, first_name, website)  (SELECT coalesce(name, 'Noname'), title, email, function , to_char(id, '99999999') from res_partner_address)")
-        cr.commit()
+            cr.execute("INSERT into res_partner_contact (name, title, email, first_name, website)  (SELECT coalesce(name, 'Noname'), title, email, function , to_char(id, '99999999') from res_partner_address)")
 
-        cr.execute("DROP TRIGGER  IF EXISTS contactjob  on res_partner_contact")
-        cr.execute("DROP LANGUAGE  IF EXISTS  plpgsql CASCADE;")
-        cr.execute("DROP FUNCTION IF EXISTS  add_to_job()")
-        cr.commit()
+            cr.execute("DROP TRIGGER  IF EXISTS contactjob  on res_partner_contact")
+            
+            cr.execute("DROP FUNCTION IF EXISTS  add_to_job()")
 
 base_contact_installer()