Browse Source

add registrants to mailing list

dev-rcn
root 3 years ago
parent
commit
3794226ba5
2 changed files with 21 additions and 1 deletions
  1. +19
    -0
      models/event.py
  2. +2
    -1
      views/event.xml

+ 19
- 0
models/event.py View File

@ -421,6 +421,25 @@ class KalachakraEvent(models.Model):
) )
teaching_html_content_records=fields.Html('teaching content records') teaching_html_content_records=fields.Html('teaching content records')
def add_registration_to_mailing_list(self):
registrants=self.env['event.registration'].search([('event_id','=',int(self.id))])
if registrants:
for reg in registrants:
if reg.event_id.recurring_event_newsletter_id:
mailing_contact=self.env['mailing.contact'].sudo().search([('email','=',reg.partner_id.email)],limit=1)
#si le contact n'existe pas comme mailing contact, création
if not mailing_contact:
vals={}
vals['email']=reg.partner_id.email
vals['name']=reg.partner_id.name
vals['title_id']=int(reg.partner_id.title)
vals['country_id']=int(reg.partner_id.country_id)
vals['list_ids']=[(4,int(reg.event_id.recurring_event_newsletter_id))]
mailing_contact=self.env['mailing.contact'].sudo().create(vals)
else:
#si le contact existe, si la liste de diffusion n'est pas lié au contact, on l'ajoute
if not reg.event_id.recurring_event_newsletter_id in mailing_contact.list_ids:
mailing_contact.sudo().write({'list_ids':[(4,int(reg.event_id.recurring_event_newsletter_id))]})
def add_event_to_google_agenda(self): def add_event_to_google_agenda(self):


+ 2
- 1
views/event.xml View File

@ -117,12 +117,13 @@
<button name="generate_events" attrs="{'invisible':['|',('generated_events','=',True),'|','|',('frequency','=',False),('end_generation_date','=',False),('parent_event_id','!=',False)]}" type="object" string="generate the events" class="btn btn-primary"/> <button name="generate_events" attrs="{'invisible':['|',('generated_events','=',True),'|','|',('frequency','=',False),('end_generation_date','=',False),('parent_event_id','!=',False)]}" type="object" string="generate the events" class="btn btn-primary"/>
<button name="remove_generated_events" attrs="{'invisible':['|',('generated_events','=',False),'|','|',('frequency','=',False),('end_generation_date','=',False),('parent_event_id','!=',False)]}" type="object" string="remove generated events" class="btn btn-danger"/> <button name="remove_generated_events" attrs="{'invisible':['|',('generated_events','=',False),'|','|',('frequency','=',False),('end_generation_date','=',False),('parent_event_id','!=',False)]}" type="object" string="remove generated events" class="btn btn-danger"/>
<button name="add_registration_to_mailing_list" type="object" string="Add registrants to the mailing list" class="btn btn-primary"/>
<field name="calendar_event_id" invisible="1"/> <field name="calendar_event_id" invisible="1"/>
<field name="parent_event_id" invisible="1"/> <field name="parent_event_id" invisible="1"/>
<field name="frequency" invisible="1"/> <field name="frequency" invisible="1"/>
<field name="end_generation_date" widget="date" invisible="1"/> <field name="end_generation_date" widget="date" invisible="1"/>
<field name="generated_events" invisible="1"/> <field name="generated_events" invisible="1"/>
</xpath> </xpath>
<xpath expr="//field[@name='tag_ids']" position="after"> <xpath expr="//field[@name='tag_ids']" position="after">


Loading…
Cancel
Save