mirror of
https://github.com/janeczku/calibre-web
synced 2024-11-24 18:47:23 +00:00
Fix #652
This commit is contained in:
parent
6d43e0422a
commit
b9c3a3fcea
@ -141,6 +141,7 @@ input.pill:not(:checked) + label .glyphicon {
|
|||||||
|
|
||||||
.filterheader { margin-bottom: 20px; }
|
.filterheader { margin-bottom: 20px; }
|
||||||
|
|
||||||
|
.errorlink {margin-top: 20px;}
|
||||||
.modal-body .comments {
|
.modal-body .comments {
|
||||||
max-height:300px;
|
max-height:300px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
@ -17,10 +17,34 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="text-center">
|
<div class="container-fluid">
|
||||||
<h1>{{ error_code }}</h1>
|
<div class="row">
|
||||||
|
<div class="col">
|
||||||
|
<h1 class="text-center">{{ error_code }}</h1>
|
||||||
<h3>{{ error_name }}</h3>
|
<h3>{{ error_name }}</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-offset-4 text-left">
|
||||||
|
{% for element in error_stack %}
|
||||||
|
<div>{{ element }}</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% if issue %}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col errorlink">Please report this issue with all related information:
|
||||||
|
<a href="https://github.com/janeczku/calibre-web/issues/new">{{_('Create issue')}}</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col errorlink">
|
||||||
<a href="{{url_for('web.index')}}" title="{{ _('Back to home') }}">{{_('Back to home')}}</a>
|
<a href="{{url_for('web.index')}}" title="{{ _('Back to home') }}">{{_('Back to home')}}</a>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
20
cps/web.py
20
cps/web.py
@ -27,6 +27,8 @@ import base64
|
|||||||
import datetime
|
import datetime
|
||||||
import json
|
import json
|
||||||
import mimetypes
|
import mimetypes
|
||||||
|
import traceback
|
||||||
|
import sys
|
||||||
|
|
||||||
from babel import Locale as LC
|
from babel import Locale as LC
|
||||||
from babel.dates import format_date
|
from babel.dates import format_date
|
||||||
@ -83,16 +85,30 @@ except ImportError:
|
|||||||
# custom error page
|
# custom error page
|
||||||
def error_http(error):
|
def error_http(error):
|
||||||
return render_template('http_error.html',
|
return render_template('http_error.html',
|
||||||
error_code=error.code,
|
error_code="Error {0}".format(error.code),
|
||||||
error_name=error.name,
|
error_name=error.name,
|
||||||
|
issue=False,
|
||||||
instance=config.config_calibre_web_title
|
instance=config.config_calibre_web_title
|
||||||
), error.code
|
), error.code
|
||||||
|
|
||||||
|
|
||||||
|
def internal_error(error):
|
||||||
|
__, __, tb = sys.exc_info()
|
||||||
|
return render_template('http_error.html',
|
||||||
|
error_code="Internal Server Error",
|
||||||
|
error_name=str(error),
|
||||||
|
issue=True,
|
||||||
|
error_stack=traceback.format_tb(tb),
|
||||||
|
instance=config.config_calibre_web_title
|
||||||
|
), 500
|
||||||
|
|
||||||
|
|
||||||
# http error handling
|
# http error handling
|
||||||
for ex in default_exceptions:
|
for ex in default_exceptions:
|
||||||
# new routine for all client errors, server errors stay
|
|
||||||
if ex < 500:
|
if ex < 500:
|
||||||
app.register_error_handler(ex, error_http)
|
app.register_error_handler(ex, error_http)
|
||||||
|
elif ex == 500:
|
||||||
|
app.register_error_handler(ex, internal_error)
|
||||||
|
|
||||||
|
|
||||||
web = Blueprint('web', __name__)
|
web = Blueprint('web', __name__)
|
||||||
|
Loading…
Reference in New Issue
Block a user