summaryrefslogtreecommitdiff
path: root/addons/website_event_track/controllers
diff options
context:
space:
mode:
authorJeremy Kersten <jke@odoo.com>2017-09-27 19:23:05 +0200
committerJeremy Kersten <jke@odoo.com>2017-09-27 21:33:49 +0200
commit1b52b00d2aa96b9360d50a0f0960f1febb5e607e (patch)
tree2e098cf6268b0c2fe6d2844e94b45cc801ce4093 /addons/website_event_track/controllers
parent3d0d8b89d1e7a32a5ef8aa0f40d41a4fb5260c1c (diff)
[IMP] website*: clean sitemap + add method to declare sitemap function.
Don't add useless routes or route that will return 404. Improve generate function from ModelConverter to have a better management of query_string. Now we have an helper sitemap_qs2dom that will analyse the current route and check if query string is plausible and if yes, generate a domain, when the query_string don't seems to match the route, we return a Falsy domain. Before this commit, if qs was /product/ipad, enumerate_page check for each modelconverter of the route a name ilike '/product/ipad'. Now we check all routes that contains product and one converter that match ipad or routes that contains ipad and one converter that match product. This commit a new way to declare the sitemap for a route. def sitemap_xx(env, rule, query_string): yield {'loc': '/my_url'} @http.route(..., sitemap=sitemap_xx) In this case, only the loc returned by this function will be in the sitemap for all rules. You can pass sitempa=False, if you don't want that route are into the sitemap
Diffstat (limited to 'addons/website_event_track/controllers')
-rw-r--r--addons/website_event_track/controllers/main.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/addons/website_event_track/controllers/main.py b/addons/website_event_track/controllers/main.py
index f11aa0bea13..f2ae337deda 100644
--- a/addons/website_event_track/controllers/main.py
+++ b/addons/website_event_track/controllers/main.py
@@ -65,7 +65,7 @@ class WebsiteEventTrackController(http.Controller):
'dates': dates
}
- @http.route(['''/event/<model("event.event", "[('website_track','=',1)]"):event>/agenda'''], type='http', auth="public", website=True)
+ @http.route(['''/event/<model("event.event"):event>/agenda'''], type='http', auth="public", website=True, sitemap=False)
def event_agenda(self, event, tag=None, **post):
days_tracks = collections.defaultdict(lambda: [])
for track in event.track_ids.sorted(lambda track: (track.date or '', bool(track.location_id))):
@@ -87,9 +87,9 @@ class WebsiteEventTrackController(http.Controller):
})
@http.route([
- '''/event/<model("event.event", "[('website_track','=',1)]"):event>/track''',
- '''/event/<model("event.event", "[('website_track','=',1)]"):event>/track/tag/<model("event.track.tag"):tag>'''
- ], type='http', auth="public", website=True)
+ '''/event/<model("event.event"):event>/track''',
+ '''/event/<model("event.event"):event>/track/tag/<model("event.track.tag"):tag>'''
+ ], type='http', auth="public", website=True, sitemap=False)
def event_tracks(self, event, tag=None, **post):
searches = {}
if tag:
@@ -108,7 +108,7 @@ class WebsiteEventTrackController(http.Controller):
}
return request.render("website_event_track.tracks", values)
- @http.route(['''/event/<model("event.event", "[('website_track_proposal','=',1)]"):event>/track_proposal'''], type='http', auth="public", website=True)
+ @http.route(['''/event/<model("event.event"):event>/track_proposal'''], type='http', auth="public", website=True, sitemap=False)
def event_track_proposal(self, event, **post):
return request.render("website_event_track.event_track_proposal", {'event': event})