aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar maTh <math-home@web.de> 2022-03-14 23:04:17 +0100
committerGravatar GitHub <noreply@github.com> 2022-03-14 23:04:17 +0100
commit6650d1d29ea5e6f895124afce9ed4a6e920a1ed8 (patch)
treee81fc72e0a31d9ceaa1d3a9afeb2f4bc4ad46040
parent7b962e246bb9f273dda534b340851db799577dfe (diff)
Improved: log page (#4204)
* first draft * wip * Theme Ansum * Update logs_pagination.phtml * Theme Mapco * Update adark.css * Update BlueLagoon.css * Update dark.css * Update screwdriver.css * Theme Swage * Update app/views/helpers/logs_pagination.phtml Co-authored-by: Frans de Jonge <fransdejonge@gmail.com> * Update app/views/helpers/logs_pagination.phtml Co-authored-by: Frans de Jonge <fransdejonge@gmail.com> * Update template.css * Update logs_pagination.phtml * Update logs_pagination.phtml * Update logs_pagination.phtml * RTL CSS * Update dark.rtl.css * Update swage.css * fix CLI findings * Indentation fixed * icons improved * CSS: centered icons * i18n * pipline test fixes * Update conf.php * Update gen.php * Update app/i18n/fr/conf.php Co-authored-by: Frans de Jonge <fransdejonge@gmail.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
-rw-r--r--app/Models/Themes.php3
-rw-r--r--app/i18n/cz/conf.php13
-rw-r--r--app/i18n/cz/gen.php6
-rw-r--r--app/i18n/de/conf.php13
-rw-r--r--app/i18n/de/gen.php6
-rw-r--r--app/i18n/en-us/conf.php13
-rw-r--r--app/i18n/en-us/gen.php6
-rw-r--r--app/i18n/en/conf.php13
-rw-r--r--app/i18n/en/gen.php6
-rwxr-xr-xapp/i18n/es/conf.php13
-rwxr-xr-xapp/i18n/es/gen.php6
-rw-r--r--app/i18n/fr/conf.php13
-rw-r--r--app/i18n/fr/gen.php6
-rw-r--r--app/i18n/he/conf.php13
-rw-r--r--app/i18n/he/gen.php6
-rw-r--r--app/i18n/it/conf.php13
-rw-r--r--app/i18n/it/gen.php6
-rw-r--r--app/i18n/ja/conf.php13
-rw-r--r--app/i18n/ja/gen.php6
-rw-r--r--app/i18n/ko/conf.php13
-rw-r--r--app/i18n/ko/gen.php6
-rw-r--r--app/i18n/nl/conf.php13
-rw-r--r--app/i18n/nl/gen.php6
-rw-r--r--app/i18n/oc/conf.php13
-rw-r--r--app/i18n/oc/gen.php6
-rw-r--r--app/i18n/pl/conf.php13
-rw-r--r--app/i18n/pl/gen.php6
-rw-r--r--app/i18n/pt-br/conf.php13
-rw-r--r--app/i18n/pt-br/gen.php6
-rw-r--r--app/i18n/ru/conf.php13
-rw-r--r--app/i18n/ru/gen.php6
-rw-r--r--app/i18n/sk/conf.php13
-rw-r--r--app/i18n/sk/gen.php6
-rw-r--r--app/i18n/tr/conf.php13
-rw-r--r--app/i18n/tr/gen.php6
-rw-r--r--app/i18n/zh-cn/conf.php13
-rw-r--r--app/i18n/zh-cn/gen.php6
-rw-r--r--app/layout/aside_configure.phtml8
-rwxr-xr-xapp/views/helpers/logs_pagination.phtml81
-rw-r--r--app/views/index/logs.phtml54
-rw-r--r--p/themes/Alternative-Dark/adark.css47
-rw-r--r--p/themes/Alternative-Dark/adark.rtl.css47
-rw-r--r--p/themes/Ansum/_components.scss5
-rw-r--r--p/themes/Ansum/_mobile.scss4
-rw-r--r--p/themes/Ansum/_sidebar.scss11
-rw-r--r--p/themes/Ansum/ansum.css13
-rw-r--r--p/themes/Ansum/ansum.rtl.css13
-rw-r--r--p/themes/BlueLagoon/BlueLagoon.css20
-rw-r--r--p/themes/BlueLagoon/BlueLagoon.rtl.css20
-rw-r--r--p/themes/Dark/dark.css7
-rw-r--r--p/themes/Dark/dark.rtl.css7
-rw-r--r--p/themes/Flat/flat.css20
-rw-r--r--p/themes/Flat/flat.rtl.css20
-rw-r--r--p/themes/Mapco/_components.scss5
-rw-r--r--p/themes/Mapco/_mobile.scss4
-rw-r--r--p/themes/Mapco/_sidebar.scss12
-rw-r--r--p/themes/Mapco/mapco.css14
-rw-r--r--p/themes/Mapco/mapco.rtl.css14
-rw-r--r--p/themes/Origine/origine.css10
-rw-r--r--p/themes/Origine/origine.rtl.css10
-rw-r--r--p/themes/Screwdriver/screwdriver.css3
-rw-r--r--p/themes/Screwdriver/screwdriver.rtl.css3
-rw-r--r--p/themes/Swage/swage.css17
-rw-r--r--p/themes/Swage/swage.rtl.css15
-rw-r--r--p/themes/Swage/swage.scss6
-rw-r--r--p/themes/base-theme/template.css29
-rw-r--r--p/themes/base-theme/template.rtl.css29
-rw-r--r--p/themes/icons/error.svg4
-rw-r--r--p/themes/icons/notice.svg5
-rw-r--r--p/themes/icons/warning.svg5
70 files changed, 500 insertions, 407 deletions
diff --git a/app/Models/Themes.php b/app/Models/Themes.php
index 693657fae..ed379dc0d 100644
--- a/app/Models/Themes.php
+++ b/app/Models/Themes.php
@@ -79,6 +79,7 @@ class FreshRSS_Themes extends Minz_Model {
'close' => '❌',
'configure' => '⚙',
'down' => '▽',
+ 'error' => '❌',
'favorite' => '★',
'FreshRSS-logo' => '⊚',
'help' => 'ⓘ',
@@ -91,6 +92,7 @@ class FreshRSS_Themes extends Minz_Model {
'logout' => '🔓',
'next' => '⏩',
'non-starred' => '☆',
+ 'notice' => 'ⓘ',
'prev' => '⏪',
'read' => '☑',
'rss' => '☄',
@@ -107,6 +109,7 @@ class FreshRSS_Themes extends Minz_Model {
'view-normal' => '☰',
'view-global' => '☷',
'view-reader' => '☕',
+ 'warning' => '△',
);
return isset($name) ? $alts[$name] : '';
}
diff --git a/app/i18n/cz/conf.php b/app/i18n/cz/conf.php
index f25382a3d..3e961e3a9 100644
--- a/app/i18n/cz/conf.php
+++ b/app/i18n/cz/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Úzká',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'První',
+ 'last' => 'Poslední',
+ 'next' => 'Další',
+ 'previous' => 'Předchozí',
+ ),
+ ),
'profile' => array(
'_' => 'Správa profilu',
'api' => 'Správa API',
diff --git a/app/i18n/cz/gen.php b/app/i18n/cz/gen.php
index 853f4d0d9..cee99c845 100644
--- a/app/i18n/cz/gen.php
+++ b/app/i18n/cz/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Správa uživatelů',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'První',
- 'last' => 'Poslední',
- 'next' => 'Další',
- 'previous' => 'Předchozí',
- ),
'period' => array(
'days' => 'dní',
'hours' => 'hodin',
diff --git a/app/i18n/de/conf.php b/app/i18n/de/conf.php
index bc1fdc14f..5a0438f3b 100644
--- a/app/i18n/de/conf.php
+++ b/app/i18n/de/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Klein',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Stufe',
+ 'message' => 'Log Nachricht',
+ 'timestamp' => 'Zeitstempel',
+ ),
+ 'pagination' => array(
+ 'first' => 'Erste',
+ 'last' => 'Letzte',
+ 'next' => 'Nächste',
+ 'previous' => 'Vorherige',
+ ),
+ ),
'profile' => array(
'_' => 'Profil-Verwaltung',
'api' => 'API-Verwaltung',
diff --git a/app/i18n/de/gen.php b/app/i18n/de/gen.php
index 3f81a2e34..493cb3b1a 100644
--- a/app/i18n/de/gen.php
+++ b/app/i18n/de/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Benutzer verwalten',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'Erste',
- 'last' => 'Letzte',
- 'next' => 'Nächste',
- 'previous' => 'Vorherige',
- ),
'period' => array(
'days' => 'Tage',
'hours' => 'Stunden',
diff --git a/app/i18n/en-us/conf.php b/app/i18n/en-us/conf.php
index de51f5881..dcb530e90 100644
--- a/app/i18n/en-us/conf.php
+++ b/app/i18n/en-us/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Narrow', // IGNORE
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'First', // IGNORE
+ 'last' => 'Last', // IGNORE
+ 'next' => 'Next', // IGNORE
+ 'previous' => 'Previous', // IGNORE
+ ),
+ ),
'profile' => array(
'_' => 'Profile management', // IGNORE
'api' => 'API management', // IGNORE
diff --git a/app/i18n/en-us/gen.php b/app/i18n/en-us/gen.php
index 35d2c2cfd..2bebf441a 100644
--- a/app/i18n/en-us/gen.php
+++ b/app/i18n/en-us/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Manage users', // IGNORE
'user_profile' => 'Profile', // IGNORE
),
- 'pagination' => array(
- 'first' => 'First', // IGNORE
- 'last' => 'Last', // IGNORE
- 'next' => 'Next', // IGNORE
- 'previous' => 'Previous', // IGNORE
- ),
'period' => array(
'days' => 'days', // IGNORE
'hours' => 'hours', // IGNORE
diff --git a/app/i18n/en/conf.php b/app/i18n/en/conf.php
index 2bbceafca..7050a5cdc 100644
--- a/app/i18n/en/conf.php
+++ b/app/i18n/en/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Narrow',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'First',
+ 'last' => 'Last',
+ 'next' => 'Next',
+ 'previous' => 'Previous',
+ ),
+ ),
'profile' => array(
'_' => 'Profile management',
'api' => 'API management',
diff --git a/app/i18n/en/gen.php b/app/i18n/en/gen.php
index 9fd81a716..06c8d356a 100644
--- a/app/i18n/en/gen.php
+++ b/app/i18n/en/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Manage users',
'user_profile' => 'Profile',
),
- 'pagination' => array(
- 'first' => 'First',
- 'last' => 'Last',
- 'next' => 'Next',
- 'previous' => 'Previous',
- ),
'period' => array(
'days' => 'days',
'hours' => 'hours',
diff --git a/app/i18n/es/conf.php b/app/i18n/es/conf.php
index d5b25469d..63289f800 100755
--- a/app/i18n/es/conf.php
+++ b/app/i18n/es/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Estrecho',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Primero',
+ 'last' => 'Último',
+ 'next' => 'Siguiente',
+ 'previous' => 'Anterior',
+ ),
+ ),
'profile' => array(
'_' => 'Administración de perfiles',
'api' => 'Administración de API',
diff --git a/app/i18n/es/gen.php b/app/i18n/es/gen.php
index de7b53924..c63bacedf 100755
--- a/app/i18n/es/gen.php
+++ b/app/i18n/es/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Administrar usuarios',
'user_profile' => 'Perfil',
),
- 'pagination' => array(
- 'first' => 'Primero',
- 'last' => 'Último',
- 'next' => 'Siguiente',
- 'previous' => 'Anterior',
- ),
'period' => array(
'days' => 'dias',
'hours' => 'horas',
diff --git a/app/i18n/fr/conf.php b/app/i18n/fr/conf.php
index 8d097fa59..c48a7bb6c 100644
--- a/app/i18n/fr/conf.php
+++ b/app/i18n/fr/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Fine',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Niveau de sévérité',
+ 'message' => 'Message de journal',
+ 'timestamp' => 'Horodatage',
+ ),
+ 'pagination' => array(
+ 'first' => 'Début',
+ 'last' => 'Fin',
+ 'next' => 'Suivant',
+ 'previous' => 'Précédent',
+ ),
+ ),
'profile' => array(
'_' => 'Gestion du profil',
'api' => 'Gestion de l’API',
diff --git a/app/i18n/fr/gen.php b/app/i18n/fr/gen.php
index 80a1d7276..0554f6d52 100644
--- a/app/i18n/fr/gen.php
+++ b/app/i18n/fr/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Gestion des utilisateurs',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'Début',
- 'last' => 'Fin',
- 'next' => 'Suivant',
- 'previous' => 'Précédent',
- ),
'period' => array(
'days' => 'jours',
'hours' => 'heures',
diff --git a/app/i18n/he/conf.php b/app/i18n/he/conf.php
index 62dca4b11..7ce29c582 100644
--- a/app/i18n/he/conf.php
+++ b/app/i18n/he/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'צר',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'הראשון',
+ 'last' => 'אחרון',
+ 'next' => 'הבא',
+ 'previous' => 'הקודם',
+ ),
+ ),
'profile' => array(
'_' => 'Profile management', // TODO
'api' => 'API management', // TODO
diff --git a/app/i18n/he/gen.php b/app/i18n/he/gen.php
index e9da2bb9e..144c1242a 100644
--- a/app/i18n/he/gen.php
+++ b/app/i18n/he/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Manage users', // TODO
'user_profile' => 'Profile', // TODO
),
- 'pagination' => array(
- 'first' => 'הראשון',
- 'last' => 'אחרון',
- 'next' => 'הבא',
- 'previous' => 'הקודם',
- ),
'period' => array(
'days' => 'days', // TODO
'hours' => 'hours', // TODO
diff --git a/app/i18n/it/conf.php b/app/i18n/it/conf.php
index a9fc1a6d8..41f7e041c 100644
--- a/app/i18n/it/conf.php
+++ b/app/i18n/it/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Stretto',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Prima',
+ 'last' => 'Ultima',
+ 'next' => 'Successiva',
+ 'previous' => 'Precedente',
+ ),
+ ),
'profile' => array(
'_' => 'Gestione profili',
'api' => 'API management', // TODO
diff --git a/app/i18n/it/gen.php b/app/i18n/it/gen.php
index b65b7305d..fa1e9d3c6 100644
--- a/app/i18n/it/gen.php
+++ b/app/i18n/it/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Gestione utenti',
'user_profile' => 'Profilo',
),
- 'pagination' => array(
- 'first' => 'Prima',
- 'last' => 'Ultima',
- 'next' => 'Successiva',
- 'previous' => 'Precedente',
- ),
'period' => array(
'days' => 'days', // TODO
'hours' => 'hours', // TODO
diff --git a/app/i18n/ja/conf.php b/app/i18n/ja/conf.php
index 113d385dd..29d69cd6b 100644
--- a/app/i18n/ja/conf.php
+++ b/app/i18n/ja/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => '狭い',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => '先頭',
+ 'last' => '最後',
+ 'next' => 'つぎへ',
+ 'previous' => '前へ',
+ ),
+ ),
'profile' => array(
'_' => 'プロフィール',
'api' => 'API管理',
diff --git a/app/i18n/ja/gen.php b/app/i18n/ja/gen.php
index 360ae1d87..a5d55fec9 100644
--- a/app/i18n/ja/gen.php
+++ b/app/i18n/ja/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'ユーザー管理',
'user_profile' => 'プロフィール',
),
- 'pagination' => array(
- 'first' => '先頭',
- 'last' => '最後',
- 'next' => 'つぎへ',
- 'previous' => '前へ',
- ),
'period' => array(
'days' => '日',
'hours' => '時',
diff --git a/app/i18n/ko/conf.php b/app/i18n/ko/conf.php
index 1c9674d3c..01d853585 100644
--- a/app/i18n/ko/conf.php
+++ b/app/i18n/ko/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => '얇게',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => '처음으로',
+ 'last' => '마지막으로',
+ 'next' => '다음',
+ 'previous' => '이전',
+ ),
+ ),
'profile' => array(
'_' => '프로필 관리',
'api' => 'API 관리',
diff --git a/app/i18n/ko/gen.php b/app/i18n/ko/gen.php
index 566bdd4d5..d996ac467 100644
--- a/app/i18n/ko/gen.php
+++ b/app/i18n/ko/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => '사용자 관리',
'user_profile' => '프로필',
),
- 'pagination' => array(
- 'first' => '처음으로',
- 'last' => '마지막으로',
- 'next' => '다음',
- 'previous' => '이전',
- ),
'period' => array(
'days' => '일',
'hours' => '시',
diff --git a/app/i18n/nl/conf.php b/app/i18n/nl/conf.php
index 6e266c350..f8c11707a 100644
--- a/app/i18n/nl/conf.php
+++ b/app/i18n/nl/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Smal',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Eerste',
+ 'last' => 'Laatste',
+ 'next' => 'Volgende',
+ 'previous' => 'Vorige',
+ ),
+ ),
'profile' => array(
'_' => 'Profielbeheer',
'api' => 'API-beheer',
diff --git a/app/i18n/nl/gen.php b/app/i18n/nl/gen.php
index 81b265616..286b69c85 100644
--- a/app/i18n/nl/gen.php
+++ b/app/i18n/nl/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Gebruikersbeheer',
'user_profile' => 'Profiel',
),
- 'pagination' => array(
- 'first' => 'Eerste',
- 'last' => 'Laatste',
- 'next' => 'Volgende',
- 'previous' => 'Vorige',
- ),
'period' => array(
'days' => 'dagen',
'hours' => 'uren',
diff --git a/app/i18n/oc/conf.php b/app/i18n/oc/conf.php
index 28f11798a..3cca02c2b 100644
--- a/app/i18n/oc/conf.php
+++ b/app/i18n/oc/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Fina',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Debuta',
+ 'last' => 'Fin',
+ 'next' => 'Seguent',
+ 'previous' => 'Precedent',
+ ),
+ ),
'profile' => array(
'_' => 'Gestion del perfil',
'api' => 'Gestion API',
diff --git a/app/i18n/oc/gen.php b/app/i18n/oc/gen.php
index 88758ab0d..86f556895 100644
--- a/app/i18n/oc/gen.php
+++ b/app/i18n/oc/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Gestion dels utilizaires',
'user_profile' => 'Perfil',
),
- 'pagination' => array(
- 'first' => 'Debuta',
- 'last' => 'Fin',
- 'next' => 'Seguent',
- 'previous' => 'Precedent',
- ),
'period' => array(
'days' => 'jorns',
'hours' => 'oras',
diff --git a/app/i18n/pl/conf.php b/app/i18n/pl/conf.php
index 4c5dd0646..fa342abdd 100644
--- a/app/i18n/pl/conf.php
+++ b/app/i18n/pl/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Wąska',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Początek',
+ 'last' => 'Koniec',
+ 'next' => 'Następne',
+ 'previous' => 'Poprzednie',
+ ),
+ ),
'profile' => array(
'_' => 'Zarządzanie profilem',
'api' => 'Zarządzanie API',
diff --git a/app/i18n/pl/gen.php b/app/i18n/pl/gen.php
index 2acb5ece2..dc7d31da7 100644
--- a/app/i18n/pl/gen.php
+++ b/app/i18n/pl/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Zarządzanie użytkownikami',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'Początek',
- 'last' => 'Koniec',
- 'next' => 'Następne',
- 'previous' => 'Poprzednie',
- ),
'period' => array(
'days' => 'dni',
'hours' => 'godziny',
diff --git a/app/i18n/pt-br/conf.php b/app/i18n/pt-br/conf.php
index 2b6241449..07d1c7872 100644
--- a/app/i18n/pt-br/conf.php
+++ b/app/i18n/pt-br/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Fino',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Primeiro',
+ 'last' => 'Último',
+ 'next' => 'Próximo',
+ 'previous' => 'Anterior',
+ ),
+ ),
'profile' => array(
'_' => 'Gerenciamento de perfil',
'api' => 'Administração da API',
diff --git a/app/i18n/pt-br/gen.php b/app/i18n/pt-br/gen.php
index 744b89788..c1cb7326c 100644
--- a/app/i18n/pt-br/gen.php
+++ b/app/i18n/pt-br/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Gerenciamento de usuários',
'user_profile' => 'Perfil',
),
- 'pagination' => array(
- 'first' => 'Primeiro',
- 'last' => 'Último',
- 'next' => 'Próximo',
- 'previous' => 'Anterior',
- ),
'period' => array(
'days' => 'dias',
'hours' => 'horas',
diff --git a/app/i18n/ru/conf.php b/app/i18n/ru/conf.php
index 577076805..1c6e3af5a 100644
--- a/app/i18n/ru/conf.php
+++ b/app/i18n/ru/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Узкое',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Первая',
+ 'last' => 'Последняя',
+ 'next' => 'Следующая',
+ 'previous' => 'Предыдущая',
+ ),
+ ),
'profile' => array(
'_' => 'Настройки профиля',
'api' => 'Настройки API',
diff --git a/app/i18n/ru/gen.php b/app/i18n/ru/gen.php
index 3a2f2de28..4c0334153 100644
--- a/app/i18n/ru/gen.php
+++ b/app/i18n/ru/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Управление пользователями',
'user_profile' => 'Профиль',
),
- 'pagination' => array(
- 'first' => 'Первая',
- 'last' => 'Последняя',
- 'next' => 'Следующая',
- 'previous' => 'Предыдущая',
- ),
'period' => array(
'days' => 'дней',
'hours' => 'часов',
diff --git a/app/i18n/sk/conf.php b/app/i18n/sk/conf.php
index cbade872d..35a34c136 100644
--- a/app/i18n/sk/conf.php
+++ b/app/i18n/sk/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Úzka',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'Prvý',
+ 'last' => 'Posledný',
+ 'next' => 'Ďalší',
+ 'previous' => 'Predošlý',
+ ),
+ ),
'profile' => array(
'_' => 'Správca profilu',
'api' => 'Správa API',
diff --git a/app/i18n/sk/gen.php b/app/i18n/sk/gen.php
index 9c060f690..6954e7cbb 100644
--- a/app/i18n/sk/gen.php
+++ b/app/i18n/sk/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Spravovať používateľov',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'Prvý',
- 'last' => 'Posledný',
- 'next' => 'Ďalší',
- 'previous' => 'Predošlý',
- ),
'period' => array(
'days' => 'dni',
'hours' => 'hodiny',
diff --git a/app/i18n/tr/conf.php b/app/i18n/tr/conf.php
index ae1a2bf47..e3750235c 100644
--- a/app/i18n/tr/conf.php
+++ b/app/i18n/tr/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => 'Zayıf',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => 'İlk',
+ 'last' => 'Son',
+ 'next' => 'Sonraki',
+ 'previous' => 'Önceki',
+ ),
+ ),
'profile' => array(
'_' => 'Profil yönetimi',
'api' => 'API yönetimi',
diff --git a/app/i18n/tr/gen.php b/app/i18n/tr/gen.php
index 56b7a3962..6d6aac595 100644
--- a/app/i18n/tr/gen.php
+++ b/app/i18n/tr/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => 'Kullanıcıları yönet',
'user_profile' => 'Profil',
),
- 'pagination' => array(
- 'first' => 'İlk',
- 'last' => 'Son',
- 'next' => 'Sonraki',
- 'previous' => 'Önceki',
- ),
'period' => array(
'days' => 'gün',
'hours' => 'saat',
diff --git a/app/i18n/zh-cn/conf.php b/app/i18n/zh-cn/conf.php
index 44d27e3b0..1c9e1100b 100644
--- a/app/i18n/zh-cn/conf.php
+++ b/app/i18n/zh-cn/conf.php
@@ -66,6 +66,19 @@ return array(
'thin' => '窄',
),
),
+ 'logs' => array(
+ 'loglist' => array(
+ 'level' => 'Log Level', // TODO
+ 'message' => 'Log Message', // TODO
+ 'timestamp' => 'Timestamp', // TODO
+ ),
+ 'pagination' => array(
+ 'first' => '首页',
+ 'last' => '末页',
+ 'next' => '下一页',
+ 'previous' => '上一页',
+ ),
+ ),
'profile' => array(
'_' => '用户管理',
'api' => 'API 管理',
diff --git a/app/i18n/zh-cn/gen.php b/app/i18n/zh-cn/gen.php
index 9942f98e7..1071b6703 100644
--- a/app/i18n/zh-cn/gen.php
+++ b/app/i18n/zh-cn/gen.php
@@ -176,12 +176,6 @@ return array(
'user_management' => '用户管理',
'user_profile' => '用户帐户',
),
- 'pagination' => array(
- 'first' => '首页',
- 'last' => '末页',
- 'next' => '下一页',
- 'previous' => '上一页',
- ),
'period' => array(
'days' => '天',
'hours' => '时',
diff --git a/app/layout/aside_configure.phtml b/app/layout/aside_configure.phtml
index f71419dc1..5f1762834 100644
--- a/app/layout/aside_configure.phtml
+++ b/app/layout/aside_configure.phtml
@@ -33,6 +33,11 @@
<li class="item<?= Minz_Request::controllerName() === 'extension' ? ' active' : '' ?>">
<a href="<?= _url('extension', 'index') ?>"><?= _t('gen.menu.extensions') ?></a>
</li>
+ <?php if (!FreshRSS_Auth::hasAccess('admin')) { ?>
+ <li class="item<?= Minz_Request::actionName() === 'logs' ? ' active' : '' ?>">
+ <a href="<?= _url('index', 'logs') ?>"><?= _t('gen.menu.logs') ?></a>
+ </li>
+ <?php } ?>
<?= Minz_ExtensionManager::callHook('menu_configuration_entry') ?>
<?php if (FreshRSS_Auth::hasAccess('admin')) { ?>
@@ -53,6 +58,9 @@
<li class="item<?= Minz_Request::controllerName() === 'update' && Minz_Request::actionName() === 'index' ? ' active' : '' ?>">
<a href="<?= _url('update', 'index') ?>"><?= _t('gen.menu.update') ?></a>
</li>
+ <li class="item<?= Minz_Request::actionName() === 'logs' ? ' active' : '' ?>">
+ <a href="<?= _url('index', 'logs') ?>"><?= _t('gen.menu.logs') ?></a>
+ </li>
<?php } ?>
<?= Minz_ExtensionManager::callHook('menu_admin_entry') ?>
<?php } ?>
diff --git a/app/views/helpers/logs_pagination.phtml b/app/views/helpers/logs_pagination.phtml
index fe6a71a3a..d12b3f9d1 100755
--- a/app/views/helpers/logs_pagination.phtml
+++ b/app/views/helpers/logs_pagination.phtml
@@ -6,46 +6,53 @@
?>
<?php if ($this->nbPage > 1) { ?>
-<ul class="pagination">
- <?php
- /** @var int $getteur */
- $params[$getteur] = 1;
- ?>
- <li class="item pager-first">
- <?php if ($this->currentPage > 1) { ?>
- <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>">« <?= _t('gen.pagination.first') ?></a>
- <?php } ?>
- </li>
+<nav class="nav-pagination nav-list">
+ <ul class="pagination">
+ <?php
+ /** @var int $getteur */
+ $params[$getteur] = 1;
+ ?>
+ <li class="item pager-first">
+ <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>">« <?= _t('conf.logs.pagination.first') ?></a>
+ </li>
- <?php $params[$getteur] = $this->currentPage - 1; ?>
- <li class="item pager-previous">
- <?php if ($this->currentPage > 1) { ?>
- <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>">‹ <?= _t('gen.pagination.previous') ?></a>
- <?php } ?>
- </li>
+ <?php $params[$getteur] = $this->currentPage - 1; ?>
+ <li class="item pager-previous">
+ <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>">‹ <?= _t('conf.logs.pagination.previous') ?></a>
+ </li>
- <?php for ($i = $this->currentPage - 2; $i <= $this->currentPage + 2; $i++) { ?>
- <?php if($i > 0 && $i <= $this->nbPage) { ?>
- <?php if ($i != $this->currentPage) { ?>
- <?php $params[$getteur] = $i; ?>
- <li class="item pager-item"><a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>"><?= $i ?></a></li>
- <?php } else { ?>
- <li class="item pager-current"><?= $i ?></li>
- <?php } ?>
+ <?php if ($this->currentPage - 2 > 1) { ?>
+ <li class="item">…</a></li>
<?php } ?>
- <?php } ?>
- <?php $params[$getteur] = $this->currentPage + 1; ?>
- <li class="item pager-next">
- <?php if ($this->currentPage < $this->nbPage) { ?>
- <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>"><?= _t('gen.pagination.next') ?> ›</a>
- <?php } ?>
- </li>
- <?php $params[$getteur] = $this->nbPage; ?>
- <li class="item pager-last">
- <?php if ($this->currentPage < $this->nbPage) { ?>
- <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>"><?= _t('gen.pagination.last') ?> »</a>
+ <?php
+ for ($i = $this->currentPage - 2; $i <= $this->currentPage + 2; $i++) {
+ if($i > 0 && $i <= $this->nbPage) {
+ if ($i != $this->currentPage) {
+ $params[$getteur] = $i;
+ $class = '';
+ $aria = 'false';
+ } else {
+ $class = ' active';
+ $aria = 'true';
+ } ?>
+ <li class="item<?= $class ?>"><a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>" aria-current="<?= $aria ?>"><?= $i ?></a></li>
+ <?php
+ }
+ } ?>
+
+ <?php if ($this->nbPage > $i - 1) { ?>
+ <li class="item">…</a></li>
<?php } ?>
- </li>
-</ul>
+
+ <?php $params[$getteur] = $this->currentPage + 1; ?>
+ <li class="item pager-next">
+ <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>"><?= _t('conf.logs.pagination.next') ?> ›</a>
+ </li>
+ <?php $params[$getteur] = $this->nbPage; ?>
+ <li class="item pager-last">
+ <a href="<?= Minz_Url::display(array('c' => $c, 'a' => $a, 'params' => $params)) ?>"><?= _t('conf.logs.pagination.last') ?> »</a>
+ </li>
+ </ul>
+</nav>
<?php } ?>
diff --git a/app/views/index/logs.phtml b/app/views/index/logs.phtml
index bb11f9f69..8221d2d4b 100644
--- a/app/views/index/logs.phtml
+++ b/app/views/index/logs.phtml
@@ -1,15 +1,12 @@
<?php /** @var FreshRSS_View $this */ ?>
-<main class="post content">
+<?php $this->partial('aside_configure'); ?>
+<main class="post">
<div class="link-back-wrapper">
<a class="link-back" href="<?= _url('index', 'index') ?>"><?= _t('gen.action.back_to_rss_feeds') ?></a>
</div>
<h1><?= _t('index.log') ?></h1>
- <form method="post" action="<?= _url('index', 'logs') ?>"><p>
- <input type="hidden" name="_csrf" value="<?= FreshRSS_Auth::csrfToken() ?>" />
- <input type="hidden" name="clearLogs" />
- <button type="submit" class="btn"><?= _t('index.log.clear') ?></button>
- </p></form>
+
<?php
/** @var array<FreshRSS_Log> $items */
@@ -17,18 +14,49 @@
?>
<?php if (!empty($items)) { ?>
- <div class="loglist">
- <?php $this->logsPaginator->render('logs_pagination.phtml', 'page'); ?>
-
+ <?php $this->logsPaginator->render('logs_pagination.phtml', 'page'); ?>
+ <div id="loglist-wrapper">
+ <table id="loglist">
+ <thead>
+ <th><?= _t('conf.logs.loglist.level') ?></th>
+ <th><?= _t('conf.logs.loglist.timestamp') ?></th>
+ <th><?= _t('conf.logs.loglist.message') ?></th>
+ </thead>
+ <tbody>
<?php foreach ($items as $log) { ?>
- <div class="log <?= $log->level() ?>"><span class="date">
- <?= @date('Y-m-d H:i:s', @strtotime($log->date())) ?>
- </span><?= htmlspecialchars($log->info(), ENT_NOQUOTES, 'UTF-8') ?></div>
+ <tr class="log-item">
+ <td class="log-<?= $log->level() ?>">
+ <?= _i($log->level()) ?>
+ </td>
+ <td class="log-date">
+ <time datetime="<?= @date('Y-m-d H:i:s', @strtotime($log->date())) ?>">
+ <?= @date('Y-m-d H:i:s', @strtotime($log->date())) ?>
+ </time>
+ </td>
+ <td class="log-message">
+ <?= htmlspecialchars($log->info(), ENT_NOQUOTES, 'UTF-8') ?>
+ </td>
+ </tr>
<?php } ?>
+ </tbody>
+ </table>
+ </div>
+ <?php $this->logsPaginator->render('logs_pagination.phtml', 'page'); ?>
+
- <?php $this->logsPaginator->render('logs_pagination.phtml', 'page'); ?>
+
+ <form method="post" action="<?= _url('index', 'logs') ?>">
+ <div class="form-group form-actions">
+ <input type="hidden" name="_csrf" value="<?= FreshRSS_Auth::csrfToken() ?>" />
+ <input type="hidden" name="clearLogs" />
+ <div class="group-controls">
+ <button type="submit" class="btn btn-attention"><?= _t('index.log.clear') ?></button>
+ </div>
</div>
+ </form>
+
<?php } else { ?>
<p class="alert alert-warn"><?= _t('index.log.empty') ?></p>
<?php } ?>
+
</main>
diff --git a/p/themes/Alternative-Dark/adark.css b/p/themes/Alternative-Dark/adark.css
index 8106b3a46..65e7f8bc8 100644
--- a/p/themes/Alternative-Dark/adark.css
+++ b/p/themes/Alternative-Dark/adark.css
@@ -219,20 +219,20 @@ a.btn {
.nav-list .item {
height: 2.5em;
line-height: 2.5em;
+ color: #ccc;
font-size: 0.9rem;
}
-.nav-list .item:hover {
- background: #1f1f1f;
+.nav-list .item a {
+ color: #ccc;
}
-.nav-list .item.active {
- background: #171717;
- color: #fff;
+.nav-list .item a:hover {
+ background-color: #1f1f1f;
}
.nav-list .item.active a {
- color: #fff;
+ background-color: #1f1f1f;
}
.nav-list .disable {
@@ -395,41 +395,14 @@ a.btn {
}
/*=== Pagination */
-.pagination {
- background: #171717;
- text-align: center;
- color: #e8e8e8;
- font-size: 0.8em;
-}
-
-.content .pagination {
- margin: 0;
- padding: 0;
-}
-
-.pagination .item.pager-current {
- font-weight: bold;
- font-size: 1.5em;
-}
-
.pagination .item a {
- display: block;
- color: #333;
- font-style: italic;
line-height: 3em;
- text-decoration: none;
}
-.pagination .item a:hover {
- background: #ddd;
-}
-
-.pagination:first-child .item {
- border-bottom: 1px solid #aaa;
-}
-
-.pagination:last-child .item {
- border-top: 1px solid #292929;
+.pagination {
+ color: #999;
+ border-top: 1px solid #999;
+ border-bottom: 1px solid #999;
}
/*=== Boxes */
diff --git a/p/themes/Alternative-Dark/adark.rtl.css b/p/themes/Alternative-Dark/adark.rtl.css
index f1939a7be..d63222693 100644
--- a/p/themes/Alternative-Dark/adark.rtl.css
+++ b/p/themes/Alternative-Dark/adark.rtl.css
@@ -219,20 +219,20 @@ a.btn {
.nav-list .item {
height: 2.5em;
line-height: 2.5em;
+ color: #ccc;
font-size: 0.9rem;
}
-.nav-list .item:hover {
- background: #1f1f1f;
+.nav-list .item a {
+ color: #ccc;
}
-.nav-list .item.active {
- background: #171717;
- color: #fff;
+.nav-list .item a:hover {
+ background-color: #1f1f1f;
}
.nav-list .item.active a {
- color: #fff;
+ background-color: #1f1f1f;
}
.nav-list .disable {
@@ -395,41 +395,14 @@ a.btn {
}
/*=== Pagination */
-.pagination {
- background: #171717;
- text-align: center;
- color: #e8e8e8;
- font-size: 0.8em;
-}
-
-.content .pagination {
- margin: 0;
- padding: 0;
-}
-
-.pagination .item.pager-current {
- font-weight: bold;
- font-size: 1.5em;
-}
-
.pagination .item a {
- display: block;
- color: #333;
- font-style: italic;
line-height: 3em;
- text-decoration: none;
}
-.pagination .item a:hover {
- background: #ddd;
-}
-
-.pagination:first-child .item {
- border-bottom: 1px solid #aaa;
-}
-
-.pagination:last-child .item {
- border-top: 1px solid #292929;
+.pagination {
+ color: #999;
+ border-top: 1px solid #999;
+ border-bottom: 1px solid #999;
}
/*=== Boxes */
diff --git a/p/themes/Ansum/_components.scss b/p/themes/Ansum/_components.scss
index b5ed5ae25..02b1563b1 100644
--- a/p/themes/Ansum/_components.scss
+++ b/p/themes/Ansum/_components.scss
@@ -185,11 +185,6 @@
font-style: italic;
line-height: 3em;
text-decoration: none;
-
- &:hover {
- background: variables.$main-font-color;
- color: variables.$grey-light;
- }
}
}
}
diff --git a/p/themes/Ansum/_mobile.scss b/p/themes/Ansum/_mobile.scss
index c8399169b..cc5ce3f1c 100644
--- a/p/themes/Ansum/_mobile.scss
+++ b/p/themes/Ansum/_mobile.scss
@@ -188,10 +188,6 @@
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/Ansum/_sidebar.scss b/p/themes/Ansum/_sidebar.scss
index 4f5f1424a..07f589ab8 100644
--- a/p/themes/Ansum/_sidebar.scss
+++ b/p/themes/Ansum/_sidebar.scss
@@ -149,11 +149,11 @@
.item {
background: variables.$sid-bg;
- @include mixins.transition(all, 0.15s, ease-in-out);
-
a {
padding: 0 1rem;
color: variables.$sid-font-color;
+
+ @include mixins.transition(all, 0.15s, ease-in-out);
}
.error {
@@ -163,9 +163,6 @@
}
&:hover {
- background: variables.$sid-bg-dark;
- color: variables.$sid-font-color;
-
.error {
a {
background: variables.$main-first;
@@ -181,7 +178,7 @@
}
a {
- color: variables.$sid-font-color;
+ background: variables.$sid-bg-dark;
text-decoration: none;
}
}
@@ -205,11 +202,11 @@
}
a {
+ background: variables.$main-first;
color: variables.$white;
text-decoration: none;
}
}
-
}
&.empty {
diff --git a/p/themes/Ansum/ansum.css b/p/themes/Ansum/ansum.css
index b06f01aaa..d60f11be4 100644
--- a/p/themes/Ansum/ansum.css
+++ b/p/themes/Ansum/ansum.css
@@ -637,19 +637,15 @@ form th {
}
.nav-list .item {
background: #fbf9f6;
- transition: all 0.15s ease-in-out;
}
.nav-list .item a {
padding: 0 1rem;
color: #363330;
+ transition: all 0.15s ease-in-out;
}
.nav-list .item .error a {
color: #f5633e;
}
-.nav-list .item:hover {
- background: #efe3d3;
- color: #363330;
-}
.nav-list .item:hover .error a {
background: #ca7227;
color: #363330;
@@ -659,7 +655,7 @@ form th {
color: #363330;
}
.nav-list .item:hover a {
- color: #363330;
+ background: #efe3d3;
text-decoration: none;
}
.nav-list .item.active {
@@ -675,6 +671,7 @@ form th {
color: #fff;
}
.nav-list .item.active a {
+ background: #ca7227;
color: #fff;
text-decoration: none;
}
@@ -1531,10 +1528,6 @@ form th {
margin-bottom: 1rem;
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/Ansum/ansum.rtl.css b/p/themes/Ansum/ansum.rtl.css
index 6842ee5e2..c3cda7f4d 100644
--- a/p/themes/Ansum/ansum.rtl.css
+++ b/p/themes/Ansum/ansum.rtl.css
@@ -637,19 +637,15 @@ form th {
}
.nav-list .item {
background: #fbf9f6;
- transition: all 0.15s ease-in-out;
}
.nav-list .item a {
padding: 0 1rem;
color: #363330;
+ transition: all 0.15s ease-in-out;
}
.nav-list .item .error a {
color: #f5633e;
}
-.nav-list .item:hover {
- background: #efe3d3;
- color: #363330;
-}
.nav-list .item:hover .error a {
background: #ca7227;
color: #363330;
@@ -659,7 +655,7 @@ form th {
color: #363330;
}
.nav-list .item:hover a {
- color: #363330;
+ background: #efe3d3;
text-decoration: none;
}
.nav-list .item.active {
@@ -675,6 +671,7 @@ form th {
color: #fff;
}
.nav-list .item.active a {
+ background: #ca7227;
color: #fff;
text-decoration: none;
}
@@ -1531,10 +1528,6 @@ form th {
margin-bottom: 1rem;
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/BlueLagoon/BlueLagoon.css b/p/themes/BlueLagoon/BlueLagoon.css
index 12a5a334c..304f55e0f 100644
--- a/p/themes/BlueLagoon/BlueLagoon.css
+++ b/p/themes/BlueLagoon/BlueLagoon.css
@@ -277,23 +277,17 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
text-shadow: 0 0 2px rgba(255,255,255,0.28);
color: #fff;
}
-.nav-list .item.active {
+.nav-list .item.active a {
margin: 0;
background: linear-gradient(180deg, #0090ff 0%, #0062be 100%) #e4992c;
background: -webkit-linear-gradient(top, #0090ff 0%, #0062be 100%);
- box-shadow: -1px 2px 2px #171717, 0px 1px rgba(255, 255, 255, 0.08) inset;
- border-width: medium medium 1px;
- border-style: none none solid;
- border-color: -moz-use-text-color -moz-use-text-color #171717;
-}
-
-.nav-list .item.active a {
color: #fff;
+ border-color: -moz-use-text-color -moz-use-text-color #171717;
}
.nav-list .disable {
@@ -504,14 +498,12 @@ a.btn {
.pagination .item a:hover {
background: #ddd;
+ color: inherit;
}
-.pagination:first-child .item {
- border-bottom: 1px solid #aaa;
-}
-
-.pagination:last-child .item {
+.pagination .item {
border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
}
/*=== Boxes */
diff --git a/p/themes/BlueLagoon/BlueLagoon.rtl.css b/p/themes/BlueLagoon/BlueLagoon.rtl.css
index a1c510bbd..d1d4757cc 100644
--- a/p/themes/BlueLagoon/BlueLagoon.rtl.css
+++ b/p/themes/BlueLagoon/BlueLagoon.rtl.css
@@ -277,23 +277,17 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
text-shadow: 0 0 2px rgba(255,255,255,0.28);
color: #fff;
}
-.nav-list .item.active {
+.nav-list .item.active a {
margin: 0;
background: linear-gradient(-180deg, #0090ff 0%, #0062be 100%) #e4992c;
background: -webkit-linear-gradient(top, #0090ff 0%, #0062be 100%);
- box-shadow: 1px 2px 2px #171717, 0px 1px rgba(255, 255, 255, 0.08) inset;
- border-width: medium medium 1px;
- border-style: none none solid;
- border-color: -moz-use-text-color -moz-use-text-color #171717;
-}
-
-.nav-list .item.active a {
color: #fff;
+ border-color: -moz-use-text-color -moz-use-text-color #171717;
}
.nav-list .disable {
@@ -504,14 +498,12 @@ a.btn {
.pagination .item a:hover {
background: #ddd;
+ color: inherit;
}
-.pagination:first-child .item {
- border-bottom: 1px solid #aaa;
-}
-
-.pagination:last-child .item {
+.pagination .item {
border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
}
/*=== Boxes */
diff --git a/p/themes/Dark/dark.css b/p/themes/Dark/dark.css
index 56b293f80..356ec9ac7 100644
--- a/p/themes/Dark/dark.css
+++ b/p/themes/Dark/dark.css
@@ -260,7 +260,7 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
background: #26303f;
}
@@ -462,11 +462,8 @@ a.btn {
}
.pagination:first-child .item {
- border-bottom: 1px solid #333;
-}
-
-.pagination:last-child .item {
border-top: 1px solid #333;
+ border-bottom: 1px solid #333;
}
#load_more.loading,
diff --git a/p/themes/Dark/dark.rtl.css b/p/themes/Dark/dark.rtl.css
index 1019c1c48..bf6c15517 100644
--- a/p/themes/Dark/dark.rtl.css
+++ b/p/themes/Dark/dark.rtl.css
@@ -260,7 +260,7 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
background: #26303f;
}
@@ -462,11 +462,8 @@ a.btn {
}
.pagination:first-child .item {
- border-bottom: 1px solid #333;
-}
-
-.pagination:last-child .item {
border-top: 1px solid #333;
+ border-bottom: 1px solid #333;
}
#load_more.loading,
diff --git a/p/themes/Flat/flat.css b/p/themes/Flat/flat.css
index 52200ab88..0a6617f59 100644
--- a/p/themes/Flat/flat.css
+++ b/p/themes/Flat/flat.css
@@ -265,13 +265,12 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover,
+.nav-list .item a:hover,
.nav-list .item.active {
background: #2980b9;
color: #fff;
}
-.nav-list .item:hover a,
.nav-list .item.active a {
color: #fff;
}
@@ -448,27 +447,10 @@ a.btn {
.pagination {
background: #ecf0f1;
color: #000;
- font-size: 0.8em;
- text-align: center;
-}
-
-.content .pagination {
- margin: 0;
- padding: 0;
-}
-
-.pagination .item.pager-current {
- background: #34495e;
- color: #ecf0f1;
- font-size: 1.5em;
- font-weight: bold;
}
.pagination .item a {
- display: block;
- font-style: italic;
line-height: 3em;
- text-decoration: none;
color: #000;
}
diff --git a/p/themes/Flat/flat.rtl.css b/p/themes/Flat/flat.rtl.css
index 7fa4b4ab2..a10f27952 100644
--- a/p/themes/Flat/flat.rtl.css
+++ b/p/themes/Flat/flat.rtl.css
@@ -265,13 +265,12 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover,
+.nav-list .item a:hover,
.nav-list .item.active {
background: #2980b9;
color: #fff;
}
-.nav-list .item:hover a,
.nav-list .item.active a {
color: #fff;
}
@@ -448,27 +447,10 @@ a.btn {
.pagination {
background: #ecf0f1;
color: #000;
- font-size: 0.8em;
- text-align: center;
-}
-
-.content .pagination {
- margin: 0;
- padding: 0;
-}
-
-.pagination .item.pager-current {
- background: #34495e;
- color: #ecf0f1;
- font-size: 1.5em;
- font-weight: bold;
}
.pagination .item a {
- display: block;
- font-style: italic;
line-height: 3em;
- text-decoration: none;
color: #000;
}
diff --git a/p/themes/Mapco/_components.scss b/p/themes/Mapco/_components.scss
index 5d7bfd285..7347bcc6f 100644
--- a/p/themes/Mapco/_components.scss
+++ b/p/themes/Mapco/_components.scss
@@ -180,11 +180,6 @@
font-style: italic;
line-height: 3em;
text-decoration: none;
-
- &:hover {
- background: variables.$main-font-color;
- color: variables.$grey-light;
- }
}
}
diff --git a/p/themes/Mapco/_mobile.scss b/p/themes/Mapco/_mobile.scss
index 357369f05..7cd15514c 100644
--- a/p/themes/Mapco/_mobile.scss
+++ b/p/themes/Mapco/_mobile.scss
@@ -188,10 +188,6 @@
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/Mapco/_sidebar.scss b/p/themes/Mapco/_sidebar.scss
index c4a3003c2..a5ee0ea82 100644
--- a/p/themes/Mapco/_sidebar.scss
+++ b/p/themes/Mapco/_sidebar.scss
@@ -146,12 +146,13 @@
.item {
background: variables.$sid-bg;
-
- @include mixins.transition(all, 0.15s, ease-in-out);
+ color: variables.$white;
a {
padding: 0 1rem;
color: variables.$sid-font-color;
+
+ @include mixins.transition(all, 0.15s, ease-in-out);
}
.error {
@@ -161,9 +162,6 @@
}
&:hover {
- background: variables.$sid-bg-dark;
- color: variables.$sid-font-color;
-
.error {
a {
background: variables.$main-first;
@@ -179,7 +177,7 @@
}
a {
- color: variables.$sid-font-color;
+ background: variables.$sid-bg-dark;
text-decoration: none;
}
}
@@ -203,11 +201,11 @@
}
a {
+ background: variables.$main-first;
color: variables.$white;
text-decoration: none;
}
}
-
}
&.empty {
diff --git a/p/themes/Mapco/mapco.css b/p/themes/Mapco/mapco.css
index 6ec1ffb60..8768481c8 100644
--- a/p/themes/Mapco/mapco.css
+++ b/p/themes/Mapco/mapco.css
@@ -628,19 +628,16 @@ form th {
}
.nav-list .item {
background: #303136;
- transition: all 0.15s ease-in-out;
+ color: #fff;
}
.nav-list .item a {
padding: 0 1rem;
color: #ffffff;
+ transition: all 0.15s ease-in-out;
}
.nav-list .item .error a {
color: #f5633e;
}
-.nav-list .item:hover {
- background: #17181a;
- color: #ffffff;
-}
.nav-list .item:hover .error a {
background: #36c;
color: #ffffff;
@@ -650,7 +647,7 @@ form th {
color: #ffffff;
}
.nav-list .item:hover a {
- color: #ffffff;
+ background: #17181a;
text-decoration: none;
}
.nav-list .item.active {
@@ -666,6 +663,7 @@ form th {
color: #fff;
}
.nav-list .item.active a {
+ background: #36c;
color: #fff;
text-decoration: none;
}
@@ -1520,10 +1518,6 @@ form th {
margin-bottom: 1rem;
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/Mapco/mapco.rtl.css b/p/themes/Mapco/mapco.rtl.css
index e761439dc..a029cce3e 100644
--- a/p/themes/Mapco/mapco.rtl.css
+++ b/p/themes/Mapco/mapco.rtl.css
@@ -628,19 +628,16 @@ form th {
}
.nav-list .item {
background: #303136;
- transition: all 0.15s ease-in-out;
+ color: #fff;
}
.nav-list .item a {
padding: 0 1rem;
color: #ffffff;
+ transition: all 0.15s ease-in-out;
}
.nav-list .item .error a {
color: #f5633e;
}
-.nav-list .item:hover {
- background: #17181a;
- color: #ffffff;
-}
.nav-list .item:hover .error a {
background: #36c;
color: #ffffff;
@@ -650,7 +647,7 @@ form th {
color: #ffffff;
}
.nav-list .item:hover a {
- color: #ffffff;
+ background: #17181a;
text-decoration: none;
}
.nav-list .item.active {
@@ -666,6 +663,7 @@ form th {
color: #fff;
}
.nav-list .item.active a {
+ background: #36c;
color: #fff;
text-decoration: none;
}
@@ -1520,10 +1518,6 @@ form th {
margin-bottom: 1rem;
}
- .pagination {
- margin: 0 0 3.5em;
- }
-
#nav_entries {
line-height: 4.5rem;
}
diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css
index dd2b864eb..f8e9d4722 100644
--- a/p/themes/Origine/origine.css
+++ b/p/themes/Origine/origine.css
@@ -1060,6 +1060,16 @@ a.btn {
/*=== LOGS */
/*=========*/
+.pagination .item.active {
+ background-color: #0062be;
+ color: white;
+}
+
+#loglist td {
+ font-family: monospace;
+}
+
+/****old******/
.loglist {
border: 1px solid #aaa;
border-radius: 5px;
diff --git a/p/themes/Origine/origine.rtl.css b/p/themes/Origine/origine.rtl.css
index 477c9351b..f9dc2f720 100644
--- a/p/themes/Origine/origine.rtl.css
+++ b/p/themes/Origine/origine.rtl.css
@@ -1060,6 +1060,16 @@ a.btn {
/*=== LOGS */
/*=========*/
+.pagination .item.active {
+ background-color: #0062be;
+ color: white;
+}
+
+#loglist td {
+ font-family: monospace;
+}
+
+/****old******/
.loglist {
border: 1px solid #aaa;
border-radius: 5px;
diff --git a/p/themes/Screwdriver/screwdriver.css b/p/themes/Screwdriver/screwdriver.css
index 53fc593e7..1cee7a914 100644
--- a/p/themes/Screwdriver/screwdriver.css
+++ b/p/themes/Screwdriver/screwdriver.css
@@ -277,7 +277,7 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
text-shadow: 0 0 2px rgba(255,255,255,0.28);
color: #fff;
}
@@ -493,6 +493,7 @@ a.btn {
.pagination .item a:hover {
background: #ddd;
+ color: inherit
}
.pagination:first-child .item {
diff --git a/p/themes/Screwdriver/screwdriver.rtl.css b/p/themes/Screwdriver/screwdriver.rtl.css
index 7ec1e75d0..bee07294c 100644
--- a/p/themes/Screwdriver/screwdriver.rtl.css
+++ b/p/themes/Screwdriver/screwdriver.rtl.css
@@ -277,7 +277,7 @@ a.btn {
font-size: 0.9rem;
}
-.nav-list .item:hover {
+.nav-list .item a:hover {
text-shadow: 0 0 2px rgba(255,255,255,0.28);
color: #fff;
}
@@ -493,6 +493,7 @@ a.btn {
.pagination .item a:hover {
background: #ddd;
+ color: inherit
}
.pagination:first-child .item {
diff --git a/p/themes/Swage/swage.css b/p/themes/Swage/swage.css
index 03b7be3b5..2751701d6 100644
--- a/p/themes/Swage/swage.css
+++ b/p/themes/Swage/swage.css
@@ -231,22 +231,25 @@ form th {
color: #fcfcfc;
cursor: default;
}
-.nav-list .item:hover, .nav-list .item.active {
+.nav-list .item a:hover {
background: #00488b;
color: #fcfcfc;
}
-.nav-list .item:hover a, .nav-list .item.active a {
+.nav-list .item.active {
+ background: #00488b;
+ color: #fcfcfc;
+}
+.nav-list .item.active a {
color: #fcfcfc;
}
-.nav-list .item:hover.empty a,
-.nav-list .item:hover .error a, .nav-list .item.active.empty a,
+.nav-list .item.active.empty a,
.nav-list .item.active .error a {
color: #fcfcfc;
}
-.nav-list .item:hover.empty a, .nav-list .item.active.empty a {
+.nav-list .item.active.empty a {
background: #fa8052;
}
-.nav-list .item:hover.error a, .nav-list .item.active.error a {
+.nav-list .item.active.error a {
background: #c46178;
}
.nav-list .item > a {
@@ -1170,5 +1173,3 @@ button.as-link {
#slider .form-group:hover {
background: initial;
}
-
-/*# sourceMappingURL=swage.css.map */
diff --git a/p/themes/Swage/swage.rtl.css b/p/themes/Swage/swage.rtl.css
index 65aa1f3a8..d71d9a653 100644
--- a/p/themes/Swage/swage.rtl.css
+++ b/p/themes/Swage/swage.rtl.css
@@ -231,22 +231,25 @@ form th {
color: #fcfcfc;
cursor: default;
}
-.nav-list .item:hover, .nav-list .item.active {
+.nav-list .item a:hover {
background: #00488b;
color: #fcfcfc;
}
-.nav-list .item:hover a, .nav-list .item.active a {
+.nav-list .item.active {
+ background: #00488b;
+ color: #fcfcfc;
+}
+.nav-list .item.active a {
color: #fcfcfc;
}
-.nav-list .item:hover.empty a,
-.nav-list .item:hover .error a, .nav-list .item.active.empty a,
+.nav-list .item.active.empty a,
.nav-list .item.active .error a {
color: #fcfcfc;
}
-.nav-list .item:hover.empty a, .nav-list .item.active.empty a {
+.nav-list .item.active.empty a {
background: #fa8052;
}
-.nav-list .item:hover.error a, .nav-list .item.active.error a {
+.nav-list .item.active.error a {
background: #c46178;
}
.nav-list .item > a {
diff --git a/p/themes/Swage/swage.scss b/p/themes/Swage/swage.scss
index fedabf09d..6feb294b2 100644
--- a/p/themes/Swage/swage.scss
+++ b/p/themes/Swage/swage.scss
@@ -289,7 +289,11 @@ form {
@extend %nav-list;
- &:hover,
+ a:hover {
+ background: color.adjust( $color_nav, $lightness: -10%);
+ color: $color_light;
+ }
+
&.active {
background: color.adjust( $color_nav, $lightness: -10%);
color: $color_light;
diff --git a/p/themes/base-theme/template.css b/p/themes/base-theme/template.css
index 0a03a80d4..70aa65dfd 100644
--- a/p/themes/base-theme/template.css
+++ b/p/themes/base-theme/template.css
@@ -609,22 +609,31 @@ input[type="checkbox"]:focus-visible {
/*=== Pagination */
.pagination {
- margin: 0;
+ margin: 2em auto;
padding: 0;
display: table;
- width: 100%;
table-layout: fixed;
}
.pagination .item {
display: table-cell;
+ width: 3em;
+ text-align: center;
+}
+
+.pagination .item.active {
+ min-width: 3em;
+ font-weight: bold;
}
-.pagination .pager-first,
.pagination .pager-previous,
-.pagination .pager-next,
+.pagination .pager-next {
+ width: 6em;
+}
+
+.pagination .pager-first,
.pagination .pager-last {
- width: 100px;
+ width: 7.5em;
}
/*=== Boxes */
@@ -1515,6 +1524,12 @@ input:checked + .slide-container .properties {
/*=== DIVERS */
/*===========*/
+.log-error,
+.log-warning,
+.log-notice {
+ text-align: center;
+}
+
.category .title.error::before {
content: "⚠ ";
color: #bd362f;
@@ -1612,6 +1627,10 @@ input:checked + .slide-container .properties {
display: none;
}
+#loglist-wrapper {
+ overflow-x: auto;
+}
+
/*=== MOBILE */
/*===========*/
diff --git a/p/themes/base-theme/template.rtl.css b/p/themes/base-theme/template.rtl.css
index fdf094b9c..158840252 100644
--- a/p/themes/base-theme/template.rtl.css
+++ b/p/themes/base-theme/template.rtl.css
@@ -609,22 +609,31 @@ input[type="checkbox"]:focus-visible {
/*=== Pagination */
.pagination {
- margin: 0;
+ margin: 2em auto;
padding: 0;
display: table;
- width: 100%;
table-layout: fixed;
}
.pagination .item {
display: table-cell;
+ width: 3em;
+ text-align: center;
+}
+
+.pagination .item.active {
+ min-width: 3em;
+ font-weight: bold;
}
-.pagination .pager-first,
.pagination .pager-previous,
-.pagination .pager-next,
+.pagination .pager-next {
+ width: 6em;
+}
+
+.pagination .pager-first,
.pagination .pager-last {
- width: 100px;
+ width: 7.5em;
}
/*=== Boxes */
@@ -1515,6 +1524,12 @@ input:checked + .slide-container .properties {
/*=== DIVERS */
/*===========*/
+.log-error,
+.log-warning,
+.log-notice {
+ text-align: center;
+}
+
.category .title.error::before {
content: "⚠ ";
color: #bd362f;
@@ -1612,6 +1627,10 @@ input:checked + .slide-container .properties {
display: none;
}
+#loglist-wrapper {
+ overflow-x: auto;
+}
+
/*=== MOBILE */
/*===========*/
diff --git a/p/themes/icons/error.svg b/p/themes/icons/error.svg
new file mode 100644
index 000000000..6b5976090
--- /dev/null
+++ b/p/themes/icons/error.svg
@@ -0,0 +1,4 @@
+<svg viewBox="0 0 16 16" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2" xmlns="http://www.w3.org/2000/svg">
+ <circle cx="116.818" cy="290.931" r="50.694" style="fill:none;stroke:#d40000;stroke-width:14.166;stroke-opacity:1" transform="matrix(.12944 0 0 .12944 -7.12 -29.657)"/>
+ <path fill="#666" d="M5.146 5.144h.736a.743.743 0 0 1 .491.224l1.629 1.627 1.65-1.627c.19-.165.319-.215.491-.222h.714v.714c0 .204-.025.393-.179.535L9.05 8.022l1.606 1.606c.134.136.2.321.2.514v.714h-.714a.723.723 0 0 1-.512-.2L8 9.028l-1.628 1.627a.719.719 0 0 1-.514.2h-.713v-.714c0-.19.067-.379.201-.513l1.628-1.606-1.627-1.627a.647.647 0 0 1-.202-.536v-.713Z" color="#bebebe" style="text-indent:0;text-align:start;text-transform:none;stroke-width:.713684"/>
+</svg>
diff --git a/p/themes/icons/notice.svg b/p/themes/icons/notice.svg
new file mode 100644
index 000000000..e21ee13b4
--- /dev/null
+++ b/p/themes/icons/notice.svg
@@ -0,0 +1,5 @@
+<svg viewBox="0 0 16 16" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2" xmlns="http://www.w3.org/2000/svg">
+ <circle style="fill:#666;fill-opacity:1;stroke:none;stroke-width:1.47316;stroke-linecap:round;stroke-opacity:1" cx="-8" cy="-4.966" r="1.377" transform="scale(-1)"/>
+ <rect style="fill:#666;fill-opacity:1;stroke:#666;stroke-width:.88443;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" width="1.809" height="4.623" x="-8.904" y="-12.022" ry="0" transform="scale(-1)"/>
+ <rect style="fill:none;fill-opacity:1;stroke:#666;stroke-width:1.743;stroke-linecap:square;stroke-miterlimit:2;stroke-dasharray:none;stroke-opacity:1;stroke-linejoin:miter" width="11.757" height="11.757" x="2.121" y="2.121" ry="0"/>
+</svg>
diff --git a/p/themes/icons/warning.svg b/p/themes/icons/warning.svg
new file mode 100644
index 000000000..4f4ecdc9a
--- /dev/null
+++ b/p/themes/icons/warning.svg
@@ -0,0 +1,5 @@
+<svg viewBox="0 0 16 16" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2" xmlns="http://www.w3.org/2000/svg">
+ <path style="color:#000;clip-rule:nonzero;fill:#666;fill-rule:nonzero;stroke-width:.953325;stroke-linecap:round;stroke-linejoin:miter;-inkscape-stroke:none;paint-order:markers stroke fill" d="M8 1.595.447 14.405h15.106Zm0 3.323 4.525 7.836h-9.05Z"/>
+ <circle style="fill:#666;fill-opacity:1;stroke:none;stroke-width:.641916;stroke-linecap:round;stroke-opacity:1" cx="8" cy="11.275" r=".6"/>
+ <rect style="fill:#666;fill-opacity:1;stroke:#666;stroke-width:.387856;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" width=".612" height="2.628" x="7.694" y="7.212" ry="0"/>
+</svg>