aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar maTh <math-home@web.de> 2023-03-21 18:47:07 +0100
committerGravatar GitHub <noreply@github.com> 2023-03-21 18:47:07 +0100
commite679d3df0e55530c056d701b4773ff7e74f5c82c (patch)
tree38c69b91a41c05b3f5893b90e7f71077db95b4c0
parent34f62896ac729131dee25997307521bf259c5efc (diff)
Improved: show Terms of Service in config menu (#5215)
* Use constants for path to TOS * improve comments * TOS title moved to template * TOS available via config menu * CSS: improve handling of content of TOS/about * give info about set/unset TOS in system config * fix target * i18n FR * i18n DE
-rw-r--r--app/Controllers/authController.php2
-rw-r--r--app/Controllers/indexController.php6
-rw-r--r--app/Controllers/userController.php2
-rw-r--r--app/i18n/cz/admin.php5
-rw-r--r--app/i18n/de/admin.php5
-rw-r--r--app/i18n/el/admin.php5
-rw-r--r--app/i18n/en-us/admin.php5
-rw-r--r--app/i18n/en/admin.php5
-rw-r--r--app/i18n/es/admin.php5
-rw-r--r--app/i18n/fr/admin.php5
-rw-r--r--app/i18n/he/admin.php5
-rw-r--r--app/i18n/id/admin.php5
-rw-r--r--app/i18n/it/admin.php5
-rw-r--r--app/i18n/ja/admin.php5
-rw-r--r--app/i18n/ko/admin.php5
-rw-r--r--app/i18n/nl/admin.php5
-rw-r--r--app/i18n/oc/admin.php5
-rw-r--r--app/i18n/pl/admin.php5
-rw-r--r--app/i18n/pt-br/admin.php5
-rw-r--r--app/i18n/ru/admin.php5
-rw-r--r--app/i18n/sk/admin.php5
-rw-r--r--app/i18n/tr/admin.php5
-rw-r--r--app/i18n/zh-cn/admin.php5
-rw-r--r--app/i18n/zh-tw/admin.php5
-rw-r--r--app/layout/aside_configure.phtml5
-rw-r--r--app/layout/header.phtml5
-rw-r--r--app/views/configure/system.phtml13
-rw-r--r--app/views/index/about.phtml2
-rw-r--r--app/views/index/tos.phtml33
-rw-r--r--constants.php3
-rw-r--r--data/tos.example.html2
-rw-r--r--p/themes/Alternative-Dark/adark.css14
-rw-r--r--p/themes/Alternative-Dark/adark.rtl.css14
-rw-r--r--p/themes/Ansum/_configuration.scss9
-rw-r--r--p/themes/Ansum/ansum.css9
-rw-r--r--p/themes/Ansum/ansum.rtl.css7
-rw-r--r--p/themes/BlueLagoon/BlueLagoon.css14
-rw-r--r--p/themes/BlueLagoon/BlueLagoon.rtl.css14
-rw-r--r--p/themes/Dark/dark.css14
-rw-r--r--p/themes/Dark/dark.rtl.css14
-rw-r--r--p/themes/Flat/flat.css14
-rw-r--r--p/themes/Flat/flat.rtl.css14
-rw-r--r--p/themes/Mapco/_configuration.scss9
-rw-r--r--p/themes/Mapco/mapco.css7
-rw-r--r--p/themes/Mapco/mapco.rtl.css7
-rw-r--r--p/themes/Nord/nord.css15
-rw-r--r--p/themes/Nord/nord.rtl.css15
-rw-r--r--p/themes/Origine/origine.css14
-rw-r--r--p/themes/Origine/origine.rtl.css14
-rw-r--r--p/themes/Pafat/pafat.css14
-rw-r--r--p/themes/Pafat/pafat.rtl.css14
-rw-r--r--p/themes/Screwdriver/screwdriver.css14
-rw-r--r--p/themes/Screwdriver/screwdriver.rtl.css14
-rw-r--r--p/themes/Swage/swage.css13
-rw-r--r--p/themes/Swage/swage.rtl.css11
-rw-r--r--p/themes/Swage/swage.scss9
-rw-r--r--p/themes/base-theme/base.css14
-rw-r--r--p/themes/base-theme/base.rtl.css14
-rw-r--r--p/themes/base-theme/frss.css14
-rw-r--r--p/themes/base-theme/frss.rtl.css14
60 files changed, 193 insertions, 348 deletions
diff --git a/app/Controllers/authController.php b/app/Controllers/authController.php
index e8f6807bd..9f9d19623 100644
--- a/app/Controllers/authController.php
+++ b/app/Controllers/authController.php
@@ -239,7 +239,7 @@ class FreshRSS_auth_Controller extends FreshRSS_ActionController {
Minz_Error::error(403);
}
- $this->view->show_tos_checkbox = file_exists(join_path(DATA_PATH, 'tos.html'));
+ $this->view->show_tos_checkbox = file_exists(TOS_FILENAME);
$this->view->show_email_field = FreshRSS_Context::$system_conf->force_email_validation;
$this->view->preferred_language = Minz_Translate::getLanguage(null, Minz_Request::getPreferredLanguages(), FreshRSS_Context::$system_conf->language);
FreshRSS_View::prependTitle(_t('gen.auth.registration.title') . ' · ');
diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php
index 968518e3f..9cb235d21 100644
--- a/app/Controllers/indexController.php
+++ b/app/Controllers/indexController.php
@@ -282,13 +282,13 @@ class FreshRSS_index_Controller extends FreshRSS_ActionController {
}
/**
- * This action displays the EULA page of FreshRSS.
+ * This action displays the EULA/TOS (Terms of Service) page of FreshRSS.
* This page is enabled only if admin created a data/tos.html file.
* The content of the page is the content of data/tos.html.
- * It returns 404 if there is no EULA.
+ * It returns 404 if there is no EULA/TOS.
*/
public function tosAction() {
- $terms_of_service = file_get_contents(join_path(DATA_PATH, 'tos.html'));
+ $terms_of_service = file_get_contents(TOS_FILENAME);
if (!$terms_of_service) {
Minz_Error::error(404);
}
diff --git a/app/Controllers/userController.php b/app/Controllers/userController.php
index ac8f3be82..01656099c 100644
--- a/app/Controllers/userController.php
+++ b/app/Controllers/userController.php
@@ -318,7 +318,7 @@ class FreshRSS_user_Controller extends FreshRSS_ActionController {
);
}
- $tos_enabled = file_exists(join_path(DATA_PATH, 'tos.html'));
+ $tos_enabled = file_exists(TOS_FILENAME);
$accept_tos = Minz_Request::param('accept_tos', false);
if ($system_conf->force_email_validation && empty($email)) {
diff --git a/app/i18n/cz/admin.php b/app/i18n/cz/admin.php
index 988ddee6a..5c7ba6ad5 100644
--- a/app/i18n/cz/admin.php
+++ b/app/i18n/cz/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Registrační formulář uživatele',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Aktualizace systému',
diff --git a/app/i18n/de/admin.php b/app/i18n/de/admin.php
index 717b77cc2..5f88c2845 100644
--- a/app/i18n/de/admin.php
+++ b/app/i18n/de/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Benutzer-Registrierungsformular',
),
+ 'tos' => array(
+ 'disabled' => 'sind nicht aktiviert',
+ 'enabled' => '<a href="./?a=tos">sind aktiv</a>',
+ 'help' => 'So werden die <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">Nutzungsbedingungen aktiviert</a>',
+ ),
),
'update' => array(
'_' => 'System aktualisieren',
diff --git a/app/i18n/el/admin.php b/app/i18n/el/admin.php
index b54e923c8..514a48076 100644
--- a/app/i18n/el/admin.php
+++ b/app/i18n/el/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Φόρμα εγγραφής χρήστη',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Ενημέρωση συστήματος',
diff --git a/app/i18n/en-us/admin.php b/app/i18n/en-us/admin.php
index 471c2cf24..fd9379311 100644
--- a/app/i18n/en-us/admin.php
+++ b/app/i18n/en-us/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'User registration form', // IGNORE
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // IGNORE
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // IGNORE
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // IGNORE
+ ),
),
'update' => array(
'_' => 'Update system', // IGNORE
diff --git a/app/i18n/en/admin.php b/app/i18n/en/admin.php
index 4746d971f..a0a005bb4 100644
--- a/app/i18n/en/admin.php
+++ b/app/i18n/en/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'User registration form',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Update system',
diff --git a/app/i18n/es/admin.php b/app/i18n/es/admin.php
index 868cac45d..73eff6118 100644
--- a/app/i18n/es/admin.php
+++ b/app/i18n/es/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formulario de registro del usuario',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Actualizar sistema',
diff --git a/app/i18n/fr/admin.php b/app/i18n/fr/admin.php
index 4a628e2fe..d03252677 100644
--- a/app/i18n/fr/admin.php
+++ b/app/i18n/fr/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formulaire d’inscription utilisateur',
),
+ 'tos' => array(
+ 'disabled' => 'non renseigné',
+ 'enabled' => '<a href="./?a=tos">activées</a>',
+ 'help' => 'Comment <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">activer les conditions d’utilisation</a>',
+ ),
),
'update' => array(
'_' => 'Système de mise à jour',
diff --git a/app/i18n/he/admin.php b/app/i18n/he/admin.php
index 982712af4..1aeb3f2a3 100644
--- a/app/i18n/he/admin.php
+++ b/app/i18n/he/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'User registration form', // TODO
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'מערכת העדכון',
diff --git a/app/i18n/id/admin.php b/app/i18n/id/admin.php
index eba48647b..26175ff01 100644
--- a/app/i18n/id/admin.php
+++ b/app/i18n/id/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formulir Pendaftaran Pengguna',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Update system', // TODO
diff --git a/app/i18n/it/admin.php b/app/i18n/it/admin.php
index 596d14c17..0ad3c5e90 100644
--- a/app/i18n/it/admin.php
+++ b/app/i18n/it/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Form di registrazione utente',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Aggiornamento sistema',
diff --git a/app/i18n/ja/admin.php b/app/i18n/ja/admin.php
index 41b3bf7b3..4013d9e61 100644
--- a/app/i18n/ja/admin.php
+++ b/app/i18n/ja/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'ユーザー登録',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'システムアップデート',
diff --git a/app/i18n/ko/admin.php b/app/i18n/ko/admin.php
index 7d20e0c43..319a5ff06 100644
--- a/app/i18n/ko/admin.php
+++ b/app/i18n/ko/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => '사용자 회원가입 양식',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => '업데이트',
diff --git a/app/i18n/nl/admin.php b/app/i18n/nl/admin.php
index 58e7fac90..354df441c 100644
--- a/app/i18n/nl/admin.php
+++ b/app/i18n/nl/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Gebruikersregistratieformulier',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Versie controle',
diff --git a/app/i18n/oc/admin.php b/app/i18n/oc/admin.php
index 2ba5b9098..e50c5b53b 100644
--- a/app/i18n/oc/admin.php
+++ b/app/i18n/oc/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formulari d’inscripcion utilizaire',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Sistèma de mesa a jorn',
diff --git a/app/i18n/pl/admin.php b/app/i18n/pl/admin.php
index f7cc2b696..53b59d3d0 100644
--- a/app/i18n/pl/admin.php
+++ b/app/i18n/pl/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formularz rejestracji użytkowników',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Aktualizacja',
diff --git a/app/i18n/pt-br/admin.php b/app/i18n/pt-br/admin.php
index bf5406b39..9595214f4 100644
--- a/app/i18n/pt-br/admin.php
+++ b/app/i18n/pt-br/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Formulário de Cadastro de Usuário',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Atualização do sistema',
diff --git a/app/i18n/ru/admin.php b/app/i18n/ru/admin.php
index 4313106d8..de8377da4 100644
--- a/app/i18n/ru/admin.php
+++ b/app/i18n/ru/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Форма регистрации пользователей',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Обновление системы',
diff --git a/app/i18n/sk/admin.php b/app/i18n/sk/admin.php
index 69649d63d..b0faa0ae2 100644
--- a/app/i18n/sk/admin.php
+++ b/app/i18n/sk/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Registračný formulár používateľa',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Aktualizácia systému',
diff --git a/app/i18n/tr/admin.php b/app/i18n/tr/admin.php
index 1a6d83b21..60f89b897 100644
--- a/app/i18n/tr/admin.php
+++ b/app/i18n/tr/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => 'Kullanıcı kayıt formu',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => 'Sistem güncelleme',
diff --git a/app/i18n/zh-cn/admin.php b/app/i18n/zh-cn/admin.php
index 79bcde2e1..c4568ac39 100644
--- a/app/i18n/zh-cn/admin.php
+++ b/app/i18n/zh-cn/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => '用户注册表单',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => '更新系统',
diff --git a/app/i18n/zh-tw/admin.php b/app/i18n/zh-tw/admin.php
index 869555dde..91ff4331f 100644
--- a/app/i18n/zh-tw/admin.php
+++ b/app/i18n/zh-tw/admin.php
@@ -183,6 +183,11 @@ return array(
),
'title' => '使用者註冊表單',
),
+ 'tos' => array(
+ 'disabled' => 'is not given', // TODO
+ 'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
+ 'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
+ ),
),
'update' => array(
'_' => '更新系統',
diff --git a/app/layout/aside_configure.phtml b/app/layout/aside_configure.phtml
index 03b8108f7..6acb08f02 100644
--- a/app/layout/aside_configure.phtml
+++ b/app/layout/aside_configure.phtml
@@ -84,6 +84,11 @@
<li class="item<?= Minz_Request::actionName() === 'about' ? ' active' : '' ?>">
<a href="<?= _url('index', 'about') ?>"><?= _t('gen.menu.about') ?></a>
</li>
+ <?php if (file_exists(TOS_FILENAME)) { ?>
+ <li class="item">
+ <a href="<?= _url('index', 'tos') ?>"><?= _t('index.tos.title')?></a>
+ </li>
+ <?php } ?>
</ul>
</li>
</ul>
diff --git a/app/layout/header.phtml b/app/layout/header.phtml
index 0a49d5992..37dd39d6c 100644
--- a/app/layout/header.phtml
+++ b/app/layout/header.phtml
@@ -103,6 +103,11 @@
<ul>
<li class="item"><a href="<?= _url('index', 'logs') ?>"><?= _t('gen.menu.logs') ?></a></li>
<li class="item"><a href="<?= _url('index', 'about') ?>"><?= _t('gen.menu.about') ?></a></li>
+ <?php if (file_exists(TOS_FILENAME)) { ?>
+ <li class="item">
+ <a href="<?= _url('index', 'tos') ?>"><?= _t('index.tos.title')?></a>
+ </li>
+ <?php } ?>
<?= Minz_ExtensionManager::callHook('menu_other_entry') ?>
</ul>
</li>
diff --git a/app/views/configure/system.phtml b/app/views/configure/system.phtml
index bf14cac5d..58879fc7e 100644
--- a/app/views/configure/system.phtml
+++ b/app/views/configure/system.phtml
@@ -84,6 +84,19 @@
</div>
<div class="form-group">
+ <label class="group-name"><?= _t('index.tos.title') ?></label>
+ <div class="group-controls">
+ <?php if (file_exists(TOS_FILENAME)) { ?>
+ <?= _t('admin.system.tos.enabled') ?>
+ <?php
+ } else { ?>
+ <?= _t('admin.system.tos.disabled') ?>
+ <p class="help"><?= _i('help') ?> <?= _t('admin.system.tos.help') ?></p>
+ <?php } ?>
+ </div>
+ </div>
+
+ <div class="form-group">
<div class="group-controls">
<label class="checkbox" for="force-email-validation">
<input
diff --git a/app/views/index/about.phtml b/app/views/index/about.phtml
index 138791de1..41c0b1c72 100644
--- a/app/views/index/about.phtml
+++ b/app/views/index/about.phtml
@@ -5,7 +5,7 @@
}
?>
-<main class="post content">
+<main class="post content<?= !FreshRSS_Auth::hasAccess() ? ' centered' : ''?>">
<?php if (FreshRSS_Auth::hasAccess()) {?>
<div class="link-back-wrapper">
<a class="link-back" href="<?= _url('index', 'index') ?>"><?= _t('gen.action.back_to_rss_feeds') ?></a>
diff --git a/app/views/index/tos.phtml b/app/views/index/tos.phtml
index 5e7f8ea58..24610ed9f 100644
--- a/app/views/index/tos.phtml
+++ b/app/views/index/tos.phtml
@@ -1,14 +1,29 @@
-<?php /** @var FreshRSS_View $this */ ?>
-<main class="post content">
- <?php if ($this->can_register) { ?>
- <a href="<?= _url('auth', 'register') ?>">
- <?= _t('gen.action.back') ?>
- </a>
+<?php
+ /** @var FreshRSS_View $this */
+ if (FreshRSS_Auth::hasAccess()) {
+ $this->partial('aside_configure');
+ }
+?>
+
+<main class="post content<?= !FreshRSS_Auth::hasAccess() ? ' centered' : ''?>">
+ <?php if (FreshRSS_Auth::hasAccess()) {?>
+ <div class="link-back-wrapper">
+ <a class="link-back" href="<?= _url('index', 'index') ?>"><?= _t('gen.action.back_to_rss_feeds') ?></a>
+ </div>
+ <?php } elseif ($this->can_register) { ?>
+ <div class="link-back-wrapper">
+ <a href="<?= _url('auth', 'register') ?>">
+ <?= _t('gen.action.back') ?>
+ </a>
+ </div>
<?php } else { ?>
- <a href="<?= _url('index', 'index') ?>">
- <?= _t('gen.action.back') ?>
- </a>
+ <div class="link-back-wrapper">
+ <a href="<?= _url('index', 'index') ?>">
+ <?= _t('gen.action.back') ?>
+ </a>
+ </div>
<?php } ?>
+ <h1><?= _t('index.tos.title')?></h1>
<?= $this->terms_of_service ?>
</main>
diff --git a/constants.php b/constants.php
index b4c129e87..ce67e7a91 100644
--- a/constants.php
+++ b/constants.php
@@ -46,6 +46,7 @@ defined('USERS_PATH') or define('USERS_PATH', DATA_PATH . '/users');
defined('LOG_FILENAME') or define('LOG_FILENAME', 'log.txt');
defined('ADMIN_LOG') or define('ADMIN_LOG', USERS_PATH . '/_/' . LOG_FILENAME);
defined('API_LOG') or define('API_LOG', USERS_PATH . '/_/log_api.txt');
+defined('TOS_FILENAME') or define('TOS_FILENAME', DATA_PATH . '/tos.html');
defined('CACHE_PATH') or define('CACHE_PATH', DATA_PATH . '/cache');
defined('PSHB_LOG') or define('PSHB_LOG', USERS_PATH . '/_/log_pshb.txt');
defined('PSHB_PATH') or define('PSHB_PATH', DATA_PATH . '/PubSubHubbub');
@@ -58,5 +59,5 @@ defined('EXTENSIONS_PATH') or define('EXTENSIONS_PATH', FRESHRSS_PATH . '/extens
//Directory used for feed mutex with *.freshrss.lock files. Must be writable.
defined('TMP_PATH') or define('TMP_PATH', sys_get_temp_dir());
-//clean the chacke after x hours (720 hours = 30 days)
+//clean the cache after x hours (720 hours = 30 days)
defined('CLEANCACHE_HOURS') or define('CLEANCACHE_HOURS', 720);
diff --git a/data/tos.example.html b/data/tos.example.html
index 370302b16..d78e7e63a 100644
--- a/data/tos.example.html
+++ b/data/tos.example.html
@@ -1,4 +1,4 @@
-<h1>Terms of Service</h1>
+<!-- <h1>Terms of Service</h1> -->
<h2>Article 1: Lorem ipsum</h2>
diff --git a/p/themes/Alternative-Dark/adark.css b/p/themes/Alternative-Dark/adark.css
index 3f920ca02..027db127c 100644
--- a/p/themes/Alternative-Dark/adark.css
+++ b/p/themes/Alternative-Dark/adark.css
@@ -621,20 +621,6 @@ kbd {
left: 2px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
.slides {
border-color: var(--border-color-middle);
}
diff --git a/p/themes/Alternative-Dark/adark.rtl.css b/p/themes/Alternative-Dark/adark.rtl.css
index 5f6ef31b9..0a127c24a 100644
--- a/p/themes/Alternative-Dark/adark.rtl.css
+++ b/p/themes/Alternative-Dark/adark.rtl.css
@@ -621,20 +621,6 @@ kbd {
right: 2px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
.slides {
border-color: var(--border-color-middle);
}
diff --git a/p/themes/Ansum/_configuration.scss b/p/themes/Ansum/_configuration.scss
index fa21ef44e..585ff94c0 100644
--- a/p/themes/Ansum/_configuration.scss
+++ b/p/themes/Ansum/_configuration.scss
@@ -2,17 +2,8 @@
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
- form {
- margin: 1rem 0;
- }
-
- &.content {
- max-width: 550px;
- }
-
h1, h2 {
color: variables.$main-font-color;
font-size: 2rem;
diff --git a/p/themes/Ansum/ansum.css b/p/themes/Ansum/ansum.css
index ad73eb7f1..543bb6c1e 100644
--- a/p/themes/Ansum/ansum.css
+++ b/p/themes/Ansum/ansum.css
@@ -1102,15 +1102,8 @@ main.prompt {
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
}
-.post form {
- margin: 1rem 0;
-}
-.post.content {
- max-width: 550px;
-}
.post h1, .post h2 {
color: #363330;
font-size: 2rem;
@@ -1312,3 +1305,5 @@ a, button.as-link {
outline: none;
color: #ca7227;
}
+
+/*# sourceMappingURL=ansum.css.map */
diff --git a/p/themes/Ansum/ansum.rtl.css b/p/themes/Ansum/ansum.rtl.css
index 2e961a911..1a91c184a 100644
--- a/p/themes/Ansum/ansum.rtl.css
+++ b/p/themes/Ansum/ansum.rtl.css
@@ -1102,15 +1102,8 @@ main.prompt {
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
}
-.post form {
- margin: 1rem 0;
-}
-.post.content {
- max-width: 550px;
-}
.post h1, .post h2 {
color: #363330;
font-size: 2rem;
diff --git a/p/themes/BlueLagoon/BlueLagoon.css b/p/themes/BlueLagoon/BlueLagoon.css
index 14a369a2e..09e662b55 100644
--- a/p/themes/BlueLagoon/BlueLagoon.css
+++ b/p/themes/BlueLagoon/BlueLagoon.css
@@ -660,20 +660,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/BlueLagoon/BlueLagoon.rtl.css b/p/themes/BlueLagoon/BlueLagoon.rtl.css
index 7c16ee958..6eb08d26f 100644
--- a/p/themes/BlueLagoon/BlueLagoon.rtl.css
+++ b/p/themes/BlueLagoon/BlueLagoon.rtl.css
@@ -660,20 +660,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Dark/dark.css b/p/themes/Dark/dark.css
index fa194bb9e..0298ef4b2 100644
--- a/p/themes/Dark/dark.css
+++ b/p/themes/Dark/dark.css
@@ -612,20 +612,6 @@ a.btn {
background-color: #111;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Dark/dark.rtl.css b/p/themes/Dark/dark.rtl.css
index 2610e49d5..e456a2865 100644
--- a/p/themes/Dark/dark.rtl.css
+++ b/p/themes/Dark/dark.rtl.css
@@ -612,20 +612,6 @@ a.btn {
background-color: #111;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Flat/flat.css b/p/themes/Flat/flat.css
index 8fd09bb35..c989511e6 100644
--- a/p/themes/Flat/flat.css
+++ b/p/themes/Flat/flat.css
@@ -617,20 +617,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Flat/flat.rtl.css b/p/themes/Flat/flat.rtl.css
index 43327ddeb..ec0acb18c 100644
--- a/p/themes/Flat/flat.rtl.css
+++ b/p/themes/Flat/flat.rtl.css
@@ -617,20 +617,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Mapco/_configuration.scss b/p/themes/Mapco/_configuration.scss
index 1ac695f15..c9168e385 100644
--- a/p/themes/Mapco/_configuration.scss
+++ b/p/themes/Mapco/_configuration.scss
@@ -2,17 +2,8 @@
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
- form {
- margin: 1rem 0;
- }
-
- &.content {
- max-width: 550px;
- }
-
h1, h2 {
color: variables.$main-font-color;
font-size: 2rem;
diff --git a/p/themes/Mapco/mapco.css b/p/themes/Mapco/mapco.css
index 967accc00..d34bc4dbc 100644
--- a/p/themes/Mapco/mapco.css
+++ b/p/themes/Mapco/mapco.css
@@ -1116,15 +1116,8 @@ main.prompt {
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
}
-.post form {
- margin: 1rem 0;
-}
-.post.content {
- max-width: 550px;
-}
.post h1, .post h2 {
color: #303136;
font-size: 2rem;
diff --git a/p/themes/Mapco/mapco.rtl.css b/p/themes/Mapco/mapco.rtl.css
index b962e5fe0..9d37b283c 100644
--- a/p/themes/Mapco/mapco.rtl.css
+++ b/p/themes/Mapco/mapco.rtl.css
@@ -1116,15 +1116,8 @@ main.prompt {
/*=== Configuration pages */
.post {
- padding: 1rem 2rem;
font-size: 1rem;
}
-.post form {
- margin: 1rem 0;
-}
-.post.content {
- max-width: 550px;
-}
.post h1, .post h2 {
color: #303136;
font-size: 2rem;
diff --git a/p/themes/Nord/nord.css b/p/themes/Nord/nord.css
index 403a27dd0..fc6e654ff 100644
--- a/p/themes/Nord/nord.css
+++ b/p/themes/Nord/nord.css
@@ -914,21 +914,6 @@ option {
left: 2px;
}
-
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt input {
margin: 5px auto;
diff --git a/p/themes/Nord/nord.rtl.css b/p/themes/Nord/nord.rtl.css
index 2ae7464fa..3935c61e8 100644
--- a/p/themes/Nord/nord.rtl.css
+++ b/p/themes/Nord/nord.rtl.css
@@ -914,21 +914,6 @@ option {
right: 2px;
}
-
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt input {
margin: 5px auto;
diff --git a/p/themes/Origine/origine.css b/p/themes/Origine/origine.css
index 3d0ab4827..b2bcb668e 100644
--- a/p/themes/Origine/origine.css
+++ b/p/themes/Origine/origine.css
@@ -738,20 +738,6 @@ a.btn-attention:hover {
left: 2px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Origine/origine.rtl.css b/p/themes/Origine/origine.rtl.css
index 0996c4f1c..b297228de 100644
--- a/p/themes/Origine/origine.rtl.css
+++ b/p/themes/Origine/origine.rtl.css
@@ -738,20 +738,6 @@ a.btn-attention:hover {
right: 2px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Pafat/pafat.css b/p/themes/Pafat/pafat.css
index 5962d2bb6..8d87ff8bb 100644
--- a/p/themes/Pafat/pafat.css
+++ b/p/themes/Pafat/pafat.css
@@ -714,20 +714,6 @@ a.signin {
filter: brightness(3);
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Pafat/pafat.rtl.css b/p/themes/Pafat/pafat.rtl.css
index f9af832cd..105e07ddd 100644
--- a/p/themes/Pafat/pafat.rtl.css
+++ b/p/themes/Pafat/pafat.rtl.css
@@ -714,20 +714,6 @@ a.signin {
filter: brightness(3);
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt .form-group {
margin-bottom: 1rem;
diff --git a/p/themes/Screwdriver/screwdriver.css b/p/themes/Screwdriver/screwdriver.css
index 859e34f35..8eaa6678a 100644
--- a/p/themes/Screwdriver/screwdriver.css
+++ b/p/themes/Screwdriver/screwdriver.css
@@ -635,20 +635,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt {
text-shadow: 0 1px rgba(255,255,255,0.08);
diff --git a/p/themes/Screwdriver/screwdriver.rtl.css b/p/themes/Screwdriver/screwdriver.rtl.css
index 216c84262..ffe852de1 100644
--- a/p/themes/Screwdriver/screwdriver.rtl.css
+++ b/p/themes/Screwdriver/screwdriver.rtl.css
@@ -635,20 +635,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt {
text-shadow: 0 1px rgba(255,255,255,0.08);
diff --git a/p/themes/Swage/swage.css b/p/themes/Swage/swage.css
index 6478c0581..618bc64b3 100644
--- a/p/themes/Swage/swage.css
+++ b/p/themes/Swage/swage.css
@@ -673,19 +673,12 @@ form th {
}
.post {
- padding: 10px 50px;
font-size: 0.9em;
}
.post input.long {
height: 33px;
margin-top: 0px;
}
-.post form {
- margin: 10px 0;
-}
-.post.content {
- max-width: 550px;
-}
.prompt input {
margin: 5px auto;
@@ -1174,11 +1167,9 @@ button.as-link {
left: 0;
right: auto;
}
-
#nav_menu_actions ul.dropdown-menu::after {
display: none;
}
-
#nav_menu_actions .dropdown.only-mobile {
display: initial !important;
}
@@ -1193,6 +1184,4 @@ button.as-link {
#slider label {
min-height: initial;
-}
-
-/*# sourceMappingURL=swage.css.map */
+} \ No newline at end of file
diff --git a/p/themes/Swage/swage.rtl.css b/p/themes/Swage/swage.rtl.css
index a4ba4f159..3ac5982ae 100644
--- a/p/themes/Swage/swage.rtl.css
+++ b/p/themes/Swage/swage.rtl.css
@@ -673,19 +673,12 @@ form th {
}
.post {
- padding: 10px 50px;
font-size: 0.9em;
}
.post input.long {
height: 33px;
margin-top: 0px;
}
-.post form {
- margin: 10px 0;
-}
-.post.content {
- max-width: 550px;
-}
.prompt input {
margin: 5px auto;
@@ -1174,11 +1167,9 @@ button.as-link {
right: 0;
left: auto;
}
-
#nav_menu_actions ul.dropdown-menu::after {
display: none;
}
-
#nav_menu_actions .dropdown.only-mobile {
display: initial !important;
}
@@ -1193,4 +1184,4 @@ button.as-link {
#slider label {
min-height: initial;
-}
+} \ No newline at end of file
diff --git a/p/themes/Swage/swage.scss b/p/themes/Swage/swage.scss
index cc7aed10e..0c926aaec 100644
--- a/p/themes/Swage/swage.scss
+++ b/p/themes/Swage/swage.scss
@@ -872,7 +872,6 @@ form {
}
.post {
- padding: 10px 50px;
font-size: 0.9em;
input {
@@ -881,14 +880,6 @@ form {
margin-top: 0px;
}
}
-
- form {
- margin: 10px 0;
- }
-
- &.content {
- max-width: 550px;
- }
}
.prompt {
diff --git a/p/themes/base-theme/base.css b/p/themes/base-theme/base.css
index 095ef49c0..13c1a5965 100644
--- a/p/themes/base-theme/base.css
+++ b/p/themes/base-theme/base.css
@@ -461,20 +461,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt {
text-align: center;
diff --git a/p/themes/base-theme/base.rtl.css b/p/themes/base-theme/base.rtl.css
index a97d4876c..341c057a0 100644
--- a/p/themes/base-theme/base.rtl.css
+++ b/p/themes/base-theme/base.rtl.css
@@ -461,20 +461,6 @@ a.btn {
border-radius: 3px;
}
-/*=== Configuration pages */
-.post {
- padding: 10px 50px;
- font-size: 0.9em;
-}
-
-.post form {
- margin: 10px 0;
-}
-
-.post.content {
- max-width: 550px;
-}
-
/*=== Prompt (centered) */
.prompt {
text-align: center;
diff --git a/p/themes/base-theme/frss.css b/p/themes/base-theme/frss.css
index bafc26a89..a284c53a6 100644
--- a/p/themes/base-theme/frss.css
+++ b/p/themes/base-theme/frss.css
@@ -1759,6 +1759,20 @@ html.slider-active {
background-position: center;
}
+/*=== Configuration pages */
+.post {
+ padding: 1rem 2rem;
+ font-size: 0.9em;
+}
+
+.post form {
+ margin: 1rem 0;
+}
+
+.post.content.centered {
+ max-width: 550px;
+}
+
/*=== SLIDESHOW */
/*==============*/
.slides {
diff --git a/p/themes/base-theme/frss.rtl.css b/p/themes/base-theme/frss.rtl.css
index 40b6c4119..8c1109adc 100644
--- a/p/themes/base-theme/frss.rtl.css
+++ b/p/themes/base-theme/frss.rtl.css
@@ -1759,6 +1759,20 @@ html.slider-active {
background-position: center;
}
+/*=== Configuration pages */
+.post {
+ padding: 1rem 2rem;
+ font-size: 0.9em;
+}
+
+.post form {
+ margin: 1rem 0;
+}
+
+.post.content.centered {
+ max-width: 550px;
+}
+
/*=== SLIDESHOW */
/*==============*/
.slides {