[FIX] membership, website_membership: paid but expired
A paid membership is expired if the validity period (period between date_from and date_to) doesn't match with the current date. closes #8505 opw-648627
This commit is contained in:
parent
e03d64cfaa
commit
5ac77c943b
|
@ -231,7 +231,7 @@ class Partner(osv.osv):
|
|||
s = 4
|
||||
if partner_data.member_lines:
|
||||
for mline in partner_data.member_lines:
|
||||
if mline.date_to >= today:
|
||||
if mline.date_to >= today and mline.date_from < today:
|
||||
if mline.account_invoice_line and mline.account_invoice_line.invoice_id:
|
||||
mstate = mline.account_invoice_line.invoice_id.state
|
||||
if mstate == 'paid':
|
||||
|
|
|
@ -3,8 +3,10 @@ from openerp import SUPERUSER_ID
|
|||
from openerp.addons.web import http
|
||||
from openerp.addons.web.http import request
|
||||
from openerp.addons.website.models.website import unslug
|
||||
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT
|
||||
from openerp.tools.translate import _
|
||||
|
||||
import time
|
||||
import werkzeug.urls
|
||||
|
||||
|
||||
|
@ -40,7 +42,11 @@ class WebsiteMembership(http.Controller):
|
|||
base_line_domain = [("partner.website_published", "=", True), ('state', 'in', ['free', 'paid'])]
|
||||
if membership_id and membership_id != 'free':
|
||||
membership_id = int(membership_id)
|
||||
base_line_domain.append(('membership_id', '=', membership_id))
|
||||
today = time.strftime(DEFAULT_SERVER_DATE_FORMAT)
|
||||
base_line_domain += [
|
||||
('membership_id', '=', membership_id), ('date_to', '>=', today),
|
||||
('date_from', '<', today), ('state', '=', 'paid')
|
||||
]
|
||||
membership = product_obj.browse(cr, uid, membership_id, context=context)
|
||||
else:
|
||||
membership = None
|
||||
|
|
Loading…
Reference in New Issue