- const isThread = thread != null; - const subjectRequired = (!isThread && board.settings.forceThreadSubject); - const messageRequired = (!isThread && board.settings.forceThreadMessage) || (isThread && board.settings.forceReplyMessage); - const fileRequired = (!isThread && board.settings.forceThreadFile) || (isThread && board.settings.forceReplyFile); section.form-wrapper.flex-center form.form-post#postform(action=`/forms/board/${board._id}/post`, enctype='multipart/form-data', method='POST') input(type='hidden' name='thread' value=isThread ? thread.postId : null) unless board.settings.forceAnon section.row .label Name input.mr-1(type='text', name='name', placeholder=board.settings.defaultName autocomplete='off' maxlength='50') a.close.postform-style(href='#!') X section.row .label Subject if subjectRequired .required * input(type='text', name='subject', autocomplete='off' maxlength='50' required=subjectRequired) section.row .label Email input(type='text', name='email', autocomplete='off' maxlength='50') else section.row .label Sage label.postform-style.ph-5 input(type='checkbox', name='email', value='sage') | Sage a.close.postform-style(href='#!') X section.row .label Subject if subjectRequired .required * input(type='text', name='subject', autocomplete='off' maxlength='50' required=subjectRequired) section.row .label Message if messageRequired .required * textarea(name='message', rows='5', autocomplete='off' maxlength='4000' required=messageRequired) if board.settings.maxFiles > 0 section.row .label Files if fileRequired .required * input(type='file', name='file' multiple required=fileRequired) if board.settings.userPostSpoiler label.postform-style.ph-5.ml-1 input(type='checkbox', name='spoiler', value='true') | Spoiler if board.settings.userPostSpoiler || board.settings.userPostDelete || board.settings.userPostUnlink section.row .label Password input(type='password', name='password', autocomplete='off' placeholder='password to delete/spoiler/unlink later' maxlength='50') if (board.settings.captchaMode === 1 && !isThread) || board.settings.captchaMode === 2 section.row .label Captcha .required * .col iframe.captcha(src='/captcha.html' width=200 height=110 scrolling='no') input(type='text', name='captcha', autocomplete='off' placeholder='captcha text' pattern=".{6}" required title='6 characters') input(type='submit', value=`New ${isThread ? 'Reply' : 'Thread'}`) .toggle-hidden a.toggle-summary(href='#postform') Open Postform