diff options
| author | Benjamin Southall <applemansigloo@gmail.com> | 2016-09-25 16:34:47 +0900 |
|---|---|---|
| committer | Benjamin Southall <applemansigloo@gmail.com> | 2016-09-25 16:34:47 +0900 |
| commit | a3b9c4405c6d4cca2a70dbb400e3ba3f65e7ea04 (patch) | |
| tree | 5a2ebdb801748586e3fde7c12cbeda169b2c3e31 /templates/themes/catalog | |
| parent | 9436524a306c8e3d6d8a6ed195e2a3c56d5cde39 (diff) | |
| parent | a4b619ae5eaab5755dc215a496854dee8f7ce395 (diff) | |
Merged lainchan with vichan master at 25/9/2016 a4b619ae5eaab5755dc215a496854dee8f7ce395 @czaks czaks committed on GitHub 2 days ago
Diffstat (limited to 'templates/themes/catalog')
| -rw-r--r-- | templates/themes/catalog/catalog.html | 28 | ||||
| -rw-r--r-- | templates/themes/catalog/index.rss | 19 | ||||
| -rw-r--r-- | templates/themes/catalog/theme.php | 40 |
3 files changed, 62 insertions, 25 deletions
diff --git a/templates/themes/catalog/catalog.html b/templates/themes/catalog/catalog.html index f23298bf..e556b4a9 100644 --- a/templates/themes/catalog/catalog.html +++ b/templates/themes/catalog/catalog.html @@ -4,12 +4,12 @@ <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <script type='text/javascript'> - active_page = "catalog"; + var active_page = "catalog" + , board_name = "{{ board }}"; </script> {% include 'header.html' %} - <title>{{ settings.title }} (/{{ board }}/)</title> </head> -<body class="theme-catalog board-{{ board }}"> +<body class="8chan vichan {% if mod %}is-moderator{% else %}is-not-moderator{% endif %} theme-catalog active-catalog" data-stylesheet="{% if config.default_stylesheet.1 != '' %}{{ config.default_stylesheet.1 }}{% else %}default{% endif %}"> <div class="top bar topbar"> {{ boardlist.top }} </div> @@ -42,14 +42,16 @@ </select> </div> - <div class="threads"> - <ul id="Grid"> - {% for post in recent_posts %} - <li class="mix" + <div class="threads"> + <div id="Grid"> + {% for post in recent_posts %} + <div class="mix" data-reply="{{ post.reply_count }}" - data-bump="{{ post.bump }}" - data-time="{{ post.time }}" - data-board="{{ post.board }}" + data-bump="{{ post.bump }}" + data-time="{{ post.time }}" + data-id="{{ post.id }}" + data-sticky="{% if post.sticky %}true{% else %}false{% endif %}" + data-locked="{% if post.locked %}true{% else %}false{% endif %}" > <div class="thread grid-li grid-size-small"> <a href="{{post.link}}"> @@ -61,7 +63,7 @@ id="img-{{ post.id }}" data-subject="{% if post.subject %}{{ post.subject|e }}{% endif %}" data-name="{{ post.name|e }}" data-muhdifference="{{ post.muhdifference }}" class="{{post.board}} thread-image" title="{{post.bump|date('%b %d %H:%M')}}"> </a> <div class="replies"> - <strong>R: {{ post.reply_count }} / I: {{ post.image_count }}</strong> + <strong>R: {{ post.reply_count }} / I: {{ post.image_count }}{% if post.sticky %} (sticky){% endif %}</strong> {% if post.subject %} <p class="intro"> <span class="subject"> @@ -75,9 +77,9 @@ {{ post.body }} </div> </div> - </li> + </div> {% endfor %} - </ul> + </div> </div> <hr/> diff --git a/templates/themes/catalog/index.rss b/templates/themes/catalog/index.rss new file mode 100644 index 00000000..e6576ffc --- /dev/null +++ b/templates/themes/catalog/index.rss @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"> +<channel> + <title>/{{ board.uri }}/ - {{ board.title|e }}</title> + <link>{{ config.root }}{{ board.uri }}/</link> + <description>Live feed of new threads on the board /{{ board.uri }}/ - {{ board.title|e }}.</description> + <atom:link href="{{ config.root }}{{ board.uri }}/index.rss" rel="self" type="application/rss+xml"/> + {% for post in recent_posts %} + <item> + <title>{% if post.subject %}{{ post.subject|e }}{% else %}{{ post.body_nomarkup[:256]|remove_modifiers|e }}{% endif %}</title> + <link>{{ config.root }}{{ board.uri }}/res/{{ post.id }}.html</link> + <guid>{{ config.root }}{{ board.uri }}/res/{{ post.id }}.html</guid> + <comments>{{ config.root }}{{ board.uri }}/res/{{ post.id }}.html</comments> + <pubDate>{{ post.pubdate }}</pubDate> + <description><![CDATA[ <a href='{{ config.root }}{{ board.uri }}/res/{{ post.id }}.html' target=_blank><img style='float:left;margin:8px' border=0 src='{% if not config.uri_thumb %}{{ config.root }}{% endif %}{{ post.file }}'></a> {{ post.body }} ]]></description> + </item> + {% endfor %} +</channel> +</rss> diff --git a/templates/themes/catalog/theme.php b/templates/themes/catalog/theme.php index 1199b54a..24cdcbb8 100644 --- a/templates/themes/catalog/theme.php +++ b/templates/themes/catalog/theme.php @@ -15,23 +15,30 @@ // - post-thread (a thread has been made) if ($action === 'all') { foreach ($boards as $board) { - if ($config['smart_build']) { + $b = new Catalog(); + + $action = generation_strategy("sb_catalog", array($board)); + if ($action == 'delete') { file_unlink($config['dir']['home'] . $board . '/catalog.html'); - } else { - $b->build($board); + file_unlink($config['dir']['home'] . $board . '/index.rss'); + } + elseif ($action == 'rebuild') { + $b->build($settings, $board); } } - } elseif (in_array($board, $boards) && - $action == 'post-thread' || - ($settings['update_on_posts'] && $action == 'post') || - ($settings['update_on_posts'] && $action == 'post-delete')) - { - if ($config['smart_build']) { + } elseif ($action == 'post-thread' || ($settings['update_on_posts'] && $action == 'post') || ($settings['update_on_posts'] && $action == 'post-delete') && in_array($board, $boards)) { + $b = new Catalog(); + + $action = generation_strategy("sb_catalog", array($board)); + if ($action == 'delete') { file_unlink($config['dir']['home'] . $board . '/catalog.html'); - } else { - $b->build($board); + file_unlink($config['dir']['home'] . $board . '/index.rss'); } - } + elseif ($action == 'rebuild') { + $b->build($settings, $board); + } + + } // FIXME: Check that Ukko is actually enabled if ($settings['enable_ukko'] && ( @@ -210,10 +217,13 @@ $post['file'] = $config['uri_thumb'] . $files[0]->thumb; } } + } else { + $post['file'] = $config['root'] . $config['image_deleted']; } if (empty($post['image_count'])) $post['image_count'] = 0; + $post['pubdate'] = date('r', $post['time']); $posts[] = $post; } @@ -247,5 +257,11 @@ 'board' => $board_name, 'link' => $board_link ))); + + file_write($config['dir']['home'] . $board_name . '/index.rss', Element('themes/catalog/index.rss', Array( + 'config' => $config, + 'recent_posts' => $recent_posts, + 'board' => $board + ))); } } |
