Bläddra i källkod

fileboard support

pull/18/head
Marcin Łabanowski 9 år sedan
förälder
incheckning
4014682882
33 ändrade filer med 216 tillägg och 107 borttagningar
  1. +14
    -1
      inc/config.php
  2. +2
    -1
      inc/display.php
  3. +4
    -0
      inc/functions.php
  4. +15
    -2
      post.php
  5. +1
    -1
      stylesheets/burichan.css
  6. +1
    -1
      stylesheets/caffe.css
  7. +4
    -4
      stylesheets/confraria.css
  8. +5
    -5
      stylesheets/dark.css
  9. +12
    -12
      stylesheets/dark_roach.css
  10. +2
    -2
      stylesheets/favela.css
  11. +5
    -5
      stylesheets/ferus.css
  12. +2
    -2
      stylesheets/futaba+vichan.css
  13. +2
    -2
      stylesheets/futaba-light.css
  14. +2
    -2
      stylesheets/futaba.css
  15. +2
    -2
      stylesheets/gentoochan.css
  16. +2
    -2
      stylesheets/jungle.css
  17. +11
    -11
      stylesheets/luna.css
  18. +4
    -4
      stylesheets/miku.css
  19. +4
    -4
      stylesheets/nigrachan.css
  20. +4
    -4
      stylesheets/notsuba.css
  21. +3
    -3
      stylesheets/novo_jungle.css
  22. +2
    -2
      stylesheets/piwnichan.css
  23. +1
    -1
      stylesheets/ricechan.css
  24. +23
    -14
      stylesheets/style.css
  25. +2
    -2
      stylesheets/szalet.css
  26. +5
    -5
      stylesheets/terminal2.css
  27. +1
    -1
      stylesheets/testorange.css
  28. +1
    -1
      stylesheets/v8ch.css
  29. +9
    -9
      stylesheets/wasabi.css
  30. +2
    -2
      stylesheets/yotsuba.css
  31. +15
    -0
      templates/fileboard.html
  32. +12
    -0
      templates/post_form.html
  33. +42
    -0
      templates/post_thread_fileboard.html

+ 14
- 1
inc/config.php Visa fil

@@ -282,7 +282,8 @@
'file_url',
'json_response',
'user_flag',
'no_country'
'no_country',
'tag'
);

// Enable reCaptcha to make spam even harder. Rarely necessary.
@@ -735,6 +736,11 @@
$config['allowed_ext'][] = 'png';
// $config['allowed_ext'][] = 'svg';

// Allowed extensions for OP. Inherits from the above setting if set to false. Otherwise, it overrides both allowed_ext and
// allowed_ext_files (filetypes for downloadable files should be set in allowed_ext_files as well). This setting is useful
// for creating fileboards.
$config['allowed_ext_op'] = false;

// Allowed additional file extensions (not images; downloadable files).
// $config['allowed_ext_files'][] = 'txt';
// $config['allowed_ext_files'][] = 'zip';
@@ -1518,6 +1524,13 @@
// Allow OP to remove arbitrary posts in his thread
$config['user_moderation'] = false;

// File board. Like 4chan /f/
$config['file_board'] = false;

// Thread tags. Set to false to disable
// Example: array('A' => 'Chinese cartoons', 'M' => 'Music', 'P' => 'Pornography');
$config['allowed_tags'] = false;

/*
* ====================
* Public post search


+ 2
- 1
inc/display.php Visa fil

@@ -453,7 +453,8 @@ class Thread {
event('show-thread', $this);

$built = Element('post_thread.html', array('config' => $config, 'board' => $board, 'post' => &$this, 'index' => $index, 'hasnoko50' => $hasnoko50, 'isnoko50' => $isnoko50, 'mod' => $this->mod));
$file = ($index && $config['file_board']) ? 'post_thread_fileboard.html' : 'post_thread.html';
$built = Element($file, array('config' => $config, 'board' => $board, 'post' => &$this, 'index' => $index, 'hasnoko50' => $hasnoko50, 'isnoko50' => $isnoko50, 'mod' => $this->mod));
return $built;
}


+ 4
- 0
inc/functions.php Visa fil

@@ -1358,6 +1358,10 @@ function index($page, $mod=false) {
$body .= $thread->build(true);
}

if ($config['file_board']) {
$body = Element('fileboard.html', array('body' => $body, 'mod' => $mod));
}

return array(
'board' => $board,
'body' => $body,


+ 15
- 2
post.php Visa fil

@@ -312,7 +312,12 @@ if (isset($_POST['delete'])) {
$url_without_params = $post['file_url'];

$post['extension'] = strtolower(mb_substr($url_without_params, mb_strrpos($url_without_params, '.') + 1));
if (!in_array($post['extension'], $config['allowed_ext']) && !in_array($post['extension'], $config['allowed_ext_files']))

if ($post['op'] && $config['allowed_ext_op']) {
if (!in_array($post['extension'], $config['allowed_ext_op']))
error($config['error']['unknownext']);
}
else if (!in_array($post['extension'], $config['allowed_ext']) && !in_array($post['extension'], $config['allowed_ext_files']))
error($config['error']['unknownext']);

$post['file_tmp'] = tempnam($config['tmp'], 'url');
@@ -536,6 +541,10 @@ if (isset($_POST['delete'])) {
"\n<tinyboard flag alt>" . $flag_alt . "</tinyboard>";
}

if ($config['allowed_tags'] && $_POST['op'] && isset($_POST['tag']) && isset($config['allowed_tags'][$_POST['tag']])) {
$post['body'] .= "\n<tinyboard tag>" . $_POST['tag'] . "</tinyboard>";
}

if ($config['proxy_save'] && isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$proxy = preg_replace("/[^0-9a-fA-F.,: ]/", '', $_SERVER['HTTP_X_FORWARDED_FOR']);
$post['body'] .= "\n<tinyboard proxy>".$proxy."</tinyboard>";
@@ -565,7 +574,11 @@ if (isset($_POST['delete'])) {
if ($post['has_file']) {
$fnarray = array();
foreach ($post['files'] as $key => &$file) {
if (!in_array($file['extension'], $config['allowed_ext']) && !in_array($file['extension'], $config['allowed_ext_files']))
if ($post['op'] && $config['allowed_ext_op']) {
if (!in_array($file['extension'], $config['allowed_ext_op']))
error($config['error']['unknownext']);
}
elseif (!in_array($file['extension'], $config['allowed_ext']) && !in_array($file['extension'], $config['allowed_ext_files']))
error($config['error']['unknownext']);
$file['is_an_image'] = !in_array($file['extension'], $config['allowed_ext_files']);


+ 1
- 1
stylesheets/burichan.css Visa fil

@@ -36,7 +36,7 @@ div.banner {
font-weight: normal;
}
p.intro span.name {
.intro span.name {
font-family: serif;
font-size: 12px;
}


+ 1
- 1
stylesheets/caffe.css Visa fil

@@ -353,7 +353,7 @@ width: 100%;
#attention_bar:hover {
background-color: rgba(88, 53, 41, 0.3);
}
p.intro a.email span.name {
.intro a.email span.name {
color: #8e6152;
}
a.post_no:hover {


+ 4
- 4
stylesheets/confraria.css Visa fil

@@ -55,11 +55,11 @@ form table tr th {
padding: 0px 5px;
}
p.intro span.name {
.intro span.name {
color: #C5C8C6;
}
p.intro span.subject {
.intro span.subject {
color: #CC1105;
font-weight: bold;
}
@@ -90,11 +90,11 @@ div.post.reply.highlighted {
background: #4A4C4F;
}
p.intro a.email span.name {
.intro a.email span.name {
color: rgb(129, 162, 190);
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: rgb(95, 137, 172);
}


+ 5
- 5
stylesheets/dark.css Visa fil

@@ -23,7 +23,7 @@ div.title, h1 {
div.title p {
font-size: 10px;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #CCCCCC;
text-decoration: none;
font-family: sans-serif;
@@ -61,21 +61,21 @@ div.post.reply div.body a:link, div.post.reply div.body a:visited {
div.post.reply div.body a:link:hover, div.post.reply div.body a:visited:hover {
color: #32DD72;
}
p.intro span.subject {
.intro span.subject {
font-size: 12px;
font-family: sans-serif;
color: #446655;
font-weight: 800;
}
p.intro span.name {
.intro span.name {
color: #32DD72;
font-weight: 800;
}
p.intro a.capcode, p.intro a.nametag {
.intro a.capcode, p.intro a.nametag {
color: magenta;
margin-left: 0;
}
p.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
color: #32ddaf;
}
input[type="text"], textarea, select {


+ 12
- 12
stylesheets/dark_roach.css Visa fil

@@ -20,7 +20,7 @@ a, a:visited {
text-decoration: none;
color: #9999CC;
}
a:hover, p.intro a.post_no:hover {
a:hover, .intro a.post_no:hover {
color: #996699
}
a.post_no {
@@ -28,19 +28,19 @@ a.post_no {
margin: 0;
padding: 0;
}
p.intro a.post_no {
.intro a.post_no {
color: inherit;
}
p.intro a.post_no, p.intro a.email {
.intro a.post_no, p.intro a.email {
margin: 0;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #666699;
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #663366;
}
p.intro label {
.intro label {
display: inline;
}
h2 {
@@ -163,7 +163,7 @@ div.post.op {
div.post.op hr {
border-color: #000000;
}
p.intro {
.intro {
margin: 0.5em 0;
padding: 0;
padding-bottom: 0.2em;
@@ -172,19 +172,19 @@ input.delete {
float: left;
margin: 1px 6px 0 0;
}
p.intro span.subject {
.intro span.subject {
color: #336699;
font-weight: bold;
}
p.intro span.name {
.intro span.name {
color: #336600;
font-weight: bold;
}
p.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
color: #CC0000;
margin-left: 0;
}
p.intro a {
.intro a {
margin-left: 8px;
}
div.delete {
@@ -456,7 +456,7 @@ table.mod.config-editor input[type="text"] {
background-color: #333333;
opacity: 0.8;
}
p.intro.thread-hidden {
.intro.thread-hidden {
margin: 0px;
padding: 0px;
}


+ 2
- 2
stylesheets/favela.css Visa fil

@@ -46,7 +46,7 @@ form table tr th {
color: #FFF;
}
p.intro span.name {
.intro span.name {
font-family: serif;
}
@@ -81,7 +81,7 @@ div[id^="thread_"].highlighted {
background: #B5FFDD;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #345456;
}


+ 5
- 5
stylesheets/ferus.css Visa fil

@@ -16,7 +16,7 @@ div.title, h1 {
div.title p {
font-size: 13px;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #16C816;
text-decoration: underline;
font-family: monospace;
@@ -51,21 +51,21 @@ div.post.reply div.body a:link, div.post.reply div.body a:visited {
div.post.reply div.body a:link:hover, div.post.reply div.body a:visited:hover {
color: #00FF00;
}
p.intro span.subject {
.intro span.subject {
font-size: 12px;
font-family: monospace;
color: #446655;
font-weight: 800;
}
p.intro span.name {
.intro span.name {
color: #008200;
font-weight: 900;
}
p.intro a.capcode, p.intro a.nametag {
.intro a.capcode, p.intro a.nametag {
color: magenta;
margin-left: 0;
}
p.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
color: #00CC64;
font-family: monospace;
}


+ 2
- 2
stylesheets/futaba+vichan.css Visa fil

@@ -15,7 +15,7 @@ div.title p {
div.pages {
font-size: 13px !important;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #0000ff;
font-size: inherit;
text-decoration: inherit;
@@ -41,7 +41,7 @@ div.post.reply.highlighted {
div.post.reply div.body a {
color: navy;
}
p.intro span.subject {
.intro span.subject {
color: #d00;
}
form table tr th {


+ 2
- 2
stylesheets/futaba-light.css Visa fil

@@ -15,7 +15,7 @@ div.title p {
div.pages {
font-size: 13px !important;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #A32615;
font-size: inherit;
text-decoration: inherit;
@@ -42,7 +42,7 @@ div.post.reply.highlighted {
div.post.reply div.body a {
color: rgb(190, 79, 43);
}
p.intro span.subject {
.intro span.subject {
color: #AA4848;
}
form table tr th {


+ 2
- 2
stylesheets/futaba.css Visa fil

@@ -10,7 +10,7 @@ div.title h1 {
div.title p {
font-size: 10px;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #0000ff;
}
a:link:hover {
@@ -30,7 +30,7 @@ div.post.reply.highlighted {
div.post.reply div.body a {
color: navy;
}
p.intro span.subject {
.intro span.subject {
color: #d00;
}
form table tr th {


+ 2
- 2
stylesheets/gentoochan.css Visa fil

@@ -2,7 +2,7 @@ body {
background: #0E0E0E url(data:image/gif;base64,R0lGODlhGAAMAKEEAOXl5ebm5vDw8PHx8SH+EUNyZWF0ZWQgd2l0aCBHSU1QACwAAAAAGAAMAAACRpQiY6cLa146MyY1EJQKjG81lNGRUPOIkgMJHtquBgIO7xwvpbrpduUSuXq8ntEC0bBEylYitdDAdM1ViaobkgKgZwyDLAAAOw==) repeat 0 0!important;
color: #000;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
-webkit-transition: all ease-in 0.3s;
-moz-transition: all ease-in 0.3s;
color: rgba(0, 0, 0, 0.6);
@@ -33,7 +33,7 @@ div.post.reply.highlighted {
div.post.reply p.body a {
color: navy;
}
p.intro span.subject {
.intro span.subject {
color: #000;
}
form table tr th {


+ 2
- 2
stylesheets/jungle.css Visa fil

@@ -66,7 +66,7 @@ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
div.post.reply div.body a {
color: #00E;
}
p.intro span.subject {
.intro span.subject {
color: #d00;
}
form table tr th {
@@ -118,7 +118,7 @@ table.modlog tr th {
background: #EA8;
}

p.intro span.name {
.intro span.name {
color: maroon;
font-weight: 600;
}


+ 11
- 11
stylesheets/luna.css Visa fil

@@ -22,7 +22,7 @@ a, a:selected {
text-decoration: bold;
color: #ffffff;
}
a:hover, p.intro a.post_no:hover {
a:hover, .intro a.post_no:hover {
color: #ffffff;
}
a.post_no {
@@ -30,19 +30,19 @@ a.post_no {
margin: 0;
padding: 0;
}
p.intro a.post_no {
.intro a.post_no {
color: inherit;
}
p.intro a.post_no, p.intro a.email {
.intro a.post_no, p.intro a.email {
margin: 0;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #0091ff;
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #ffffff;
}
p.intro label {
.intro label {
display: inline;
}
h2 {
@@ -165,7 +165,7 @@ div.post.op {
div.post.op hr {
border-color: #040934;
}
p.intro {
.intro {
margin: 0.5em 0;
padding: 0;
padding-bottom: 0.2em;
@@ -174,19 +174,19 @@ input.delete {
float: left;
margin: 1px 6px 0 0;
}
p.intro span.subject {
.intro span.subject {
color: #CCCCEE;
font-weight: bold;
}
p.intro span.name {
.intro span.name {
color: #BBBBDD;
font-weight: bold;
}
p.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
color: #CCCCEE;
margin-left: 0;
}
p.intro a {
.intro a {
margin-left: 8px;
}
div.delete {


+ 4
- 4
stylesheets/miku.css Visa fil

@@ -19,11 +19,11 @@ a.post_no {
color: #000033;
}

p.intro a.email span.name {
.intro a.email span.name {
color: #0093AB;
}

p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #DD0000;
}

@@ -43,12 +43,12 @@ div.post.op hr {
border-color: #B7C9D5;
}

p.intro span.subject {
.intro span.subject {
color: #117743;
font-weight: 800;
}

p.intro span.name {
.intro span.name {
color: #117743;
font-weight: 800;
}


+ 4
- 4
stylesheets/nigrachan.css Visa fil

@@ -52,7 +52,7 @@ input[type="text"], input[type="password"], textarea, input[type="submit"], inpu
border: 1px solid #202020;
}
p.intro span.name {
.intro span.name {
font-size: 11pt;
color: #505050;
font-weight: bold;
@@ -88,16 +88,16 @@ div.post.reply.highlighted {
background: #111111;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #FFFFFF;
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #A0A0A0;
text-decoration: underline;
}
p.intro span.subject {
.intro span.subject {
color: #606060;
}


+ 4
- 4
stylesheets/notsuba.css Visa fil

@@ -20,11 +20,11 @@ a.post_no {
color: #000033;
}

p.intro a.email span.name {
.intro a.email span.name {
color: #608673;
}

p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #DD0000;
}

@@ -44,12 +44,12 @@ div.post.op hr {
border-color: #608673;
}

p.intro span.subject {
.intro span.subject {
color: #8a2e2e;
font-weight: 800;
}

p.intro span.name {
.intro span.name {
color: #117743;
font-weight: 800;
}


+ 3
- 3
stylesheets/novo_jungle.css Visa fil

@@ -65,7 +65,7 @@ form[name="postcontrols"] {
margin: 20px auto;
}
p.intro span.name {
.intro span.name {
color: #800000;
font-weight: 800;
}
@@ -104,11 +104,11 @@ div.post.reply.highlighted {
background-image: url('img/jungle_td_dark.png');;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #0000EE;
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #00990B;
}


+ 2
- 2
stylesheets/piwnichan.css Visa fil

@@ -41,7 +41,7 @@ a.email span.name {
color: #5A8C99 !important;
}

p.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
color: #6E0877;
}

@@ -157,7 +157,7 @@ div.banner, .replymode, .catalogmode {
font-weight:800;
}
p.intro span.subject {
.intro span.subject {
color: #4D2C80;
font-weight: bold;
}


+ 1
- 1
stylesheets/ricechan.css Visa fil

@@ -190,7 +190,7 @@ blockquote {
.de-refmap {
color: #4C505E !important;
}
p.intro a.email span.name {
.intro a.email span.name {
text-decoration: underline;
}
.quote {


+ 23
- 14
stylesheets/style.css Visa fil

@@ -13,7 +13,7 @@ a,a:visited {
color: #34345C;
}

a:hover,p.intro a.post_no:hover {
a:hover,.intro a.post_no:hover {
color: #ff0000;
}

@@ -23,27 +23,27 @@ a.post_no {
padding: 0;
}

p.intro a.post_no {
.intro a.post_no {
color: inherit;
}

p.intro a.post_no,p.intro a.email,p.intro a.post_anchor {
.intro a.post_no,p.intro a.email,p.intro a.post_anchor {
margin: 0;
}

p.intro a.email span.name {
.intro a.email span.name {
color: #34345C;
}

p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #ff0000;
}

p.intro label {
.intro label {
display: inline;
}

p.intro time,p.intro a.ip-link,p.intro a.capcode {
.intro time,p.intro a.ip-link,p.intro a.capcode {
direction: ltr;
unicode-bidi: embed;
}
@@ -219,7 +219,7 @@ div.post.op hr {
border-color: #D9BFB7;
}

p.intro {
.intro {
margin: 0.5em 0;
padding: 0;
padding-bottom: 0.2em;
@@ -230,22 +230,22 @@ input.delete {
margin: 1px 6px 0 0;
}

p.intro span.subject {
.intro span.subject {
color: #0F0C5D;
font-weight: bold;
}

p.intro span.name {
.intro span.name {
color: #117743;
font-weight: bold;
}

p.intro span.capcode,p.intro a.capcode,p.intro a.nametag {
.intro span.capcode,p.intro a.capcode,p.intro a.nametag {
color: #F00000;
margin-left: 0;
}

p.intro a {
.intro a {
margin-left: 8px;
}

@@ -604,7 +604,7 @@ table.mod.config-editor input[type="text"] {
background-color: rgba(100%,100%,100%,0.2);
}

p.intro.thread-hidden {
.intro.thread-hidden {
margin: 0;
padding: 0;
}
@@ -931,7 +931,7 @@ span.pln {


@media screen and (min-width: 768px) {
p.intro {
.intro {
clear: none;
}

@@ -1051,3 +1051,12 @@ span.pln {
margin-left: 10px;
margin-right: 10px;
}

/* Fileboard */
table.fileboard th, table.fileboard td {
padding: 2px;
text-align: center;
}
table.fileboard .intro a {
margin-left: 0px;
}

+ 2
- 2
stylesheets/szalet.css Visa fil

@@ -20,7 +20,7 @@ background-repeat: repeat;
background-color: #200000;
}

p.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
.intro span.capcode, p.intro a.capcode, p.intro a.nametag {
color: #26899C;
}

@@ -154,7 +154,7 @@ div.banner, .replymode, .catalogmode {
font-weight:800;
}
p.intro span.subject {
.intro span.subject {
color: #771018;
font-weight: bold;
}


+ 5
- 5
stylesheets/terminal2.css Visa fil

@@ -16,7 +16,7 @@ div.title, h1 {
div.title p {
font-size: 10px;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #00FF00;
text-decoration: underline;
font-family: sans-serif;
@@ -50,21 +50,21 @@ div.post.reply div.body a:link, div.post.reply div.body a:visited {
div.post.reply div.body a:link:hover, div.post.reply div.body a:visited:hover {
color: #00FF00;
}
p.intro span.subject {
.intro span.subject {
font-size: 12px;
font-family: sans-serif;
color: #446655;
font-weight: 800;
}
p.intro span.name {
.intro span.name {
color: #00FF00;
font-weight: 800;
}
p.intro a.capcode, p.intro a.nametag {
.intro a.capcode, p.intro a.nametag {
color: #00FF00;
margin-left: 0;
}
p.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
.intro a.email, p.intro a.email span.name, p.intro a.email:hover, p.intro a.email:hover span.name {
color: #00FF00;
}
input[type="text"], textarea, select {


+ 1
- 1
stylesheets/testorange.css Visa fil

@@ -202,7 +202,7 @@ div.boardlist.bottom {
background-color: rgba(0%, 0%, 0%, 0.45);
}

p.intro span.subject {
.intro span.subject {
color:#ee8100;
}



+ 1
- 1
stylesheets/v8ch.css Visa fil

@@ -136,7 +136,7 @@ form table tr th{
background: #fec !important;
}
p.intro.thread-hidden{
.intro.thread-hidden{
padding-bottom: 1em !important;
}


+ 9
- 9
stylesheets/wasabi.css Visa fil

@@ -27,16 +27,16 @@ a.post_no {
margin: 0;
padding: 0;
}
p.intro a.post_no, p.intro a.email {
.intro a.post_no, p.intro a.email {
margin: 0;
}
p.intro a.email span.name {
.intro a.email span.name {
color: #34345C;
}
p.intro a.email:hover span.name {
.intro a.email:hover span.name {
color: #ff0000;
}
p.intro label {
.intro label {
display: inline;
}
h2 {
@@ -155,7 +155,7 @@ div.post.op {
div.post.op hr {
border-color: #D9BFB7;
}
p.intro {
.intro {
margin: 0.5em 0;
padding: 0;
padding-bottom: 0.2em;
@@ -164,19 +164,19 @@ input.delete {
float: left;
margin: 1px 6px 0 0;
}
p.intro span.subject {
.intro span.subject {
color: #0F0C5D;
font-weight: bold;
}
p.intro span.name {
.intro span.name {
color: #117743;
font-weight: bold;
}
p.intro a.capcode, p.intro a.nametag {
.intro a.capcode, p.intro a.nametag {
color: #F00000;
margin-left: 0;
}
p.intro a {
.intro a {
margin-left: 8px;
}
div.delete {


+ 2
- 2
stylesheets/yotsuba.css Visa fil

@@ -2,7 +2,7 @@ body {
background: #ffe url('img/fade-yotsuba.png') repeat-x 50% 0%;
color: #800000;
}
a:link, a:visited, p.intro a.email span.name {
a:link, a:visited, .intro a.email span.name {
color: #0000ff;
}
a:link:hover {
@@ -22,7 +22,7 @@ div.post.reply.highlighted {
div.post.reply div.body a {
color: navy;
}
p.intro span.subject {
.intro span.subject {
color: #d00;
}
form table tr th {


+ 15
- 0
templates/fileboard.html Visa fil

@@ -0,0 +1,15 @@
<table class='fileboard'>
<tr>
<th>&nbsp; <!-- checkbox -->
<th>{% trans %}No.{% endtrans %}
<th>{% trans %}Name{% endtrans %}
<th>{% trans %}File{% endtrans %}
<th>{% trans %}Tag{% endtrans %}
<th>{% trans %}Subject{% endtrans %}
<th>{% trans %}Size{% endtrans %}
<th>{% trans %}Date{% endtrans %}
<th>{% trans %}Replies{% endtrans %}
<th>&nbsp; <!-- reply -->
</tr>
{{ body }}
</table>

+ 12
- 0
templates/post_form.html Visa fil

@@ -92,6 +92,18 @@
</td>
</tr>
{% endif %}
{% if config.allowed_tags and not id %}
<tr>
<th>{% trans %}Tag{% endtrans %}</th>
<td>
<select name="tag">
{% for id, tag in config.allowed_tags %}
<option value="{{ id }}">{{ tag }}</option>
{% endfor %}
</select>
</td>
</tr>
{% endif %}
<tr id="upload">
<th>
{% trans %}File{% endtrans %}


+ 42
- 0
templates/post_thread_fileboard.html Visa fil

@@ -0,0 +1,42 @@
{% filter remove_whitespace %}
{# tabs and new lines will be ignored #}

{# we are intentionally breaking the thread_ID convention: the jses need to handle this case differently #}
<tr id="filethread_{{ post.id }}" class="intro" data-board="{{ board.uri }}">

<td><input type="checkbox" class="delete" name="delete_{{ post.id }}" id="delete_{{ post.id }}" />
<td><a class="post_no" onclick="citeReply({{ post.id }})" href="{{ post.link('q') }}">{{ post.id }}</a>
<td>{% include 'post/name.html' %}
{% include 'post/flag.html' %}
<td>[<a href="{{ config.uri_img }}{{ post.files[0].file }}">{{ post.files[0].filename|e|bidi_cleanup }}</a>]
<td>{% if post.modifiers['tag'] %}[{{ post.modifiers['tag'] }}]{% endif %}
<td>{% include 'post/subject.html' %}
{% if post.sticky %}
{% if config.font_awesome %}
<i class="fa fa-thumb-tack"></i>
{% else %}
<img class="icon" title="Sticky" src="{{ config.image_sticky }}" alt="Sticky" />
{% endif %}
{% endif %}
{% if post.locked %}
{% if config.font_awesome %}
<i class="fa fa-lock"></i>
{% else %}
<img class="icon" title="Locked" src="{{ config.image_locked }}" alt="Locked" />
{% endif %}
{% endif %}
{% if post.bumplocked and (config.mod.view_bumplock < 0 or (post.mod and post.mod|hasPermission(config.mod.view_bumplock, board.uri))) %}
{% if config.font_awesome %}
<i class="fa fa-anchor"></i>
{% else %}
<img class="icon" title="Bumplocked" src="{{ config.image_bumplocked }}" alt="Bumplocked" />
{% endif %}
{% endif %}
<td>{{ post.files[0].size|filesize }}
<td>{% include 'post/time.html' %}
<td>{{ post.omitted }}
<td>{% include 'post/post_controls.html' %}
<a href="{{ post.root }}{{ board.dir }}{{ config.dir.res }}{{ link_for(post) }}">[{% trans %}Reply{% endtrans %}]</a>

</tr>
{% endfilter %}

Laddar…
Avbryt
Spara