summaryrefslogtreecommitdiff
path: root/addons/website_customer/controllers
diff options
context:
space:
mode:
authorAntony Lesuisse <al@openerp.com>2014-05-15 00:43:38 +0200
committerAntony Lesuisse <al@openerp.com>2014-05-15 00:43:38 +0200
commit1501c7e64b74e5a9afd3c8076d9febce3a1781ad (patch)
treebecc6a145ae1294a4ab91ec0b90790d0ba858050 /addons/website_customer/controllers
parentcfefd04871487ff9b4714d0714f6f9702c440674 (diff)
[FIX] website_partner remove controller, add support for negative ids
Diffstat (limited to 'addons/website_customer/controllers')
-rw-r--r--addons/website_customer/controllers/main.py23
1 files changed, 14 insertions, 9 deletions
diff --git a/addons/website_customer/controllers/main.py b/addons/website_customer/controllers/main.py
index 2caf8c74373..09db80c8908 100644
--- a/addons/website_customer/controllers/main.py
+++ b/addons/website_customer/controllers/main.py
@@ -1,10 +1,11 @@
# -*- coding: utf-8 -*-
+import re
import openerp
+from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.tools.translate import _
from openerp.addons.web.http import request
-from openerp.addons.website_partner.controllers import main as website_partner
import werkzeug.urls
class WebsiteCustomer(http.Controller):
@@ -80,11 +81,15 @@ class WebsiteCustomer(http.Controller):
}
return request.website.render("website_customer.index", values)
- @http.route(['/customers/<int:partner_id>', '/customers/<partner_name>-<int:partner_id>'], type='http', auth="public", website=True, multilang=True)
- def customer(self, partner_id, partner_name='', **post):
- values = website_partner.get_partner_template_value(partner_id)
- if not values:
- return self.customers(**post)
-
- values['main_object'] = values['partner']
- return request.website.render("website_customer.details", values)
+ # Do not use semantic controller due to SUPERUSER_ID
+ @http.route(['/customers/<partner_id>'], type='http', auth="public", website=True, multilang=True)
+ def partners_detail(self, partner_id, **post):
+ mo = re.search('-([-0-9]+)$', str(partner_id))
+ if mo:
+ partner_id = int(mo.group(1))
+ partner = request.registry['res.partner'].browse(request.cr, SUPERUSER_ID, partner_id, context=request.context)
+ if partner.exists() and partner.website_published:
+ values = {}
+ values['main_object'] = values['partner'] = partner
+ return request.website.render("website_customer.details", values)
+ return self.customers(**post)