Merge branch '7.0'
[burette/remembership.git] / remembership.py
index ad6438f..5560fbf 100644 (file)
@@ -2,7 +2,7 @@
 ##############################################################################
 #
 #    Remembership module for OpenERP, Membership module enhancement and bug fixes
-#    Copyright (C) 2012-2013 L'Heureux Cyclage (<http://www.heureux-cyclage.org>)
+#    Copyright (C) 2012-2018 L'Heureux Cyclage (<http://www.heureux-cyclage.org>)
 #
 #    This file is a part of Remembership
 #
@@ -21,8 +21,7 @@
 #
 ##############################################################################
 
-from openerp.osv import osv
-from openerp.osv import fields
+from openerp.osv import fields, osv
 import time
 from datetime import datetime, date
 from dateutil.relativedelta import relativedelta
@@ -51,7 +50,7 @@ class Partner(osv.osv):
                  'membership_cancel': False
             }
             if name == 'membership_start':
-                line_id = member_line_obj.search(cr, uid, [('partner', '=', partner_id),('date_cancel','=',False)],
+                line_id = member_line_obj.search(cr, uid, [('partner', '=', partner_id),('state','!=','canceled')],
                             limit=1, order='date_from', context=context)
                 if line_id:
                     res[partner.id]['membership_start'] = member_line_obj.read(cr, uid, line_id[0],
@@ -62,7 +61,7 @@ class Partner(osv.osv):
                         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)],
+                line_id1 = member_line_obj.search(cr, uid, [('partner', '=', partner_id),('state','!=','canceled')],
                             limit=1, order='date_to desc', context=context)
                 if line_id1:
                     res[partner.id]['membership_stop'] = member_line_obj.read(cr, uid, line_id1[0],
@@ -215,11 +214,18 @@ class Partner(osv.osv):
         ids = partner_obj.search(cr, uid, [('membership_state', '=', 'paid'), ('membership_stop', '<', today)], context=None)
         self.write(cr, uid, ids, {'membership_state': 'old'}, context=None)
 
+    def copy(self, cr, uid, id, default=None, context=None):
+        if default is None:
+            default = {}
+        default['member_ident'] = None
+        return super(Partner, self).copy(cr, uid, id, default, context)
+
+
 Partner()
 
 
 class Product(osv.osv):
-    _inherit = 'product.product'
+    _inherit = 'product.template'
 
     _columns = {
         'membership_grouped': fields.boolean('Grouped membership product', help='Check if it\'s a grouped membership product.'),