*: test_website, website, website_blog, website_event, website_forum, website_sale, website_slides Reverts this refactoring because it breaks multi-tenancy: if several databases run on the same server and different modules are installed in each database, the global variable becomes wrongly populated. Steps to reproduce: On runbot: - Go to the `-base` URL or simply select the `base` DB - Drag & Drop the search snippet (and let it set to "Search in Everything") - Try to use the snippet -> Crash on unknown model On Odoo.com saas DB: - Drag & Drop the search snippet (and let it set to "Search in Everything") - Try to use the snippet -> Crash on unknown model (unless you installed each and every module related to the search snippet) Locally: - odoo-bin -d first -i website --stop-after-init - odoo-bin -d second -i website_blog --stop-after-init - odoo-bin -d first,second - Try to use a search bar on "first" database (using "Search in Everything") => it tries to access the blog models. Revert of PR: #98423 opw-3045092 closes odoo/odoo#105077 X-original-commit: 5806f71af1b6f44aac063f7e504be736300f699d Related: odoo/enterprise#33669 Signed-off-by: Romain Derie (rde) <rde@odoo.com> Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
25 lines
1.0 KiB
Python
25 lines
1.0 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import fields, models, _
|
|
from odoo.addons.http_routing.models.ir_http import url_for
|
|
|
|
|
|
class Website(models.Model):
|
|
_inherit = "website"
|
|
|
|
website_slide_google_app_key = fields.Char('Google Doc Key')
|
|
|
|
def get_suggested_controllers(self):
|
|
suggested_controllers = super(Website, self).get_suggested_controllers()
|
|
suggested_controllers.append((_('Courses'), url_for('/slides'), 'website_slides'))
|
|
return suggested_controllers
|
|
|
|
def _search_get_details(self, search_type, order, options):
|
|
result = super()._search_get_details(search_type, order, options)
|
|
if search_type in ['slides', 'slide_channels_only', 'all']:
|
|
result.append(self.env['slide.channel']._search_get_detail(self, order, options))
|
|
if search_type in ['slides', 'slides_only', 'all']:
|
|
result.append(self.env['slide.slide']._search_get_detail(self, order, options))
|
|
return result
|