Fix shadow visibility logic.

master
Snakes 2022-10-13 00:10:34 -04:00
parent 106160aea6
commit e5af46c4ae
Signed by: Snakes
GPG Key ID: E745A82778055C7E
6 changed files with 12 additions and 12 deletions

View File

@ -215,7 +215,7 @@ class Comment(Base):
if not self.parent_submission: sort='old' if not self.parent_submission: sort='old'
return sort_objects(sort, replies, Comment, return sort_objects(sort, replies, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))).all() include_shadowbanned=(v and v.can_see_shadowbanned)).all()
@property @property

View File

@ -479,7 +479,7 @@ class User(Base):
posts = apply_time_filter(t, posts, Submission) posts = apply_time_filter(t, posts, Submission)
posts = sort_objects(sort, posts, Submission, posts = sort_objects(sort, posts, Submission,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
posts = posts.offset(25 * (page - 1)).limit(26).all() posts = posts.offset(25 * (page - 1)).limit(26).all()
@ -980,4 +980,4 @@ class User(Base):
@property @property
@lazy @lazy
def can_see_shadowbanned(self): def can_see_shadowbanned(self):
return self.shadowbanned or self.admin_level >= PERMS['USER_SHADOWBAN'] return (self.admin_level >= PERMS['USER_SHADOWBAN']) or self.shadowbanned

View File

@ -116,7 +116,7 @@ def frontlist(v=None, sort="hot", page=1, t="all", ids_only=True, ccmode="false"
posts = posts.join(Submission.author).filter(User.shadowbanned == None) posts = posts.join(Submission.author).filter(User.shadowbanned == None)
posts = sort_objects(sort, posts, Submission, posts = sort_objects(sort, posts, Submission,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
if v: size = v.frontsize or 0 if v: size = v.frontsize or 0
else: size = 25 else: size = 25
@ -237,7 +237,7 @@ def comment_idlist(page=1, v=None, nsfw=False, sort="new", t="all", gt=0, lt=0,
comments = apply_time_filter(t, comments, Comment) comments = apply_time_filter(t, comments, Comment)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
comments = comments.offset(25 * (page - 1)).limit(26).all() comments = comments.offset(25 * (page - 1)).limit(26).all()
return [x[0] for x in comments] return [x[0] for x in comments]

View File

@ -197,7 +197,7 @@ def post_id(pid, anything=None, v=None, sub=None):
comments = comments.filter(Comment.level == 1, Comment.stickied == None) comments = comments.filter(Comment.level == 1, Comment.stickied == None)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
comments = [c[0] for c in comments.all()] comments = [c[0] for c in comments.all()]
else: else:
@ -206,7 +206,7 @@ def post_id(pid, anything=None, v=None, sub=None):
comments = g.db.query(Comment).join(Comment.author).filter(User.shadowbanned == None, Comment.parent_submission == post.id, Comment.level == 1, Comment.stickied == None) comments = g.db.query(Comment).join(Comment.author).filter(User.shadowbanned == None, Comment.parent_submission == post.id, Comment.level == 1, Comment.stickied == None)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=False)
comments = comments.all() comments = comments.all()
@ -319,14 +319,14 @@ def viewmore(v, pid, sort, offset):
comments = comments.filter(Comment.level == 1) comments = comments.filter(Comment.level == 1)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
comments = [c[0] for c in comments.all()] comments = [c[0] for c in comments.all()]
else: else:
comments = g.db.query(Comment).join(Comment.author).filter(User.shadowbanned == None, Comment.parent_submission == pid, Comment.level == 1, Comment.stickied == None, Comment.id.notin_(ids)) comments = g.db.query(Comment).join(Comment.author).filter(User.shadowbanned == None, Comment.parent_submission == pid, Comment.level == 1, Comment.stickied == None, Comment.id.notin_(ids))
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=False)
comments = comments.offset(offset).all() comments = comments.offset(offset).all()

View File

@ -146,7 +146,7 @@ def searchposts(v):
posts = apply_time_filter(t, posts, Submission) posts = apply_time_filter(t, posts, Submission)
posts = sort_objects(sort, posts, Submission, posts = sort_objects(sort, posts, Submission,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
total = posts.count() total = posts.count()
@ -250,7 +250,7 @@ def searchcomments(v):
comments = comments.filter(Comment.created_utc < before) comments = comments.filter(Comment.created_utc < before)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
total = comments.count() total = comments.count()

View File

@ -910,7 +910,7 @@ def u_username_comments(username, v=None):
comments = apply_time_filter(t, comments, Comment) comments = apply_time_filter(t, comments, Comment)
comments = sort_objects(sort, comments, Comment, comments = sort_objects(sort, comments, Comment,
include_shadowbanned=(not (v and v.can_see_shadowbanned))) include_shadowbanned=(v and v.can_see_shadowbanned))
comments = comments.offset(25 * (page - 1)).limit(26).all() comments = comments.offset(25 * (page - 1)).limit(26).all()
ids = [x.id for x in comments] ids = [x.id for x in comments]