diff options
-rw-r--r-- | youtube/__init__.py | 6 | ||||
-rw-r--r-- | youtube/static/js/common.js | 4 | ||||
-rw-r--r-- | youtube/templates/error.html | 27 | ||||
-rw-r--r-- | youtube/templates/shared.css | 23 |
4 files changed, 31 insertions, 29 deletions
diff --git a/youtube/__init__.py b/youtube/__init__.py index 70ed5b2..61039d3 100644 --- a/youtube/__init__.py +++ b/youtube/__init__.py @@ -1,5 +1,6 @@ from youtube import util import flask +from flask import request import settings import traceback import re @@ -55,6 +56,7 @@ def timestamps(text): @yt_app.errorhandler(500) def error_page(e): + slim = request.args.get('slim', False) # whether it was an ajax request if (exc_info()[0] == util.FetchError and exc_info()[1].code == '429' and settings.route_tor @@ -64,8 +66,8 @@ def error_page(e): ' using the New Identity button in the Tor Browser.') if exc_info()[1].ip: error_message += ' Exit node IP address: ' + exc_info()[1].ip - return flask.render_template('error.html', error_message=error_message), 502 - return flask.render_template('error.html', traceback=traceback.format_exc()), 500 + return flask.render_template('error.html', error_message=error_message, slim=slim), 502 + return flask.render_template('error.html', traceback=traceback.format_exc(), slim=slim), 500 font_choices = { 0: 'initial', diff --git a/youtube/static/js/common.js b/youtube/static/js/common.js index 2db4390..20cfddd 100644 --- a/youtube/static/js/common.js +++ b/youtube/static/js/common.js @@ -41,9 +41,7 @@ function doXhr(url, callback=null) { var xhr = new XMLHttpRequest(); xhr.open("GET", url); xhr.onload = (e) => { - let ok = xhr.status >= 200 && xhr.status < 300; - if (ok) callback(e.currentTarget.response); - else alert(`${xhr.responseURL} status code: ${xhr.status}`); + callback(e.currentTarget.response); } xhr.send(); return xhr; diff --git a/youtube/templates/error.html b/youtube/templates/error.html index 2f94afa..c3f58b0 100644 --- a/youtube/templates/error.html +++ b/youtube/templates/error.html @@ -1,29 +1,8 @@ {% set page_title = 'Error' %} -{% extends "base.html" %} -{% block style %} - h1{ - font-size: 2rem; - font-weight: normal; - } - #error-box, #error-message{ - background-color: var(--interface-color); - width: 80%; - margin: auto; - margin-top: 20px; - padding: 5px; - } - #error-box > div, #error-box > p, #error-box > h1{ - white-space: pre-wrap; - margin-bottom: 10px; - } - .code-box{ - padding: 5px; - border-style:solid; - border-width:1px; - border-radius:5px; - } -{% endblock style %} +{% if not slim %} + {% extends "base.html" %} +{% endif %} {% block main %} {% if traceback %} diff --git a/youtube/templates/shared.css b/youtube/templates/shared.css index 141465a..8aaa706 100644 --- a/youtube/templates/shared.css +++ b/youtube/templates/shared.css @@ -334,3 +334,26 @@ body{ padding: 2px; justify-self: start; } + +/* error page stuff */ +h1{ + font-size: 2rem; + font-weight: normal; +} +#error-box, #error-message{ + background-color: var(--interface-color); + width: 80%; + margin: auto; + margin-top: 20px; + padding: 5px; +} +#error-box > div, #error-box > p, #error-box > h1{ + white-space: pre-wrap; + margin-bottom: 10px; +} +.code-box{ + padding: 5px; + border-style:solid; + border-width:1px; + border-radius:5px; +} |