comments.js: include error in reply html rather than using an alert

This commit is contained in:
James Taylor 2020-10-20 18:24:41 -07:00
parent 95f2f027ea
commit c696db3e84
4 changed files with 31 additions and 29 deletions

View File

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

View File

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

View File

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

View File

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