forked from rDrama/rDrama
club ban
parent
b8fd241843
commit
fb3b5ea453
|
@ -93,6 +93,7 @@ class User(Base, Stndrd, Age_times):
|
||||||
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)
|
ban_reason = Column(String)
|
||||||
|
club_banned = Column(Boolean, default=False)
|
||||||
login_nonce = Column(Integer, default=0)
|
login_nonce = Column(Integer, default=0)
|
||||||
reserved = Column(String(256))
|
reserved = Column(String(256))
|
||||||
coins = Column(Integer, default=0)
|
coins = Column(Integer, default=0)
|
||||||
|
|
|
@ -45,6 +45,28 @@ def revert_actions(v, username):
|
||||||
return {"message": "Admin actions reverted!"}
|
return {"message": "Admin actions reverted!"}
|
||||||
|
|
||||||
|
|
||||||
|
@app.post("/@<username>/club_ban")
|
||||||
|
@admin_level_required(6)
|
||||||
|
def toggle_club_ban(v, username):
|
||||||
|
|
||||||
|
u = get_user(username, v=v)
|
||||||
|
|
||||||
|
if not u:
|
||||||
|
abort(404)
|
||||||
|
|
||||||
|
if u.admin_level >= v.admin_level:
|
||||||
|
return {"error": "noob"}
|
||||||
|
|
||||||
|
u.club_banned = not u.club_banned
|
||||||
|
|
||||||
|
for x in u.alts:
|
||||||
|
x.club_banned = not x.club_banned
|
||||||
|
|
||||||
|
return {
|
||||||
|
"message": f"@{username} has been kicked from the country club. Deserved." if u.club_banned else f"@{username}'s ban from club removed"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@app.post("/@<username>/make_admin")
|
@app.post("/@<username>/make_admin")
|
||||||
@admin_level_required(6)
|
@admin_level_required(6)
|
||||||
def make_admin(v, username):
|
def make_admin(v, username):
|
||||||
|
|
|
@ -41,7 +41,11 @@ def post_pid_comment_cid(cid, pid=None, anything=None, v=None):
|
||||||
|
|
||||||
comment = get_comment(cid, v=v)
|
comment = get_comment(cid, v=v)
|
||||||
|
|
||||||
if comment.post and comment.post.club and not (v and v.coins > 150): abort(403)
|
if comment.post and comment.post.club:
|
||||||
|
if not v:
|
||||||
|
abort(403)
|
||||||
|
elif v.admin_level < 3 and (v.coins < 750 or v.club_banned):
|
||||||
|
abort(403)
|
||||||
|
|
||||||
if not comment.parent_submission and not (v and (comment.author.id == v.id or comment.sentto == v.id)) and not (v and v.admin_level == 6) : abort(403)
|
if not comment.parent_submission and not (v and (comment.author.id == v.id or comment.sentto == v.id)) and not (v and v.admin_level == 6) : abort(403)
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ def toggle_club(pid, v):
|
||||||
|
|
||||||
post = get_post(pid)
|
post = get_post(pid)
|
||||||
|
|
||||||
if not post.author_id == v.id and not v.admin_level >= 3: abort(403)
|
if not (post.author_id == v.id and not v.club_banned) or not v.admin_level >= 3: abort(403)
|
||||||
|
|
||||||
post.club = not post.club
|
post.club = not post.club
|
||||||
g.db.add(post)
|
g.db.add(post)
|
||||||
|
@ -88,18 +88,6 @@ def post_id(pid, anything=None, v=None):
|
||||||
if v: defaultsortingcomments = v.defaultsortingcomments
|
if v: defaultsortingcomments = v.defaultsortingcomments
|
||||||
else: defaultsortingcomments = "top"
|
else: defaultsortingcomments = "top"
|
||||||
sort=request.args.get("sort", defaultsortingcomments)
|
sort=request.args.get("sort", defaultsortingcomments)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
try: pid = int(pid)
|
try: pid = int(pid)
|
||||||
except:
|
except:
|
||||||
|
@ -108,7 +96,12 @@ def post_id(pid, anything=None, v=None):
|
||||||
|
|
||||||
post = get_post(pid, v=v)
|
post = get_post(pid, v=v)
|
||||||
|
|
||||||
if post.club and not (v and v.coins > 150): abort(403)
|
if post.club:
|
||||||
|
if not v:
|
||||||
|
abort(403)
|
||||||
|
elif v.admin_level < 3 and (v.coins < 750 or v.club_banned):
|
||||||
|
abort(403)
|
||||||
|
|
||||||
|
|
||||||
if v:
|
if v:
|
||||||
votes = g.db.query(CommentVote).filter_by(user_id=v.id).subquery()
|
votes = g.db.query(CommentVote).filter_by(user_id=v.id).subquery()
|
||||||
|
|
|
@ -375,10 +375,10 @@
|
||||||
<label class="custom-control-label" for="privateCheck">Draft</label>
|
<label class="custom-control-label" for="privateCheck">Draft</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if v.admin_level == 6 or v.coins > 150 %}
|
{% if v.admin_level == 6 or (v.coins >= 750 and not v.club_banned) %}
|
||||||
<div class="custom-control custom-checkbox">
|
<div class="custom-control custom-checkbox">
|
||||||
<input type="checkbox" class="custom-control-input" id="clubCheck" name="club">
|
<input type="checkbox" class="custom-control-input" id="clubCheck" name="club">
|
||||||
<label class="custom-control-label" for="clubCheck">+150 coins to view</label>
|
<label class="custom-control-label" for="clubCheck">Country Club thread</label>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<pre>
|
<pre>
|
||||||
|
|
|
@ -327,6 +327,12 @@
|
||||||
<input type="hidden" name="user" value="{{u.username}}">
|
<input type="hidden" name="user" value="{{u.username}}">
|
||||||
<input type="submit" class="btn btn-danger" value="Remove User's Content">
|
<input type="submit" class="btn btn-danger" value="Remove User's Content">
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
{% if u.club_banned %}
|
||||||
|
<button class="btn btn-success" onclick="post_toast('/@{{u.username}}/club_ban')">Grant club access</button>
|
||||||
|
{% else %}
|
||||||
|
<button class="btn btn-danger" onclick="post_toast('/@{{u.username}}/club_ban')">Bar from club</button>
|
||||||
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<pre></pre>
|
<pre></pre>
|
||||||
<p>User ID: {{u.id}}</p>
|
<p>User ID: {{u.id}}</p>
|
||||||
|
@ -505,6 +511,13 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if v.admin_level > 1 %}
|
{% if v.admin_level > 1 %}
|
||||||
|
|
||||||
|
{% if u.club_banned %}
|
||||||
|
<button class="btn btn-success" onclick="post_toast('/@{{u.username}}/club_ban')">Grant club access</button>
|
||||||
|
{% else %}
|
||||||
|
<button class="btn btn-danger" onclick="post_toast('/@{{u.username}}/club_ban')">Bar from club</button>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
<br><br>
|
<br><br>
|
||||||
<div class="body d-lg-flex border-bottom">
|
<div class="body d-lg-flex border-bottom">
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue