*improvement and bugfixes

bzr revid: qdp@tinyerp.com-20081007125122-bcyr6lv1uxd36sp5
This commit is contained in:
qdp
2008-10-07 14:51:22 +02:00
parent de0e74fa4a
commit 9420ba80af
3 changed files with 15 additions and 12 deletions
+10 -8
View File
@@ -203,18 +203,20 @@ class event_registration(osv.osv):
return True
def create(self, cr, uid, *args, **argv):
args[0]['section_id']= self.pool.get('event.event').browse(cr, uid, args[0]['event_id'], None).section_id.id
args[0]['date_deadline']= self.pool.get('event.event').browse(cr, uid, args[0]['event_id'], None).date_begin
args[0]['description']= self.pool.get('event.event').browse(cr, uid, args[0]['event_id'], None).mail_confirm
event = self.pool.get('event.event').browse(cr, uid, args[0]['event_id'], None)
args[0]['section_id']= event.section_id.id
args[0]['date_deadline']= event.date_begin
args[0]['description']= event.mail_confirm
res = super(event_registration, self).create(cr, uid, *args, **argv)
self._history(cr, uid,self.browse(cr, uid, [res]), 'Created', history=True)
return res
def write(self, cr, uid, *args, **argv):
if 'event_id' in args[1]:
args[1]['section_id']= self.pool.get('event.event').browse(cr, uid, args[1]['event_id'], None).section_id.id
args[1]['date_deadline']= self.pool.get('event.event').browse(cr, uid, args[1]['event_id'], None).date_begin
args[1]['description']= self.pool.get('event.event').browse(cr, uid, args[1]['event_id'], None).mail_confirm
event = self.pool.get('event.event').browse(cr, uid, args[1]['event_id'], None)
args[1]['section_id']= event.section_id.id
args[1]['date_deadline']= event.date_begin
args[1]['description']= event.mail_confirm
return super(event_registration, self).write(cr, uid, *args, **argv)
def mail_user_confirm(self,cr,uid,ids):
@@ -242,7 +244,7 @@ class event_registration(osv.osv):
if reg_id.event_id.state in ['draft', 'fixed', 'open','confirm','running'] and reg_id.event_id.mail_auto_registr:
tools.email_send(src, dest,'Auto Registration: '+'['+str(reg_id.id)+']'+' '+reg_id.name, reg_id.event_id.mail_registr, tinycrm = str(reg_id.case_id.id))
if (reg_id.event_id.state in ['confirm','running']) and reg_id.event_id.mail_auto_confirm:
tools.email_send(src, dest,'Auto Confirmation: '+'['+str(reg_id.id)+']'+' '+reg_id.name, reg_id.event_id.description, tinycrm = str(reg_id.case_id.id))
tools.email_send(src, dest,'Auto Confirmation: '+'['+str(reg_id.id)+']'+' '+reg_id.name, reg_id.event_id.mail_confirm, tinycrm = str(reg_id.case_id.id))
if not src:
raise osv.except_osv(_('Error!'), _('You must define a reply-to address in order to mail the participant. You can do this in the Mailing tab of your event. Note that this is also the place where you can configure your event to not send emails automaticly while registering'))
return False
@@ -309,7 +311,7 @@ class event_registration(osv.osv):
return {'value':{'unit_price' : False,'invoice_label' : False}}
def onchange_partner_id(self, cr, uid, ids, part, event_id):
def onchange_partner_id(self, cr, uid, ids, part, event_id, email=False):
data={}
data['badge_partner'] = data['contact_id'] = data['partner_invoice_id'] = data['email_from'] = data['badge_title'] = data['badge_name'] = False
if not part:
+4 -2
View File
@@ -203,7 +203,10 @@
<group col="6" colspan="4">
<field name="event_id" select="1" on_change="onchange_event(event_id, partner_invoice_id)" domain="[('state','in',('draft','confirm'))]"/>
<field name="nb_register"/>
<field name="user_id" select="1"/>
<group colspan="2">
<field name="user_id" select="1"/>
<button name="remind_user" string="Send Reminder" states="open,pending" type="object" colspan="2"/>
</group>
<field name="partner_id" required="1" select="1" on_change="onchange_partner_id(partner_id,event_id)" />
<field name="partner_invoice_id" on_change="onchange_partner_invoice_id(event_id, partner_invoice_id)"/>
<field name="unit_price" select="2"/>
@@ -213,7 +216,6 @@
<field name="contact_id" select="2" on_change="onchange_contact_id(contact_id, partner_id)" /><newline/>
<field name="email_from" select="2"/>
<button name="remind_partner" string="Send Reminder" states="open,pending" type="object" colspan="2"/>
<button name="remind_user" string="Send Reminder" states="open,pending" type="object" colspan="2"/>
<newline/>
<separator string="Badge" colspan="4"/>
<field name="badge_title" select="2"/>
+1 -2
View File
@@ -45,7 +45,7 @@ def _confirm(self, cr, uid, data, context):
current_registration = registration_obj.browse(cr, uid, [data['id']])[0]
total_confirmed = current_registration.event_id.register_current + current_registration.nb_register
if total_confirmed <= current_registration.event_id.register_max:
if total_confirmed <= current_registration.event_id.register_max or current_registration.event_id.register_max == 0:
return 'confirm'
return 'split'
@@ -53,7 +53,6 @@ def _confirm(self, cr, uid, data, context):
def _check_confirm(self, cr, uid, data, context):
registration_obj = pooler.get_pool(cr.dbname).get('event.registration')
registration_obj.write(cr, uid, [data['id']], {'state':'open',})
reg = registration_obj.browse(cr, uid, [data['id']])
registration_obj._history(cr, uid, reg, 'Open', history=True)
registration_obj.mail_user(cr,uid,[data['id']])
return {}