hfghf
This commit is contained in:
parent
b998be923d
commit
d3f080a2a8
15 changed files with 50 additions and 54 deletions
|
@ -32,7 +32,7 @@ class Comment(Base):
|
||||||
parent_comment_id = Column(Integer, ForeignKey("comments.id"))
|
parent_comment_id = Column(Integer, ForeignKey("comments.id"))
|
||||||
over_18 = Column(Boolean, default=False)
|
over_18 = Column(Boolean, default=False)
|
||||||
is_bot = Column(Boolean, default=False)
|
is_bot = Column(Boolean, default=False)
|
||||||
is_pinned = Column(String(255))
|
is_pinned = Column(String(25))
|
||||||
sentto=Column(Integer)
|
sentto=Column(Integer)
|
||||||
notifiedto=Column(Integer)
|
notifiedto=Column(Integer)
|
||||||
app_id = Column(Integer, ForeignKey("oauth_apps.id"))
|
app_id = Column(Integer, ForeignKey("oauth_apps.id"))
|
||||||
|
|
|
@ -5,8 +5,8 @@ class BannedDomain(Base):
|
||||||
|
|
||||||
__tablename__ = "banneddomains"
|
__tablename__ = "banneddomains"
|
||||||
id = Column(Integer, primary_key=True)
|
id = Column(Integer, primary_key=True)
|
||||||
domain = Column(String(255))
|
domain = Column(String(50))
|
||||||
reason = Column(String(255))
|
reason = Column(String(100))
|
||||||
|
|
||||||
|
|
||||||
class BadLink(Base):
|
class BadLink(Base):
|
||||||
|
@ -14,5 +14,5 @@ class BadLink(Base):
|
||||||
__tablename__ = "badlinks"
|
__tablename__ = "badlinks"
|
||||||
id = Column(Integer, primary_key=True)
|
id = Column(Integer, primary_key=True)
|
||||||
link = Column(String(512))
|
link = Column(String(512))
|
||||||
reason = Column(String(255))
|
reason = Column(String(100))
|
||||||
autoban = Column(Boolean, default=False)
|
autoban = Column(Boolean, default=False)
|
|
@ -12,13 +12,9 @@ class Image(Base):
|
||||||
|
|
||||||
class BadPic(Base):
|
class BadPic(Base):
|
||||||
|
|
||||||
#Class for tracking fuzzy hashes of banned csam images
|
|
||||||
|
|
||||||
__tablename__="badpics"
|
__tablename__="badpics"
|
||||||
id = Column(BigInteger, primary_key=True)
|
id = Column(BigInteger, primary_key=True)
|
||||||
description=Column(String(255))
|
description=Column(String(200))
|
||||||
phash=Column(String(64))
|
phash=Column(String(64))
|
||||||
ban_reason=Column(String(64))
|
ban_reason=Column(String(64))
|
||||||
ban_time=Column(Integer)
|
ban_time=Column(Integer)
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ class Submission(Base):
|
||||||
author_id = Column(BigInteger, ForeignKey("users.id"))
|
author_id = Column(BigInteger, ForeignKey("users.id"))
|
||||||
edited_utc = Column(BigInteger, default=0)
|
edited_utc = Column(BigInteger, default=0)
|
||||||
created_utc = Column(BigInteger, default=0)
|
created_utc = Column(BigInteger, default=0)
|
||||||
thumburl = Column(String(255))
|
thumburl = Column(String(50))
|
||||||
is_banned = Column(Boolean, default=False)
|
is_banned = Column(Boolean, default=False)
|
||||||
removed_by = Column(Integer)
|
removed_by = Column(Integer)
|
||||||
bannedfor = Column(Boolean)
|
bannedfor = Column(Boolean)
|
||||||
|
@ -30,8 +30,8 @@ class Submission(Base):
|
||||||
views = Column(Integer, default=0)
|
views = Column(Integer, default=0)
|
||||||
deleted_utc = Column(Integer, default=0)
|
deleted_utc = Column(Integer, default=0)
|
||||||
distinguish_level = Column(Integer, default=0)
|
distinguish_level = Column(Integer, default=0)
|
||||||
created_str = Column(String(255))
|
created_str = Column(String(25))
|
||||||
stickied = Column(String(255))
|
stickied = Column(String(25))
|
||||||
is_pinned = Column(Boolean, default=False)
|
is_pinned = Column(Boolean, default=False)
|
||||||
private = Column(Boolean, default=False)
|
private = Column(Boolean, default=False)
|
||||||
club = Column(Boolean, default=False)
|
club = Column(Boolean, default=False)
|
||||||
|
|
|
@ -73,31 +73,31 @@ else:
|
||||||
class User(Base):
|
class User(Base):
|
||||||
__tablename__ = "users"
|
__tablename__ = "users"
|
||||||
id = Column(Integer, primary_key=True)
|
id = Column(Integer, primary_key=True)
|
||||||
username = Column(String(255))
|
username = Column(String(25))
|
||||||
namecolor = Column(String(255), default=defaultcolor)
|
namecolor = Column(String(6), default=defaultcolor)
|
||||||
background = Column(String(255))
|
background = Column(String(20))
|
||||||
customtitle = Column(String(255))
|
customtitle = Column(String(300))
|
||||||
customtitleplain = Column(String(255))
|
customtitleplain = Column(String(100))
|
||||||
|
|
||||||
if "pcmemes.net" in site:
|
if "pcmemes.net" in site:
|
||||||
quadrant = Column(String(255))
|
quadrant = Column(String(20))
|
||||||
basedcount = Column(Integer, default=0)
|
basedcount = Column(Integer, default=0)
|
||||||
pills = Column(String(255), default="")
|
pills = deferred(Column(String(300), default=""))
|
||||||
|
|
||||||
titlecolor = Column(String(255), default=defaultcolor)
|
titlecolor = Column(String(6), default=defaultcolor)
|
||||||
theme = Column(String(255), default=defaulttheme)
|
theme = Column(String(10), default=defaulttheme)
|
||||||
themecolor = Column(String(255), default=defaultcolor)
|
themecolor = Column(String(6), default=defaultcolor)
|
||||||
cardview = Column(Boolean, default=cardview)
|
cardview = Column(Boolean, default=cardview)
|
||||||
song = Column(String(255))
|
song = Column(String(20))
|
||||||
highres = Column(String(255))
|
highres = Column(String(50))
|
||||||
profileurl = Column(String(255))
|
profileurl = Column(String(50))
|
||||||
bannerurl = Column(String(255))
|
bannerurl = Column(String(50))
|
||||||
patron = Column(Integer, default=0)
|
patron = Column(Integer, default=0)
|
||||||
verified = Column(String(255))
|
verified = Column(String(20))
|
||||||
email = Column(String(255))
|
email = Column(String(50))
|
||||||
css = deferred(Column(String(4000)))
|
css = deferred(Column(String(4000)))
|
||||||
profilecss = deferred(Column(String(4000)))
|
profilecss = deferred(Column(String(4000)))
|
||||||
passhash = deferred(Column(String(255)))
|
passhash = deferred(Column(String(180)))
|
||||||
post_count = Column(Integer, default=0)
|
post_count = Column(Integer, default=0)
|
||||||
comment_count = Column(Integer, default=0)
|
comment_count = Column(Integer, default=0)
|
||||||
received_award_count = Column(Integer, default=0)
|
received_award_count = Column(Integer, default=0)
|
||||||
|
@ -112,7 +112,7 @@ class User(Base):
|
||||||
agendaposter_expires_utc = Column(Integer, default=0)
|
agendaposter_expires_utc = Column(Integer, default=0)
|
||||||
changelogsub = Column(Boolean, default=False)
|
changelogsub = Column(Boolean, default=False)
|
||||||
is_activated = Column(Boolean, default=False)
|
is_activated = Column(Boolean, default=False)
|
||||||
shadowbanned = Column(Boolean, default=False)
|
shadowbanned = Column(String(25), default=False)
|
||||||
over_18 = Column(Boolean, default=False)
|
over_18 = Column(Boolean, default=False)
|
||||||
hidevotedon = Column(Boolean, default=False)
|
hidevotedon = Column(Boolean, default=False)
|
||||||
highlightcomments = Column(Boolean, default=True)
|
highlightcomments = Column(Boolean, default=True)
|
||||||
|
@ -131,7 +131,7 @@ class User(Base):
|
||||||
|
|
||||||
is_banned = Column(Integer, default=0)
|
is_banned = Column(Integer, default=0)
|
||||||
unban_utc = Column(Integer, default=0)
|
unban_utc = Column(Integer, default=0)
|
||||||
ban_reason = Column(String(255))
|
ban_reason = Column(String(120))
|
||||||
club_banned = Column(Boolean, default=False)
|
club_banned = Column(Boolean, default=False)
|
||||||
club_allowed = Column(Boolean, default=False)
|
club_allowed = Column(Boolean, default=False)
|
||||||
login_nonce = Column(Integer, default=0)
|
login_nonce = Column(Integer, default=0)
|
||||||
|
@ -141,15 +141,15 @@ class User(Base):
|
||||||
mfa_secret = deferred(Column(String(16)))
|
mfa_secret = deferred(Column(String(16)))
|
||||||
is_private = Column(Boolean, default=False)
|
is_private = Column(Boolean, default=False)
|
||||||
stored_subscriber_count = Column(Integer, default=0)
|
stored_subscriber_count = Column(Integer, default=0)
|
||||||
defaultsortingcomments = Column(String(255), default="top")
|
defaultsortingcomments = Column(String(15), default="top")
|
||||||
defaultsorting = Column(String(255), default="hot")
|
defaultsorting = Column(String(15), default="hot")
|
||||||
defaulttime = Column(String(255), default=defaulttimefilter)
|
defaulttime = Column(String(5), default=defaulttimefilter)
|
||||||
|
|
||||||
is_nofollow = Column(Boolean, default=False)
|
is_nofollow = Column(Boolean, default=False)
|
||||||
custom_filter_list = Column(String(1000))
|
custom_filter_list = Column(String(1000))
|
||||||
discord_id = Column(String(64))
|
discord_id = Column(String(64))
|
||||||
ban_evade = Column(Integer, default=0)
|
ban_evade = Column(Integer, default=0)
|
||||||
original_username = deferred(Column(String(255)))
|
original_username = deferred(Column(String(25)))
|
||||||
subscriptions = relationship("Subscription", viewonly=True)
|
subscriptions = relationship("Subscription", viewonly=True)
|
||||||
|
|
||||||
following = relationship("Follow", primaryjoin="Follow.user_id==User.id", viewonly=True)
|
following = relationship("Follow", primaryjoin="Follow.user_id==User.id", viewonly=True)
|
||||||
|
|
|
@ -210,7 +210,7 @@ def get_comments(cids, v=None, load_parent=False):
|
||||||
).filter(Comment.id.in_(cids))
|
).filter(Comment.id.in_(cids))
|
||||||
|
|
||||||
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
||||||
|
|
||||||
comments = comments.join(
|
comments = comments.join(
|
||||||
|
@ -236,7 +236,7 @@ def get_comments(cids, v=None, load_parent=False):
|
||||||
output.append(comment)
|
output.append(comment)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
output = g.db.query(Comment).options(lazyload('*')).filter(Comment.id.in_(cids), Comment.author_id.notin_(shadowbanned)).all()
|
output = g.db.query(Comment).options(lazyload('*')).filter(Comment.id.in_(cids), Comment.author_id.notin_(shadowbanned)).all()
|
||||||
|
|
||||||
if load_parent:
|
if load_parent:
|
||||||
|
|
|
@ -755,11 +755,11 @@ def agendaposter(user_id, v):
|
||||||
def shadowban(user_id, v):
|
def shadowban(user_id, v):
|
||||||
user = g.db.query(User).options(lazyload('*')).filter_by(id=user_id).first()
|
user = g.db.query(User).options(lazyload('*')).filter_by(id=user_id).first()
|
||||||
if user.admin_level != 0: abort(403)
|
if user.admin_level != 0: abort(403)
|
||||||
user.shadowbanned = True
|
user.shadowbanned = v.username
|
||||||
g.db.add(user)
|
g.db.add(user)
|
||||||
for alt in user.alts:
|
for alt in user.alts:
|
||||||
if alt.admin_level > 0: break
|
if alt.admin_level > 0: break
|
||||||
alt.shadowbanned = True
|
alt.shadowbanned = v.username
|
||||||
g.db.add(alt)
|
g.db.add(alt)
|
||||||
ma = ModAction(
|
ma = ModAction(
|
||||||
kind="shadowban",
|
kind="shadowban",
|
||||||
|
@ -780,10 +780,10 @@ def shadowban(user_id, v):
|
||||||
def unshadowban(user_id, v):
|
def unshadowban(user_id, v):
|
||||||
user = g.db.query(User).options(lazyload('*')).filter_by(id=user_id).first()
|
user = g.db.query(User).options(lazyload('*')).filter_by(id=user_id).first()
|
||||||
if user.admin_level != 0: abort(403)
|
if user.admin_level != 0: abort(403)
|
||||||
user.shadowbanned = False
|
user.shadowbanned = None
|
||||||
g.db.add(user)
|
g.db.add(user)
|
||||||
for alt in user.alts:
|
for alt in user.alts:
|
||||||
alt.shadowbanned = False
|
alt.shadowbanned = None
|
||||||
g.db.add(alt)
|
g.db.add(alt)
|
||||||
|
|
||||||
ma = ModAction(
|
ma = ModAction(
|
||||||
|
|
|
@ -85,7 +85,7 @@ def post_pid_comment_cid(cid, pid=None, anything=None, v=None):
|
||||||
)
|
)
|
||||||
|
|
||||||
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
||||||
|
|
||||||
comments=comments.filter(
|
comments=comments.filter(
|
||||||
|
|
|
@ -194,7 +194,7 @@ def frontlist(v=None, sort="hot", page=1, t="all", ids_only=True, filter_words='
|
||||||
posts=posts.filter(not_(Submission.title.ilike(f'%{word}%')))
|
posts=posts.filter(not_(Submission.title.ilike(f'%{word}%')))
|
||||||
|
|
||||||
if not (v and v.shadowbanned):
|
if not (v and v.shadowbanned):
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
posts = posts.filter(Submission.author_id.notin_(shadowbanned))
|
posts = posts.filter(Submission.author_id.notin_(shadowbanned))
|
||||||
|
|
||||||
if sort == "hot":
|
if sort == "hot":
|
||||||
|
|
|
@ -119,7 +119,7 @@ def post_id(pid, anything=None, v=None):
|
||||||
)
|
)
|
||||||
|
|
||||||
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
if not (v and v.shadowbanned) and not (v and v.admin_level == 6):
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
comments = comments.filter(Comment.author_id.notin_(shadowbanned))
|
||||||
|
|
||||||
comments=comments.filter(
|
comments=comments.filter(
|
||||||
|
@ -160,7 +160,7 @@ def post_id(pid, anything=None, v=None):
|
||||||
post.preloaded_comments = output
|
post.preloaded_comments = output
|
||||||
|
|
||||||
else:
|
else:
|
||||||
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned == True).all()]
|
shadowbanned = [x[0] for x in g.db.query(User.id).options(lazyload('*')).filter(User.shadowbanned != None).all()]
|
||||||
comments = g.db.query(Comment).filter(Comment.parent_submission == post.id, Comment.author_id.notin_(shadowbanned))
|
comments = g.db.query(Comment).filter(Comment.parent_submission == post.id, Comment.author_id.notin_(shadowbanned))
|
||||||
|
|
||||||
if sort == "new":
|
if sort == "new":
|
||||||
|
|
|
@ -46,7 +46,7 @@ def settings_profile_post(v):
|
||||||
|
|
||||||
if request.values.get("background", v.background) != v.background:
|
if request.values.get("background", v.background) != v.background:
|
||||||
updated = True
|
updated = True
|
||||||
v.background= request.values.get("background", None)
|
v.background = request.values.get("background", None)
|
||||||
|
|
||||||
if request.values.get("slurreplacer", v.slurreplacer) != v.slurreplacer:
|
if request.values.get("slurreplacer", v.slurreplacer) != v.slurreplacer:
|
||||||
updated = True
|
updated = True
|
||||||
|
@ -755,7 +755,7 @@ def settings_song_change(v):
|
||||||
|
|
||||||
if song == "" and v.song and path.isfile(f"/songs/{v.song}.mp3") and g.db.query(User.id).options(lazyload('*')).filter_by(song=v.song).count() == 1:
|
if song == "" and v.song and path.isfile(f"/songs/{v.song}.mp3") and g.db.query(User.id).options(lazyload('*')).filter_by(song=v.song).count() == 1:
|
||||||
os.remove(f"/songs/{v.song}.mp3")
|
os.remove(f"/songs/{v.song}.mp3")
|
||||||
v.song=None
|
v.song = None
|
||||||
g.db.add(v)
|
g.db.add(v)
|
||||||
g.db.commit()
|
g.db.commit()
|
||||||
return redirect("/settings/profile")
|
return redirect("/settings/profile")
|
||||||
|
@ -774,7 +774,7 @@ def settings_song_change(v):
|
||||||
if "&" in id: id = id.split("&")[0]
|
if "&" in id: id = id.split("&")[0]
|
||||||
|
|
||||||
if path.isfile(f'/songs/{id}.mp3'):
|
if path.isfile(f'/songs/{id}.mp3'):
|
||||||
v.song=id
|
v.song = id
|
||||||
g.db.add(v)
|
g.db.add(v)
|
||||||
g.db.commit()
|
g.db.commit()
|
||||||
return redirect("/settings/profile")
|
return redirect("/settings/profile")
|
||||||
|
@ -824,7 +824,7 @@ def settings_song_change(v):
|
||||||
songfile = max(paths, key=path.getctime)
|
songfile = max(paths, key=path.getctime)
|
||||||
os.rename(songfile, f"/songs/{id}.mp3")
|
os.rename(songfile, f"/songs/{id}.mp3")
|
||||||
|
|
||||||
v.song=id
|
v.song = id
|
||||||
g.db.add(v)
|
g.db.add(v)
|
||||||
|
|
||||||
g.db.commit()
|
g.db.commit()
|
||||||
|
|
|
@ -106,7 +106,7 @@ def suicide(v, username):
|
||||||
@auth_required
|
@auth_required
|
||||||
def get_coins(v, username):
|
def get_coins(v, username):
|
||||||
user = get_user(username)
|
user = get_user(username)
|
||||||
if user is not None: return {"coins": user.coins}, 200
|
if user != None: return {"coins": user.coins}, 200
|
||||||
else: return {"error": "invalid_user"}, 404
|
else: return {"error": "invalid_user"}, 404
|
||||||
|
|
||||||
@app.post("/@<username>/transfer_coins")
|
@app.post("/@<username>/transfer_coins")
|
||||||
|
|
|
@ -194,7 +194,7 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if c.active_flags %}<a class="btn btn-primary" style="padding:1px 5px; font-size:10px;" href="javascript:void(0)" onclick="document.getElementById('flaggers-{{c.id}}').classList.toggle('d-none')">{{c.active_flags}} Reports</a>{% endif %}
|
{% if c.active_flags %}<a class="btn btn-primary" style="padding:1px 5px; font-size:10px;" href="javascript:void(0)" onclick="document.getElementById('flaggers-{{c.id}}').classList.toggle('d-none')">{{c.active_flags}} Reports</a>{% endif %}
|
||||||
{% if c.over_18 %}<span class="badge badge-danger text-small-extra mr-1">+18</span>{% endif %}
|
{% if c.over_18 %}<span class="badge badge-danger text-small-extra mr-1">+18</span>{% endif %}
|
||||||
{% if v and v.admin_level==6 and c.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned user"></i>{% endif %}
|
{% if v and v.admin_level==6 and c.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned by @{{c.author.shadowbanned}}"></i>{% endif %}
|
||||||
{% if c.is_pinned %}<i class="text-admin fas fa-thumbtack fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{c.is_pinned}}"></i>{% endif %}
|
{% if c.is_pinned %}<i class="text-admin fas fa-thumbtack fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{c.is_pinned}}"></i>{% endif %}
|
||||||
{% if c.distinguish_level %}<i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
{% if c.distinguish_level %}<i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
||||||
{% if c.is_op %}<i class="fas fa-microphone-stand text-info" data-bs-toggle="tooltip" data-bs-placement="bottom" title="OP"></i>{% endif %}
|
{% if c.is_op %}<i class="fas fa-microphone-stand text-info" data-bs-toggle="tooltip" data-bs-placement="bottom" title="OP"></i>{% endif %}
|
||||||
|
|
|
@ -260,7 +260,7 @@
|
||||||
<i class="{{a.class_list}} px-1" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{a.title}} Award given by @{{a.user.username}}"></i>
|
<i class="{{a.class_list}} px-1" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{a.title}} Award given by @{{a.user.username}}"></i>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned user"></i>{% endif %}
|
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned by @{{p.author.shadowbanned}}"></i>{% endif %}
|
||||||
{% if p.stickied %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{p.stickied}}"></i>{% endif %}
|
{% if p.stickied %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{p.stickied}}"></i>{% endif %}
|
||||||
{% if p.is_pinned %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned to profile"></i>{% endif %}
|
{% if p.is_pinned %}<i class="fas fa-thumbtack fa-fw text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned to profile"></i>{% endif %}
|
||||||
{% if p.distinguish_level %} <i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
{% if p.distinguish_level %} <i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
||||||
|
|
|
@ -128,7 +128,7 @@
|
||||||
<i class="{{a.class_list}} px-1" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{a.title}} Award given by @{{a.user.username}}"></i>
|
<i class="{{a.class_list}} px-1" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{a.title}} Award given by @{{a.user.username}}"></i>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned user"></i>{% endif %}
|
{% if v and v.admin_level==6 and p.author.shadowbanned %}<i class="fas fa-user-times text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Shadowbanned by @{{p.author.shadowbanned}}"></i>{% endif %}
|
||||||
{% if p.stickied %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{p.stickied}}"></i>{% endif %}
|
{% if p.stickied %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned by @{{p.stickied}}"></i>{% endif %}
|
||||||
{% if p.distinguish_level %}<i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
{% if p.distinguish_level %}<i class="fas fa-broom text-admin" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{'SITE_NAME' | app_config}} Admin, speaking officially"></i>{% endif %}
|
||||||
{% if p.is_pinned and request.path.startswith('/@') %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned to profile"></i>{% endif %}
|
{% if p.is_pinned and request.path.startswith('/@') %}<i class="fas fa-thumbtack text-admin fa-rotate--45" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Pinned to profile"></i>{% endif %}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue