fix a couple of potentially rare 500s
parent
6138c94a10
commit
32a4693da9
|
@ -815,7 +815,7 @@ class User(Base):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def ban(self, admin=None, reason=None, days=0):
|
def ban(self, admin=None, reason=None, days=0.0):
|
||||||
if days:
|
if days:
|
||||||
self.unban_utc = int(time.time()) + (days * 86400)
|
self.unban_utc = int(time.time()) + (days * 86400)
|
||||||
g.db.add(self)
|
g.db.add(self)
|
||||||
|
|
|
@ -62,6 +62,7 @@ def execute_snappy(post, v):
|
||||||
else: SNAPPY_CHOICES = SNAPPY_QUOTES
|
else: SNAPPY_CHOICES = SNAPPY_QUOTES
|
||||||
elif SNAPPY_MARSEYS: SNAPPY_CHOICES = SNAPPY_MARSEYS
|
elif SNAPPY_MARSEYS: SNAPPY_CHOICES = SNAPPY_MARSEYS
|
||||||
elif SNAPPY_QUOTES: SNAPPY_CHOICES = SNAPPY_QUOTES
|
elif SNAPPY_QUOTES: SNAPPY_CHOICES = SNAPPY_QUOTES
|
||||||
|
else: SNAPPY_CHOICES = [""]
|
||||||
|
|
||||||
body = random.choice(SNAPPY_CHOICES).strip()
|
body = random.choice(SNAPPY_CHOICES).strip()
|
||||||
if body.startswith('▼'):
|
if body.startswith('▼'):
|
||||||
|
|
|
@ -993,7 +993,11 @@ def ban_user(user_id, v):
|
||||||
if user.admin_level > v.admin_level:
|
if user.admin_level > v.admin_level:
|
||||||
abort(403)
|
abort(403)
|
||||||
|
|
||||||
days = float(request.values.get("days")) if request.values.get('days') else 0
|
days = 0.0
|
||||||
|
try:
|
||||||
|
days = float(request.values.get("days"))
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
reason = request.values.get("reason").strip()[:256]
|
reason = request.values.get("reason").strip()[:256]
|
||||||
reason = filter_emojis_only(reason)
|
reason = filter_emojis_only(reason)
|
||||||
|
@ -1009,8 +1013,11 @@ def ban_user(user_id, v):
|
||||||
continue
|
continue
|
||||||
x.ban(admin=v, reason=reason, days=days)
|
x.ban(admin=v, reason=reason, days=days)
|
||||||
|
|
||||||
|
duration = "permanently"
|
||||||
if days:
|
if days:
|
||||||
days_txt = str(days).rstrip('.0')
|
days_txt = str(days).rstrip('.0')
|
||||||
|
duration = f"for {days_txt} day"
|
||||||
|
if days != 1: duration += "s"
|
||||||
if reason: text = f"@{v.username} (Admin) has banned you for **{days_txt}** days for the following reason:\n\n> {reason}"
|
if reason: text = f"@{v.username} (Admin) has banned you for **{days_txt}** days for the following reason:\n\n> {reason}"
|
||||||
else: text = f"@{v.username} (Admin) has banned you for **{days_txt}** days."
|
else: text = f"@{v.username} (Admin) has banned you for **{days_txt}** days."
|
||||||
else:
|
else:
|
||||||
|
@ -1019,10 +1026,6 @@ def ban_user(user_id, v):
|
||||||
|
|
||||||
send_repeatable_notification(user.id, text)
|
send_repeatable_notification(user.id, text)
|
||||||
|
|
||||||
if days == 0: duration = "permanently"
|
|
||||||
elif days == 1: duration = "for 1 day"
|
|
||||||
else: duration = f"for {days_txt} days"
|
|
||||||
|
|
||||||
note = f'reason: "{reason}", duration: {duration}'
|
note = f'reason: "{reason}", duration: {duration}'
|
||||||
ma=ModAction(
|
ma=ModAction(
|
||||||
kind="ban_user",
|
kind="ban_user",
|
||||||
|
|
|
@ -843,8 +843,8 @@ def submit_post(v, sub=None):
|
||||||
if len(url) > 2048:
|
if len(url) > 2048:
|
||||||
return error("There's a 2048 character limit for URLs.")
|
return error("There's a 2048 character limit for URLs.")
|
||||||
|
|
||||||
if v and v.admin_level >= PERMS['POST_BETS']:
|
|
||||||
bets = []
|
bets = []
|
||||||
|
if v and v.admin_level >= PERMS['POST_BETS']:
|
||||||
for i in bet_regex.finditer(body):
|
for i in bet_regex.finditer(body):
|
||||||
bets.append(i.group(1))
|
bets.append(i.group(1))
|
||||||
body = body.replace(i.group(0), "")
|
body = body.replace(i.group(0), "")
|
||||||
|
|
|
@ -11,9 +11,7 @@ from files.helpers.sanitize import filter_emojis_only
|
||||||
@limiter.limit("1/second;30/minute;200/hour;1000/day", key_func=lambda:f'{SITE}-{session.get("lo_user")}')
|
@limiter.limit("1/second;30/minute;200/hour;1000/day", key_func=lambda:f'{SITE}-{session.get("lo_user")}')
|
||||||
@auth_required
|
@auth_required
|
||||||
def flag_post(pid, v):
|
def flag_post(pid, v):
|
||||||
|
|
||||||
post = get_post(pid)
|
post = get_post(pid)
|
||||||
|
|
||||||
reason = request.values.get("reason", "").strip()
|
reason = request.values.get("reason", "").strip()
|
||||||
|
|
||||||
if blackjack and any(i in reason.lower() for i in blackjack.split()):
|
if blackjack and any(i in reason.lower() for i in blackjack.split()):
|
||||||
|
|
Loading…
Reference in New Issue