diff --git a/apiserver/server.py b/apiserver/server.py index 46e8e4f..5d50d56 100644 --- a/apiserver/server.py +++ b/apiserver/server.py @@ -20,7 +20,7 @@ import settings import database import search import feed -from utils import gen_rand_id +from utils import gen_rand_id, NUM_ID_CHARS from flask import abort, Flask, request, render_template, stream_with_context, Response from werkzeug.exceptions import NotFound @@ -60,6 +60,8 @@ def apistats(): 'ref_list': ref_list, 'len_ref_list': len(ref_list), 'current_item': current_item, + 'total_stories': database.count_stories(), + 'id_space': 26**NUM_ID_CHARS, } return stats @@ -111,7 +113,12 @@ def submit(): ref = url existing = database.get_story_by_ref(ref) - if existing and not DEBUG: + + if existing and DEBUG: + ref = ref + '#' + str(time.time()) + existing = False + + if existing: return {'nid': existing.sid} else: story = dict(id=nid, ref=ref, source=source) @@ -129,9 +136,10 @@ def submit(): raise Exception('Invalid article') except Exception as e: - logging.error('Problem with article submission: {} - {}'.format(e.__class__.__name__, str(e))) + msg = 'Problem with article submission: {} - {}'.format(e.__class__.__name__, str(e)) + logging.error(msg) print(traceback.format_exc()) - return {'error': str(e)}, 400 + return {'error': msg.split('\n')[0]}, 400 @flask_app.route('/api/') diff --git a/apiserver/utils.py b/apiserver/utils.py index a0073a3..9478533 100644 --- a/apiserver/utils.py +++ b/apiserver/utils.py @@ -16,8 +16,9 @@ def alert_tanner(message): except BaseException as e: logging.error('Problem alerting Tanner: ' + str(e)) +NUM_ID_CHARS = 4 def gen_rand_id(): - return ''.join(random.choice(string.ascii_uppercase) for _ in range(4)) + return ''.join(random.choice(string.ascii_uppercase) for _ in range(NUM_ID_CHARS)) def render_md(md): if md: diff --git a/webclient/src/App.js b/webclient/src/App.js index 87e7c7e..170a065 100644 --- a/webclient/src/App.js +++ b/webclient/src/App.js @@ -99,8 +99,6 @@ function App() {
Hacker News, Reddit, Lobsters, and Tildes articles rendered in reader mode.

- - {fullScreenAvailable && !isFullScreen ? @@ -108,6 +106,8 @@ function App() { } /> } + + } /> diff --git a/webclient/src/Feed.js b/webclient/src/Feed.js index 3482355..a109d2c 100644 --- a/webclient/src/Feed.js +++ b/webclient/src/Feed.js @@ -100,6 +100,7 @@ function Feed({ updateCache }) {
Connection error? Click to expand.

{error}

+ {stories &&

Loaded feed from cache.

}
} {stories ? diff --git a/webclient/src/Submit.js b/webclient/src/Submit.js index e0ae501..3d4b834 100644 --- a/webclient/src/Submit.js +++ b/webclient/src/Submit.js @@ -45,7 +45,7 @@ function Submit() { ref={inputRef} /> - {progress ? progress : ''} + {progress &&

{progress}

} ); }