[IMP] website: better error message (401, 404, 500)
bzr revid: chm@openerp.com-20130814151122-v1gw1l0wmg6c4vv8
This commit is contained in:
parent
30f643c641
commit
9449a20293
|
@ -382,6 +382,36 @@
|
||||||
</t>
|
</t>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<template id="500">
|
||||||
|
<t t-call="website.layout">
|
||||||
|
<div class="container">
|
||||||
|
<h1 class="mt32">500: Internal Server Error!</h1>
|
||||||
|
<pre t-esc="traceback"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="401">
|
||||||
|
<t t-call="website.layout">
|
||||||
|
<div class="container">
|
||||||
|
<h1 class="mt32">401: Unauthorized Access!</h1>
|
||||||
|
<p>
|
||||||
|
The page you were looking for could not be
|
||||||
|
authorized.
|
||||||
|
</p><p>
|
||||||
|
Maybe you were looking for one of these
|
||||||
|
popular pages ?
|
||||||
|
</p>
|
||||||
|
<pre class="hidden" t-esc="error"/>
|
||||||
|
<ul>
|
||||||
|
<li><a href="/">Homepage</a></li>
|
||||||
|
<li><a href="/">Contact Us</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<template id="contactus" name="Contact us">
|
<template id="contactus" name="Contact us">
|
||||||
<t t-call="website.layout">
|
<t t-call="website.layout">
|
||||||
<t t-set="title">Contact us - <t t-raw="res_company.name"/></t>
|
<t t-set="title">Contact us - <t t-raw="res_company.name"/></t>
|
||||||
|
|
|
@ -2,12 +2,16 @@
|
||||||
import simplejson
|
import simplejson
|
||||||
|
|
||||||
import openerp
|
import openerp
|
||||||
from openerp.osv import osv
|
from openerp.osv import osv, orm
|
||||||
from openerp.addons.web import http
|
from openerp.addons.web import http
|
||||||
from openerp.addons.web.controllers import main
|
from openerp.addons.web.controllers import main
|
||||||
from openerp.addons.web.http import request
|
from openerp.addons.web.http import request
|
||||||
import urllib
|
import urllib
|
||||||
import math
|
import math
|
||||||
|
import traceback
|
||||||
|
|
||||||
|
import logging
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
def auth_method_public():
|
def auth_method_public():
|
||||||
|
@ -68,7 +72,22 @@ class website(osv.osv):
|
||||||
context = {
|
context = {
|
||||||
'inherit_branding': values.get('editable', False),
|
'inherit_branding': values.get('editable', False),
|
||||||
}
|
}
|
||||||
return request.registry.get("ir.ui.view").render(request.cr, request.uid, template, values, context=context)
|
try:
|
||||||
|
return request.registry.get("ir.ui.view").render(request.cr, request.uid, template, values, context=context)
|
||||||
|
except (osv.except_osv, orm.except_orm), err:
|
||||||
|
logger.error(err)
|
||||||
|
values['error'] = err[1]
|
||||||
|
return self.render('website.401', values)
|
||||||
|
except ValueError:
|
||||||
|
logger.error("Website Rendering Error.\n\n%s" % (traceback.format_exc()))
|
||||||
|
return self.render('website.404', values)
|
||||||
|
except Exception:
|
||||||
|
logger.error("Website Rendering Error.\n\n%s" % (traceback.format_exc()))
|
||||||
|
if values['editable']:
|
||||||
|
values['traceback'] = traceback.format_exc()
|
||||||
|
return self.render('website.500', values)
|
||||||
|
else:
|
||||||
|
return self.render('website.404', values)
|
||||||
|
|
||||||
def pager(self, url, total, page=1, step=30, scope=5, url_args=None):
|
def pager(self, url, total, page=1, step=30, scope=5, url_args=None):
|
||||||
# Compute Pager
|
# Compute Pager
|
||||||
|
|
Loading…
Reference in New Issue