diff --git a/addons/website/controllers/main.py b/addons/website/controllers/main.py index 0171429dd1b..01acd1f6ba7 100644 --- a/addons/website/controllers/main.py +++ b/addons/website/controllers/main.py @@ -99,6 +99,22 @@ class Website(openerp.addons.web.controllers.main.Home): return request.registry['ir.http']._handle_exception(e, 404) return request.website.render(page, values) + @website.route('/website/reset_templates', type='http', auth='user', methods=['POST']) + def reset_template(self, templates, redirect='/'): + templates = request.httprequest.form.getlist('templates') + modules_to_update = [] + for temp_id in templates: + view = request.registry['ir.ui.view'].browse(request.cr, request.uid, int(temp_id), context=request.context) + view.model_data_id.write({ + 'noupdate': False + }) + if view.model_data_id.module not in modules_to_update: + modules_to_update.append(view.model_data_id.module) + module_obj = request.registry['ir.module.module'] + module_ids = module_obj.search(request.cr, request.uid, [('name', 'in', modules_to_update)], context=request.context) + module_obj.button_immediate_upgrade(request.cr, request.uid, module_ids, context=request.context) + return request.redirect(redirect) + @website.route('/website/customize_template_toggle', type='json', auth='user') def customize_template_set(self, view_id): view_obj = request.registry.get("ir.ui.view") diff --git a/addons/website/models/ir_http.py b/addons/website/models/ir_http.py index 765b7e1cc33..a550ab4fcbc 100644 --- a/addons/website/models/ir_http.py +++ b/addons/website/models/ir_http.py @@ -99,6 +99,11 @@ class ir_http(orm.AbstractModel): ) if code == 500: logger.error("500 Internal Server Error:\n\n%s", values['traceback']) + if values['qweb_template']: + view = request.registry.get("ir.ui.view") + views = view._views_get(request.cr, request.uid, values['qweb_template'], request.context) + to_reset = [view for view in views if view.model_data_id.noupdate == True] + values['views'] = to_reset elif code == 403: logger.warn("403 Forbidden:\n\n%s", values['traceback']) diff --git a/addons/website/static/src/css/website.css b/addons/website/static/src/css/website.css index 4d75ef6ef51..bf261cf905a 100644 --- a/addons/website/static/src/css/website.css +++ b/addons/website/static/src/css/website.css @@ -1,4 +1,3 @@ -@charset "utf-8"; /* THIS CSS FILE IS FOR WEBSITE THEMING CUSTOMIZATION ONLY * * css for editor buttons, openerp widget included in the website and other @@ -504,3 +503,53 @@ address .fa.fa-file-text-o { span[data-oe-type="monetary"] { white-space: nowrap; } + +.oe_template_fallback { + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} + +.bs-callout { + margin: 20px 0; + padding: 20px; + border-left: 3px solid #eeeeee; +} + +.bs-callout h4 { + margin-top: 0; + margin-bottom: 5px; +} + +.bs-callout p:last-child { + margin-bottom: 0; +} + +.bs-callout-danger { + background-color: #fdf7f7; + border-color: #eed3d7; +} + +.bs-callout-danger h4 { + color: #b94a48; +} + +.bs-callout-warning { + background-color: #faf8f0; + border-color: #faebcc; +} + +.bs-callout-warning h4 { + color: #8a6d3b; +} + +.bs-callout-info { + background-color: #f4f8fa; + border-color: #bce8f1; +} + +.bs-callout-info h4 { + color: #34789a; +} diff --git a/addons/website/static/src/css/website.sass b/addons/website/static/src/css/website.sass index babeee577a7..ccd11d3396f 100644 --- a/addons/website/static/src/css/website.sass +++ b/addons/website/static/src/css/website.sass @@ -377,4 +377,35 @@ address margin-right: 1px span[data-oe-type="monetary"] - white-space: nowrap \ No newline at end of file + white-space: nowrap + +.oe_template_fallback + @include column-count(3) + +// ---- Callouts from bootstrap doc ---- {{{ +.bs-callout + margin: 20px 0 + padding: 20px + border-left: 3px solid #eee +.bs-callout h4 + margin-top: 0 + margin-bottom: 5px +.bs-callout p:last-child + margin-bottom: 0 + +.bs-callout-danger + background-color: #fdf7f7 + border-color: #eed3d7 +.bs-callout-danger h4 + color: #b94a48 +.bs-callout-warning + background-color: #faf8f0 + border-color: #faebcc +.bs-callout-warning h4 + color: #8a6d3b +.bs-callout-info + background-color: #f4f8fa + border-color: #bce8f1 +.bs-callout-info h4 + color: #34789a +// }}} diff --git a/addons/website/views/website_templates.xml b/addons/website/views/website_templates.xml index be7d4c65a85..5ea7465ef9f 100644 --- a/addons/website/views/website_templates.xml +++ b/addons/website/views/website_templates.xml @@ -458,6 +458,25 @@ + + + + + + Internal Server Error + + + + + + + +
+ +
+
+

:

+
-