From a124189630b2d57c1620f3e9685ffc94a346051a Mon Sep 17 00:00:00 2001 From: www-data Date: Thu, 8 Oct 2015 02:27:10 +0100 Subject: [PATCH] Repurpose recent theme for homepage --- templates/themes/categories-uboachan/info.php | 42 ++++ .../themes/categories-uboachan/theme.php | 223 ++++++++++++++++++ .../themes/categories-uboachan/thumb.png | Bin 0 -> 9965 bytes templates/themes/recent/recent.css | 154 ++++++++++-- templates/themes/recent/recent.html | 39 +-- 5 files changed, 427 insertions(+), 31 deletions(-) create mode 100644 templates/themes/categories-uboachan/info.php create mode 100644 templates/themes/categories-uboachan/theme.php create mode 100644 templates/themes/categories-uboachan/thumb.png diff --git a/templates/themes/categories-uboachan/info.php b/templates/themes/categories-uboachan/info.php new file mode 100644 index 00000000..3ef9871f --- /dev/null +++ b/templates/themes/categories-uboachan/info.php @@ -0,0 +1,42 @@ + 'Title', + 'name' => 'title', + 'type' => 'text' + ); + + $theme['config'][] = Array( + 'title' => 'Slogan', + 'name' => 'subtitle', + 'type' => 'text' + ); + + // Unique function name for building everything + $theme['build_function'] = 'categories_build'; + + $theme['install_callback'] = 'categories_install'; + if(!function_exists('categories_install')) { + function categories_install($settings) { + global $config; + + if(!isset($config['boards']) || !isset($config['categories'])) { + return Array(false, '

Prerequisites not met!

' . + 'This theme requires $config[\'boards\'] and $config[\'categories\'] to be set.'); + } + } + } +?> diff --git a/templates/themes/categories-uboachan/theme.php b/templates/themes/categories-uboachan/theme.php new file mode 100644 index 00000000..296e0d06 --- /dev/null +++ b/templates/themes/categories-uboachan/theme.php @@ -0,0 +1,223 @@ +' + . '' + . '' + . '' + . '' + . '' . $settings['title'] . '' + . '' + . '' + . '' + . '' + // Sidebar + . '' + // Main + . '' + // Finish page + . ''; + } + + // Build news page + public static function news($settings) { + global $config, $board; + + // HTML5 + $body = '' + . '' + . '' + . '' + . '' + . '' + . '' . $settings['title'] . ' - News' + . ''; + + $boardlist = createBoardlist(); + + $body .= $boardlist['top'] + . '
'; + + $boards = listBoards(); + + $body .= '
Don\'t touch the lights!
'; + // Recent Posts + + $body .= '
Recent Posts
'; + + $query = ''; + foreach($boards as &$_board) { + // Block Board + if ($_board['uri'] != "aurora") { + $query .= sprintf("SELECT *, '%s' AS `board` FROM `posts_%s` UNION ALL ", $_board['uri'], $_board['uri']); + } + } + $query = preg_replace('/UNION ALL $/', 'ORDER BY `time` DESC LIMIT 15', $query); + $query = query($query) or error(db_error()); + + while($post = $query->fetch()) { + openBoard($post['board']); + + $body .= '' . $board['name'] . ': '; + $snip = pm_snippet($post['body'], 95); + if($snip === "") + { + $body .= '<empty>'; + } + else + { + $body .= $snip; + } + $body .= '
'; + } + + // News + + $body .= '
'; + + $query = query("SELECT * FROM `news` ORDER BY `time` DESC LIMIT 5") or error(db_error()); + if($query->rowCount() == 0) { + $body .= '

(No news to show.)

'; + } else { + // List news + while($news = $query->fetch()) { + $body .= '
' . + // Newer than 5 days? + (time() - $news['time'] <= 432000 ? + '*NEW* ' + : + '' + ) . + ($news['subject'] ? + $news['subject'] + : + 'no subject' + ) . + ' — by ' . + $news['name'] . + ' at ' . + strftime($config['post_date'], $news['time']) . + '
' . + $news['body'] . + '
'; + } + } + + // Finish page + $body .= '
'; + $body .= '
'; + + return $body; + } + + // Build sidebar + public static function sidebar($settings) { + global $config, $board; + + $body = '' + . '' + . '' + . '' + . '' + . '' + . '' + . '' + . '' . $settings['title'] . '' + . ''; + + $body .= '
' . $settings['title'] . '
'; + + for($cat = 0; $cat < count($config['categories']); $cat++) { + $body .= '
' . $config['categories'][$cat] . '
'; + } + + foreach($config['custom_categories'] as $name => &$group) { + $body .= '
' . $name . '
'; + } + + // Finish page + $body .= ''; + + return $body; + } + }; + +?> diff --git a/templates/themes/categories-uboachan/thumb.png b/templates/themes/categories-uboachan/thumb.png new file mode 100644 index 0000000000000000000000000000000000000000..35d747e2a138d7e0bf999ef0de942c94586be2b2 GIT binary patch literal 9965 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 {{ settings.title }} - - + + + {% if config.url_favicon %}{% endif %}
{{ boardlist.top }}
- -
-

{{ settings.title }}

-
PRESENT DAY. PRESENT TIME. HAHAHAHAHA
-
- -
+
+
+ header +
+
+
+ + mascot + +
+ +

CYBERPUNK IS DEAD

Pour out the Soykaf, lurk, and read the rules before posting!
+ +
+ +

Recent Images

    @@ -55,13 +65,12 @@
- -
+