2022-07-23 08:53:17 +00:00
{% extends "default.html" %}
2022-11-21 08:52:22 +00:00
{% block pagetitle %}
2022-11-27 20:24:40 +00:00
{%- if comment_info -%}
2022-11-21 08:52:22 +00:00
@{{comment_info.author_name}} comments on '{{p.plaintitle(v)}}'
2022-11-27 20:24:40 +00:00
{%- else -%}
2022-11-21 08:52:22 +00:00
{{p.plaintitle(v)}}
2022-11-27 20:24:40 +00:00
{%- endif -%}
2022-11-21 08:52:22 +00:00
{% endblock %}
{% block pagetype %}thread{% endblock %}
{% block head_final %}
2023-01-25 02:25:01 +00:00
{% include "awards.html" %}
2023-04-25 15:59:16 +00:00
{% include "events/fistmas/awards.html" %}
2022-07-23 08:53:17 +00:00
{% endblock %}
2022-11-21 08:52:22 +00:00
{% set ups=p.upvotes %}
{% set downs=p.downvotes %}
{% set score=ups-downs %}
2022-07-23 08:53:17 +00:00
2022-11-21 08:52:22 +00:00
{% if v %}
{% set voted=p.voted if p.voted else 0 %}
{% else %}
{% set voted=-2 %}
{% endif %}
2022-07-23 08:53:17 +00:00
2022-11-21 08:52:22 +00:00
{% set v_forbid_deleted = (p.deleted_utc != 0) and not (v and v.admin_level >= PERMS['POST_COMMENT_MODERATION']) and not (v and v.id == p.author_id) %}
2022-07-23 08:53:17 +00:00
{% block actionsModal %}
{% if v %}
2023-01-20 07:14:59 +00:00
< div class = "modal fade d-md-none" id = "actionsModal" tabindex = "-1" >
< div class = "modal-dialog modal-dialog-centered" >
2022-07-23 08:53:17 +00:00
< div class = "modal-content" >
< div class = "modal-header p-3" >
2022-10-29 00:55:49 +00:00
< h6 class = "col modal-title text-center" > More options< / h6 >
2023-01-01 11:58:39 +00:00
< button type = "button" class = "close position-absolute py-3" style = "right: 1rem" data-bs-dismiss = "modal" >
2022-12-25 02:10:56 +00:00
< span > < i class = "fas fa-times-circle text-gray-500" > < / i > < / span >
2022-07-23 08:53:17 +00:00
< / button >
< / div >
< div class = "modal-body" >
< ul class = "list-group post-actions" >
{% if v.id==p.author_id %}
2022-12-30 12:14:18 +00:00
< button type = "button" class = "nobackground btn btn-link btn-block btn-lg text-left text-muted" data-bs-dismiss = "modal" data-nonce = "{{g.nonce}}" data-onclick = "togglePostEdit('{{p.id}}')" > < i class = "far fa-edit text-center text-muted mr-2" > < / i > Edit< / button >
2023-02-26 10:02:22 +00:00
{% elif p.body and v.admin_level < PERMS [ ' POST_EDITING ' ] % }
2023-02-27 01:37:53 +00:00
< button type = "button" class = "nobackground btn btn-link btn-block btn-lg text-left text-muted" data-bs-dismiss = "modal" data-nonce = "{{g.nonce}}" data-onclick = "expandMarkdown('{{p.fullname}}')" > < i class = "fas text-expand-icon-{{p.fullname}} fa-expand-alt text-center mr-2" > < / i > < span class = "expand-text-{{p.fullname}}" > View source< / span > < / button >
2022-07-23 08:53:17 +00:00
{% endif %}
{% include "post_actions_mobile.html" %}
< / ul >
< / div >
< / div >
< / div >
< / div >
{% endif %}
2023-01-29 08:28:29 +00:00
{% if v and v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
2022-07-23 08:53:17 +00:00
{% include "post_admin_actions_mobile.html" %}
{% endif %}
{% endblock %}
{% block content %}
< div class = "row mb-3" >
2023-08-11 12:40:14 +00:00
< div id = "post-root" class = "col-12 {% if p.award_count('tilt', v) %}tilt-post{% endif %}" >
2022-07-23 08:53:17 +00:00
2022-09-02 17:03:00 +00:00
< div class = "card border-0 mt-3 {% if p.stickied %}stickied{% endif %} {% if voted==1 %}upvoted{% elif voted==-1 %} downvoted{% endif %}" >
2023-08-11 12:40:14 +00:00
< div id = "post-{{p.id}}" class = "actual-post {% if p.ghost %}ghost-post{% endif %} {% if p.is_banned %}banned{% endif %} {% if p.deleted_utc %}deleted {% endif %} {% if p.award_count('glowie', v) %}glow{% endif %} d-flex flex-row-reverse flex-nowrap justify-content-end" >
2022-07-23 08:53:17 +00:00
2023-03-24 11:59:46 +00:00
{% if not p.is_image and p.thumb_url and not p.embed and not p.deleted_utc %}
< div class = "card-header bg-transparent border-0 d-none d-md-flex flex-row flex-nowrap pl-3 p-0" >
< a rel = "nofollow noopener" href = "{{p.realurl(v)}}" style = "height: fit-content" { % if not v or v . newtabexternal % } target = "_blank" { % endif % } > < img loading = "lazy" src = "{{p.thumb_url}}" class = "post-img d-mob-none" alt = "Unable to load image" > < / a >
< / div >
2022-07-23 08:53:17 +00:00
{% endif %}
2022-09-02 17:03:00 +00:00
< div id = "post-content" class = "card-block w-100 my-md-auto" >
2022-07-23 08:53:17 +00:00
< div class = "post-meta text-left mb-2" >
2023-05-14 22:01:10 +00:00
{{macros.post_meta(p)}}
2022-07-23 08:53:17 +00:00
< / div >
2023-05-14 22:01:10 +00:00
2023-06-23 16:49:23 +00:00
{{macros.reports(p, 'post')}}
2023-05-14 22:01:10 +00:00
2022-07-23 08:53:17 +00:00
{% if p.realurl(v) and not v_forbid_deleted %}
2023-06-23 13:14:23 +00:00
< h1 id = "post-title" class = "card-title post-title text-left mb-md-3 {% if p.chudded %}text-uppercase{% endif %}" >
2023-06-26 14:38:48 +00:00
< a { % if p . author . rainbow % } class = "rainbow-text" { % endif % } { % if p . author . queen % } queen { % endif % } { % if p . author . sharpen % } sharpen { % endif % } { % if not v or v . newtabexternal % } target = "_blank" { % endif % } rel = "nofollow noopener" href = "{{p.realurl(v)}}" >
2022-09-06 04:26:36 +00:00
{% if p.flair %}< span class = "patron font-weight-bolder mr-1" style = "background-color:var(--primary); font-size:12px; line-height:2;" > {{p.flair | safe}}< / span > {% endif %}
{{p.realtitle(v) | safe}}
< / a >
< / h1 >
2022-07-23 08:53:17 +00:00
{% else %}
2023-06-26 14:38:48 +00:00
< h1 id = "post-title" class = "card-title post-title text-left mb-md-3 {% if p.chudded %}text-uppercase{% endif %} {% if p.author.rainbow %}rainbow-text{% endif %} {%if p.author.queen%}queen{%endif%} {%if p.author.sharpen%}sharpen{%endif%}" >
2022-07-23 08:53:17 +00:00
{% if p.flair %}< span class = "patron font-weight-bolder mr-1" style = "background-color:var(--primary); font-size:12px; line-height:2;" > {{p.flair | safe}}< / span > {% endif %}
{{p.realtitle(v) | safe}}
< / h1 >
{% endif %}
{% if not v_forbid_deleted %}
< div id = "post-body" class = "post-body mt-3" >
2023-02-18 16:33:19 +00:00
{% if p.realurl(v) and not p.embed and not p.is_image and not p.is_video and not p.is_audio %}
2022-12-04 20:49:35 +00:00
< a rel = "nofollow noopener" href = "{{p.realurl(v)}}" { % if not v or v . newtabexternal % } target = "_blank" { % endif % } >
< div class = "d-flex justify-content-between align-items-center border rounded p-2 mb-3" >
< span > {{p.realurl(v)}}< / span >
< i class = "fas fa-external-link-alt text-small" > < / i >
< / div >
< / a >
{% endif %}
2023-02-18 16:33:19 +00:00
{% if p.embed %}
2022-07-23 08:53:17 +00:00
{% if p.domain == "twitter.com" %}
2023-02-18 16:33:19 +00:00
{{p.embed | safe}}
2023-07-02 22:55:56 +00:00
{% if v and v.theme in LIGHT_THEMES %}
2022-11-18 19:16:40 +00:00
< script defer src = "{{'js/vendor/twitterlight.js' | asset}}" > < / script >
2022-07-23 08:53:17 +00:00
{% else %}
2022-11-18 19:16:40 +00:00
< script defer src = "{{'js/vendor/twitter.js' | asset}}" > < / script >
2022-07-23 08:53:17 +00:00
{% endif %}
2023-02-18 16:33:19 +00:00
{% elif p.domain in ['youtu.be','youtube.com'] and p.embed and p.embed.startswith('< lite-youtube ' ) % }
{{p.embed | safe}}
2022-07-23 08:53:17 +00:00
{% endif %}
{% endif %}
2023-01-01 11:36:20 +00:00
2023-07-02 17:41:46 +00:00
< div id = "post-text" class = "{% if p.chudded %}text-uppercase chud-img chud-{{p.id_last_num}}{% endif %} {% if p.author.rainbow %}rainbow-text{% endif %} {%if p.author.queen%}queen{%endif%} {%if p.author.sharpen%}sharpen chud-img sharpen-{{p.id_last_num}}{%endif%}" >
2022-07-23 08:53:17 +00:00
{% if p.is_image %}
2022-11-08 04:27:43 +00:00
< div class = "row no-gutters mb-4" >
2022-07-23 08:53:17 +00:00
< div class = "col" >
2022-11-21 17:37:38 +00:00
< a { % if not v or v . newtabexternal % } target = "_blank" { % endif % } rel = "nofollow noopener" href = "{{p.realurl(v)}}" >
2023-05-02 16:52:37 +00:00
< img loading = "lazy" data-nonce = "{{g.nonce}}" data-onclick = "expandImage()" src = "{{p.realurl(v)}}" class = "post-linked-img" alt = "Unable to load image" >
2022-07-23 08:53:17 +00:00
< / a >
< / div >
< / div >
{% elif p.is_video %}
2022-11-08 04:27:43 +00:00
< div class = "row no-gutters mb-4" >
2022-07-23 08:53:17 +00:00
< div class = "col" >
2022-12-14 17:06:59 +00:00
< p class = "resizable" >
2023-03-11 06:29:52 +00:00
< video { % if p . poster_url % } poster = "{{p.poster_url}}" { % endif % } controls preload = "none" src = "{{p.realurl(v)}}" > < / video >
2022-12-10 19:12:14 +00:00
< / p >
2022-07-23 08:53:17 +00:00
< / div >
< / div >
2022-11-03 15:44:26 +00:00
{% elif p.is_audio %}
2022-11-08 04:27:43 +00:00
< div class = "row no-gutters mb-4" >
2022-07-23 08:53:17 +00:00
< div class = "col" >
2022-10-20 20:26:39 +00:00
< audio controls preload = "none" src = "{{p.realurl(v)}}" > < / audio >
2022-07-23 08:53:17 +00:00
< / div >
2022-11-14 22:26:39 +00:00
< / div >
2022-07-23 08:53:17 +00:00
{% endif %}
{{p.realbody(v) | safe}}
2023-08-10 15:38:11 +00:00
{% if p.is_banned %}
2023-08-05 10:25:53 +00:00
< div class = "text-removed mb-0" > removed by @{{p.ban_reason}} (Site Admin)< / div >
2022-07-23 08:53:17 +00:00
{% endif %}
< / div >
2023-07-22 19:29:29 +00:00
{% if not p.ghost %}
{{p.author.rendered_sig(v) | safe}}
{% endif %}
2022-07-23 08:53:17 +00:00
< / div >
{% else %}
< div id = "post-body" class = "post-body mt-3" >
< div id = "post-text" > < code > [Deleted by author.]< / code > < / div >
< / div >
{% endif %}
2022-12-01 22:04:10 +00:00
{% if v and v.can_edit(p) and not v.is_suspended %}
2022-07-23 08:53:17 +00:00
< div id = "edit-post-body-{{p.id}}" class = "d-none comment-write collapsed child" >
2023-07-14 17:07:58 +00:00
< form id = "post-edit-form-{{p.id}}" action = "/edit_post/{{p.id}}" method = "post" enctype = "multipart/form-data" data-nonce = "{{g.nonce}}" data-onsubmit = "sendFormXHRReload(this)" >
2023-07-14 17:08:54 +00:00
< input hidden name = "formkey" value = "{{v|formkey}}" >
< 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 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 >
2023-01-01 11:36:20 +00:00
2023-07-14 17:08:54 +00:00
< div class = "text-small font-weight-bold mt-1" id = "charcount-post-edit" style = "right: 1rem; bottom: 0.5rem; z-index: 3;" > < / div >
2022-07-23 08:53:17 +00:00
2023-07-14 17:08:54 +00:00
< div class = "comment-format" >
< button type = "button" class = "format btn btn-secondary" > < span class = "font-weight-bolder text-uppercase" data-nonce = "{{g.nonce}}" data-onclick = "getGifs('post-edit-box-{{p.id}}')" data-bs-toggle = "modal" data-bs-target = "#gifModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add GIF" > GIF< / span > < / button >
2022-07-23 08:53:17 +00:00
2023-07-14 17:08:54 +00:00
< button type = "button" data-nonce = "{{g.nonce}}" data-onclick = "loadEmojis('post-edit-box-{{p.id}}')" class = "format btn btn-secondary ml-2" 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 > < / button >
2023-02-27 15:02:35 +00:00
2023-07-14 17:08:54 +00:00
{{macros.file_input('file-upload-edit-' ~ p.id, False)}}
2023-01-01 11:36:20 +00:00
2023-07-14 17:08:54 +00:00
< small class = "format d-none" > < i class = "fas fa-link" > < / i > < / small >
2022-07-23 08:53:17 +00:00
< / div >
2023-02-06 04:57:09 +00:00
< a class = "text-small mt-3 d-inline-block" href = "/formatting" { % if v and v . newtab % } data-target = "t" target = "_blank" { % endif % } > Formatting help< / a >
2023-03-07 00:21:08 +00:00
< button type = "submit" form = "post-edit-form-{{p.id}}" class = "btn btn-primary ml-2 fl-r" data-nonce = "{{g.nonce}}" data-onclick = "remove_dialog()" > Save Edit< / button >
2023-01-01 11:36:20 +00:00
< button type = "button" data-nonce = "{{g.nonce}}" data-onclick = "togglePostEdit('{{p.id}}');remove_dialog()" class = "btn btn-link text-muted ml-auto fl-r" > Cancel< / button >
2022-07-23 08:53:17 +00:00
< / form >
< div id = "post-edit-{{p.id}}" class = "preview mb-3 mt-5" > < / div >
< / div >
{% endif %}
2023-02-18 16:33:19 +00:00
{% if p.embed and "http" not in p.embed and "< " not in p.embed %}
2022-10-18 11:18:06 +00:00
< div id = "crosspost-embed" class = "mb-3" >
< div class = "row no-gutters" >
< div id = "frontpage" class = "col-12 pt-0" >
< div class = "posts" id = "posts" >
2023-02-18 16:33:19 +00:00
{{p.embed | post_embed(v) | safe}}
2022-10-18 11:18:06 +00:00
< / div >
< / div >
< / div >
2022-07-23 08:53:17 +00:00
< / div >
{% endif %}
< div class = "d-none d-md-flex justify-content-between align-items-center mt-2" >
< div class = "post-actions mt-2" >
< ul class = "list-inline text-right d-flex" >
2022-12-09 10:54:29 +00:00
< a class = "list-inline-item" { % if v and v . newtab % } data-target = "t" target = "_blank" { % endif % } href = "{{p.permalink}}" >
2022-11-06 06:17:18 +00:00
< i class = "fas fa-comment-dots mr-2" > < / i > {{p.comment_count}}
< span class = "text-info d-none {{p.id}}-new-comments" > < / span >
< / a >
2022-07-23 08:53:17 +00:00
2022-12-01 22:04:10 +00:00
{% if v and v.can_edit(p) %}
2022-12-30 12:14:18 +00:00
< button type = "button" class = "list-inline-item" data-nonce = "{{g.nonce}}" data-onclick = "togglePostEdit('{{p.id}}')" > < i class = "fas fa-edit" > < / i > Edit< / button >
2023-02-26 10:02:22 +00:00
{% elif v and v.id != p.author_id and p.body and not v_forbid_deleted %}
2023-02-27 01:37:53 +00:00
< button type = "button" class = "list-inline-item" data-nonce = "{{g.nonce}}" data-onclick = "expandMarkdown('{{p.fullname}}')" > < i class = "fas text-expand-icon-{{p.fullname}} fa-expand-alt" > < / i > < span class = "expand-text-{{p.fullname}}" > View source< / span > < / button >
2022-07-23 08:53:17 +00:00
{% endif %}
{% include 'post_actions.html' %}
< / ul >
< / div >
< / div >
< / div >
{% if v %}
post: fix post vote horizontal content reflow (#131)
Kindly,
Currently, the vote count at the top left of any post reserves too little space leading to many reflow situations when we vote on it:
* only happens on desktop version, considering the mobile website uses different layout/code
* happens whenever our vote changes the count between 9 to 10 (?), 99 to 100, 999 to 1000. Also happens in more common situations like 81 to 82 and :marseymanysuchcases:
I did a minimalist approach by removing the margin, reserving just enough width (values between -XXX and XXXX) and lowering the vote buttons to minimize hat collision. Arguably, the vote buttons look better with the PR, because they are centered with flairs (WPD) and less off-center on rdrama with post rewards, pfp, ...
Net excess of ~10px, which I feel is borderline too much
Thanks,
granny
Reviewed-on: https://fsdfsd.net/rDrama/rDrama/pulls/131
Co-authored-by: mummified-corroding-granny <mummified-corroding-granny@noreply.fsdfsd.net>
Co-committed-by: mummified-corroding-granny <mummified-corroding-granny@noreply.fsdfsd.net>
2023-02-22 06:27:11 +00:00
< div id = "voting" class = "voting d-mob-none mb-auto mt-1" >
2023-07-22 18:51:45 +00:00
< div tabindex = "0" data-nonce = "{{g.nonce}}" data-onclick = "vote('post', '{{p.id}}', '1')" class = "post-{{p.id}}-up mx-auto arrow-up upvote-button post-{{p.id}}-up {% if voted==1 %}active{% endif %}" > < / div >
2022-07-23 08:53:17 +00:00
2023-01-01 11:58:39 +00:00
< span class = "post-score-{{p.id}} score post-score-{{p.id}} {% if voted==1 %}score-up{% elif voted==-1%}score-down{% endif %}{% if p.controversial %} controversial{% endif %}" data-bs-toggle = "tooltip" data-bs-placement = "right" title = "+{{ups}} | -{{downs}}" style = "cursor: default" > {{score}}< / span >
2023-07-22 18:51:45 +00:00
< div { % if DISABLE_DOWNVOTES % } style = "display:None!important" { % endif % } tabindex = "0" data-nonce = "{{g.nonce}}" data-onclick = "vote('post', '{{p.id}}', '-1')" class = "post-{{p.id}}-down text-muted mx-auto arrow-down downvote-button post-{{p.id}}-down {% if voted==-1 %}active{% endif %}" > < / div >
2022-07-23 08:53:17 +00:00
< / div >
{% else %}
post: fix post vote horizontal content reflow (#131)
Kindly,
Currently, the vote count at the top left of any post reserves too little space leading to many reflow situations when we vote on it:
* only happens on desktop version, considering the mobile website uses different layout/code
* happens whenever our vote changes the count between 9 to 10 (?), 99 to 100, 999 to 1000. Also happens in more common situations like 81 to 82 and :marseymanysuchcases:
I did a minimalist approach by removing the margin, reserving just enough width (values between -XXX and XXXX) and lowering the vote buttons to minimize hat collision. Arguably, the vote buttons look better with the PR, because they are centered with flairs (WPD) and less off-center on rdrama with post rewards, pfp, ...
Net excess of ~10px, which I feel is borderline too much
Thanks,
granny
Reviewed-on: https://fsdfsd.net/rDrama/rDrama/pulls/131
Co-authored-by: mummified-corroding-granny <mummified-corroding-granny@noreply.fsdfsd.net>
Co-committed-by: mummified-corroding-granny <mummified-corroding-granny@noreply.fsdfsd.net>
2023-02-22 06:27:11 +00:00
< div id = "voting" class = "voting d-mob-none mb-auto mt-1" >
2023-01-28 10:03:01 +00:00
< a tabindex = "0" class = "post-{{p.id}}-up arrow-up mx-auto" href = "/login?redirect={{request.full_path | urlencode}}" >
< / a >
2022-10-13 14:44:05 +00:00
< span class = "post-{{p.id}}-score-none score text-muted{% if p.controversial %} controversial{% endif %}" { % if not p . is_banned % } data-bs-toggle = "tooltip" data-bs-placement = "right" title = "+{{ups}} | -{{downs}}" { % endif % } style = "cursor: default" > {{score}}< / span >
2023-01-28 10:03:01 +00:00
< a { % if DISABLE_DOWNVOTES % } style = "display:None!important" { % endif % } tabindex = "0" data-nonce = "{{g.nonce}}" data-onclick = "vote('post', '{{p.id}}', '-1')" class = "post-{{p.id}}-down arrow-down mx-auto" href = "/login?redirect={{request.full_path | urlencode}}" > < / a >
2022-07-23 08:53:17 +00:00
< / div >
{% endif %}
< / div >
< / div >
< / div >
< / div >
< div class = "row mb-3 d-md-none" >
< div class = "col-12" >
< div class = "post-actions" >
< ul class = "list-inline text-right d-flex" >
< li class = "list-inline-item mr-auto" >
< a href = "{{p.permalink}}" >
2022-11-05 02:00:21 +00:00
< i class = "fas fa-comment-dots mr-2" > < / i > {{p.comment_count}}
2022-07-23 08:53:17 +00:00
< span class = "text-info d-none {{p.id}}-new-comments" > < / span >
< / a >
2023-01-29 08:28:29 +00:00
{% if v and v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
2022-10-28 23:35:14 +00:00
< button type = "button" class = "ml-2" data-bs-toggle = "modal" data-bs-target = "#adminModal-{{p.id}}" >
2022-07-23 08:53:17 +00:00
< i class = "fas fa-broom" > < / i >
2022-10-28 23:27:38 +00:00
< / button >
2022-07-23 08:53:17 +00:00
{% endif %}
< / li >
{% if v %}
< li class = "list-inline-item" >
2022-10-28 23:35:14 +00:00
< button type = "button" data-bs-toggle = "modal" data-bs-target = "#actionsModal" >
2022-07-23 08:53:17 +00:00
< i class = "fas fa-ellipsis-h" > < / i >
2022-10-28 22:30:28 +00:00
< / button >
2022-07-23 08:53:17 +00:00
< / li >
{% endif %}
< li id = "voting-{{p.id}}-mobile" class = "voting list-inline-item d-md-none{% if voted==1 %} upvoted{% elif voted==-1 %} downvoted{% endif %}" >
{% if v %}
2023-07-22 18:51:45 +00:00
< span tabindex = "0" data-nonce = "{{g.nonce}}" data-onclick = "vote('post-mobile', '{{p.id}}', '1')" class = "post-mobile-{{p.id}}-up mx-0 pr-1 arrow-up upvote-button post-{{p.id}}-up {% if voted==1 %}active{% endif %}" >
2022-07-23 08:53:17 +00:00
< / span >
{% else %}
2023-01-28 10:03:01 +00:00
< a tabindex = "0" class = "arrow-{{p.id}}-mobile-up mx-0 pr-1 arrow-mobile-up" href = "/login?redirect={{request.full_path | urlencode}}" >
2022-12-25 02:10:56 +00:00
< i class = "fas fa-arrow-alt-up mx-0" > < / i >
2023-01-28 10:03:01 +00:00
< / a >
2022-07-23 08:53:17 +00:00
{% endif %}
2023-01-01 11:58:39 +00:00
< span class = "post-mobile-score-{{p.id}} score post-score-{{p.id}} {% if voted==1 %}score-up{% elif voted==-1%}score-down{% endif %}{% if p.controversial %} controversial{% endif %}" data-bs-toggle = "tooltip" data-bs-placement = "top" title = "+{{ups}} | -{{downs}}" style = "cursor: default" > {{score}}< / span >
2022-07-23 08:53:17 +00:00
{% if v %}
2023-07-22 18:51:45 +00:00
< span { % if DISABLE_DOWNVOTES % } style = "display:None!important" { % endif % } tabindex = "0" data-nonce = "{{g.nonce}}" data-onclick = "vote('post-mobile', '{{p.id}}', '-1')" class = "post-mobile-{{p.id}}-down mx-0 pl-1 my-0 arrow-down downvote-button post-{{p.id}}-down {% if voted==-1 %}active{% endif %}" > < / span >
2022-07-23 08:53:17 +00:00
{% else %}
2023-01-28 10:03:01 +00:00
< a { % if DISABLE_DOWNVOTES % } style = "display:None!important" { % endif % } tabindex = "0" class = "arrow-{{p.id}}-mobile-down arrow-mobile-down mx-0 pl-1 my-0" href = "/login?redirect={{request.full_path | urlencode}}" >
2022-12-25 02:10:56 +00:00
< i class = "fas fa-arrow-alt-down mx-0" > < / i >
2023-01-28 10:03:01 +00:00
< / a >
2022-07-23 08:53:17 +00:00
{% endif %}
< / li >
< / ul >
< / div >
< / div >
< / div >
2023-02-27 01:40:55 +00:00
{% if v and v.id != p.author_id and p.body and not v_forbid_deleted and v.admin_level < PERMS [ ' POST_EDITING ' ] % }
2023-06-14 18:20:39 +00:00
< div autocomplete = "off" class = "markdown d-none border my-2 p-3 rounded" id = "markdown-{{p.fullname}}" readonly > {{p.body.strip()}}< / div >
2022-07-23 08:53:17 +00:00
{% endif %}
< div class = "row border-md-0 comment-section pb-3" >
< div class = "col border-top" >
< div class = "comments-count py-3" >
< div class = "dropdown dropdown-actions" >
2022-12-25 02:10:56 +00:00
< button type = "button" class = "btn btn-secondary dropdown-toggle" id = "dropdownMenuButton" data-bs-toggle = "dropdown" style = "margin-right:0.5em;" >
2022-10-11 16:41:09 +00:00
{% if sort=="hot" %}< i class = "fas fa-fire mr-1" > < / i > {% endif %}
2022-07-23 08:53:17 +00:00
{% if sort=="top" %}< i class = "fas fa-arrow-alt-circle-up mr-1" > < / i > {% endif %}
{% if sort=="bottom" %}< i class = "fas fa-arrow-alt-circle-down mr-1" > < / i > {% endif %}
{% if sort=="new" %}< i class = "fas fa-sparkles mr-1" > < / i > {% endif %}
{% if sort=="old" %}< i class = "fas fa-book mr-1" > < / i > {% endif %}
{% if sort=="controversial" %}< i class = "fas fa-bullhorn mr-1" > < / i > {% endif %}
2023-07-25 22:37:54 +00:00
{% if sort=="random" %}< i class = "fas fa-random mr-1" > < / i > {% endif %}
2022-07-23 08:53:17 +00:00
{{sort | capitalize}}
< / button >
2022-12-25 02:10:56 +00:00
< div class = "dropdown-menu" x-placement = "bottom-start" style = "position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, 31px, 0px);" >
2023-03-16 15:32:35 +00:00
{% if sort != "hot" %}< a class = "dropdown-item" href = "?sort=hot" > < i class = "fas fa-fire mr-2" > < / i > Hot< / a > {% endif %}
{% if sort != "top" %}< a class = "dropdown-item" href = "?sort=top" > < i class = "fas fa-arrow-alt-circle-up mr-2" > < / i > Top< / a > {% endif %}
{% if sort != "bottom" %}< a class = "dropdown-item" href = "?sort=bottom" > < i class = "fas fa-arrow-alt-circle-down mr-2" > < / i > Bottom< / a > {% endif %}
{% if sort != "new" %}< a class = "dropdown-item" href = "?sort=new" > < i class = "fas fa-sparkles mr-2" > < / i > New< / a > {% endif %}
{% if sort != "old" %}< a class = "dropdown-item" href = "?sort=old" > < i class = "fas fa-book mr-2" > < / i > Old< / a > {% endif %}
{% if sort != "controversial" %}< a class = "dropdown-item" href = "?sort=controversial" > < i class = "fas fa-bullhorn mr-2" > < / i > Controversial< / a > {% endif %}
2023-07-25 22:37:54 +00:00
{% if sort != "random" %}< a class = "dropdown-item" href = "?sort=random" > < i class = "fas fa-random mr-2" > < / i > Random< / a > {% endif %}
2022-07-23 08:53:17 +00:00
< / div >
< / div >
< / div >
2023-02-18 18:10:44 +00:00
{{macros.comment_reply_box(p.fullname, 'comment-reply-' + p.fullname, subwrapper_css_classes='mb-3', enable_cancel_button=false)}}
2022-07-23 08:53:17 +00:00
2022-12-07 08:55:47 +00:00
{% if comment_info %}
2023-03-16 15:32:35 +00:00
< div class = "total mt-1" > < a href = "{{p.permalink}}" > View entire discussion< / a > < / div >
2022-12-07 08:55:47 +00:00
{% endif %}
2022-07-23 09:08:02 +00:00
{% if p.replies %}
< div class = "comment-section" id = "replies-of-{{p.fullname}}" >
2022-07-23 08:53:17 +00:00
{% with comments=p.replies %}
{% include "comments.html" %}
2022-07-23 09:08:02 +00:00
{% endwith %}
< / div >
2023-01-01 11:36:20 +00:00
2022-07-23 09:08:02 +00:00
{% if offset %}
2022-12-29 14:20:27 +00:00
< script defer src = "{{'js/view_more.js' | asset}}" > < / script >
2022-07-23 09:08:02 +00:00
{% endif %}
2022-07-23 08:53:17 +00:00
{% elif not p.replies and p.deleted_utc == 0 %}
2022-12-11 23:44:34 +00:00
< div class = "comment-section no-replies" id = "replies-of-{{p.fullname}}" >
{% if v %}
{% set ghost_town = 'This comment section is a ghost town...' %}
{% else %}
{% set ghost_town = 'This comment section is a ghost town... < a href = "/login?redirect={{request.full_path | urlencode}}" > Sign in< / a > < / p > '%}
{% endif %}
{{macros.ghost_box('Be the first to comment!', ghost_town, 1)}}
2022-07-23 08:53:17 +00:00
< / div >
{% endif %}
< / div >
< / div >
{% if v %}
2022-12-11 23:44:34 +00:00
{% if v.id == p.author_id %}{% include "modals/delete_post.html" %}{% endif %}
2022-11-15 19:14:29 +00:00
{% include "modals/report_post.html" %}
2022-12-11 23:44:34 +00:00
{% if v.can_edit(p) %}
2023-03-17 14:22:55 +00:00
< script defer src = "{{'js/edit_post.js' | asset}}" > < / script >
2022-12-11 23:44:34 +00:00
{% endif %}
{% if v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
2023-03-17 14:22:29 +00:00
< script defer src = "{{'js/admin/pinpost.js' | asset}}" > < / script >
2022-12-11 23:44:34 +00:00
{% endif %}
2022-07-23 08:53:17 +00:00
{% endif %}
2022-11-18 19:16:40 +00:00
< script defer src = "{{'js/vendor/clipboard.js' | asset}}" > < / script >
2022-07-23 08:53:17 +00:00
2022-12-11 23:44:34 +00:00
{% if not p.replies %}{% include "comments.html" %}{% endif %}
2022-07-23 08:53:17 +00:00
2022-12-29 14:20:27 +00:00
< input hidden class = "twoattrs" value = "{{p.id}},{{p.comment_count}}" >
< script defer src = "{{'js/new_comments.js' | asset}}" > < / script >
2023-06-07 23:26:32 +00:00
< script defer src = "{{'js/post.js' | asset}}" > < / script >
2022-12-27 01:22:39 +00:00
2022-07-23 08:53:17 +00:00
{% if fart and not (v and v.has_badge(128)) %}
2022-12-29 14:20:27 +00:00
< script defer src = "{{'js/fart.js' | asset}}" > < / script >
2022-07-23 08:53:17 +00:00
{% endif %}
2022-10-25 13:41:49 +00:00
{% if v and v.admin_level >= PERMS['POST_COMMENT_MODERATION'] %}
2023-06-07 23:26:32 +00:00
< script defer src = "{{'js/admin/post.js' | asset}}" > < / script >
2022-10-25 13:41:49 +00:00
{% endif %}
2022-07-23 08:53:17 +00:00
{% endblock %}