mirror of
https://github.com/BBaoVanC/bbaovanc.com.git
synced 2025-07-04 11:07:32 -05:00
Compare commits
15 Commits
test
...
isso-comme
Author | SHA1 | Date | |
---|---|---|---|
2986c67a0c
|
|||
31e25c2578
|
|||
1033b84687
|
|||
b9a95983b9
|
|||
b14a46d48b
|
|||
99b03ea7ba
|
|||
9c6a2a059d | |||
e10c3a1150
|
|||
9e0d2a9d8f
|
|||
576124d42d
|
|||
7b8f47b56b
|
|||
cab56bd859
|
|||
672bfae812
|
|||
ca40973701 | |||
b2d3bd99f3
|
59
.github/workflows/audit.yml
vendored
Normal file
59
.github/workflows/audit.yml
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
name: Audit
|
||||
|
||||
on:
|
||||
push:
|
||||
|
||||
jobs:
|
||||
audit:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: recursive
|
||||
fetch-depth: 0
|
||||
ref: ${{github.event.pull_request.head.ref}}
|
||||
repository: ${{github.event.pull_request.head.repo.full_name}}
|
||||
|
||||
- name: Setup Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
hugo-version: latest
|
||||
extended: true
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
HUGO_MINIFY_TDEWOLFF_HTML_KEEPCOMMENTS=true HUGO_ENABLEMISSINGTRANSLATIONPLACEHOLDERS=true hugo --printI18nWarnings --printPathWarnings
|
||||
|
||||
# For the following steps, see
|
||||
# https://discourse.gohugo.io/t/audit-your-published-site-for-problems/35184
|
||||
|
||||
- name: Audit - raw HTML
|
||||
if: always()
|
||||
run: |
|
||||
! grep -inorE "<\!-- raw HTML omitted -->" public/
|
||||
|
||||
- name: Audit - ZgotmplZ (unsafe URL content)
|
||||
if: always()
|
||||
run: |
|
||||
! grep -inorE "ZgotmplZ" public/
|
||||
|
||||
#- name: Audit - missing translations
|
||||
# if: always()
|
||||
# run: |
|
||||
# ! grep -inorE "\[i18n\]" public/
|
||||
|
||||
- name: Audit - nil values in printf
|
||||
if: always()
|
||||
run: |
|
||||
! grep -inorE "\(<nil>\)" public/
|
||||
|
||||
- name: Audit - nil values in printf without safeHTML
|
||||
if: always()
|
||||
run: |
|
||||
! grep -inorE "(<nil>)" public/
|
||||
|
||||
- name: Audit - HAHAHUGO
|
||||
if: always()
|
||||
run: |
|
||||
! grep -inorE "hahahugo" public/
|
18
.github/workflows/deploy.yml
vendored
18
.github/workflows/deploy.yml
vendored
@ -19,13 +19,6 @@ jobs:
|
||||
submodules: recursive
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup SSH
|
||||
uses: kielabokkie/ssh-key-and-known-hosts-action@v1
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.DEPLOY_SSH_KEY }}
|
||||
ssh-host: srv.bbaovanc.com
|
||||
ssh-port: 2222
|
||||
|
||||
- name: Setup Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
@ -33,12 +26,19 @@ jobs:
|
||||
extended: true
|
||||
|
||||
- name: Build
|
||||
run: hugo --i18n-warnings --path-warnings
|
||||
run: hugo --printI18nWarnings --printPathWarnings
|
||||
|
||||
- name: Compress
|
||||
run: |
|
||||
time sudo ./compress.sh
|
||||
|
||||
- name: Setup SSH
|
||||
uses: kielabokkie/ssh-key-and-known-hosts-action@v1
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.DEPLOY_SSH_KEY }}
|
||||
ssh-host: srv.bbaovanc.com
|
||||
ssh-port: 2222
|
||||
|
||||
- name: Upload
|
||||
uses: up9cloud/action-rsync@v1
|
||||
env:
|
||||
@ -50,4 +50,4 @@ jobs:
|
||||
VERBOSE: true
|
||||
KEY: ${{secrets.DEPLOY_SSH_KEY}}
|
||||
TARGET: /var/www/bbaovanc.com/public/
|
||||
ARGS_MORE: --checksum
|
||||
ARGS: -avPzc --delete-delay --exclude=/.git/ --exclude=/.github/
|
||||
|
18
.github/workflows/pull_request.yml
vendored
18
.github/workflows/pull_request.yml
vendored
@ -29,13 +29,6 @@ jobs:
|
||||
ref: ${{ github.head_ref }}
|
||||
no_override: false
|
||||
|
||||
- name: Setup SSH
|
||||
uses: kielabokkie/ssh-key-and-known-hosts-action@v1
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.DEPLOY_SSH_KEY }}
|
||||
ssh-host: srv.bbaovanc.com
|
||||
ssh-port: 2222
|
||||
|
||||
- name: Setup Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
@ -43,12 +36,19 @@ jobs:
|
||||
extended: true
|
||||
|
||||
- name: Build
|
||||
run: hugo --i18n-warnings --path-warnings --baseURL "https://demo.bbaovanc.com/pull_request/${{ github.event.number }}"
|
||||
run: hugo --printI18nWarnings --printPathWarnings --baseURL "https://demo.bbaovanc.com/pull_request/${{ github.event.number }}"
|
||||
|
||||
- name: Compress
|
||||
run: |
|
||||
time sudo ./compress.sh
|
||||
|
||||
- name: Setup SSH
|
||||
uses: kielabokkie/ssh-key-and-known-hosts-action@v1
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.DEPLOY_SSH_KEY }}
|
||||
ssh-host: srv.bbaovanc.com
|
||||
ssh-port: 2222
|
||||
|
||||
- name: Upload
|
||||
uses: up9cloud/action-rsync@v1
|
||||
env:
|
||||
@ -60,7 +60,7 @@ jobs:
|
||||
VERBOSE: true
|
||||
KEY: ${{secrets.DEPLOY_SSH_KEY}}
|
||||
TARGET: /var/www/demo.bbaovanc.com/pull_request/${{ github.event.number }}/
|
||||
ARGS_MORE: --checksum
|
||||
ARGS: -avPzc --delete-delay --exclude=/.git/ --exclude=/.github/
|
||||
|
||||
- name: Finish deployment
|
||||
uses: bobheadxi/deployments@v0.6.0
|
||||
|
270
assets/css/isso.css
Normal file
270
assets/css/isso.css
Normal file
@ -0,0 +1,270 @@
|
||||
#isso-thread * {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
#isso-thread .isso-comment-header a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#isso-thread {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#isso-thread > h4 {
|
||||
color: #555;
|
||||
font-weight: bold;
|
||||
}
|
||||
#isso-thread > .isso-feedlink {
|
||||
float: right;
|
||||
padding-left: 1em;
|
||||
}
|
||||
#isso-thread > .isso-feedlink > a {
|
||||
font-size: 0.8em;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
#isso-thread .textarea {
|
||||
min-height: 58px;
|
||||
outline: 0;
|
||||
}
|
||||
#isso-thread .textarea.placeholder {
|
||||
color: #757575;
|
||||
}
|
||||
|
||||
#isso-root .isso-comment {
|
||||
max-width: 68em;
|
||||
padding-top: 0.95em;
|
||||
margin: 0.95em auto;
|
||||
}
|
||||
#isso-root .preview .isso-comment {
|
||||
padding-top: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#isso-root .isso-comment:not(:first-of-type),
|
||||
.isso-follow-up .isso-comment {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.isso-comment > div.avatar {
|
||||
display: block;
|
||||
float: left;
|
||||
width: 7%;
|
||||
margin: 3px 15px 0 0;
|
||||
}
|
||||
.isso-comment > div.avatar > svg {
|
||||
max-width: 48px;
|
||||
max-height: 48px;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
border-radius: 3px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.isso-comment > div.text-wrapper {
|
||||
display: block;
|
||||
}
|
||||
.isso-comment .isso-follow-up {
|
||||
padding-left: calc(7% + 20px);
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header, .isso-comment > div.text-wrapper > .isso-comment-footer {
|
||||
font-size: 0.95em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header {
|
||||
font-size: 0.85em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .spacer {
|
||||
padding: 0 6px;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .spacer,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header a.permalink,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .note,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header a.parent {
|
||||
color: gray !important;
|
||||
font-weight: normal;
|
||||
text-shadow: none !important;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .spacer:hover,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header a.permalink:hover,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .note:hover,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header a.parent:hover {
|
||||
color: #606060 !important;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .note {
|
||||
float: right;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-header .author {
|
||||
font-weight: bold;
|
||||
color: #555;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .textarea-wrapper .textarea,
|
||||
.isso-comment > div.text-wrapper > .textarea-wrapper .preview {
|
||||
margin-top: 0.2em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > div.text p {
|
||||
margin-top: 0.2em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > div.text p:last-child {
|
||||
margin-bottom: 0.2em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > div.text h1,
|
||||
.isso-comment > div.text-wrapper > div.text h2,
|
||||
.isso-comment > div.text-wrapper > div.text h3,
|
||||
.isso-comment > div.text-wrapper > div.text h4,
|
||||
.isso-comment > div.text-wrapper > div.text h5,
|
||||
.isso-comment > div.text-wrapper > div.text h6 {
|
||||
font-size: 130%;
|
||||
font-weight: bold;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > div.textarea-wrapper .textarea,
|
||||
.isso-comment > div.text-wrapper > div.textarea-wrapper .preview {
|
||||
width: 100%;
|
||||
border: 1px solid #f0f0f0;
|
||||
border-radius: 2px;
|
||||
box-shadow: 0 0 2px #888;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer {
|
||||
font-size: 0.80em;
|
||||
color: gray !important;
|
||||
clear: left;
|
||||
}
|
||||
.isso-feedlink,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer a {
|
||||
font-weight: bold;
|
||||
text-decoration: none;
|
||||
}
|
||||
.isso-feedlink:hover,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer a:hover {
|
||||
color: #111111 !important;
|
||||
text-shadow: #aaaaaa 0 0 1px !important;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer > a {
|
||||
position: relative;
|
||||
top: .2em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer > a + a {
|
||||
padding-left: 1em;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer .votes {
|
||||
color: gray;
|
||||
}
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer .upvote svg,
|
||||
.isso-comment > div.text-wrapper > .isso-comment-footer .downvote svg {
|
||||
position: relative;
|
||||
top: .2em;
|
||||
}
|
||||
.isso-comment .isso-postbox {
|
||||
margin-top: 0.8em;
|
||||
}
|
||||
.isso-comment.isso-no-votes > * > .isso-comment-footer span.votes {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.isso-postbox {
|
||||
max-width: 68em;
|
||||
margin: 0 auto 2em;
|
||||
clear: right;
|
||||
}
|
||||
.isso-postbox > .form-wrapper {
|
||||
display: block;
|
||||
padding: 0;
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section,
|
||||
.isso-postbox > .form-wrapper > .auth-section .post-action {
|
||||
display: block;
|
||||
}
|
||||
.isso-postbox > .form-wrapper .textarea,
|
||||
.isso-postbox > .form-wrapper .preview {
|
||||
margin: 0 0 .3em;
|
||||
padding: .4em .8em;
|
||||
border-radius: 3px;
|
||||
/*background-color: #fff;*/
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.isso-postbox > .form-wrapper input[type=checkbox] {
|
||||
vertical-align: middle;
|
||||
position: relative;
|
||||
bottom: 1px;
|
||||
margin-left: 0;
|
||||
}
|
||||
.isso-postbox > .form-wrapper .notification-section {
|
||||
font-size: 0.90em;
|
||||
padding-top: .3em;
|
||||
}
|
||||
#isso-thread .textarea:focus,
|
||||
#isso-thread input:focus {
|
||||
border-color: rgba(0, 0, 0, 0.8);
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .input-wrapper {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
max-width: 25%;
|
||||
margin: 0;
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .input-wrapper input {
|
||||
padding: .3em 10px;
|
||||
max-width: 100%;
|
||||
border-radius: 3px;
|
||||
/*background-color: #fff;*/
|
||||
background-color: rgb(0, 0, 0, 0);
|
||||
color: #fff;
|
||||
line-height: 1.4em;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .post-action {
|
||||
display: inline-block;
|
||||
float: right;
|
||||
margin: 0 0 0 5px;
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .post-action > input {
|
||||
padding: calc(.3em - 1px);
|
||||
border-radius: 2px;
|
||||
border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
/*background-color: #DDD;*/
|
||||
background-color: rgb(0, 0, 0, 0);
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
outline: 0;
|
||||
line-height: 1.4em;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .post-action > input:hover {
|
||||
background-color: #CCC;
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .post-action > input:active {
|
||||
background-color: #BBB;
|
||||
}
|
||||
.isso-postbox > .form-wrapper .preview,
|
||||
.isso-postbox > .form-wrapper input[name="edit"],
|
||||
.isso-postbox.preview-mode > .form-wrapper input[name="preview"],
|
||||
.isso-postbox.preview-mode > .form-wrapper .textarea {
|
||||
display: none;
|
||||
}
|
||||
.isso-postbox.preview-mode > .form-wrapper .preview {
|
||||
display: block;
|
||||
}
|
||||
.isso-postbox.preview-mode > .form-wrapper input[name="edit"] {
|
||||
display: inline;
|
||||
}
|
||||
.isso-postbox > .form-wrapper .preview {
|
||||
/*background-color: #f8f8f8;
|
||||
background: repeating-linear-gradient(
|
||||
-45deg,
|
||||
#f8f8f8,
|
||||
#f8f8f8 10px,
|
||||
#fff 10px,
|
||||
#fff 20px
|
||||
);*/
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .notification-section {
|
||||
display: none;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
@media screen and (max-width:600px) {
|
||||
.isso-postbox > .form-wrapper > .auth-section .input-wrapper {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 0 .3em;
|
||||
}
|
||||
.isso-postbox > .form-wrapper > .auth-section .input-wrapper input {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
@ -2,7 +2,7 @@
|
||||
|
||||
title: Put `(edited)` in the middle of a message in Discord
|
||||
date: 2021-03-25T18:48:34-05:00
|
||||
toc: false
|
||||
toc: true
|
||||
comments: true
|
||||
|
||||
authors:
|
||||
@ -31,15 +31,37 @@ message.
|
||||
|
||||
## Tutorial
|
||||
|
||||
1. Copy the "right-to-left embedding" character
|
||||
([U+202B](https://unicode-explorer.com/c/202B)) to your clipboard.
|
||||
2. Open editing box of a message
|
||||
3. Delete all text inside
|
||||
4. Paste the character
|
||||
5. Type the text you want on the right of `(edited)`
|
||||
6. Press space and paste the character
|
||||
7. Type the text you want on the left of `(edited)`
|
||||
Before you start, copy the "right-to-left embedding" character
|
||||
([U+202B](https://unicode-explorer.com/c/202B)) to your clipboard.
|
||||
|
||||
*This post was adapted from [gitea:bbaovanc/discord-tricks][1]*
|
||||
### Method 1
|
||||
|
||||
This method allows you to create a placeholder message, and then replace it with
|
||||
a new message with the `(edited)` text inside it all at once.
|
||||
|
||||
1. Send a message with some random text since you have to edit an existing
|
||||
message for the trick to work.
|
||||
2. Start editing the message you just created and delete all the text inside
|
||||
3. Type the text you want on the left of `(edited)`.
|
||||
4. Type a space, then paste the character twice, and type another space.
|
||||
5. Type the text you want on the right of `(edited)`.
|
||||
6. Save the message.
|
||||
|
||||
You can also start at step 3 instead, send the message, and then edit the
|
||||
message afterwards to add the `(edited)` text.
|
||||
|
||||
### Method 2
|
||||
|
||||
This method allows you to add `(edited)` to the end of an existing message, and
|
||||
then add even more text to the right of that.
|
||||
|
||||
1. Send a message containing the text you want on the left of `(edited)`.
|
||||
2. Start editing the message you just created
|
||||
3. At the end of the message, type a space, then paste the character twice, and
|
||||
type another space.
|
||||
4. Type the text you want on the right of `(edited)`.
|
||||
5. Save the message.
|
||||
|
||||
*This post was adapted from [bbaovanc/discord-tricks][1]*
|
||||
|
||||
[1]: https://git.bbaovanc.com/bbaovanc/discord-tricks
|
||||
|
4
demo.sh
4
demo.sh
@ -1,4 +1,4 @@
|
||||
#!/bin/sh -x
|
||||
rm -rf public/
|
||||
hugo -D --baseURL "https://demo.bbaovanc.com/test/$1"
|
||||
rsync -atvPzc --delete public/ bbaosrv:/var/www/demo.bbaovanc.com/test/$1/
|
||||
HUGO_ENABLEMISSINGTRANSLATIONPLACEHOLDERS=true hugo -D --baseURL "https://demo.bbaovanc.com/test/$1"
|
||||
rsync -avPzc --delete-delay public/ bbaosrv:/var/www/demo.bbaovanc.com/test/$1/
|
||||
|
@ -1,63 +1,8 @@
|
||||
{{ if ne .Site.BaseURL "https://bbaovanc.com" }}
|
||||
<i>Comment section is not available during development previews.</i>
|
||||
{{ else }}
|
||||
{{ $css := resources.Get "css/isso.css" }}
|
||||
{{ $style := $css | resources.Minify }}
|
||||
<link rel="stylesheet" href="{{ $style.Permalink }}">
|
||||
<script data-isso="https://bbaovanc.com/isso/"
|
||||
data-isso-css="false"
|
||||
src="https://bbaovanc.com/isso/js/embed.min.js"></script>
|
||||
|
||||
<noscript>
|
||||
<style>
|
||||
#comments-hr {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
|
||||
<small>
|
||||
<i>Enable JavaScript to see the comment section.</i>
|
||||
</small>
|
||||
</noscript>
|
||||
|
||||
{{ $url := .Permalink }}
|
||||
|
||||
{{ if .IsTranslated }}
|
||||
{{ with index .AllTranslations 0 }}
|
||||
{{ $url = .Permalink }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<script>
|
||||
var remark_config = {
|
||||
host: "https://remark.bbaovanc.com",
|
||||
site_id: "bbaovanc.com",
|
||||
components: [
|
||||
"embed",
|
||||
//"last-comments",
|
||||
//"counter",
|
||||
],
|
||||
url: "{{ $url }}", // make this permalink the main language so all languages have the same comments
|
||||
max_shown_comments: 10,
|
||||
page_title: "{{ .Title }}",
|
||||
locale: "{{ .Language.Lang }}",
|
||||
show_email_subscription: true,
|
||||
simple_view: false,
|
||||
};
|
||||
|
||||
if (window.matchMedia('(prefers-color-scheme: light)').matches) {
|
||||
remark_config["theme"] = "light";
|
||||
} else {
|
||||
remark_config["theme"] = "dark";
|
||||
}
|
||||
</script>
|
||||
<script>!function(e,n){for(var o=0;o<e.length;o++){var r=n.createElement("script"),c=".js",d=n.head||n.body;"noModule"in r?(r.type="module",c=".mjs"):r.async=!0,r.defer=!0,r.src=remark_config.host+"/web/"+e[o]+c,d.appendChild(r)}}(remark_config.components||["embed"],document);</script>
|
||||
|
||||
<script>
|
||||
const darkModeMediaQuery = window.matchMedia('(prefers-color-scheme: light)');
|
||||
darkModeMediaQuery.addListener((e) => {
|
||||
if (e.matches) {
|
||||
window.REMARK42.changeTheme('light');
|
||||
} else {
|
||||
window.REMARK42.changeTheme('dark');
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<div id="remark42"></div>
|
||||
|
||||
{{ end }}
|
||||
<section id="isso-thread"></section>
|
||||
|
Submodule themes/bobatheme updated: 161c68d16c...11599e01d7
Reference in New Issue
Block a user