import time
from datetime import datetime, date
from dateutil.relativedelta import relativedelta
+from openerp.tools.translate import _
class Partner(osv.osv):
print ("DEV: [_membership_date] [associate] date_from: %s" % str(res[partner.id]['membership_start']))
else:
print ("DEV: [_membership_date] date_from: %s" % str(res[partner.id]['membership_start']))
-
+
if name == 'membership_stop':
line_id1 = member_line_obj.search(cr, uid, [('partner', '=', partner_id),('date_cancel','=',False)],
limit=1, order='date_to desc', context=context)
print ("DEV: [_membership_date] [associate] date_to: %s" % str(res[partner.id]['membership_stop']))
else:
print ("DEV: [_membership_date] date_to: %s" % str(res[partner.id]['membership_stop']))
-
+
if name == 'membership_cancel':
if partner.membership_state == 'canceled':
line_id2 = member_line_obj.search(cr, uid, [('partner', '=', partner.id)], limit=1, order='date_cancel', context=context)
date_from = member_line.date_from
date_to = member_line.date_to
if line.product_id.membership_date2date:
- date_from = context['date_from'] and datetime.strptime(context['date_from'], "%Y-%m-%d") or date.today()
+ date_from = ('date_from' in context
+ and context['date_from']
+ and datetime.strptime(context['date_from'], "%Y-%m-%d")
+ or date.today())
date_to = date_from + relativedelta(months = +12) # TODO: parameterize this delta?
date_from = date_from.strftime("%Y-%m-%d")
date_to = date_to .strftime("%Y-%m-%d")
'date_to': date_to,
'account_invoice_line': line.id,
}, context=context)
+ elif line.product_id.membership_grouped and not line.invoice_id.partner_id.associate_members:
+ raise osv.except_osv(_('Error!!!'), _('You try to invoice grouped membership product to a partner who hasn\'t associated partners.'))
#Define member ident if it's necessary
for i in partners:
if not i.member_ident: