diff --git a/inc/config.php b/inc/config.php index a9145f4a..032e937a 100644 --- a/inc/config.php +++ b/inc/config.php @@ -712,7 +712,7 @@ * ==================== */ - // "Wiki" markup syntax ($config['wiki_markup'] in pervious versions): + // "Wiki" markup syntax ($config['wiki_markup'] in previous versions): $config['markup'][] = array("/'''(.+?)'''/", "\$1"); $config['markup'][] = array("/''(.+?)''/", "\$1"); $config['markup'][] = array("/\*\*(.+?)\*\*/", "\$1"); @@ -723,6 +723,9 @@ // "/```([a-z0-9-]{0,20})\n(.*?)\n?```\n?/s" $config['markup_code'] = false; + // // Dice Roll Markup + // $config['markup'][] = array("/\[diceroll\](.+?)\[\/diceroll\]/s", "\$1"); + // Repair markup with HTML Tidy. This may be slower, but it solves nesting mistakes. Tinyboard, at the // time of writing this, can not prevent out-of-order markup tags (eg. "**''test**'') without help from // HTML Tidy. @@ -1510,10 +1513,10 @@ $config['mod']['link_merge'] = '[Merge]'; $config['mod']['link_cycle'] = '[Cycle]'; $config['mod']['link_uncycle'] = '[-Cycle]'; - $config['mod']['link_shadow_restore'] = '[SD Restore]'; $config['mod']['link_shadow_delete'] = '[SD Delete]'; - + $config['mod']['link_send_to_archive'] = '[Archive]'; + // Moderator capcodes. $config['capcode'] = ' ## %s'; @@ -1776,6 +1779,10 @@ $config['mod']['news_custom'] = ADMIN; // Delete news entries $config['mod']['news_delete'] = ADMIN; + // Send Threads directly to Archive (need to be greater than or equal to ['mod']['delete'] permission) + $config['mod']['send_threads_to_archive'] = MOD; + if($config['mod']['send_threads_to_archive'] < $config['mod']['delete']) + $config['mod']['send_threads_to_archive'] = $config['mod']['delete']; // Feature archived threads $config['mod']['feature_archived_threads'] = JANITOR; // Delete featured archived threads diff --git a/inc/mod/pages.php b/inc/mod/pages.php index 6f0b2247..8afb88d9 100644 --- a/inc/mod/pages.php +++ b/inc/mod/pages.php @@ -3975,5 +3975,17 @@ function mod_view_archive_mod_archive($boardName) { )); } - - +function mod_archive_thread($board, $post) { + global $config; + + if (!openBoard($board)) + error($config['error']['noboard']); + + if (!hasPermission($config['mod']['send_threads_to_archive'], $board)) + error($config['error']['noaccess']); + + Archive::archiveThread($post); + mod_delete($board, false, $post); + + header('Location: ?/' . sprintf($config['board_path'], $board) . $config['file_index'], true, $config['redirect_http']); +} \ No newline at end of file diff --git a/mod.php b/mod.php index 59695b4e..d41a3e44 100644 --- a/mod.php +++ b/mod.php @@ -104,7 +104,8 @@ $pages = array( '/(\%b)/(un)?sticky/(\d+)' => 'secure sticky', // sticky thread '/(\%b)/(un)?cycle/(\d+)' => 'secure cycle', // cycle thread '/(\%b)/bump(un)?lock/(\d+)' => 'secure bumplock', // "bumplock" thread - + '/(\%b)/archive_thread/(\d+)' => 'secure archive_thread', // send thread to archive + '/themes' => 'themes_list', // manage themes '/themes/(\w+)' => 'secure_POST theme_configure', // configure/reconfigure theme '/themes/(\w+)/rebuild' => 'secure theme_rebuild', // rebuild theme diff --git a/stylesheets/tomorrow.css b/stylesheets/tomorrow.css new file mode 100644 index 00000000..a63c275f --- /dev/null +++ b/stylesheets/tomorrow.css @@ -0,0 +1,229 @@ +/** TOMORROW, I'LL ... + +A cool dark skin by 7185. +https://github.com/7185/8chan-tomorrow/ + +**/ +body { + background:#1d1f21 none; + color:#C5C8C6 +} +h1,div.subtitle { + color:#C5C8C6!important +} +a:link,a:visited,p.intro a.email span.name { + color:#81a2be +} +a:link:hover { + color:#5F89AC +} +a.post_no { + color:#C5C8C6 +} +a.post_no:hover { + color:#5F89AC!important +} +div.banner { + background-color:#1d1f21 +} +div.post.reply { + background-color:#282a2e; + border:1px solid #282a2e; + margin-bottom:2px; + margin-left:16px; + margin-top:2px +} +div.post.reply.highlighted { + background-color:#1d1d21; + border:1px solid #111 +} +div.post.reply div.body a { + color:#81a2be +} +div.post.reply div.body a:hover { + color:#5F89AC +} +div.post-hover { + border:1px solid #000!important; + box-shadow:none!important +} +.theme-catalog div.thread:hover { + background-color:#1d1f21; + border-color:#111 +} +p.intro span.subject { + color:#b294bb +} +p.intro span.name { + color:#C5C8C6 +} +.quote { + color:#adbd68 +} +span.heading { + color:#F20 +} +form table tr th { + background:#282a2e; + border:1px solid #111; + color:#C5C8C6 +} +div.ban h2 { + background:#282A2E; + color:inherit +} +div.ban { + border-color:#282A2E; +} +div.ban { + color:#C5C8C6; + background-color: inherit; +} +div.pages { + background:#1d1f21; + border-color:#1d1f21 +} +div.pages a.selected { + color:#81a2be; + font-weight:700 +} +div.boardlist { + background-color:#282a2e!important; + color:#C5C8C6 +} +div.boardlist:nth-of-type(1) { + border-bottom:1px solid #111!important; + box-shadow:0 0 3px 0 #111 +} +div.boardlist a { + color:#81a2be +} +hr { + background-color:#282a2e; + border:0; + height:1px +} +div#options_div { + background-color:#282a2e +} +div.options_tab_icon { + color:#AAA +} +div.options_tab_icon:hover { + background-color:#111 +} +div.options_tab_icon.active { + color:#F20 +} +div.blotter { + color:#F20 +} +span.omitted { + color:#707070 +} +p.intro a,span.omitted a { + text-decoration:none +} +form#quick-reply { + padding-right:1px; + border: 1px solid #111 +} +span.capcode { + background-color: #122; + padding:2px 5px; + border-radius: 10px +} +div#watchlist,div#alert_div { + border:1px solid #111; + background-color:#282a2e +} +div#watchlist a,a.watchThread { + color:#81a2be; + text-decoration:none +} +div#watchlist a:hover,a.watchThread:hover { + color:#5F89AC +} + +/* Remove the following parts if those annoy you */ +/* Keep small thumbnails in replies */ +.post.reply a:not([data-expanded="true"]) .post-image{ + width:auto!important; + height:auto!important; + max-height:160px; + max-width:160px +} + +/* +.modlog tr:nth-child(even), .modlog th { + background-color: #282A2E; +} +*/ +table.modlog { + color: #FFF; + background-color: #282A2E; +} +table.modlog tbody { + color: #FFF; +} +table.modlog tr th, +table.modlog tr td { + background-color: #282A2E; +} +table.modlog tr:hover td { + background-color: #383A3E; +} + + +.box { + background: #282a2e; + border-color: #111; + color: #C5C8C6; +} +.box-title { + background: #282a2e; + color: #C5C8C6; +} + +table thead th { + background: #282a2e; + border-color: #111; + color: #C5C8C6; +} +table tbody tr:nth-of-type( even ) { + background-color: #282a2e; +} + +table.board-list-table .board-uri .board-sfw { + color: #81a2be; +} +tbody.board-list-omitted td { + background: #282a2e; + border-color: #111; +} + +table.board-list-table .board-tags .board-cell:hover { + background: #1d1f21; +} +table.board-list-table tr:nth-of-type( even ) .board-tags .board-cell { + background: #282a2e; +} + +/* Predefined reasons */ +.ReasonTableForm tr:first-child td { + background: #282A2E; +} +.ReasonTableForm tr:hover td { + background: #1D1D21; +} + + +/* fix for post menu */ +.post-menu { + color: #DB7A18; +} + +.post-menu ul { + background-color: #1D1F21; +} + diff --git a/templates/post/post_controls.html b/templates/post/post_controls.html index 09d1c2c7..619cafdc 100644 --- a/templates/post/post_controls.html +++ b/templates/post/post_controls.html @@ -59,7 +59,9 @@ {{ config.mod.link_lock }}  {% endif %} {% endif %} - + {% if mod|hasPermission(config.mod.send_threads_to_archive, board.uri) %} + {{ secure_link_confirm(config.mod.link_send_to_archive, 'Send thread to archive'|trans, 'Are you sure you want to send thread to archive and delete it from the catalog?'|trans, board.dir ~ 'archive_thread/' ~ post.id ) }}  + {% endif %} {% endif %} {% if mod|hasPermission(config.mod.move, board.uri) %} {% if not post.thread %}