diff --git a/addons/base_contact/base_contact.py b/addons/base_contact/base_contact.py index 23589fd2d6d..75cbfd20c03 100644 --- a/addons/base_contact/base_contact.py +++ b/addons/base_contact/base_contact.py @@ -26,6 +26,7 @@ class res_partner_contact(osv.osv): _name = "res.partner.contact" _description = "Contact" + _log_create = True def _title_get(self,cr, user, context={}): """ @@ -207,6 +208,7 @@ class res_partner_job(osv.osv): _name = 'res.partner.job' _description ='Contact Partner Function' _order = 'sequence_contact' + _log_create = True _columns = { 'name': fields.related('address_id', 'partner_id', type='many2one',\ diff --git a/addons/base_contact/migrations/1.2/pre-10-res_partner_address_change.py b/addons/base_contact/migrations/1.2/pre-10-res_partner_address_change.py new file mode 100644 index 00000000000..26deac23e7f --- /dev/null +++ b/addons/base_contact/migrations/1.2/pre-10-res_partner_address_change.py @@ -0,0 +1,32 @@ +# -*- coding: utf8 -*- + +__name__ = "res.partner.adress: for each address it should create a contact with the name of the address" + +def migrate(cr, version): + generate_contact(cr) + +def generate_contact(cr): + 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() + + 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("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() \ No newline at end of file diff --git a/addons/caldav/wizard/calendar_event_export.py b/addons/caldav/wizard/calendar_event_export.py index 856d9e9bc91..0be54df9f56 100644 --- a/addons/caldav/wizard/calendar_event_export.py +++ b/addons/caldav/wizard/calendar_event_export.py @@ -32,16 +32,6 @@ class calendar_event_export(osv.osv_memory): """ Export Calendar Event. """ - def process_export_ics(self, cr, uid, ids, context): - """ - Get Default value for file_path field. - """ - model = context.get('model', 'basic.calendar') - model_obj = self.pool.get(model) - - calendar = model_obj.export_cal(cr, uid, context['active_ids'], context) - self.write(cr, uid, ids, {'file_path': base64.encodestring(calendar)}) - return False def default_get(self, cr, uid, fields, context): """ @@ -54,6 +44,9 @@ class calendar_event_export(osv.osv_memory): name = 'OpenERP %s.ics' % (model_obj._description) if 'name' in fields: res.update({'name': name}) + if 'file_path' in fields: + calendar = model_obj.export_cal(cr, uid, context['active_ids'], context) + res.update({'file_path': base64.encodestring(calendar)}) return res _name = "calendar.event.export" diff --git a/addons/caldav/wizard/calendar_event_export_view.xml b/addons/caldav/wizard/calendar_event_export_view.xml index 227822966d0..cfadf945bf4 100644 --- a/addons/caldav/wizard/calendar_event_export_view.xml +++ b/addons/caldav/wizard/calendar_event_export_view.xml @@ -13,8 +13,8 @@ -