pinprovements

remotes/1693176582716663532/tmp_refs/heads/watchparty
justcool393 2022-10-25 17:48:10 -05:00
parent a25169cbea
commit 548f2613c7
4 changed files with 19 additions and 16 deletions

View File

@ -5,16 +5,19 @@ function pinPost(t, id) {
{ {
}, },
(xhr) => { (xhr) => {
if(xhr.status == 200) { if (xhr.status >= 200 && xhr.status < 300) {
t.innerHTML = t.innerHTML.replace(t.textContent, 'Pin permanently') response = JSON.parse(xhr.response);
length = response["length"];
if (length == "permanently") {
t.innerHTML = t.innerHTML.replace(t.textContent, 'Pin for 1 hour');
t.classList.add('d-none');
} else {
t.innerHTML = t.innerHTML.replace(t.textContent, 'Pin permanently');
}
t.nextElementSibling.classList.remove('d-none');
t.disabled = false;
t.classList.remove("disabled");
} }
else if(xhr.status == 201) {
t.innerHTML = t.innerHTML.replace(t.textContent, 'Pin for 1 hour')
t.classList.add('d-none')
}
t.nextElementSibling.classList.remove('d-none')
t.disabled = false;
t.classList.remove("disabled");
} }
); );
setTimeout(() => { setTimeout(() => {

View File

@ -152,6 +152,7 @@ AGENDAPOSTER_MSG_HTML = """<p>Hi <a href="/id/{id}"><img loading="lazy" src="/pp
DISCORD_CHANGELOG_CHANNEL_IDS = [1022232469606498324] DISCORD_CHANGELOG_CHANNEL_IDS = [1022232469606498324]
WPD_CHANNEL_ID = 1013990963846332456 WPD_CHANNEL_ID = 1013990963846332456
PIN_AWARD_TEXT = " (pin award)"
################################################################################ ################################################################################
### SITE SPECIFIC CONSTANTS ### SITE SPECIFIC CONSTANTS

View File

@ -1121,7 +1121,7 @@ def remove_post(post_id, v):
post = get_post(post_id) post = get_post(post_id)
post.is_banned = True post.is_banned = True
post.is_approved = None post.is_approved = None
if post.stickied and not post.stickied.endswith('(pin award)'): if post.stickied and not post.stickied.endswith(PIN_AWARD_TEXT):
post.stickied = None post.stickied = None
post.is_pinned = False post.is_pinned = False
post.ban_reason = v.username post.ban_reason = v.username
@ -1208,7 +1208,7 @@ def distinguish_post(post_id, v):
def sticky_post(post_id, v): def sticky_post(post_id, v):
post = get_post(post_id) post = get_post(post_id)
if post.is_banned: abort(403, "Can't sticky removed posts!") if post.is_banned: abort(403, "Can't sticky removed posts!")
if post.stickied and post.stickied.endswith('(pin award)'): if post.stickied and post.stickied.endswith(PIN_AWARD_TEXT):
abort(403, "Can't pin award pins!") abort(403, "Can't pin award pins!")
pins = g.db.query(Submission).filter(Submission.stickied != None, Submission.is_banned == False).count() pins = g.db.query(Submission).filter(Submission.stickied != None, Submission.is_banned == False).count()
@ -1243,15 +1243,14 @@ def sticky_post(post_id, v):
cache.delete_memoized(frontlist) cache.delete_memoized(frontlist)
return {"message": f"Post pinned {pin_time}!"}, code return {"message": f"Post pinned {pin_time}!", "length": pin_time}, 201
@app.post("/unsticky/<post_id>") @app.post("/unsticky/<post_id>")
@admin_level_required(PERMS['POST_COMMENT_MODERATION']) @admin_level_required(PERMS['POST_COMMENT_MODERATION'])
def unsticky_post(post_id, v): def unsticky_post(post_id, v):
post = get_post(post_id) post = get_post(post_id)
if post.stickied: if post.stickied:
if post.stickied.endswith('(pin award)'): abort(403, "Can't unpin award pins!") if post.stickied.endswith(PIN_AWARD_TEXT): abort(403, "Can't unpin award pins!")
if post.author_id == LAWLZ_ID and post.stickied_utc and SITE_NAME == 'rDrama': abort(403, "Can't unpin lawlzposts!") if post.author_id == LAWLZ_ID and post.stickied_utc and SITE_NAME == 'rDrama': abort(403, "Can't unpin lawlzposts!")
post.stickied = None post.stickied = None
@ -1302,7 +1301,7 @@ def unsticky_comment(cid, v):
comment = get_comment(cid, v=v) comment = get_comment(cid, v=v)
if comment.stickied: if comment.stickied:
if comment.stickied.endswith("(pin award)"): abort(403, "Can't unpin award pins!") if comment.stickied.endswith(PIN_AWARD_TEXT): abort(403, "Can't unpin award pins!")
comment.stickied = None comment.stickied = None
g.db.add(comment) g.db.add(comment)

View File

@ -224,7 +224,7 @@ def award_thing(v, thing_type, id):
if thing.stickied and thing.stickied_utc: if thing.stickied and thing.stickied_utc:
thing.stickied_utc += 3600 thing.stickied_utc += 3600
else: else:
thing.stickied = f'{v.username} (pin award)' thing.stickied = f'{v.username}{PIN_AWARD_TEXT}'
if thing_type == 'comment': if thing_type == 'comment':
thing.stickied_utc = int(time.time()) + 3600*6 thing.stickied_utc = int(time.time()) + 3600*6
else: else: