summaryrefslogtreecommitdiff
path: root/addons/website_crm_partner_assign/controllers/main.py
diff options
context:
space:
mode:
authorJeremy Kersten <jke@odoo.com>2017-01-31 16:02:14 +0100
committerJeremy Kersten <jke@odoo.com>2017-02-01 09:05:45 +0100
commitce584f756af0040df6f4817638d50d1cd9ebfb66 (patch)
tree99f8f7fd8b53609cd5ece4236a8bafa23c7fcb3a /addons/website_crm_partner_assign/controllers/main.py
parent3d0cc2d6d2dbd567cfaa93de4cb90787d0c07c9e (diff)
[FIX] website_crm_Partner_assign: avoid open lead in opp form and vice-versa
Diffstat (limited to 'addons/website_crm_partner_assign/controllers/main.py')
-rw-r--r--addons/website_crm_partner_assign/controllers/main.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/addons/website_crm_partner_assign/controllers/main.py b/addons/website_crm_partner_assign/controllers/main.py
index 46267ee55c4..3d71c31b300 100644
--- a/addons/website_crm_partner_assign/controllers/main.py
+++ b/addons/website_crm_partner_assign/controllers/main.py
@@ -5,6 +5,7 @@ import datetime
import werkzeug
from collections import OrderedDict
+from werkzeug.exceptions import NotFound
from odoo import fields
from odoo import http
@@ -149,16 +150,21 @@ class WebsiteAccount(website_account):
})
return request.render("website_crm_partner_assign.portal_my_opportunities", values)
- @http.route(['/my/lead/<model("crm.lead"):lead>'], type='http', auth="user", website=True)
- def portal_my_lead(self, lead=None, **kw):
+ @http.route(['''/my/lead/<model('crm.lead', "[('type','=', 'lead')]"):lead>'''], type='http', auth="user", website=True)
+ def portal_my_lead(self, lead, **kw):
+ if lead.type != 'lead':
+ raise NotFound()
return request.render("website_crm_partner_assign.portal_my_lead", {'lead': lead})
- @http.route(['/my/opportunity/<model("crm.lead"):lead>'], type='http', auth="user", website=True)
- def portal_my_opportunity(self, lead=None, **kw):
+ @http.route(['''/my/opportunity/<model('crm.lead', "[('type','=', 'opportunity')]"):opp>'''], type='http', auth="user", website=True)
+ def portal_my_opportunity(self, opp, **kw):
+ if opp.type != 'opportunity':
+ raise NotFound()
+
return request.render(
"website_crm_partner_assign.portal_my_opportunity", {
- 'opportunity': lead,
- 'user_activity': lead.activity_ids.filtered(lambda activity: activity.user_id == request.env.user)[:1],
+ 'opportunity': opp,
+ 'user_activity': opp.activity_ids.filtered(lambda activity: activity.user_id == request.env.user)[:1],
'stages': request.env['crm.stage'].search([('probability', '!=', '100')], order='sequence desc'),
'activity_types': request.env['mail.activity.type'].sudo().search([]),
'states': request.env['res.country.state'].sudo().search([]),