forked from MarseyWorld/MarseyWorld
parent
bc9437497d
commit
24c298f329
|
@ -594,8 +594,13 @@ EMOJI_SRCS = ['files/assets/emojis.json']
|
||||||
PIN_LIMIT = 3
|
PIN_LIMIT = 3
|
||||||
POST_TITLE_LENGTH_LIMIT = 500 # do not make larger than 500 without altering the table
|
POST_TITLE_LENGTH_LIMIT = 500 # do not make larger than 500 without altering the table
|
||||||
POST_TITLE_HTML_LENGTH_LIMIT = 1500 # do not make larger than 1500 without altering the table
|
POST_TITLE_HTML_LENGTH_LIMIT = 1500 # do not make larger than 1500 without altering the table
|
||||||
POST_BODY_LENGTH_LIMIT = 20000 # do not make larger than 20000 without altering the table
|
|
||||||
POST_BODY_HTML_LENGTH_LIMIT = 40000 # do not make larger than 40000 without altering the table
|
def POST_BODY_LENGTH_LIMIT(v):
|
||||||
|
if v.patron: return 100000
|
||||||
|
return 20000
|
||||||
|
|
||||||
|
POST_BODY_HTML_LENGTH_LIMIT = 200000 # do not make larger than 200000 without altering the table
|
||||||
|
|
||||||
COMMENT_BODY_LENGTH_LIMIT = 10000 # do not make larger than 10000 characters without altering the table
|
COMMENT_BODY_LENGTH_LIMIT = 10000 # do not make larger than 10000 characters without altering the table
|
||||||
COMMENT_BODY_HTML_LENGTH_LIMIT = 20000 # do not make larger than 20000 characters without altering the table
|
COMMENT_BODY_HTML_LENGTH_LIMIT = 20000 # do not make larger than 20000 characters without altering the table
|
||||||
CSS_LENGTH_LIMIT = 10000 # do not make larger than 20000 characters without altering the table
|
CSS_LENGTH_LIMIT = 10000 # do not make larger than 20000 characters without altering the table
|
||||||
|
|
|
@ -311,7 +311,7 @@ def sanitize_raw_body(sanitized:Optional[str], is_post:bool) -> str:
|
||||||
sanitized = html_comment_regex.sub('', sanitized)
|
sanitized = html_comment_regex.sub('', sanitized)
|
||||||
sanitized = sanitized.replace('\u200e','').replace('\u200b','').replace("\ufeff", "").replace("\r\n", "\n")
|
sanitized = sanitized.replace('\u200e','').replace('\u200b','').replace("\ufeff", "").replace("\r\n", "\n")
|
||||||
sanitized = sanitized.strip()
|
sanitized = sanitized.strip()
|
||||||
return sanitized[:POST_BODY_LENGTH_LIMIT if is_post else COMMENT_BODY_LENGTH_LIMIT]
|
return sanitized[:POST_BODY_LENGTH_LIMIT(g.v) if is_post else COMMENT_BODY_LENGTH_LIMIT]
|
||||||
|
|
||||||
|
|
||||||
def sanitize_settings_text(sanitized:Optional[str], max_length:Optional[int]=None) -> str:
|
def sanitize_settings_text(sanitized:Optional[str], max_length:Optional[int]=None) -> str:
|
||||||
|
|
|
@ -110,7 +110,7 @@ def inject_constants():
|
||||||
"FP":FP, "patron":patron, "get_setting": get_setting,
|
"FP":FP, "patron":patron, "get_setting": get_setting,
|
||||||
"SIDEBAR_THREAD":SIDEBAR_THREAD, "BANNER_THREAD":BANNER_THREAD,
|
"SIDEBAR_THREAD":SIDEBAR_THREAD, "BANNER_THREAD":BANNER_THREAD,
|
||||||
"BADGE_THREAD":BADGE_THREAD, "SNAPPY_THREAD":SNAPPY_THREAD,
|
"BADGE_THREAD":BADGE_THREAD, "SNAPPY_THREAD":SNAPPY_THREAD,
|
||||||
"approved_embed_hosts":approved_embed_hosts,
|
"approved_embed_hosts":approved_embed_hosts, "POST_BODY_LENGTH_LIMIT":POST_BODY_LENGTH_LIMIT,
|
||||||
"SITE_SETTINGS":get_settings(), "EMAIL":EMAIL, "max": max, "min": min, "user_can_see":User.can_see,
|
"SITE_SETTINGS":get_settings(), "EMAIL":EMAIL, "max": max, "min": min, "user_can_see":User.can_see,
|
||||||
"TELEGRAM_ID":TELEGRAM_ID, "EMAIL_REGEX_PATTERN":EMAIL_REGEX_PATTERN,
|
"TELEGRAM_ID":TELEGRAM_ID, "EMAIL_REGEX_PATTERN":EMAIL_REGEX_PATTERN,
|
||||||
"TRUESCORE_DONATE_MINIMUM":TRUESCORE_DONATE_MINIMUM, "PROGSTACK_ID":PROGSTACK_ID,
|
"TRUESCORE_DONATE_MINIMUM":TRUESCORE_DONATE_MINIMUM, "PROGSTACK_ID":PROGSTACK_ID,
|
||||||
|
|
|
@ -291,7 +291,7 @@ def edit_post(pid, v):
|
||||||
p.title_html = title_html
|
p.title_html = title_html
|
||||||
|
|
||||||
body = process_files(request.files, v, body)
|
body = process_files(request.files, v, body)
|
||||||
body = body.strip()[:POST_BODY_LENGTH_LIMIT] # process_files() may be adding stuff to the body
|
body = body.strip()[:POST_BODY_LENGTH_LIMIT(v)] # process_files() may be adding stuff to the body
|
||||||
|
|
||||||
if body != p.body:
|
if body != p.body:
|
||||||
body, bets, options, choices = sanitize_poll_options(v, body, False)
|
body, bets, options, choices = sanitize_poll_options(v, body, False)
|
||||||
|
@ -652,7 +652,7 @@ def submit_post(v:User, sub=None):
|
||||||
body, bets, options, choices = sanitize_poll_options(v, body, True)
|
body, bets, options, choices = sanitize_poll_options(v, body, True)
|
||||||
|
|
||||||
body = process_files(request.files, v, body)
|
body = process_files(request.files, v, body)
|
||||||
body = body.strip()[:POST_BODY_LENGTH_LIMIT] # process_files() adds content to the body, so we need to re-strip
|
body = body.strip()[:POST_BODY_LENGTH_LIMIT(v)] # process_files() adds content to the body, so we need to re-strip
|
||||||
|
|
||||||
torture = (v.agendaposter and not v.marseyawarded and sub != 'chudrama')
|
torture = (v.agendaposter and not v.marseyawarded and sub != 'chudrama')
|
||||||
|
|
||||||
|
|
|
@ -168,7 +168,7 @@
|
||||||
<input hidden name="formkey" value="{{v|formkey}}">
|
<input hidden name="formkey" value="{{v|formkey}}">
|
||||||
<input hidden name="current_page" value="{{request.path}}">
|
<input hidden name="current_page" value="{{request.path}}">
|
||||||
<textarea id="post-edit-title" autocomplete="off" max-length="500" name="title" class="comment-box form-control rounded" required placeholder="title">{{p.title}}</textarea>
|
<textarea id="post-edit-title" autocomplete="off" max-length="500" name="title" class="comment-box form-control rounded" required placeholder="title">{{p.title}}</textarea>
|
||||||
<textarea autocomplete="off" name="body" {% if v.longpost %}minlength="280"{% endif %} maxlength="{% if v.bird %}140{% else %}20000{% endif %}" data-preview="post-edit-{{p.id}}" data-nonce="{{g.nonce}}" data-oninput="markdown(this);charLimit('post-edit-box-{{p.id}}','charcount-post-edit')" id="post-edit-box-{{p.id}}" form="post-edit-form-{{p.id}}" class="file-ta comment-box form-control rounded" placeholder="Add text to your post..." rows="10" data-id="{{p.id}}">{{p.body}}</textarea>
|
<textarea autocomplete="off" name="body" {% if v.longpost %}minlength="280"{% endif %} maxlength="{% if v.bird %}140{% else %}{{POST_BODY_LENGTH_LIMIT(v)}}{% endif %}" data-preview="post-edit-{{p.id}}" data-nonce="{{g.nonce}}" data-oninput="markdown(this);charLimit('post-edit-box-{{p.id}}','charcount-post-edit')" id="post-edit-box-{{p.id}}" form="post-edit-form-{{p.id}}" class="file-ta comment-box form-control rounded" placeholder="Add text to your post..." rows="10" data-id="{{p.id}}">{{p.body}}</textarea>
|
||||||
|
|
||||||
<div class="text-small font-weight-bold mt-1" id="charcount-post-edit" style="right: 1rem; bottom: 0.5rem; z-index: 3;"></div>
|
<div class="text-small font-weight-bold mt-1" id="charcount-post-edit" style="right: 1rem; bottom: 0.5rem; z-index: 3;"></div>
|
||||||
|
|
||||||
|
|
|
@ -49,8 +49,8 @@
|
||||||
<small class="form-text text-muted">You can upload images, videos, or audio.</small>
|
<small class="form-text text-muted">You can upload images, videos, or audio.</small>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<label for="body" class="mt-3">Text<i class="fas fa-info-circle text-gray-400 ml-1" data-bs-toggle="tooltip" data-bs-placement="top" title="Uses markdown. Limited to 20000 characters."></i></label>
|
<label for="body" class="mt-3">Text<i class="fas fa-info-circle text-gray-400 ml-1" data-bs-toggle="tooltip" data-bs-placement="top" title="Uses markdown. Limited to {{POST_BODY_LENGTH_LIMIT(v)}} characters."></i></label>
|
||||||
<textarea form="submitform" id="post-text" class="file-ta form-control rounded" placeholder="Optional if you have a link or an image." rows="7" name="body" data-preview="preview" data-nonce="{{g.nonce}}" data-oninput="markdown(this);charLimit('post-text','character-count-submit-text-form');checkForRequired();savetext()" {% if v.longpost %}minlength="280"{% endif %} maxlength="{% if v.bird %}140{% else %}20000{% endif %}" required></textarea>
|
<textarea form="submitform" id="post-text" class="file-ta form-control rounded" placeholder="Optional if you have a link or an image." rows="7" name="body" data-preview="preview" data-nonce="{{g.nonce}}" data-oninput="markdown(this);charLimit('post-text','character-count-submit-text-form');checkForRequired();savetext()" {% if v.longpost %}minlength="280"{% endif %} maxlength="{% if v.bird %}140{% else %}{{POST_BODY_LENGTH_LIMIT(v)}}{% endif %}" required></textarea>
|
||||||
<div class="ghostdiv" style="display:none;"></div>
|
<div class="ghostdiv" style="display:none;"></div>
|
||||||
<div class="text-small font-weight-bold mt-1" id="character-count-submit-text-form" style="right: 1rem; bottom: 0.5rem; z-index: 3;"></div>
|
<div class="text-small font-weight-bold mt-1" id="character-count-submit-text-form" style="right: 1rem; bottom: 0.5rem; z-index: 3;"></div>
|
||||||
<p></p>
|
<p></p>
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
alter table submissions alter column body type varchar(100000);
|
||||||
|
alter table submissions alter column body_html type varchar(200000);
|
|
@ -110,8 +110,8 @@ CREATE TABLE public.submissions (
|
||||||
stickied character varying(40),
|
stickied character varying(40),
|
||||||
title character varying(500) NOT NULL,
|
title character varying(500) NOT NULL,
|
||||||
url character varying(2083),
|
url character varying(2083),
|
||||||
body character varying(20000),
|
body character varying(100000),
|
||||||
body_html character varying(40000),
|
body_html character varying(200000),
|
||||||
embed character varying(1500),
|
embed character varying(1500),
|
||||||
ban_reason character varying(25),
|
ban_reason character varying(25),
|
||||||
title_html character varying(1500) NOT NULL,
|
title_html character varying(1500) NOT NULL,
|
||||||
|
@ -2872,4 +2872,3 @@ ALTER TABLE ONLY public.comments
|
||||||
--
|
--
|
||||||
-- PostgreSQL database dump complete
|
-- PostgreSQL database dump complete
|
||||||
--
|
--
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue