forked from rDrama/rDrama
give ppl a notif when janny toggles nsfw on their posts
parent
7d317e1fa8
commit
2525db6b07
|
@ -876,9 +876,9 @@ def undelete_post_pid(pid, v):
|
||||||
return {"message": "Post undeleted!"}
|
return {"message": "Post undeleted!"}
|
||||||
|
|
||||||
|
|
||||||
@app.post("/toggle_post_nsfw/<pid>")
|
@app.post("/mark_post_nsfw/<pid>")
|
||||||
@auth_required
|
@auth_required
|
||||||
def toggle_post_nsfw(pid, v):
|
def mark_post_nsfw(pid, v):
|
||||||
post = get_post(pid)
|
post = get_post(pid)
|
||||||
|
|
||||||
if post.author_id != v.id and not v.admin_level >= PERMS['POST_COMMENT_MODERATION'] and not (post.sub and v.mods(post.sub)):
|
if post.author_id != v.id and not v.admin_level >= PERMS['POST_COMMENT_MODERATION'] and not (post.sub and v.mods(post.sub)):
|
||||||
|
@ -887,13 +887,13 @@ def toggle_post_nsfw(pid, v):
|
||||||
if post.over_18 and v.is_suspended_permanently:
|
if post.over_18 and v.is_suspended_permanently:
|
||||||
abort(403)
|
abort(403)
|
||||||
|
|
||||||
post.over_18 = not post.over_18
|
post.over_18 = True
|
||||||
g.db.add(post)
|
g.db.add(post)
|
||||||
|
|
||||||
if post.author_id != v.id:
|
if post.author_id != v.id:
|
||||||
if v.admin_level >= PERMS['POST_COMMENT_MODERATION']:
|
if v.admin_level >= PERMS['POST_COMMENT_MODERATION']:
|
||||||
ma = ModAction(
|
ma = ModAction(
|
||||||
kind = "set_nsfw" if post.over_18 else "unset_nsfw",
|
kind = "set_nsfw",
|
||||||
user_id = v.id,
|
user_id = v.id,
|
||||||
target_submission_id = post.id,
|
target_submission_id = post.id,
|
||||||
)
|
)
|
||||||
|
@ -901,14 +901,48 @@ def toggle_post_nsfw(pid, v):
|
||||||
else:
|
else:
|
||||||
ma = SubAction(
|
ma = SubAction(
|
||||||
sub = post.sub,
|
sub = post.sub,
|
||||||
kind = "set_nsfw" if post.over_18 else "unset_nsfw",
|
kind = "set_nsfw",
|
||||||
user_id = v.id,
|
user_id = v.id,
|
||||||
target_submission_id = post.id,
|
target_submission_id = post.id,
|
||||||
)
|
)
|
||||||
g.db.add(ma)
|
g.db.add(ma)
|
||||||
|
send_repeatable_notification(post.author_id, f"@{v.username} (Admin) has marked [{post.title}](/post/{post.id}) as +18")
|
||||||
|
|
||||||
if post.over_18: return {"message": "Post has been marked as +18!"}
|
return {"message": "Post has been marked as +18!"}
|
||||||
else: return {"message": "Post has been unmarked as +18!"}
|
|
||||||
|
@app.post("/unmark_post_nsfw/<pid>")
|
||||||
|
@auth_required
|
||||||
|
def unmark_post_nsfw(pid, v):
|
||||||
|
post = get_post(pid)
|
||||||
|
|
||||||
|
if post.author_id != v.id and not v.admin_level >= PERMS['POST_COMMENT_MODERATION'] and not (post.sub and v.mods(post.sub)):
|
||||||
|
abort(403)
|
||||||
|
|
||||||
|
if post.over_18 and v.is_suspended_permanently:
|
||||||
|
abort(403)
|
||||||
|
|
||||||
|
post.over_18 = False
|
||||||
|
g.db.add(post)
|
||||||
|
|
||||||
|
if post.author_id != v.id:
|
||||||
|
if v.admin_level >= PERMS['POST_COMMENT_MODERATION']:
|
||||||
|
ma = ModAction(
|
||||||
|
kind = "unset_nsfw",
|
||||||
|
user_id = v.id,
|
||||||
|
target_submission_id = post.id,
|
||||||
|
)
|
||||||
|
g.db.add(ma)
|
||||||
|
else:
|
||||||
|
ma = SubAction(
|
||||||
|
sub = post.sub,
|
||||||
|
kind = "unset_nsfw",
|
||||||
|
user_id = v.id,
|
||||||
|
target_submission_id = post.id,
|
||||||
|
)
|
||||||
|
g.db.add(ma)
|
||||||
|
send_repeatable_notification(post.author_id, f"@{v.username} (Admin) has unmarked [{post.title}](/post/{post.id}) as +18")
|
||||||
|
|
||||||
|
return {"message": "Post has been unmarked as +18!"}
|
||||||
|
|
||||||
@app.post("/save_post/<pid>")
|
@app.post("/save_post/<pid>")
|
||||||
@limiter.limit(DEFAULT_RATELIMIT_SLOWER)
|
@limiter.limit(DEFAULT_RATELIMIT_SLOWER)
|
||||||
|
|
|
@ -73,8 +73,8 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v.id==p.author_id or v.admin_level >= PERMS['POST_COMMENT_MODERATION'] or (p.sub and v.mods(p.sub)) %}
|
{% if v.id==p.author_id or v.admin_level >= PERMS['POST_COMMENT_MODERATION'] or (p.sub and v.mods(p.sub)) %}
|
||||||
<button type="button" id="mark-{{p.id}}" class="dropdown-item {% if p.over_18 %}d-none{% endif %} list-inline-item text-danger" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark-{{p.id}}','unmark-{{p.id}}','d-none')"><i class="fas fa-eye-evil"></i>Mark +18</button>
|
<button type="button" id="mark-{{p.id}}" class="dropdown-item {% if p.over_18 %}d-none{% endif %} list-inline-item text-danger" onclick="postToastSwitch(this,'/mark_post_nsfw/{{p.id}}','mark-{{p.id}}','unmark-{{p.id}}','d-none')"><i class="fas fa-eye-evil"></i>Mark +18</button>
|
||||||
<button type="button" id="unmark-{{p.id}}" class="dropdown-item {% if not p.over_18 %}d-none{% endif %} list-inline-item text-success" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark-{{p.id}}','unmark-{{p.id}}','d-none')"><i class="fas fa-eye-evil"></i>Unmark +18</button>
|
<button type="button" id="unmark-{{p.id}}" class="dropdown-item {% if not p.over_18 %}d-none{% endif %} list-inline-item text-success" onclick="postToastSwitch(this,'/unmark_post_nsfw/{{p.id}}','mark-{{p.id}}','unmark-{{p.id}}','d-none')"><i class="fas fa-eye-evil"></i>Unmark +18</button>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v.admin_level >= PERMS['USER_BAN'] and v.id != p.author_id %}
|
{% if v.admin_level >= PERMS['USER_BAN'] and v.id != p.author_id %}
|
||||||
<button type="button" id="ban-{{p.fullname}}" class="dropdown-item {% if p.author.is_suspended %}d-none{% endif %} list-inline-item text-danger" data-bs-toggle="modal" data-bs-target="#banModal" onclick="banModal('/post/{{p.id}}', '{{p.author.id}}', '{{p.author_name}}', '{{p.fullname}}','d-none')"><i class="fas fa-user-slash text-danger fa-fw"></i>Ban user</button>
|
<button type="button" id="ban-{{p.fullname}}" class="dropdown-item {% if p.author.is_suspended %}d-none{% endif %} list-inline-item text-danger" data-bs-toggle="modal" data-bs-target="#banModal" onclick="banModal('/post/{{p.id}}', '{{p.author.id}}', '{{p.author_name}}', '{{p.fullname}}','d-none')"><i class="fas fa-user-slash text-danger fa-fw"></i>Ban user</button>
|
||||||
|
|
|
@ -50,8 +50,8 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if v.id==p.author_id or (p.sub and v.mods(p.sub)) %}
|
{% if v.id==p.author_id or (p.sub and v.mods(p.sub)) %}
|
||||||
<button type="button" id="mark3-{{p.id}}" class="{% if p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-danger" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark3-{{p.id}}','unmark3-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center mr-2"></i>Mark +18</button>
|
<button type="button" id="mark3-{{p.id}}" class="{% if p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-danger" onclick="postToastSwitch(this,'/mark_post_nsfw/{{p.id}}','mark3-{{p.id}}','unmark3-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center mr-2"></i>Mark +18</button>
|
||||||
<button type="button" id="unmark3-{{p.id}}" class="{% if not p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-success" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark3-{{p.id}}','unmark3-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center mr-2"></i>Unmark +18</button>
|
<button type="button" id="unmark3-{{p.id}}" class="{% if not p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-success" onclick="postToastSwitch(this,'/unmark_post_nsfw/{{p.id}}','mark3-{{p.id}}','unmark3-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center mr-2"></i>Unmark +18</button>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if p.sub and v.mods(p.sub) %}
|
{% if p.sub and v.mods(p.sub) %}
|
||||||
|
|
|
@ -33,8 +33,8 @@
|
||||||
<button type="button" id="approve2-{{p.id}}" class="{% if not p.is_banned and request.path != '/admin/reported/posts' %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-success text-left" onclick="approvePost(this,'{{p.id}}','remove2-{{p.id}}','approve2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-check text-center mr-2"></i>Approve</button>
|
<button type="button" id="approve2-{{p.id}}" class="{% if not p.is_banned and request.path != '/admin/reported/posts' %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-success text-left" onclick="approvePost(this,'{{p.id}}','remove2-{{p.id}}','approve2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-check text-center mr-2"></i>Approve</button>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
|
{% if v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
|
||||||
<button type="button" id="mark2-{{p.id}}" class="{% if p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-danger" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark2-{{p.id}}','unmark2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center text-danger mr-2"></i>Mark +18</button>
|
<button type="button" id="mark2-{{p.id}}" class="{% if p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-danger" onclick="postToastSwitch(this,'/mark_post_nsfw/{{p.id}}','mark2-{{p.id}}','unmark2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center text-danger mr-2"></i>Mark +18</button>
|
||||||
<button type="button" id="unmark2-{{p.id}}" class="{% if not p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-success" onclick="postToastSwitch(this,'/toggle_post_nsfw/{{p.id}}','mark2-{{p.id}}','unmark2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center text-success mr-2"></i>Unmark +18</button>
|
<button type="button" id="unmark2-{{p.id}}" class="{% if not p.over_18 %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-left text-success" onclick="postToastSwitch(this,'/unmark_post_nsfw/{{p.id}}','mark2-{{p.id}}','unmark2-{{p.id}}','d-none')" data-bs-dismiss="modal"><i class="far fa-eye-evil text-center text-success mr-2"></i>Unmark +18</button>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if v.id != p.author_id and v.admin_level >= PERMS['USER_BAN'] %}
|
{% if v.id != p.author_id and v.admin_level >= PERMS['USER_BAN'] %}
|
||||||
<button type="button" id="ban2-{{p.fullname}}" data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#banModal" onclick="banModal('/post/{{p.id}}', '{{p.author.id}}', '{{p.author_name}}', '{{p.fullname}}','d-none')" class="{% if p.author.is_suspended %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-danger text-left"><i class="fas fa-user-minus mr-2"></i>Ban user</button>
|
<button type="button" id="ban2-{{p.fullname}}" data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#banModal" onclick="banModal('/post/{{p.id}}', '{{p.author.id}}', '{{p.author_name}}', '{{p.fullname}}','d-none')" class="{% if p.author.is_suspended %}d-none{% endif %} nobackground btn btn-link btn-block btn-lg text-danger text-left"><i class="fas fa-user-minus mr-2"></i>Ban user</button>
|
||||||
|
|
Loading…
Reference in New Issue