From 6481ef3952d29f05d4916dcfb91163d75b964aae Mon Sep 17 00:00:00 2001 From: houssine Date: Thu, 10 Oct 2019 11:52:08 +0200 Subject: [PATCH 1/4] [IMP] make some fields non required when logged As the user can't add them in his profile it make subscription non possible when those fields are missing --- easy_my_coop/controllers/main.py | 33 ++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/easy_my_coop/controllers/main.py b/easy_my_coop/controllers/main.py index 4036966..32677af 100644 --- a/easy_my_coop/controllers/main.py +++ b/easy_my_coop/controllers/main.py @@ -6,6 +6,7 @@ import re from openerp import http from openerp.http import request from openerp.tools.translate import _ +from __builtin__ import list # Only use for behavior, don't stock it _TECHNICAL = ['view_from', 'view_callback'] @@ -198,6 +199,11 @@ class WebsiteSubscription(http.Controller): product_id = kwargs.get("share_product_id") return prod_obj.sudo().browse(int(product_id)).product_variant_ids[0] + def remove_field_from_list(self, required_fields, field): + if required_fields.count(field) > 0: + required_fields.remove(field) + return required_fields + def validation(self, kwargs, logged, values, post_file): user_obj = request.env['res.users'] sub_req_obj = request.env['subscription.request'] @@ -223,6 +229,12 @@ class WebsiteSubscription(http.Controller): # Check that required field from model subscription_request exists required_fields = sub_req_obj.sudo().get_required_field() + if logged: + # these fields are readonly when logged + # we want to ease the process if user was a subscriber + self.remove_field_from_list(required_fields, 'iban') + self.remove_field_from_list(required_fields, 'birthdate') + error = set(field for field in required_fields if not values.get(field)) #noqa if error: @@ -262,13 +274,14 @@ class WebsiteSubscription(http.Controller): return request.website.render(redirect, values) iban = kwargs.get("iban") - valid = sub_req_obj.check_iban(iban) + if iban: + valid = sub_req_obj.check_iban(iban) - if not valid: - values = self.fill_values(values, is_company, logged) - values["error_msg"] = _("You iban account number" - "is not valid") - return request.website.render(redirect, values) + if not valid: + values = self.fill_values(values, is_company, logged) + values["error_msg"] = _("You iban account number " + "is not valid") + return request.website.render(redirect, values) # check the subscription's amount max_amount = company.subscription_maximum_amount @@ -365,8 +378,12 @@ class WebsiteSubscription(http.Controller): values["name"] = firstname + " " + lastname values["lastname"] = lastname values["firstname"] = firstname - values["birthdate"] = datetime.strptime(kwargs.get("birthdate"), - "%d/%m/%Y").date() + birthdate = kwargs.get("birthdate") + if birthdate: + values["birthdate"] = datetime.strptime(birthdate, + ("%d/%m/%Y")).date() + else: + values["birthdate"] = False values["source"] = "website" values["share_product_id"] = self.get_selected_share(kwargs).id From 8a631f53ed5f4c327545c065b1faa97ebdc62afa Mon Sep 17 00:00:00 2001 From: houssine Date: Thu, 10 Oct 2019 12:31:22 +0200 Subject: [PATCH 2/4] [IMP] put website of CIE --- easy_my_coop_website_document/__openerp__.py | 2 +- easy_my_coop_website_portal/__openerp__.py | 2 +- easy_my_coop_website_taxshelter/__openerp__.py | 2 +- website_portal_extend/__openerp__.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/easy_my_coop_website_document/__openerp__.py b/easy_my_coop_website_document/__openerp__.py index 4e4f8e2..7389cd1 100644 --- a/easy_my_coop_website_document/__openerp__.py +++ b/easy_my_coop_website_document/__openerp__.py @@ -15,7 +15,7 @@ 'author': 'Rémy Taymans', 'license': 'AGPL-3', 'version': '9.0.1.0', - 'website': "https://github.com/houssine78/vertical-cooperative", + 'website': "www.coopiteasy.be", 'category': 'Website, Cooperative Management', diff --git a/easy_my_coop_website_portal/__openerp__.py b/easy_my_coop_website_portal/__openerp__.py index 3a282f0..3ff6ef5 100644 --- a/easy_my_coop_website_portal/__openerp__.py +++ b/easy_my_coop_website_portal/__openerp__.py @@ -15,7 +15,7 @@ 'author': 'Rémy Taymans', 'license': 'AGPL-3', 'version': '9.0.1.0', - 'website': "https://github.com/houssine78/vertical-cooperative", + 'website': "www.coopiteasy.be", 'category': 'Website, Cooperative Management', diff --git a/easy_my_coop_website_taxshelter/__openerp__.py b/easy_my_coop_website_taxshelter/__openerp__.py index 4f94c8d..5194044 100644 --- a/easy_my_coop_website_taxshelter/__openerp__.py +++ b/easy_my_coop_website_taxshelter/__openerp__.py @@ -15,7 +15,7 @@ 'author': 'Rémy Taymans', 'license': 'AGPL-3', 'version': '9.0.1.0', - 'website': "https://github.com/houssine78/vertical-cooperative", + 'website': "www.coopiteasy.be", 'category': 'Website, Cooperative Management', diff --git a/website_portal_extend/__openerp__.py b/website_portal_extend/__openerp__.py index 507afb6..8fa5e41 100644 --- a/website_portal_extend/__openerp__.py +++ b/website_portal_extend/__openerp__.py @@ -16,7 +16,7 @@ 'author': 'Rémy Taymans', 'license': 'AGPL-3', 'version': '9.0.1.0', - 'website': "https://github.com/houssine78/vertical-cooperative", + 'website': "www.coopiteasy.be", 'category': 'Website', From 6e50f34afd3669a28a66a5451922bc65b8db57f6 Mon Sep 17 00:00:00 2001 From: houssine Date: Thu, 10 Oct 2019 14:13:48 +0200 Subject: [PATCH 3/4] [FIX] fix by pass control when iban not given --- easy_my_coop/models/coop.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easy_my_coop/models/coop.py b/easy_my_coop/models/coop.py index 82014a0..20a0e87 100644 --- a/easy_my_coop/models/coop.py +++ b/easy_my_coop/models/coop.py @@ -107,7 +107,9 @@ class subscription_request(models.Model): @api.depends('iban', 'skip_control_ng', 'is_company') def _validated_lines(self): for sub_request in self: - validated = self.check_iban(sub_request.iban) + validated = (self.check_iban(sub_request.iban) + or sub_request.skip_control_ng + ) sub_request.validated = validated @api.multi From e6d669c154f898341606a3e6d0be2221e4ae4c72 Mon Sep 17 00:00:00 2001 From: Houssine BAKKALI Date: Thu, 10 Oct 2019 16:53:05 +0200 Subject: [PATCH 4/4] [PEP8] remove unused import --- easy_my_coop/controllers/main.py | 1 - 1 file changed, 1 deletion(-) diff --git a/easy_my_coop/controllers/main.py b/easy_my_coop/controllers/main.py index 32677af..3496083 100644 --- a/easy_my_coop/controllers/main.py +++ b/easy_my_coop/controllers/main.py @@ -6,7 +6,6 @@ import re from openerp import http from openerp.http import request from openerp.tools.translate import _ -from __builtin__ import list # Only use for behavior, don't stock it _TECHNICAL = ['view_from', 'view_callback']