diff --git a/files/routes/static.py b/files/routes/static.py index 25c8482f6..926723701 100644 --- a/files/routes/static.py +++ b/files/routes/static.py @@ -26,15 +26,25 @@ def rdrama(id, title): @app.get("/marseys") @auth_required def marseys(v:User): - marseys = get_marseys(g.db) - authors = get_accounts_dict([m.author_id for m in marseys], v=v, graceful=True, include_shadowbanned=False) - original = os.listdir("/asset_submissions/marseys/original") - for marsey in marseys: - marsey.user = authors.get(marsey.author_id) - for x in IMAGE_FORMATS: + if SITE == 'rdrama.net': + marseys = g.db.query(Marsey, User).join(User, Marsey.author_id == User.id).filter(Marsey.submitter_id==None) + sort = request.values.get("sort", "usage") + if sort == "usage": + marseys = marseys.order_by(Marsey.count.desc(), User.username).all() + elif sort == "added": + marseys = marseys.order_by(nullslast(Marsey.created_utc.desc()), User.username).all() + else: # implied sort == "author" + marseys = marseys.order_by(User.username, Marsey.count.desc()).all() + + original = os.listdir("/asset_submissions/marseys/original") + for marsey, user in marseys: + for x in IMAGE_FORMATS: if f'{marsey.name}.{x}' in original: marsey.og = f'{marsey.name}.{x}' break + else: + marseys = g.db.query(Marsey).filter(Marsey.submitter_id==None).order_by(Marsey.count.desc()) + return render_template("marseys.html", v=v, marseys=marseys) @app.get("/emojis") diff --git a/files/templates/marseys.html b/files/templates/marseys.html index 1a5f1bee3..9d76c2852 100644 --- a/files/templates/marseys.html +++ b/files/templates/marseys.html @@ -5,41 +5,46 @@
# | -Name | +# | +Name | Marsey | -Usage | - {% if FEATURES['ASSET_SUBMISSIONS'] %} -Author | - {% endif %} -Added on | - {% if FEATURES['ASSET_SUBMISSIONS'] %} +Usage | + {% if SITE == 'rdrama.net' %} +Author | +Added on | Original File | {% endif %}
---|---|---|---|---|---|---|---|---|---|---|---|
{{loop.index}} | -{{marsey.name}} | -- | {{marsey.count}} | - {% if FEATURES['ASSET_SUBMISSIONS'] %} - {% set user = marsey.user %} -{% include "user_in_table.html" %} | - {% endif %} -- {% if FEATURES['ASSET_SUBMISSIONS'] %} - | - {% if marsey.og %} - {{marsey.og}} - {% endif %} - | - {% endif %} -|||||
{{loop.index}} | +{{marsey.name}} | ++ | {{marsey.count}} | +{% include "user_in_table.html" %} | ++ | + {% if marsey.og %} + {{marsey.og}} + {% endif %} + | +|||||
{{loop.index}} | +{{marsey.name}} | ++ | {{marsey.count}} | +