forked from MarseyWorld/MarseyWorld
exclude authorized bots from hole restrictions
parent
f02834c29b
commit
8e74171d9d
|
@ -827,6 +827,7 @@ class User(Base):
|
||||||
@property
|
@property
|
||||||
@lazy
|
@lazy
|
||||||
def can_see_chudrama(self):
|
def can_see_chudrama(self):
|
||||||
|
if self.client: return True
|
||||||
if self.truecoins >= 5000: return True
|
if self.truecoins >= 5000: return True
|
||||||
if self.agendaposter: return True
|
if self.agendaposter: return True
|
||||||
if self.patron: return True
|
if self.patron: return True
|
||||||
|
|
|
@ -153,7 +153,7 @@ def comment(v):
|
||||||
sub = parent_post.sub
|
sub = parent_post.sub
|
||||||
if sub and v.exiled_from(sub): return {"error": f"You're exiled from /h/{sub}"}, 403
|
if sub and v.exiled_from(sub): return {"error": f"You're exiled from /h/{sub}"}, 403
|
||||||
|
|
||||||
if sub in ('furry','vampire','racist','femboy') and not (v.house and v.house.lower().startswith(sub)):
|
if sub in ('furry','vampire','racist','femboy') and not v.client and not (v.house and v.house.lower().startswith(sub)):
|
||||||
return {"error": f"You need to be a member of House {sub.capitalize()} to comment in /h/{sub}"}
|
return {"error": f"You need to be a member of House {sub.capitalize()} to comment in /h/{sub}"}
|
||||||
|
|
||||||
if parent_post.club and not (v and (v.paid_dues or v.id == parent_post.author_id)): abort(403)
|
if parent_post.club and not (v and (v.paid_dues or v.id == parent_post.author_id)): abort(403)
|
||||||
|
|
|
@ -700,7 +700,7 @@ def submit_post(v, sub=None):
|
||||||
allowed = [x[0] for x in allowed]
|
allowed = [x[0] for x in allowed]
|
||||||
if v.id not in allowed: return error(f"You don't have sufficient permissions to post in /h/changelog")
|
if v.id not in allowed: return error(f"You don't have sufficient permissions to post in /h/changelog")
|
||||||
|
|
||||||
if sub in ('furry','vampire','racist','femboy') and not (v.house and v.house.lower().startswith(sub)):
|
if sub in ('furry','vampire','racist','femboy') and not v.client and not (v.house and v.house.lower().startswith(sub)):
|
||||||
return error(f"You need to be a member of House {sub.capitalize()} to post in /h/{sub}")
|
return error(f"You need to be a member of House {sub.capitalize()} to post in /h/{sub}")
|
||||||
|
|
||||||
if sub and sub != 'none':
|
if sub and sub != 'none':
|
||||||
|
|
|
@ -49,7 +49,7 @@ def flag_post(pid, v):
|
||||||
if post.author.exiled_from(sub_to):
|
if post.author.exiled_from(sub_to):
|
||||||
return {"error": f"User is exiled from this {HOLE_NAME}!"}
|
return {"error": f"User is exiled from this {HOLE_NAME}!"}
|
||||||
|
|
||||||
if sub_to in ('furry','vampire','racist','femboy') and not (post.author.house and post.author.house.lower().startswith(sub_to)):
|
if sub_to in ('furry','vampire','racist','femboy') and not v.client and not (post.author.house and post.author.house.lower().startswith(sub_to)):
|
||||||
if v.id == post.author_id:
|
if v.id == post.author_id:
|
||||||
return {"error": f"You need to be a member of House {sub.capitalize()} to post in /h/{sub}"}
|
return {"error": f"You need to be a member of House {sub.capitalize()} to post in /h/{sub}"}
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -241,7 +241,7 @@ def add_mod(v, sub):
|
||||||
|
|
||||||
user = get_user(user)
|
user = get_user(user)
|
||||||
|
|
||||||
if sub in ('furry','vampire','racist','femboy') and not (user.house and user.house.lower().startswith(sub)):
|
if sub in ('furry','vampire','racist','femboy') and not v.client and not (user.house and user.house.lower().startswith(sub)):
|
||||||
return {"error": f"@{user.username} needs to be a member of House {sub.capitalize()} to be added as a mod there!"}
|
return {"error": f"@{user.username} needs to be a member of House {sub.capitalize()} to be added as a mod there!"}
|
||||||
|
|
||||||
existing = g.db.query(Mod).filter_by(user_id=user.id, sub=sub).one_or_none()
|
existing = g.db.query(Mod).filter_by(user_id=user.id, sub=sub).one_or_none()
|
||||||
|
|
Loading…
Reference in New Issue