diff --git a/core/basethemelet.php b/core/basethemelet.php
index c13d833a..cc493bb8 100644
--- a/core/basethemelet.php
+++ b/core/basethemelet.php
@@ -84,15 +84,15 @@ class BaseThemelet
$body = $this->build_paginator($page_number, $total_pages, $base, $query, $show_random);
$page->add_block(new Block(null, $body, "main", 90, "paginator"));
- $page->add_html_header("");
+ $page->add_html_header("");
if ($page_number < $total_pages) {
- $page->add_html_header("");
- $page->add_html_header("");
+ $page->add_html_header("");
+ $page->add_html_header("");
}
if ($page_number > 1) {
- $page->add_html_header("");
+ $page->add_html_header("");
}
- $page->add_html_header("");
+ $page->add_html_header("");
}
private function gen_page_link(string $base_url, ?string $query, int $page, string $name): string
diff --git a/ext/arrowkey_navigation/info.php b/ext/arrowkey_navigation/info.php
deleted file mode 100644
index a4dd9770..00000000
--- a/ext/arrowkey_navigation/info.php
+++ /dev/null
@@ -1,15 +0,0 @@
-"support@drudexsoftware.com"];
- public $license = self::LICENSE_GPLV2;
- public $description = "Allows viewers no navigate between images using the left & right arrow keys.";
- public $documentation =
-"Simply enable this extension in the extension manager to enable arrow key navigation.";
-}
diff --git a/ext/arrowkey_navigation/main.php b/ext/arrowkey_navigation/main.php
deleted file mode 100644
index ff4d35a4..00000000
--- a/ext/arrowkey_navigation/main.php
+++ /dev/null
@@ -1,93 +0,0 @@
-image->id));
- $next_url = make_http(make_link("post/next/".$event->image->id));
- $this->add_arrowkeys_code($prev_url, $next_url);
- }
-
- /**
- * Adds functionality for post/list.
- */
- public function onPageRequest(PageRequestEvent $event)
- {
- if ($event->page_matches("post/list")) {
- $pageinfo = $this->get_list_pageinfo($event);
- $prev_url = make_http(make_link("post/list/".$pageinfo["prev"]));
- $next_url = make_http(make_link("post/list/".$pageinfo["next"]));
- $this->add_arrowkeys_code($prev_url, $next_url);
- }
- }
-
- /**
- * Adds the javascript to the page with the given urls.
- */
- private function add_arrowkeys_code(string $prev_url, string $next_url)
- {
- global $page;
-
- $page->add_html_header("", 60);
- }
-
- /**
- * Returns info about the current page number.
- */
- private function get_list_pageinfo(PageRequestEvent $event): array
- {
- global $config, $database;
-
- // get the amount of images per page
- $images_per_page = $config->get_int(IndexConfig::IMAGES);
-
- if ($event->count_args() > 1) {
- // if there are tags, use pages with tags
- $prefix = url_escape($event->get_arg(0)) . "/";
- $page_number = $event->try_page_num(1);
- $total_pages = ceil($database->get_one(
- "SELECT count FROM tags WHERE tag=:tag",
- ["tag"=>$event->get_arg(0)]
- ) / $images_per_page);
- } else {
- // if there are no tags, use default
- $prefix = "";
- $page_number = $event->try_page_num(0);
- $total_pages = ceil($database->get_one(
- "SELECT COUNT(*) FROM images"
- ) / $images_per_page);
- }
-
- // creates previous & next values
- // When previous first page, go to last page
- if ($page_number <= 1) {
- $prev = $total_pages;
- } else {
- $prev = $page_number-1;
- }
- if ($page_number >= $total_pages) {
- $next = 1;
- } else {
- $next = $page_number+1;
- }
-
- // Create return array
- return [
- "prev" => $prefix.$prev,
- "next" => $prefix.$next,
- ];
- }
-}
diff --git a/ext/handle_static/script.js b/ext/handle_static/script.js
index e06c39c7..8e586949 100644
--- a/ext/handle_static/script.js
+++ b/ext/handle_static/script.js
@@ -32,6 +32,7 @@ $(document).ready(function() {
/** Setup tablesorter **/
$("table.sortable").tablesorter();
+ /** Setup sidebar toggle **/
try {
var sidebar_hidden = (Cookies.get("ui-sidebar-hidden") || "").split("|");
for(var i in sidebar_hidden) {
@@ -53,7 +54,7 @@ $(document).ready(function() {
}
else {
for (var i in sidebar_hidden) {
- if (sidebar_hidden[i] === tid) {
+ if (sidebar_hidden[i] === tid) {
sidebar_hidden.splice(i, 1);
}
}
@@ -62,6 +63,7 @@ $(document).ready(function() {
});
});
+ /** setup unlocker buttons **/
$(".shm-unlocker").each(function(idx, elm) {
var tid = $(elm).data("unlock-sel");
var tob = $(tid);
@@ -70,4 +72,16 @@ $(document).ready(function() {
tob.attr("disabled", false);
});
});
+
+ /** setup arrow key bindings **/
+ $(document).keyup(function(e) {
+ if($(e.target).is('input', 'textarea')){ return; }
+ if (e.metaKey || e.ctrlKey || e.altKey || e.shiftKey) { return; }
+ if (e.keyCode == 37 && $("[rel='prev']").length) {
+ window.location.href = $("[rel='pref']").attr("href");
+ }
+ else if (e.keyCode == 39 && $("[rel='next']").length) {
+ window.location.href = $("[rel='next']").attr("href");
+ }
+ });
});