From 61aa7c1a5e0b22e05916e7d02fa1d054616fb85c Mon Sep 17 00:00:00 2001 From: ville rantanen Date: Mon, 28 Jan 2019 20:46:09 +0200 Subject: [PATCH] timeout auto sort --- shop.py | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/shop.py b/shop.py index ca72023..9cf7af9 100644 --- a/shop.py +++ b/shop.py @@ -173,10 +173,23 @@ def show_shop(shopid): for row in cur.fetchall(): if row[0]==shopid: shared_to.append(get_username(row[1])) - return render_template('show_shop.html', entries=entries, shop=shopname, - shopid=shopid, content=content,shares=shared_to, - date=get_shop_date(shopid),date_bkp=get_shop_backup_date(shopid), - autosort=session.get('sort_view',False)) + # invalidate autosort in 60 minutes: + if session.get('sort_update'): + if time.time() - session.get('sort_update') > 3600: + session['sort_view'] = False + session['sort_update'] = time.time() + + return render_template( + 'show_shop.html', + entries = entries, + shop = shopname, + shopid = shopid, + content = content, + shares = shared_to, + date = get_shop_date(shopid), + date_bkp = get_shop_backup_date(shopid), + autosort = session.get('sort_view', False) + ) @app.route('/') def list_shops(): @@ -441,11 +454,15 @@ def remove_shop(): @app.route('/sort_flip',methods=['POST']) def sort_flip(): if not session.get('sort_view'): - session['sort_view']=True + session['sort_view'] = True + session['sort_update'] = time.time() else: - session['sort_view']=False - shopid=int(request.form['shopid']) - return redirect(url_for('show_shop',shopid=shopid)) + session['sort_view'] = False + session['sort_update'] = time.time() + shopid = int(request.form['shopid']) + return redirect( + url_for('show_shop', shopid = shopid) + ) @app.route('/login', methods=['GET', 'POST']) def login():