The ignored categories is now in the customize UI page. re #34
It's far from complete but it works. I'll have to check the strings consistancy.
This commit is contained in:
parent
e0e7392817
commit
c71f443356
37
base.php
37
base.php
|
@ -33,8 +33,12 @@ function getURLParam ($name, $default = NULL) {
|
||||||
function getCurrentOption ($option) {
|
function getCurrentOption ($option) {
|
||||||
global $config;
|
global $config;
|
||||||
if (isset($_COOKIE[$option])) {
|
if (isset($_COOKIE[$option])) {
|
||||||
|
if (isset($config ["cops_" . $option]) && is_array ($config ["cops_" . $option])) {
|
||||||
|
return explode (",", $_COOKIE[$option]);
|
||||||
|
} else {
|
||||||
return $_COOKIE[$option];
|
return $_COOKIE[$option];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if ($option == "style") {
|
if ($option == "style") {
|
||||||
return "default";
|
return "default";
|
||||||
}
|
}
|
||||||
|
@ -464,22 +468,23 @@ class Page
|
||||||
Base::clearDb ();
|
Base::clearDb ();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (!in_array (PageQueryResult::SCOPE_AUTHOR, $config ['cops_ignored_categories'])) {
|
//error_log (var_dump (getCurrentOption ('ignored_categories')));
|
||||||
|
if (!in_array (PageQueryResult::SCOPE_AUTHOR, getCurrentOption ('ignored_categories'))) {
|
||||||
array_push ($this->entryArray, Author::getCount());
|
array_push ($this->entryArray, Author::getCount());
|
||||||
}
|
}
|
||||||
if (!in_array (PageQueryResult::SCOPE_SERIES, $config ['cops_ignored_categories'])) {
|
if (!in_array (PageQueryResult::SCOPE_SERIES, getCurrentOption ('ignored_categories'))) {
|
||||||
$series = Serie::getCount();
|
$series = Serie::getCount();
|
||||||
if (!is_null ($series)) array_push ($this->entryArray, $series);
|
if (!is_null ($series)) array_push ($this->entryArray, $series);
|
||||||
}
|
}
|
||||||
if (!in_array (PageQueryResult::SCOPE_PUBLISHER, $config ['cops_ignored_categories'])) {
|
if (!in_array (PageQueryResult::SCOPE_PUBLISHER, getCurrentOption ('ignored_categories'))) {
|
||||||
$publisher = Publisher::getCount();
|
$publisher = Publisher::getCount();
|
||||||
if (!is_null ($publisher)) array_push ($this->entryArray, $publisher);
|
if (!is_null ($publisher)) array_push ($this->entryArray, $publisher);
|
||||||
}
|
}
|
||||||
if (!in_array (PageQueryResult::SCOPE_TAG, $config ['cops_ignored_categories'])) {
|
if (!in_array (PageQueryResult::SCOPE_TAG, getCurrentOption ('ignored_categories'))) {
|
||||||
$tags = Tag::getCount();
|
$tags = Tag::getCount();
|
||||||
if (!is_null ($tags)) array_push ($this->entryArray, $tags);
|
if (!is_null ($tags)) array_push ($this->entryArray, $tags);
|
||||||
}
|
}
|
||||||
if (!in_array ("language", $config ['cops_ignored_categories'])) {
|
if (!in_array ("language", getCurrentOption ('ignored_categories'))) {
|
||||||
$languages = Language::getCount();
|
$languages = Language::getCount();
|
||||||
if (!is_null ($languages)) array_push ($this->entryArray, $languages);
|
if (!is_null ($languages)) array_push ($this->entryArray, $languages);
|
||||||
}
|
}
|
||||||
|
@ -814,6 +819,19 @@ class PageCustomize extends Page
|
||||||
$html_tag_filter = "checked='checked'";
|
$html_tag_filter = "checked='checked'";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$ignored_categories = array ();
|
||||||
|
$ignoredBaseArray = array (PageQueryResult::SCOPE_AUTHOR,
|
||||||
|
PageQueryResult::SCOPE_TAG,
|
||||||
|
PageQueryResult::SCOPE_SERIES,
|
||||||
|
PageQueryResult::SCOPE_PUBLISHER,
|
||||||
|
"language");
|
||||||
|
foreach ($ignoredBaseArray as $key) {
|
||||||
|
if (in_array ($key, getCurrentOption ('ignored_categories'))) {
|
||||||
|
$ignored_categories [$key] = "checked='checked'";
|
||||||
|
} else {
|
||||||
|
$ignored_categories [$key] = "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$content = "";
|
$content = "";
|
||||||
if (!preg_match("/(Kobo|Kindle\/3.0|EBRD1101)/", $_SERVER['HTTP_USER_AGENT'])) {
|
if (!preg_match("/(Kobo|Kindle\/3.0|EBRD1101)/", $_SERVER['HTTP_USER_AGENT'])) {
|
||||||
|
@ -861,6 +879,15 @@ class PageCustomize extends Page
|
||||||
array_push ($this->entryArray, new Entry (localize ("customize.filter"), "",
|
array_push ($this->entryArray, new Entry (localize ("customize.filter"), "",
|
||||||
$content, "text",
|
$content, "text",
|
||||||
array ()));
|
array ()));
|
||||||
|
$content = "";
|
||||||
|
foreach ($ignoredBaseArray as $key) {
|
||||||
|
$keyPlural = preg_replace ('/(ss)$/', 's', $key . "s");
|
||||||
|
$content .= '<input type="checkbox" name="ignored_categories[]" onchange="updateCookieFromCheckboxGroup (this);" id="ignored_categories_' . $key . '" ' . $ignored_categories [$key] . ' > ' . localize ("{$keyPlural}.title") . '</input> ';
|
||||||
|
}
|
||||||
|
|
||||||
|
array_push ($this->entryArray, new Entry (localize ("customize.ignored"), "",
|
||||||
|
$content, "text",
|
||||||
|
array ()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
4
book.php
4
book.php
|
@ -602,7 +602,7 @@ where data.book = books.id and data.id = ?');
|
||||||
PageQueryResult::SCOPE_SERIES,
|
PageQueryResult::SCOPE_SERIES,
|
||||||
PageQueryResult::SCOPE_PUBLISHER,
|
PageQueryResult::SCOPE_PUBLISHER,
|
||||||
PageQueryResult::SCOPE_BOOK) as $key) {
|
PageQueryResult::SCOPE_BOOK) as $key) {
|
||||||
if (in_array($key, $config ['cops_ignored_categories']) ||
|
if (in_array($key, getCurrentOption ('ignored_categories')) ||
|
||||||
(!array_key_exists ($key, $query) && !array_key_exists ("all", $query))) {
|
(!array_key_exists ($key, $query) && !array_key_exists ("all", $query))) {
|
||||||
$critArray [$i] = self::BAD_SEARCH;
|
$critArray [$i] = self::BAD_SEARCH;
|
||||||
}
|
}
|
||||||
|
@ -694,7 +694,7 @@ function getJson ($complete = false) {
|
||||||
PageQueryResult::SCOPE_SERIES,
|
PageQueryResult::SCOPE_SERIES,
|
||||||
PageQueryResult::SCOPE_TAG,
|
PageQueryResult::SCOPE_TAG,
|
||||||
PageQueryResult::SCOPE_PUBLISHER) as $key) {
|
PageQueryResult::SCOPE_PUBLISHER) as $key) {
|
||||||
if (in_array($key, $config ['cops_ignored_categories'])) {
|
if (in_array($key, getCurrentOption ('ignored_categories'))) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
switch ($key) {
|
switch ($key) {
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"##TODO##customize.email":"Set your email (to allow book emailing)",
|
"##TODO##customize.email":"Set your email (to allow book emailing)",
|
||||||
"##TODO##customize.fancybox":"Use a Lightbox",
|
"##TODO##customize.fancybox":"Use a Lightbox",
|
||||||
"##TODO##customize.filter":"Enable tag filtering",
|
"##TODO##customize.filter":"Enable tag filtering",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"##TODO##customize.paging":"Max number of books per page (-1 to disable)",
|
"##TODO##customize.paging":"Max number of books per page (-1 to disable)",
|
||||||
"##TODO##customize.style":"Theme",
|
"##TODO##customize.style":"Theme",
|
||||||
"##TODO##customize.title":"Customize COPS UI",
|
"##TODO##customize.title":"Customize COPS UI",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Geben Sie Ihre E-Mail-Adresse an (erlaubt das Zusenden von Büchern)",
|
"customize.email":"Geben Sie Ihre E-Mail-Adresse an (erlaubt das Zusenden von Büchern)",
|
||||||
"customize.fancybox":"Benutze die Lightbox",
|
"customize.fancybox":"Benutze die Lightbox",
|
||||||
"customize.filter":"Erlaube das Filtern durch Tags",
|
"customize.filter":"Erlaube das Filtern durch Tags",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Maximale Anzahl von Büchern pro Seite (-1 zum deaktivieren)",
|
"customize.paging":"Maximale Anzahl von Büchern pro Seite (-1 zum deaktivieren)",
|
||||||
"customize.style":"Thema",
|
"customize.style":"Thema",
|
||||||
"customize.title":"Anpassungen an COPS",
|
"customize.title":"Anpassungen an COPS",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Set your email (to allow book emailing)",
|
"customize.email":"Set your email (to allow book emailing)",
|
||||||
"customize.fancybox":"Use a Lightbox",
|
"customize.fancybox":"Use a Lightbox",
|
||||||
"customize.filter":"Enable tag filtering",
|
"customize.filter":"Enable tag filtering",
|
||||||
|
"customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Max number of books per page (-1 to disable)",
|
"customize.paging":"Max number of books per page (-1 to disable)",
|
||||||
"customize.style":"Theme",
|
"customize.style":"Theme",
|
||||||
"customize.title":"Customize COPS UI",
|
"customize.title":"Customize COPS UI",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"##TODO##customize.email":"Set your email (to allow book emailing)",
|
"##TODO##customize.email":"Set your email (to allow book emailing)",
|
||||||
"##TODO##customize.fancybox":"Use a Lightbox",
|
"##TODO##customize.fancybox":"Use a Lightbox",
|
||||||
"##TODO##customize.filter":"Enable tag filtering",
|
"##TODO##customize.filter":"Enable tag filtering",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"##TODO##customize.paging":"Max number of books per page (-1 to disable)",
|
"##TODO##customize.paging":"Max number of books per page (-1 to disable)",
|
||||||
"##TODO##customize.style":"Theme",
|
"##TODO##customize.style":"Theme",
|
||||||
"##TODO##customize.title":"Customize COPS UI",
|
"##TODO##customize.title":"Customize COPS UI",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Adresse email (pour l'envoi automatique de livres)",
|
"customize.email":"Adresse email (pour l'envoi automatique de livres)",
|
||||||
"customize.fancybox":"Utiliser une Lightbox",
|
"customize.fancybox":"Utiliser une Lightbox",
|
||||||
"customize.filter":"Filtrage via les étiquettes",
|
"customize.filter":"Filtrage via les étiquettes",
|
||||||
|
"customize.ignored":"Catégories ignorées",
|
||||||
"customize.paging":"Nombre de livres par page (-1 pour désactiver)",
|
"customize.paging":"Nombre de livres par page (-1 pour désactiver)",
|
||||||
"customize.style":"Thème",
|
"customize.style":"Thème",
|
||||||
"customize.title":"Paramétrage de COPS",
|
"customize.title":"Paramétrage de COPS",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Imposta la tua email (per permettere l'invio di email)",
|
"customize.email":"Imposta la tua email (per permettere l'invio di email)",
|
||||||
"customize.fancybox":"Usa una Lightbox",
|
"customize.fancybox":"Usa una Lightbox",
|
||||||
"customize.filter":"Abilita il filtro per argomento",
|
"customize.filter":"Abilita il filtro per argomento",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Numero massimo di libri per pagina (-1 per disabilitare)",
|
"customize.paging":"Numero massimo di libri per pagina (-1 per disabilitare)",
|
||||||
"customize.style":"Tema",
|
"customize.style":"Tema",
|
||||||
"customize.title":"Personalizza l'interfaccia di COPS",
|
"customize.title":"Personalizza l'interfaccia di COPS",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Sett e-pstadresse (for å sende bøker i e-post)",
|
"customize.email":"Sett e-pstadresse (for å sende bøker i e-post)",
|
||||||
"customize.fancybox":"Bruk en Lightbox",
|
"customize.fancybox":"Bruk en Lightbox",
|
||||||
"customize.filter":"Tillat filtrering på nøkkelord",
|
"customize.filter":"Tillat filtrering på nøkkelord",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Maks antall bøker per side (-1 for å deaktivere)",
|
"customize.paging":"Maks antall bøker per side (-1 for å deaktivere)",
|
||||||
"customize.style":"Tema",
|
"customize.style":"Tema",
|
||||||
"customize.title":"Tilpass COPS brukergrensesnitt",
|
"customize.title":"Tilpass COPS brukergrensesnitt",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Email-adres ontvanger (om boeken te versturen per elektronische post)",
|
"customize.email":"Email-adres ontvanger (om boeken te versturen per elektronische post)",
|
||||||
"customize.fancybox":"Gebruik een Lightbox",
|
"customize.fancybox":"Gebruik een Lightbox",
|
||||||
"customize.filter":"Zet filteren op tag aan",
|
"customize.filter":"Zet filteren op tag aan",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Maximaal aantal boeken per pagina (-1 voor oneindig aantal)",
|
"customize.paging":"Maximaal aantal boeken per pagina (-1 voor oneindig aantal)",
|
||||||
"customize.style":"Opmaak COPS gebruikersomgeving",
|
"customize.style":"Opmaak COPS gebruikersomgeving",
|
||||||
"customize.title":"Aanpassen COPS gebruikersomgeving",
|
"customize.title":"Aanpassen COPS gebruikersomgeving",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Forneça seu email (para enviar o ebook)",
|
"customize.email":"Forneça seu email (para enviar o ebook)",
|
||||||
"customize.fancybox":"Usar o Lightbox",
|
"customize.fancybox":"Usar o Lightbox",
|
||||||
"customize.filter":"Ativar filtro por etiqueta",
|
"customize.filter":"Ativar filtro por etiqueta",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Número máximo de livros por página (-1 para desabilitar)",
|
"customize.paging":"Número máximo de livros por página (-1 para desabilitar)",
|
||||||
"customize.style":"Tema",
|
"customize.style":"Tema",
|
||||||
"customize.title":"Personalizar a interface do COPS",
|
"customize.title":"Personalizar a interface do COPS",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"Укажите Ваш email (для отправки книг по электронной почте)",
|
"customize.email":"Укажите Ваш email (для отправки книг по электронной почте)",
|
||||||
"customize.fancybox":"Использовать Lightbox",
|
"customize.fancybox":"Использовать Lightbox",
|
||||||
"customize.filter":"Включить фильтрацию по меткам",
|
"customize.filter":"Включить фильтрацию по меткам",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"Макс. число книг на странице (-1 - не ограничивать)",
|
"customize.paging":"Макс. число книг на странице (-1 - не ограничивать)",
|
||||||
"customize.style":"Тема",
|
"customize.style":"Тема",
|
||||||
"customize.title":"Изменить Интерфейс COPS",
|
"customize.title":"Изменить Интерфейс COPS",
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
"customize.email":"设置您的电子邮件(以允许发送邮件)",
|
"customize.email":"设置您的电子邮件(以允许发送邮件)",
|
||||||
"customize.fancybox":"使用灯箱",
|
"customize.fancybox":"使用灯箱",
|
||||||
"customize.filter":"打开标签过滤",
|
"customize.filter":"打开标签过滤",
|
||||||
|
"##TODO##customize.ignored":"Ignored categories",
|
||||||
"customize.paging":"页内最大书籍数(-1表示禁用)",
|
"customize.paging":"页内最大书籍数(-1表示禁用)",
|
||||||
"customize.style":"主题",
|
"customize.style":"主题",
|
||||||
"customize.title":"自定义界面",
|
"customize.title":"自定义界面",
|
||||||
|
|
13
util.js
13
util.js
|
@ -52,6 +52,19 @@ function updateCookieFromCheckbox (id) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*exported updateCookieFromCheckboxGroup */
|
||||||
|
function updateCookieFromCheckboxGroup (id) {
|
||||||
|
var name = $(id).attr('name');
|
||||||
|
var idBase = name.replace (/\[\]/, "");
|
||||||
|
var group = [];
|
||||||
|
$(':checkbox[name="' + name + '"]:checked').each (function () {
|
||||||
|
var id = $(this).attr("id");
|
||||||
|
group.push (id.replace (idBase + "_", ""));
|
||||||
|
});
|
||||||
|
$.cookie(idBase, group.join (), { expires: 365 });
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function elapsed () {
|
function elapsed () {
|
||||||
var elapsedTime = new Date () - before;
|
var elapsedTime = new Date () - before;
|
||||||
return "Elapsed : " + elapsedTime;
|
return "Elapsed : " + elapsedTime;
|
||||||
|
|
Loading…
Reference in a new issue