1
0
mirror of https://github.com/janeczku/calibre-web synced 2024-11-24 18:47:23 +00:00
This commit is contained in:
Ozzieisaacs 2019-07-21 18:19:07 +02:00
parent 6d43e0422a
commit b9c3a3fcea
3 changed files with 45 additions and 4 deletions

View File

@ -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;

View File

@ -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>

View File

@ -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__)