2021-12-14 22:48:37 +00:00
<!DOCTYPE html>
< html lang = "en" >
< head >
2022-01-28 21:06:31 +00:00
< meta name = "description" content = "{{config('DESCRIPTION')}}" >
2021-12-14 22:48:37 +00:00
< meta http-equiv = "Content-Security-Policy" content = "script-src 'self' 'unsafe-inline'; connect-src 'self'; object-src 'none';" >
2022-03-31 16:28:53 +00:00
< script src = "/assets/js/bootstrap.js?v=245" > < / script >
2021-12-14 22:48:37 +00:00
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
2021-12-27 05:07:19 +00:00
2021-12-14 22:48:37 +00:00
< meta name = "author" content = "" >
2022-03-31 16:28:53 +00:00
< link rel = "icon" type = "image/png" href = "/assets/images/{{SITE_NAME}}/icon.webp?v=1012" >
2021-12-14 22:48:37 +00:00
{% if request.host == 'pcmemes.net' %}
{% set cc='Splash Mountain' %}
{% else %}
{% set cc='Country Club' %}
{% endif %}
2021-10-15 14:08:27 +00:00
2021-12-14 22:48:37 +00:00
{% block title %}
2022-01-13 23:39:39 +00:00
< title > Create a post - {{SITE_NAME}}< / title >
2021-12-14 22:48:37 +00:00
{% endblock %}
{% block stylesheets %}
{% if v %}
< style > : root { --primary : # { { v . themecolor } } } < / style >
2022-04-04 20:53:37 +00:00
< link rel = "stylesheet" href = "/assets/css/main.css?v=206" > < link rel = "stylesheet" href = "/assets/css/{{v.theme}}.css?v=40" >
2021-12-28 19:42:05 +00:00
{% if v.agendaposter %}
< style >
html {
2022-03-31 16:28:53 +00:00
cursor:url('/assets/images/dildo.webp?v=1008'), auto;
2021-12-28 19:42:05 +00:00
}
.nav-item .text-small.font-weight-bold::before {
content: "((("
}
.nav-item .text-small.font-weight-bold::after {
content: ")))"
}
.nav-item .text-small-extra.text-primary {
font-size: 0 !important
}
.nav-item .text-small-extra.text-primary i {
font-size: 11px !important
}
< / style >
{% elif v.css %}
< link rel = "stylesheet" href = "/@{{v.username}}/css" >
{% endif %}
2021-12-14 22:48:37 +00:00
{% else %}
2022-01-28 21:06:31 +00:00
< style > : root { --primary : # { { config ( 'DEFAULT_COLOR' ) } } < / style >
2022-04-04 20:53:37 +00:00
< link rel = "stylesheet" href = "/assets/css/main.css?v=206" >
2022-04-01 13:40:46 +00:00
< link rel = "stylesheet" href = "/assets/css/{{config('DEFAULT_THEME')}}.css?v=40" >
2021-12-14 22:48:37 +00:00
{% endif %}
{% endblock %}
2021-10-15 14:08:27 +00:00
2022-03-31 16:28:53 +00:00
< body id = "submit" style = "overflow-x: hidden; {% if v and v.background %} background:url(/assets/images/backgrounds/{{v.background}}) no-repeat center center fixed !important; background-size: cover!important; background-color: #000!important;{% endif %}display: block;" >
2021-12-14 22:48:37 +00:00
{% include "header.html" %}
{% block form %}
< div class = "submit-grid-view" >
2022-03-09 02:04:37 +00:00
< form id = "submitform" action = "{% if sub %}/h/{{sub.name}}{% endif %}/submit" method = "post" enctype = "multipart/form-data" style = "grid-column: 2" >
2021-12-14 22:48:37 +00:00
< div class = "container" >
< div class = "row justify-content-center mb-5" >
< div class = "col p-3 py-md-0" >
2022-03-27 13:39:21 +00:00
< h2 class = "mt-3" > Create a post< / h2 >
2021-12-14 22:48:37 +00:00
< div class = "body" >
2022-03-19 16:19:02 +00:00
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
2021-12-14 22:48:37 +00:00
2022-03-09 02:04:37 +00:00
< label class = 'mt-4' for = "title" > Hole< / label >
2022-02-24 12:32:11 +00:00
< div class = "input-group mb2" >
2022-02-25 16:48:31 +00:00
< input list = "subs" autocomplete = "off" id = 'sub' class = "form-control" form = "submitform" name = "sub" oninput = "savetext()" { % if sub % } value = "{{sub.name}}" { % endif % } placeholder = "Optional" >
2022-02-24 12:32:11 +00:00
< datalist id = "subs" >
{% for s in SUBS %}
< option value = "{{s}}" > < / option >
{% endfor %}
< / datalist >
2022-03-04 18:19:43 +00:00
2022-02-24 12:32:11 +00:00
< / div >
2022-03-09 02:04:37 +00:00
< div class = "mt-1" style = "font-size: min(3.5vw,14px)" > < span style = "color:#ffcccb " > WARNING< / span > : Selecting a hole considerably reduces the number of people who will see your post. Don't select a hole unless that's what you want.< / div >
2022-03-04 18:19:43 +00:00
2022-02-05 18:47:21 +00:00
< label class = 'mt-4' for = "title" > Post Title< / label >
2021-12-14 22:48:37 +00:00
2022-01-13 03:42:44 +00:00
< input autocomplete = "off" class = "form-control" id = "post-title" aria-describedby = "titleHelpRegister" type = "text" name = "title" placeholder = "Required" value = "{{title}}" minlength = "1" maxlength = "500" required oninput = "checkForRequired();savetext()" >
2021-12-14 22:48:37 +00:00
< label class = "btn btn-secondary format d-inline-block m-0 " for = "emoji-reply-btn-2" >
2022-02-24 18:07:53 +00:00
< div id = "emoji-reply-btn-2" onclick = "loadEmojis('post-title')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < i class = "fas fa-smile-beam" > < / i > < / div >
2021-12-14 22:48:37 +00:00
< / label >
< div id = "urlblock" >
< label for = "URL" class = "mt-3" > URL< / label >
2022-03-08 22:41:49 +00:00
< input autocomplete = "off" class = "form-control" id = "post-url" aria-describedby = "URLHelp" name = "url" type = "url" placeholder = "Optional if you have text." value = "{{request.values.get('url','')}}" required oninput = "checkForRequired();hide_image();savetext(){% if SITE_NAME != 'PCM' %};autoSuggestTitle(){% endif %}" >
2021-12-14 22:48:37 +00:00
< small class = "form-text text-muted" > To post an image, use a direct image link such as i.imgur.com< / small >
< / div >
< div id = "image-upload-block" >
< div > < label class = "mt-3" > Attachment Upload< / label > < / div >
2022-01-17 18:42:47 +00:00
< img loading = "lazy" id = "image-preview" style = "max-width:50%" >
2021-12-14 22:48:37 +00:00
< label class = "btn btn-secondary m-0" for = "file-upload" >
< div id = "filename-show" > Select File< / div >
2021-12-28 12:41:26 +00:00
< input autocomplete = "off" id = "file-upload" type = "file" name = "file" { % if request . headers . get ( ' cf-ipcountry ' ) = = " T1 " % } disabled { % endif % } accept = "image/*, video/*" hidden >
2021-12-14 22:48:37 +00:00
< / label >
< small class = "form-text text-muted" > Optional if you have text.< / small >
< small class = "form-text text-muted" > You can upload images or videos.< / small >
< / div >
< / div >
2022-02-24 18:07:53 +00:00
< 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 >
2021-12-14 22:48:37 +00:00
< div >
2022-01-19 09:19:38 +00:00
< textarea form = "submitform" id = "post-text" class = "form-control rounded" aria-label = "With textarea" placeholder = "Optional if you have a link or an image." rows = "7" name = "body" oninput = "markdown('post-text','preview');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 >
2021-12-14 22:48:37 +00:00
< div class = "btn btn-secondary fl-r mt-3" onclick = "document.getElementById('preview').classList.toggle('d-none');" >
Toggle preview
< / 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 >
< p > < / p >
< small class = "btn btn-secondary format d-inline-block m-0" >
2022-02-24 18:07:53 +00:00
< i class = "fas fa-bold" aria-hidden = "true" onclick = "makeBold('post-text')" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Bold" > < / i >
2021-12-14 22:48:37 +00:00
< / small >
< small class = "btn btn-secondary format d-inline-block m-0" >
2022-02-24 18:07:53 +00:00
< i class = "fas fa-italic" aria-hidden = "true" onclick = "makeItalics('post-text')" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Italicize" > < / i >
2021-12-14 22:48:37 +00:00
< / small >
< small class = "btn btn-secondary format d-inline-block m-0" >
2022-02-24 18:07:53 +00:00
< i class = "fas fa-quote-right" aria-hidden = "true" onclick = "makeQuote('post-text')" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Quote" > < / i >
2021-12-14 22:48:37 +00:00
< / small >
2022-02-24 18:07:53 +00:00
< small class = "btn btn-secondary format d-inline-block m-0" > < span class = "font-weight-bolder text-uppercase" aria-hidden = "true" onclick = "getGif();commentForm('post-text')" data-bs-toggle = "modal" data-bs-target = "#gifModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add GIF" > GIF< / span > < / small >
2021-12-14 22:48:37 +00:00
< label class = "btn btn-secondary format d-inline-block m-0" for = "emoji-reply-btn" >
2022-02-24 18:07:53 +00:00
< div id = "emoji-reply-btn" onclick = "loadEmojis('post-text')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < i class = "fas fa-smile-beam" > < / i > < / div >
2021-12-14 22:48:37 +00:00
< / label >
< label class = "format btn btn-secondary m-0 ml-1 {% if v %}d-inline-block{% else %}d-none{% endif %}" for = "file-upload-submit" >
< div id = "filename-show-submit" > < i class = "far fa-image" > < / i > < / div >
2022-02-26 13:14:30 +00:00
< input autocomplete = "off" id = "file-upload-submit" multiple = "multiple" type = "file" name = "file2" accept = "image/*, video/*" { % if request . headers . get ( ' cf-ipcountry ' ) = = " T1 " % } disabled { % endif % } onchange = "changename('filename-show-submit','file-upload-submit');checkForRequired()" hidden >
2021-12-14 22:48:37 +00:00
< / label >
2022-02-25 11:43:35 +00:00
< div id = "preview" class = "preview my-3" > < / div >
2021-12-14 22:48:37 +00:00
< pre > < / pre >
2021-12-29 08:29:22 +00:00
< div class = "form-text text-small" > < a href = "/formatting" { % if v and v . newtab and not g . webview % } target = "_blank" { % endif % } > Formatting help< / a > < / div >
2021-12-14 22:48:37 +00:00
< pre > < / pre >
< div class = "custom-control custom-checkbox" >
2022-02-27 22:42:13 +00:00
< input checked autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "followers" name = "followers" >
2022-02-28 00:33:52 +00:00
< label class = "custom-control-label" for = "followers" > Notify followers< / label >
2022-02-27 22:49:34 +00:00
< / div >
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "new" name = "new" >
< label class = "custom-control-label" for = "new" > Make the default comment sorting "new"< / label >
2022-02-27 22:42:13 +00:00
< / div >
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "nsfw" name = "over_18" >
< label class = "custom-control-label" for = "nsfw" > +18< / label >
2021-12-14 22:48:37 +00:00
< / div >
< div class = "custom-control custom-checkbox" >
2022-02-27 23:41:17 +00:00
< input onchange = 'draft(this);' autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "private" name = "private" >
2022-02-27 22:42:13 +00:00
< label class = "custom-control-label" for = "private" > Draft< / label >
2021-12-14 22:48:37 +00:00
< / div >
2022-04-04 17:29:52 +00:00
2022-04-04 17:52:14 +00:00
{% if request.host != 'rdrama.net' or v.admin_level > 1 %}
2021-12-14 22:48:37 +00:00
< div class = "custom-control custom-checkbox" >
2022-02-27 22:42:13 +00:00
< input autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "club" name = "club" >
< label class = "custom-control-label" for = "club" > {{CC_TITLE}} thread< / label >
2021-12-14 22:48:37 +00:00
< / div >
2022-04-04 17:29:52 +00:00
{% endif %}
2022-02-14 23:59:20 +00:00
< div class = "custom-control custom-checkbox" >
2022-03-17 15:29:30 +00:00
< input onchange = 'draft(this);' autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "ghost" name = "ghost" >
2022-03-09 01:49:57 +00:00
< label class = "custom-control-label" for = "ghost" > Ghost Thread< / label >
2022-02-14 23:59:20 +00:00
< / div >
2021-12-14 22:48:37 +00:00
< pre >
< / pre >
< / div >
< / div >
< / div >
< div class = "container" >
< div class = "row fixed-bottom bg-white border-top p-3" id = "" style = "z-index: 100; bottom: 0px; transition: bottom 220ms cubic-bezier(0, 0, 0.2, 1) 0s;" >
< div class = "col" >
< a href = "/" class = "btn btn-secondary" > Cancel< / a >
< / div >
< div class = "col text-right" >
2022-02-22 11:57:19 +00:00
{% if error %}< span class = "text-danger text-large mr-2" > {{error}}< / span > {% endif %}
2022-01-15 08:08:52 +00:00
< button class = "btn btn-primary" id = "create_button" type = "submit" disabled > Post< / button >
2021-12-14 22:48:37 +00:00
< / div >
< / div >
< / div >
< / form >
2021-10-15 14:08:27 +00:00
2021-12-04 16:21:03 +00:00
< / div >
2021-12-14 22:48:37 +00:00
{% endblock %}
2021-10-15 14:08:27 +00:00
2022-01-19 10:12:37 +00:00
< script >
2022-02-22 10:38:28 +00:00
document.getElementById('post-title').value = localStorage.getItem("post_title")
document.getElementById('post-text').value = localStorage.getItem("post_text")
document.getElementById('post-url').value = localStorage.getItem("post_url")
2022-02-22 11:43:38 +00:00
{% if request.path == '/submit' %}
let sub = document.getElementById('sub')
if (sub) sub.value = localStorage.getItem("sub")
{% endif %}
2022-01-13 21:15:36 +00:00
function checkForRequired() {
var title = document.getElementById("post-title");
2022-02-22 10:38:28 +00:00
var url = document.getElementById("post-url");
2022-01-13 21:15:36 +00:00
var text = document.getElementById("post-text");
var button = document.getElementById("create_button");
var image = document.getElementById("file-upload");
2022-02-26 13:14:30 +00:00
var image2 = document.getElementById("file-upload-submit");
2022-01-13 21:15:36 +00:00
2022-02-26 13:14:30 +00:00
if (url.value.length > 0 || image.value.length > 0 || image2.value.length > 0) {
2022-01-13 21:15:36 +00:00
text.required = false;
url.required=false;
2022-02-26 13:14:30 +00:00
} else if (text.value.length > 0 || image.value.length > 0 || image2.value.length > 0) {
2022-01-13 21:15:36 +00:00
url.required = false;
} else {
text.required = true;
url.required = true;
}
var isValidTitle = title.checkValidity();
var isValidURL = url.checkValidity();
var isValidText = text.checkValidity();
2022-02-26 13:14:30 +00:00
if (isValidTitle & & (isValidURL || image.value.length > 0 || image2.value.length > 0)) {
2022-01-13 21:15:36 +00:00
button.disabled = false;
} else if (isValidTitle & & isValidText) {
button.disabled = false;
} else {
button.disabled = true;
}
}
checkForRequired()
2022-01-13 03:36:35 +00:00
< / script >
2022-03-31 16:28:53 +00:00
< script src = "/assets/js/marked.js?v=250" > < / script >
< script src = "/assets/js/formatting.js?v=240" > < / script >
< script src = "/assets/js/submit.js?v=251" > < / script >
2021-12-14 22:48:37 +00:00
{% include "emoji_modal.html" %}
{% include "gif_modal.html" %}
< / body >
< / html >