Compare commits
12 Commits
fd8dd64b49
...
24c6637b3d
Author | SHA1 | Date |
---|---|---|
towards-a-new-leftypol | 24c6637b3d | |
towards-a-new-leftypol | f45247a278 | |
towards-a-new-leftypol | 9f00e4948e | |
towards-a-new-leftypol | 741dedacc3 | |
towards-a-new-leftypol | 2475b381e1 | |
towards-a-new-leftypol | 2d53302e33 | |
towards-a-new-leftypol | 98b038bdb8 | |
towards-a-new-leftypol | 08afcdb42c | |
towards-a-new-leftypol | 3b88f9eba3 | |
Jon | 1f4c94fef1 | |
towards-a-new-leftypol | 862d38c9b3 | |
Jon | 61166cb4f1 |
|
@ -45,7 +45,7 @@ class Api {
|
||||||
|
|
||||||
$this->threadsPageFields = array(
|
$this->threadsPageFields = array(
|
||||||
'id' => 'no',
|
'id' => 'no',
|
||||||
'bump' => 'last_modified',
|
'bump' => 'bump',
|
||||||
'board' => 'board',
|
'board' => 'board',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -197,6 +197,7 @@ class Api {
|
||||||
$ips[] = $p->ip;
|
$ips[] = $p->ip;
|
||||||
}
|
}
|
||||||
$apiPosts['posts'][0]['unique_ips'] = count(array_unique($ips));
|
$apiPosts['posts'][0]['unique_ips'] = count(array_unique($ips));
|
||||||
|
$apiPosts['posts'][0]['last_modified'] = (empty($thread->posts) ? $thread : end($thread->posts))->time;
|
||||||
|
|
||||||
return $apiPosts;
|
return $apiPosts;
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@ $config['prepended_foreign_boards'] = array(
|
||||||
|
|
||||||
// Board categories. Only used in the "Categories" theme.
|
// Board categories. Only used in the "Categories" theme.
|
||||||
$config['categories'] = array(
|
$config['categories'] = array(
|
||||||
'Leftypol' => array(
|
'Boards' => array(
|
||||||
'leftypol',
|
'leftypol',
|
||||||
'b',
|
'b',
|
||||||
'WRK',
|
'WRK',
|
||||||
|
@ -563,7 +563,7 @@ $config['filters'][] = array(
|
||||||
|
|
||||||
$config['filters'][] = array(
|
$config['filters'][] = array(
|
||||||
'condition' => array(
|
'condition' => array(
|
||||||
'body' => '/(^|\s)((https?):\/\/)?[\w-]{2,6}\.[a-z]{2,4}\/\w{2,8}(\s|$)/i', // url shorteners are not allowed
|
'body' => '/(^|\s)((https?):\/\/)?[\w-]{2,6}\.[a-z]{2,4}\/\w{2,8}(#[^\s]+)?(\s|$)/i', // url shorteners are not allowed
|
||||||
),
|
),
|
||||||
'action' => 'reject',
|
'action' => 'reject',
|
||||||
'message' => 'Url shorteners are not allowed'
|
'message' => 'Url shorteners are not allowed'
|
||||||
|
|
|
@ -102,6 +102,7 @@ $().ready(() => {
|
||||||
LCNPostContainer.all(dom.querySelector(`#thread_${threadPost.getInfo().getThreadId()}`)))
|
LCNPostContainer.all(dom.querySelector(`#thread_${threadPost.getInfo().getThreadId()}`)))
|
||||||
|
|
||||||
updateRepliesFn(thread, missingPCList)
|
updateRepliesFn(thread, missingPCList)
|
||||||
|
statUniqueIPs.innerText = dom.querySelector("#lcn-uniqueips").innerText
|
||||||
}
|
}
|
||||||
|
|
||||||
const fetchThreadFn = async () => {
|
const fetchThreadFn = async () => {
|
||||||
|
@ -141,7 +142,6 @@ $().ready(() => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const threadEl = thread.getElement()
|
const threadEl = thread.getElement()
|
||||||
statUniqueIPs.innerText = threadStats.unique_ips
|
|
||||||
statReplies.innerText = thread.getReplies().length
|
statReplies.innerText = thread.getReplies().length
|
||||||
statFiles.innerText = threadEl.querySelectorAll(".files .file").length - threadEl.querySelectorAll(".files .file .post-image.deleted").length
|
statFiles.innerText = threadEl.querySelectorAll(".files .file").length - threadEl.querySelectorAll(".files .file .post-image.deleted").length
|
||||||
statPage.innerText = threadStats.page + 1
|
statPage.innerText = threadStats.page + 1
|
||||||
|
|
|
@ -20,7 +20,9 @@ body {
|
||||||
|
|
||||||
.bar.top {
|
.bar.top {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100vw;
|
width: calc(100% + 8px);
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 .25em;
|
||||||
left: -4px;
|
left: -4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,23 +8,18 @@
|
||||||
<link rel="stylesheet" media="screen" href="/stylesheets/bunker_like.css">
|
<link rel="stylesheet" media="screen" href="/stylesheets/bunker_like.css">
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.sidebar {
|
.sidebar {
|
||||||
grid-column: 1;
|
grid-column: 1 / 3;
|
||||||
grid-row: 1 / 3;
|
grid-row: 1 / 3;
|
||||||
width: 200px;
|
|
||||||
border-right-color: gray;
|
|
||||||
border-right-style: solid;
|
|
||||||
border-width: 2px;
|
|
||||||
margin-right: 15px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.introduction {
|
.introduction {
|
||||||
grid-column: 2 / 9;
|
grid-column: 3 / 9;
|
||||||
grid-row: 1;
|
grid-row: 1;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
grid-column: 2 / 9;
|
grid-column: 3 / 9;
|
||||||
grid-row: 2;
|
grid-row: 2;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
|
@ -33,8 +28,8 @@
|
||||||
|
|
||||||
body {
|
body {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: repeat(auto-fill,minmax(200px, 1fr));
|
grid-template-columns: repeat(auto-fill,minmax(120px, 20%));
|
||||||
gap: 20px;
|
min-height: 100vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.modlog {
|
.modlog {
|
||||||
|
@ -70,6 +65,16 @@
|
||||||
li a.system {
|
li a.system {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
grid-column: 1 / 9;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.news.ban {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width:768px) {
|
@media (max-width:768px) {
|
||||||
body{
|
body{
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
</header>
|
</header>
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="ban">
|
<div class="ban news">
|
||||||
{% if not news %}
|
{% if not news %}
|
||||||
<p style="text-align:center" class="unimportant">{% trans %}(No news to show.){% endtrans %}</p>
|
<p style="text-align:center" class="unimportant">{% trans %}(No news to show.){% endtrans %}</p>
|
||||||
{% else %}
|
{% else %}
|
||||||
|
@ -98,14 +98,14 @@
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<footer>
|
|
||||||
<p class="unimportant" style="margin-top:20px;text-align:center;">- Tinyboard +
|
|
||||||
<a href="https://engine.vichan.net/">vichan</a> {{ config.version }} -
|
|
||||||
<br>Tinyboard Copyright © 2010-2014 Tinyboard Development Group
|
|
||||||
<br><a href="https://engine.vichan.net/">vichan</a> Copyright © 2012-2016 vichan-devel
|
|
||||||
<br><br>
|
|
||||||
<br><b>Leftychan.net is not currently under investigation by any Federal, State, or Local Authorities.</b></p>
|
|
||||||
</footer>
|
|
||||||
</div>
|
</div>
|
||||||
|
<footer>
|
||||||
|
<p class="unimportant" style="margin-top:20px;text-align:center;">- Tinyboard +
|
||||||
|
<a href="https://engine.vichan.net/">vichan</a> {{ config.version }} -
|
||||||
|
<br>Tinyboard Copyright © 2010-2014 Tinyboard Development Group
|
||||||
|
<br><a href="https://engine.vichan.net/">vichan</a> Copyright © 2012-2016 vichan-devel
|
||||||
|
<br><br>
|
||||||
|
<br><b>Leftychan.net is not currently under investigation by any Federal, State, or Local Authorities.</b></p>
|
||||||
|
</footer>
|
||||||
{% endapply %}
|
{% endapply %}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue