diff --git a/controllers/kalachakra.py b/controllers/kalachakra.py index efb08b8..14efede 100644 --- a/controllers/kalachakra.py +++ b/controllers/kalachakra.py @@ -13,16 +13,77 @@ import babel.dates from odoo.addons.web.controllers.main import ensure_db, Home from odoo.addons.website_event.controllers.main import WebsiteEventController from odoo.addons.payment.controllers.portal import PaymentProcessing -from odoo.addons.sale.controllers.portal import CustomerPortal +#from odoo.addons.sale.controllers.portal import CustomerPortal +from odoo.addons.account.controllers.portal import CustomerPortal from odoo.tools.misc import formatLang, format_date as odoo_format_date, get_lang from odoo.addons.portal.controllers.portal import pager as portal_pager, get_records_pager from odoo.addons.auth_signup.models.res_users import SignupError from odoo.addons.auth_signup.controllers.main import AuthSignupHome import json +from collections import OrderedDict _logger = logging.getLogger(__name__) - +# class Kalachakra_PortalAccount(CustomerPortal): +# @http.route(['/my/invoices', '/my/invoices/page/'], type='http', auth="user", website=True) +# def kalachakra_portal_my_invoices(self, page=1, date_begin=None, date_end=None, sortby=None, filterby=None, **kw): +# values = self._prepare_portal_layout_values() +# AccountInvoice = request.env['account.move'] + +# domain = [('move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))] + +# searchbar_sortings = { +# 'date': {'label': _('Date'), 'order': 'invoice_date desc'}, +# 'duedate': {'label': _('Due Date'), 'order': 'invoice_date_due desc'}, +# 'name': {'label': _('Reference'), 'order': 'name desc'}, +# 'state': {'label': _('Status'), 'order': 'state'}, +# } +# # default sort by order +# if not sortby: +# sortby = 'date' +# order = searchbar_sortings[sortby]['order'] + +# searchbar_filters = { +# 'all': {'label': _('All'), 'domain': [('move_type', 'in', ['in_invoice', 'out_invoice'])]}, +# 'invoices': {'label': _('Invoices'), 'domain': [('move_type', '=', 'out_invoice')]}, +# 'bills': {'label': _('Bills'), 'domain': [('move_type', '=', 'in_invoice')]}, +# } +# # default filter by value +# if not filterby: +# filterby = 'all' +# domain += searchbar_filters[filterby]['domain'] + +# if date_begin and date_end: +# domain += [('create_date', '>', date_begin), ('create_date', '<=', date_end)] + +# # count for pager +# invoice_count = AccountInvoice.search_count(domain) + +# # pager +# pager = portal_pager( +# url="/my/invoices", +# url_args={'date_begin': date_begin, 'date_end': date_end, 'sortby': sortby}, +# total=invoice_count, +# page=page, +# step=self._items_per_page +# ) +# # content according to pager and archive selected +# invoices = AccountInvoice.search(domain, order=order, limit=self._items_per_page, offset=pager['offset']) + +# request.session['my_invoices_history'] = invoices.ids[:100] + +# values.update({ +# 'date': date_begin, +# 'invoices': invoices, +# 'page_name': 'invoice', +# 'pager': pager, +# 'default_url': '/my/invoices', +# 'searchbar_sortings': searchbar_sortings, +# 'sortby': sortby, +# 'searchbar_filters': OrderedDict(sorted(searchbar_filters.items())), +# 'filterby':filterby, +# }) +# return request.render("account.portal_my_invoices", values) class KalaAuthSignupHome(Home): @http.route('/web/signup', type='http', auth='public', website=True, sitemap=False) diff --git a/models/booking_event_registration.py b/models/booking_event_registration.py index ff5c3e5..fe59184 100644 --- a/models/booking_event_registration.py +++ b/models/booking_event_registration.py @@ -324,7 +324,7 @@ class EventRegistration(models.Model): vals['partner_id']=int(reg.partner_id) vals['invoice_date']=datetime.now() - + #mode de paiement CB par defaut si frontoffice if not backoffice: electronic_method=self.env['account.payment.method'].sudo().search([('code','=','electronic')],limit=1) @@ -345,7 +345,9 @@ class EventRegistration(models.Model): vals['move_type']='out_invoice' vals['state']='draft' + invoice=self.env['account.move'].sudo().create(vals) + invoice.state='posted' invoice.name='REC'+str(invoice.id) invoice.payment_reference=invoice.name @@ -451,6 +453,9 @@ class EventRegistration(models.Model): else: reg.end_of_stay_invoice_id=invoice.id + user=self.env['res.users'].search([('email','ilike',reg.partner_id.email)]) + invoice.invoice_user_id=user.id + invoice.user_id=user.id return invoice @@ -487,6 +492,9 @@ class EventRegistration(models.Model): invoice.state='posted' invoice.name='REC'+str(invoice.id) invoice.payment_reference=invoice.name + user=self.env['res.users'].search([('email','ilike',reg.partner_id.email)]) + invoice.invoice_user_id=user.id + invoice.user_id=user.id vals={} account_credit=self.env['account.account'].sudo().search([('code','=','707100')]) @@ -540,6 +548,9 @@ class EventRegistration(models.Model): invoice.state='posted' invoice.name='REC'+str(invoice.id) invoice.payment_reference=invoice.name + user=self.env['res.users'].search([('email','ilike',reg.partner_id.email)]) + invoice.invoice_user_id=user.id + invoice.user_id=user.id vals={} diff --git a/views/event_templates_list.xml b/views/event_templates_list.xml index 45d7eaa..c4fc689 100644 --- a/views/event_templates_list.xml +++ b/views/event_templates_list.xml @@ -210,7 +210,16 @@ + +

sur zoom uniquement

+
+ +
+ +
+ + diff --git a/views/membership.xml b/views/membership.xml index 2453375..4a0100c 100644 --- a/views/membership.xml +++ b/views/membership.xml @@ -25,13 +25,9 @@
- + - - diff --git a/views/portal.xml b/views/portal.xml index 81ba9af..81c8fd7 100644 --- a/views/portal.xml +++ b/views/portal.xml @@ -9,4 +9,14 @@ + + \ No newline at end of file