markdown fix op on quote not being shrunk and general appearance improvements for truncation and omission messages, and reply links

merge-requests/208/head
fatchan 5 years ago
parent 6d3f2c9895
commit 219963096f
  1. 5
      gulp/res/css/style.css
  2. 6
      gulp/res/js/hover.js
  3. 2
      helpers/posting/markdown.js
  4. 4
      helpers/posting/sanitizeoptions.js
  5. 3
      views/includes/themeswitcher.pug
  6. 19
      views/mixins/post.pug

@ -100,6 +100,9 @@ pre {
.mt-10 { .mt-10 {
margin-top: 10px; margin-top: 10px;
} }
.mt-5 {
margin-top: 5px;
}
.mv-5 { .mv-5 {
margin: 5px 0; margin: 5px 0;
} }
@ -556,7 +559,7 @@ textarea {
float: left; float: left;
} }
.clear-both { .cb {
clear: both; clear: both;
} }

@ -3,8 +3,14 @@ window.addEventListener('DOMContentLoaded', (event) => {
var quotes = document.getElementsByClassName('quote'); var quotes = document.getElementsByClassName('quote');
var toggleHighlightPost = function(e) { var toggleHighlightPost = function(e) {
if (!this.hash) {
return; //non-post number board quote
}
var hash = this.hash.substring(1); var hash = this.hash.substring(1);
var anchor = document.getElementById(hash); var anchor = document.getElementById(hash);
if (!anchor) {
return; //cross(board) quotes
}
var post = anchor.nextSibling; var post = anchor.nextSibling;
post.classList.toggle('highlighted'); post.classList.toggle('highlighted');
}; };

@ -29,7 +29,7 @@ module.exports = (text) => {
//links //links
text = text.replace(linkRegex, (match) => { text = text.replace(linkRegex, (match) => {
return `<a referrerpolicy='same-origin' target='_blank' href='${match}'>${match}</a>`; return `<a rel='nofollow' referrerpolicy='same-origin' target='_blank' href='${match}'>${match}</a>`;
}); });
//bold //bold

@ -8,9 +8,9 @@ module.exports = {
}, },
after: { after: {
allowedTags: [ 'span', 'a', 'em', 'strong', 'img'], allowedTags: [ 'span', 'a', 'em', 'strong', 'img', 'small'],
allowedAttributes: { allowedAttributes: {
'a': [ 'href', 'class', 'referrerpolicy', 'target' ], 'a': [ 'href', 'rel', 'class', 'referrerpolicy', 'target' ],
'span': [ 'class' ], 'span': [ 'class' ],
'img': ['src', 'height', 'width'] 'img': ['src', 'height', 'width']
} }

@ -1,4 +1,5 @@
select.jsonly#theme-changer(name='theme') if themes && themes.length > 0
select.jsonly#theme-changer(name='theme')
option(value='default') default option(value='default') default
each theme in themes each theme in themes
option(value=theme) #{theme} option(value=theme) #{theme}

@ -63,43 +63,44 @@ mixin post(post, truncate, manage=false, globalmanage=false, ban=false)
img.file-thumb(src=`/img/thumb-${file.hash}.jpg` height=file.geometry.thumbheight width=file.geometry.thumbwidth) img.file-thumb(src=`/img/thumb-${file.hash}.jpg` height=file.geometry.thumbheight width=file.geometry.thumbwidth)
else else
img.file-thumb(src=`/img/${file.filename}` height=file.geometry.height width=file.geometry.width) img.file-thumb(src=`/img/${file.filename}` height=file.geometry.height width=file.geometry.width)
- let truncatedMessage = post.message;
if post.message if post.message
if truncate if truncate
- -
const splitPost = post.message.split('\n'); const splitPost = post.message.split('\n');
const messageLines = splitPost.length; const messageLines = splitPost.length;
let truncatedMessage = post.message;
if (messageLines > 10) { if (messageLines > 10) {
truncatedMessage = splitPost.slice(0, 10).join('\n'); truncatedMessage = splitPost.slice(0, 10).join('\n');
} else if (post.message.length > 1000) { } else if (post.message.length > 1000) {
truncatedMessage = post.message.substring(0,1000).replace(/<([\w]+)?([^>]*)?$/, ''); truncatedMessage = post.message.substring(0,1000).replace(/<([\w]+)?([^>]*)?$/, '');
} }
pre.post-message !{truncatedMessage} pre.post-message !{truncatedMessage}
if truncatedMessage !== post.message
p Message too long. #[a(href=`${postURL}#${post.postId}`) View the full text]
else else
pre.post-message !{post.message} pre.post-message !{post.message}
if !post.message && post.files.length === 0 if !post.message && post.files.length === 0
p Post files unlinked p Post files unlinked
if post.banmessage if post.banmessage
p.banmessage USER BANNED FOR THIS POST #{post.banmessage ? `(${post.banmessage})` : ''} p.banmessage USER WAS BANNED FOR THIS POST #{post.banmessage ? `(${post.banmessage})` : ''}
if truncatedMessage !== post.message
div.cb.mt-5.ml-5
| Message too long. #[a(href=`${postURL}#${post.postId}`) View the full text]
if post.omittedposts || post.omittedfiles if post.omittedposts || post.omittedfiles
p div.cb.mt-5.ml-5
- const ompo = post.omittedposts; - const ompo = post.omittedposts;
- const omfi = post.omittedfiles; - const omfi = post.omittedfiles;
| #{ompo} post#{ompo > 1 ? 's' : ''} | #{ompo} repl#{ompo > 1 ? 'ies' : 'y'}
| #{omfi > 0 ? ` and ${omfi} image${omfi > 1 ? 's' : ''}` : ''} omitted. | #{omfi > 0 ? ` and ${omfi} image${omfi > 1 ? 's' : ''}` : ''} omitted.
| #[a(href=`${postURL}#${post.postId}`) View the full thread] | #[a(href=`${postURL}#${post.postId}`) View the full thread]
if post.previewbacklinks && post.previewbacklinks.length > 0 if post.previewbacklinks && post.previewbacklinks.length > 0
.replies Replies: div.replies.mt-5.ml-5 Replies:
each backlink in post.previewbacklinks each backlink in post.previewbacklinks
a.quote(href=`/${post.board}/thread/${post.thread || post.postId}.html#${backlink.postId}`) &gt;&gt;#{backlink.postId} a.quote(href=`/${post.board}/thread/${post.thread || post.postId}.html#${backlink.postId}`) &gt;&gt;#{backlink.postId}
| |
if post.previewbacklinks.length < post.backlinks.length if post.previewbacklinks.length < post.backlinks.length
- const ombls = post.backlinks.length-post.previewbacklinks.length; - const ombls = post.backlinks.length-post.previewbacklinks.length;
| + #{ombls} reply link#{ombls > 1 ? 's' : ''} omitted | + #[a(href=`${postURL}#${post.postId}`) #{ombls} earlier]
else if post.backlinks && post.backlinks.length > 0 else if post.backlinks && post.backlinks.length > 0
.replies Replies: div.replies.mt-5.ml-5 Replies:
each backlink in post.backlinks each backlink in post.backlinks
a.quote(href=`/${post.board}/thread/${post.thread || post.postId}.html#${backlink.postId}`) &gt;&gt;#{backlink.postId} a.quote(href=`/${post.board}/thread/${post.thread || post.postId}.html#${backlink.postId}`) &gt;&gt;#{backlink.postId}
| |

Loading…
Cancel
Save