From b6f7d310367e0332417aa5342bcc1e07f4e1f3e2 Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 3 Dec 2022 20:18:19 +0000 Subject: [PATCH 1/2] API: Central way to fetch the system rules --- src/Core/System.php | 28 ++++++++++++++++++++++ src/Module/Api/Mastodon/Instance.php | 2 +- src/Module/Api/Mastodon/Instance/Rules.php | 17 +------------ src/Object/Api/Mastodon/Instance.php | 4 +++- 4 files changed, 33 insertions(+), 18 deletions(-) diff --git a/src/Core/System.php b/src/Core/System.php index e0c23e55b..0c08fe168 100644 --- a/src/Core/System.php +++ b/src/Core/System.php @@ -21,6 +21,8 @@ namespace Friendica\Core; +use Friendica\Content\Text\BBCode; +use Friendica\Content\Text\HTML; use Friendica\Core\Config\Capability\IManageConfigValues; use Friendica\DI; use Friendica\Module\Response; @@ -659,4 +661,30 @@ class System // Reaching this point means that the operating system is configured badly. return ""; } + + /** + * Fetch the system rules + * @todo We should have got a better way to store and fetch the rules + * + * @return array + */ + public static function getRules(): array + { + $rules = []; + $id = 0; + + if (DI::config()->get('system', 'tosdisplay')) { + $html = BBCode::convert(DI::config()->get('system', 'tostext'), false, BBCode::EXTERNAL); + + $msg = HTML::toPlaintext($html, 0, true); + foreach (explode("\n", $msg) as $line) { + $line = trim($line); + if ($line) { + $rules[] = ['id' => (string)++$id, 'text' => $line]; + } + } + } + + return $rules; + } } diff --git a/src/Module/Api/Mastodon/Instance.php b/src/Module/Api/Mastodon/Instance.php index e5e0a9579..4747ecf51 100644 --- a/src/Module/Api/Mastodon/Instance.php +++ b/src/Module/Api/Mastodon/Instance.php @@ -59,6 +59,6 @@ class Instance extends BaseApi */ protected function rawContent(array $request = []) { - System::jsonExit(new InstanceEntity($this->config, $this->baseUrl, $this->database)); + System::jsonExit(new InstanceEntity($this->config, $this->baseUrl, $this->database, System::getRules())); } } diff --git a/src/Module/Api/Mastodon/Instance/Rules.php b/src/Module/Api/Mastodon/Instance/Rules.php index 4e25024f8..2b6732f26 100644 --- a/src/Module/Api/Mastodon/Instance/Rules.php +++ b/src/Module/Api/Mastodon/Instance/Rules.php @@ -38,21 +38,6 @@ class Rules extends BaseApi */ protected function rawContent(array $request = []) { - $rules = []; - $id = 0; - - if (DI::config()->get('system', 'tosdisplay')) { - $html = BBCode::convert(DI::config()->get('system', 'tostext'), false, BBCode::EXTERNAL); - - $msg = HTML::toPlaintext($html, 0, true); - foreach (explode("\n", $msg) as $line) { - $line = trim($line); - if ($line) { - $rules[] = ['id' => (string)++$id, 'text' => $line]; - } - } - } - - System::jsonExit($rules); + System::jsonExit(System::getRules()); } } diff --git a/src/Object/Api/Mastodon/Instance.php b/src/Object/Api/Mastodon/Instance.php index b659dc306..13b777db8 100644 --- a/src/Object/Api/Mastodon/Instance.php +++ b/src/Object/Api/Mastodon/Instance.php @@ -75,11 +75,12 @@ class Instance extends BaseDataTransferObject * @param IManageConfigValues $config * @param BaseURL $baseUrl * @param Database $database + * @param array $rules * @throws HTTPException\InternalServerErrorException * @throws HTTPException\NotFoundException * @throws \ImagickException */ - public function __construct(IManageConfigValues $config, BaseURL $baseUrl, Database $database) + public function __construct(IManageConfigValues $config, BaseURL $baseUrl, Database $database, array $rules = []) { $register_policy = intval($config->get('config', 'register_policy')); @@ -97,6 +98,7 @@ class Instance extends BaseDataTransferObject $this->approval_required = ($register_policy == Register::APPROVE); $this->invites_enabled = false; $this->contact_account = []; + $this->rules = $rules; $administrator = User::getFirstAdmin(['nickname']); if ($administrator) { From 16b76919c039e95c7b2e125870ab8f0303e32e8d Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 3 Dec 2022 21:15:08 +0000 Subject: [PATCH 2/2] Rules added --- src/Core/System.php | 4 +- src/Module/Admin/Tos.php | 5 +- src/Module/Tos.php | 13 +++ view/lang/C/messages.po | 220 ++++++++++++++++++----------------- view/templates/admin/tos.tpl | 1 + view/templates/tos.tpl | 5 + 6 files changed, 141 insertions(+), 107 deletions(-) diff --git a/src/Core/System.php b/src/Core/System.php index 0c08fe168..65f700388 100644 --- a/src/Core/System.php +++ b/src/Core/System.php @@ -664,7 +664,6 @@ class System /** * Fetch the system rules - * @todo We should have got a better way to store and fetch the rules * * @return array */ @@ -674,7 +673,8 @@ class System $id = 0; if (DI::config()->get('system', 'tosdisplay')) { - $html = BBCode::convert(DI::config()->get('system', 'tostext'), false, BBCode::EXTERNAL); + $rulelist = DI::config()->get('system', 'tosrules') ?: DI::config()->get('system', 'tostext'); + $html = BBCode::convert($rulelist, false, BBCode::EXTERNAL); $msg = HTML::toPlaintext($html, 0, true); foreach (explode("\n", $msg) as $line) { diff --git a/src/Module/Admin/Tos.php b/src/Module/Admin/Tos.php index f48f57fbc..888614b67 100644 --- a/src/Module/Admin/Tos.php +++ b/src/Module/Admin/Tos.php @@ -57,11 +57,13 @@ class Tos extends BaseAdmin $displaytos = !empty($_POST['displaytos']); $displayprivstatement = !empty($_POST['displayprivstatement']); - $tostext = (!empty($_POST['tostext']) ? strip_tags(trim($_POST['tostext'])) : ''); + $tostext = (!empty($_POST['tostext']) ? strip_tags(trim($_POST['tostext'])) : ''); + $tosrules = (!empty($_POST['tosrules']) ? strip_tags(trim($_POST['tosrules'])) : ''); $this->config->set('system', 'tosdisplay', $displaytos); $this->config->set('system', 'tosprivstatement', $displayprivstatement); $this->config->set('system', 'tostext', $tostext); + $this->config->set('system', 'tosrules', $tosrules); $this->baseUrl->redirect('admin/tos'); } @@ -79,6 +81,7 @@ class Tos extends BaseAdmin '$preview' => $this->t('Privacy Statement Preview'), '$privtext' => $this->tos->privacy_complete, '$tostext' => ['tostext', $this->t('The Terms of Service'), $this->config->get('system', 'tostext'), $this->t('Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below.')], + '$tosrules' => ['tosrules', $this->t('The rules'), $this->config->get('system', 'tosrules'), $this->t('Enter your system rules here. Each line represents one rule.')], '$form_security_token' => self::getFormSecurityToken('admin_tos'), '$submit' => $this->t('Save Settings'), ]); diff --git a/src/Module/Tos.php b/src/Module/Tos.php index 31beb6651..822aa8813 100644 --- a/src/Module/Tos.php +++ b/src/Module/Tos.php @@ -83,9 +83,22 @@ class Tos extends BaseModule $tpl = Renderer::getMarkupTemplate('tos.tpl'); if ($this->config->get('system', 'tosdisplay')) { + $lines = $this->config->get('system', 'tosrules'); + if (!empty($lines)) { + $rules = "[list=1]"; + foreach (explode("\n", $lines) as $line) { + $rules .= "\n[*]" . $line; + } + $rules .= "\n[/list]\n"; + } else { + $rules = ''; + } + return Renderer::replaceMacros($tpl, [ '$title' => $this->t('Terms of Service'), '$tostext' => BBCode::convert($this->config->get('system', 'tostext')), + '$rulestitle' => $this->t('Rules'), + '$rules' => BBCode::convert($rules), '$displayprivstatement' => $this->config->get('system', 'tosprivstatement'), '$privstatementtitle' => $this->t('Privacy Statement'), '$privacy_operate' => $this->t('At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), an username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but wont be visibly displayed. The listing of an account in the node\'s user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication.'), diff --git a/view/lang/C/messages.po b/view/lang/C/messages.po index 5728520d5..ffc7680a3 100644 --- a/view/lang/C/messages.po +++ b/view/lang/C/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: 2022.12-dev\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-01 18:01-0500\n" +"POT-Creation-Date: 2022-12-03 21:11+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1262,7 +1262,7 @@ msgid "Public post" msgstr "" #: src/Content/Conversation.php:396 src/Content/Widget/VCard.php:113 -#: src/Model/Profile.php:465 src/Module/Admin/Logs/View.php:93 +#: src/Model/Profile.php:469 src/Module/Admin/Logs/View.php:93 #: src/Module/Post/Edit.php:177 msgid "Message" msgstr "" @@ -1516,7 +1516,7 @@ msgstr "" msgid "show more" msgstr "" -#: src/Content/Item.php:294 src/Model/Item.php:2919 +#: src/Content/Item.php:294 src/Model/Item.php:2914 msgid "event" msgstr "" @@ -1525,7 +1525,7 @@ msgstr "" msgid "status" msgstr "" -#: src/Content/Item.php:303 src/Model/Item.php:2921 +#: src/Content/Item.php:303 src/Model/Item.php:2916 #: src/Module/Post/Tag/Add.php:123 msgid "photo" msgstr "" @@ -1539,31 +1539,31 @@ msgstr "" msgid "Follow Thread" msgstr "" -#: src/Content/Item.php:387 src/Model/Contact.php:1197 +#: src/Content/Item.php:387 src/Model/Contact.php:1209 msgid "View Status" msgstr "" -#: src/Content/Item.php:388 src/Content/Item.php:406 src/Model/Contact.php:1135 -#: src/Model/Contact.php:1189 src/Model/Contact.php:1198 +#: src/Content/Item.php:388 src/Content/Item.php:406 src/Model/Contact.php:1147 +#: src/Model/Contact.php:1201 src/Model/Contact.php:1210 #: src/Module/Directory.php:157 src/Module/Settings/Profile/Index.php:234 msgid "View Profile" msgstr "" -#: src/Content/Item.php:389 src/Model/Contact.php:1199 +#: src/Content/Item.php:389 src/Model/Contact.php:1211 msgid "View Photos" msgstr "" -#: src/Content/Item.php:390 src/Model/Contact.php:1190 -#: src/Model/Contact.php:1200 +#: src/Content/Item.php:390 src/Model/Contact.php:1202 +#: src/Model/Contact.php:1212 msgid "Network Posts" msgstr "" -#: src/Content/Item.php:391 src/Model/Contact.php:1191 -#: src/Model/Contact.php:1201 +#: src/Content/Item.php:391 src/Model/Contact.php:1203 +#: src/Model/Contact.php:1213 msgid "View Contact" msgstr "" -#: src/Content/Item.php:392 src/Model/Contact.php:1202 +#: src/Content/Item.php:392 src/Model/Contact.php:1214 msgid "Send PM" msgstr "" @@ -1588,7 +1588,7 @@ msgid "Languages" msgstr "" #: src/Content/Item.php:403 src/Content/Widget.php:80 -#: src/Model/Contact.php:1192 src/Model/Contact.php:1203 +#: src/Model/Contact.php:1204 src/Model/Contact.php:1215 #: src/Module/Contact/Follow.php:167 view/theme/vier/theme.php:196 msgid "Connect/Follow" msgstr "" @@ -1774,9 +1774,9 @@ msgstr "" msgid "Information about this friendica instance" msgstr "" -#: src/Content/Nav.php:265 src/Module/Admin/Tos.php:76 +#: src/Content/Nav.php:265 src/Module/Admin/Tos.php:78 #: src/Module/BaseAdmin.php:95 src/Module/Register.php:176 -#: src/Module/Tos.php:87 +#: src/Module/Tos.php:98 msgid "Terms of Service" msgstr "" @@ -1920,8 +1920,8 @@ msgid "" "%2$s %3$s" msgstr "" -#: src/Content/Text/BBCode.php:1245 src/Model/Item.php:3541 -#: src/Model/Item.php:3547 src/Model/Item.php:3548 +#: src/Content/Text/BBCode.php:1245 src/Model/Item.php:3536 +#: src/Model/Item.php:3542 src/Model/Item.php:3543 msgid "Link to source" msgstr "" @@ -1954,7 +1954,7 @@ msgid "The end" msgstr "" #: src/Content/Text/HTML.php:882 src/Content/Widget/VCard.php:109 -#: src/Model/Profile.php:459 src/Module/Contact/Profile.php:427 +#: src/Model/Profile.php:463 src/Module/Contact/Profile.php:427 msgid "Follow" msgstr "" @@ -2081,7 +2081,7 @@ msgstr "" msgid "Organisations" msgstr "" -#: src/Content/Widget.php:523 src/Model/Contact.php:1629 +#: src/Content/Widget.php:523 src/Model/Contact.php:1641 msgid "News" msgstr "" @@ -2150,7 +2150,7 @@ msgid "Matrix:" msgstr "" #: src/Content/Widget/VCard.php:104 src/Model/Event.php:82 -#: src/Model/Event.php:109 src/Model/Event.php:471 src/Model/Event.php:961 +#: src/Model/Event.php:109 src/Model/Event.php:471 src/Model/Event.php:958 #: src/Model/Profile.php:373 src/Module/Calendar/Event/Form.php:239 #: src/Module/Contact/Profile.php:369 src/Module/Directory.php:147 #: src/Module/Notifications/Introductions.php:187 @@ -2158,13 +2158,13 @@ msgstr "" msgid "Location:" msgstr "" -#: src/Content/Widget/VCard.php:107 src/Model/Profile.php:472 +#: src/Content/Widget/VCard.php:107 src/Model/Profile.php:476 #: src/Module/Notifications/Introductions.php:201 msgid "Network:" msgstr "" -#: src/Content/Widget/VCard.php:111 src/Model/Contact.php:1193 -#: src/Model/Contact.php:1204 src/Model/Profile.php:461 +#: src/Content/Widget/VCard.php:111 src/Model/Contact.php:1205 +#: src/Model/Contact.php:1216 src/Model/Profile.php:465 #: src/Module/Contact/Profile.php:419 msgid "Unfollow" msgstr "" @@ -2861,77 +2861,77 @@ msgstr "" msgid "Legacy module file not found: %s" msgstr "" -#: src/Model/Contact.php:1210 src/Module/Moderation/Users/Pending.php:102 +#: src/Model/Contact.php:1222 src/Module/Moderation/Users/Pending.php:102 #: src/Module/Notifications/Introductions.php:132 #: src/Module/Notifications/Introductions.php:204 msgid "Approve" msgstr "" -#: src/Model/Contact.php:1625 +#: src/Model/Contact.php:1637 msgid "Organisation" msgstr "" -#: src/Model/Contact.php:1633 +#: src/Model/Contact.php:1645 msgid "Forum" msgstr "" -#: src/Model/Contact.php:2819 +#: src/Model/Contact.php:2831 msgid "Disallowed profile URL." msgstr "" -#: src/Model/Contact.php:2824 src/Module/Friendica.php:82 +#: src/Model/Contact.php:2836 src/Module/Friendica.php:82 msgid "Blocked domain" msgstr "" -#: src/Model/Contact.php:2829 +#: src/Model/Contact.php:2841 msgid "Connect URL missing." msgstr "" -#: src/Model/Contact.php:2838 +#: src/Model/Contact.php:2850 msgid "" "The contact could not be added. Please check the relevant network " "credentials in your Settings -> Social Networks page." msgstr "" -#: src/Model/Contact.php:2880 +#: src/Model/Contact.php:2892 msgid "The profile address specified does not provide adequate information." msgstr "" -#: src/Model/Contact.php:2882 +#: src/Model/Contact.php:2894 msgid "No compatible communication protocols or feeds were discovered." msgstr "" -#: src/Model/Contact.php:2885 +#: src/Model/Contact.php:2897 msgid "An author or name was not found." msgstr "" -#: src/Model/Contact.php:2888 +#: src/Model/Contact.php:2900 msgid "No browser URL could be matched to this address." msgstr "" -#: src/Model/Contact.php:2891 +#: src/Model/Contact.php:2903 msgid "" "Unable to match @-style Identity Address with a known protocol or email " "contact." msgstr "" -#: src/Model/Contact.php:2892 +#: src/Model/Contact.php:2904 msgid "Use mailto: in front of address to force email check." msgstr "" -#: src/Model/Contact.php:2898 +#: src/Model/Contact.php:2910 msgid "" "The profile address specified belongs to a network which has been disabled " "on this site." msgstr "" -#: src/Model/Contact.php:2903 +#: src/Model/Contact.php:2915 msgid "" "Limited profile. This person will be unable to receive direct/personal " "notifications from you." msgstr "" -#: src/Model/Contact.php:2962 +#: src/Model/Contact.php:2974 msgid "Unable to retrieve contact information." msgstr "" @@ -2940,12 +2940,12 @@ msgid "l F d, Y \\@ g:i A \\G\\M\\TP (e)" msgstr "" #: src/Model/Event.php:75 src/Model/Event.php:92 src/Model/Event.php:469 -#: src/Model/Event.php:943 +#: src/Model/Event.php:940 msgid "Starts:" msgstr "" #: src/Model/Event.php:78 src/Model/Event.php:98 src/Model/Event.php:470 -#: src/Model/Event.php:947 +#: src/Model/Event.php:944 msgid "Finishes:" msgstr "" @@ -3005,32 +3005,32 @@ msgstr "" msgid "Delete event" msgstr "" -#: src/Model/Event.php:899 src/Module/Debug/Localtime.php:38 +#: src/Model/Event.php:896 src/Module/Debug/Localtime.php:38 msgid "l F d, Y \\@ g:i A" msgstr "" -#: src/Model/Event.php:900 +#: src/Model/Event.php:897 msgid "D g:i A" msgstr "" -#: src/Model/Event.php:901 +#: src/Model/Event.php:898 msgid "g:i A" msgstr "" -#: src/Model/Event.php:962 src/Model/Event.php:964 +#: src/Model/Event.php:959 src/Model/Event.php:961 msgid "Show map" msgstr "" -#: src/Model/Event.php:963 +#: src/Model/Event.php:960 msgid "Hide map" msgstr "" -#: src/Model/Event.php:1056 +#: src/Model/Event.php:1053 #, php-format msgid "%s's birthday" msgstr "" -#: src/Model/Event.php:1057 +#: src/Model/Event.php:1054 #, php-format msgid "Happy Birthday %s" msgstr "" @@ -3084,61 +3084,61 @@ msgstr "" msgid "Detected languages in this post:\\n%s" msgstr "" -#: src/Model/Item.php:2923 +#: src/Model/Item.php:2918 msgid "activity" msgstr "" -#: src/Model/Item.php:2925 +#: src/Model/Item.php:2920 msgid "comment" msgstr "" -#: src/Model/Item.php:2928 +#: src/Model/Item.php:2923 msgid "post" msgstr "" -#: src/Model/Item.php:3069 +#: src/Model/Item.php:3064 #, php-format msgid "Content warning: %s" msgstr "" -#: src/Model/Item.php:3453 +#: src/Model/Item.php:3448 msgid "bytes" msgstr "" -#: src/Model/Item.php:3484 +#: src/Model/Item.php:3479 #, php-format msgid "%2$s (%3$d%%, %1$d vote)" msgid_plural "%2$s (%3$d%%, %1$d votes)" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3486 +#: src/Model/Item.php:3481 #, php-format msgid "%2$s (%1$d vote)" msgid_plural "%2$s (%1$d votes)" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3491 +#: src/Model/Item.php:3486 #, php-format msgid "%d voter. Poll end: %s" msgid_plural "%d voters. Poll end: %s" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3493 +#: src/Model/Item.php:3488 #, php-format msgid "%d voter." msgid_plural "%d voters." msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3495 +#: src/Model/Item.php:3490 #, php-format msgid "Poll end: %s" msgstr "" -#: src/Model/Item.php:3529 src/Model/Item.php:3530 +#: src/Model/Item.php:3524 src/Model/Item.php:3525 msgid "View on separate page" msgstr "" @@ -3169,129 +3169,129 @@ msgstr "" msgid "About:" msgstr "" -#: src/Model/Profile.php:463 +#: src/Model/Profile.php:467 msgid "Atom feed" msgstr "" -#: src/Model/Profile.php:470 +#: src/Model/Profile.php:474 msgid "This website has been verified to belong to the same person." msgstr "" -#: src/Model/Profile.php:507 +#: src/Model/Profile.php:511 msgid "F d" msgstr "" -#: src/Model/Profile.php:571 src/Model/Profile.php:660 +#: src/Model/Profile.php:575 src/Model/Profile.php:664 msgid "[today]" msgstr "" -#: src/Model/Profile.php:580 +#: src/Model/Profile.php:584 msgid "Birthday Reminders" msgstr "" -#: src/Model/Profile.php:581 +#: src/Model/Profile.php:585 msgid "Birthdays this week:" msgstr "" -#: src/Model/Profile.php:609 +#: src/Model/Profile.php:613 msgid "g A l F d" msgstr "" -#: src/Model/Profile.php:647 +#: src/Model/Profile.php:651 msgid "[No description]" msgstr "" -#: src/Model/Profile.php:673 +#: src/Model/Profile.php:677 msgid "Event Reminders" msgstr "" -#: src/Model/Profile.php:674 +#: src/Model/Profile.php:678 msgid "Upcoming events the next 7 days:" msgstr "" -#: src/Model/Profile.php:869 +#: src/Model/Profile.php:873 #, php-format msgid "OpenWebAuth: %1$s welcomes %2$s" msgstr "" -#: src/Model/Profile.php:1009 +#: src/Model/Profile.php:1013 msgid "Hometown:" msgstr "" -#: src/Model/Profile.php:1010 +#: src/Model/Profile.php:1014 msgid "Marital Status:" msgstr "" -#: src/Model/Profile.php:1011 +#: src/Model/Profile.php:1015 msgid "With:" msgstr "" -#: src/Model/Profile.php:1012 +#: src/Model/Profile.php:1016 msgid "Since:" msgstr "" -#: src/Model/Profile.php:1013 +#: src/Model/Profile.php:1017 msgid "Sexual Preference:" msgstr "" -#: src/Model/Profile.php:1014 +#: src/Model/Profile.php:1018 msgid "Political Views:" msgstr "" -#: src/Model/Profile.php:1015 +#: src/Model/Profile.php:1019 msgid "Religious Views:" msgstr "" -#: src/Model/Profile.php:1016 +#: src/Model/Profile.php:1020 msgid "Likes:" msgstr "" -#: src/Model/Profile.php:1017 +#: src/Model/Profile.php:1021 msgid "Dislikes:" msgstr "" -#: src/Model/Profile.php:1018 +#: src/Model/Profile.php:1022 msgid "Title/Description:" msgstr "" -#: src/Model/Profile.php:1019 src/Module/Admin/Summary.php:217 +#: src/Model/Profile.php:1023 src/Module/Admin/Summary.php:217 #: src/Module/Moderation/Summary.php:77 msgid "Summary" msgstr "" -#: src/Model/Profile.php:1020 +#: src/Model/Profile.php:1024 msgid "Musical interests" msgstr "" -#: src/Model/Profile.php:1021 +#: src/Model/Profile.php:1025 msgid "Books, literature" msgstr "" -#: src/Model/Profile.php:1022 +#: src/Model/Profile.php:1026 msgid "Television" msgstr "" -#: src/Model/Profile.php:1023 +#: src/Model/Profile.php:1027 msgid "Film/dance/culture/entertainment" msgstr "" -#: src/Model/Profile.php:1024 +#: src/Model/Profile.php:1028 msgid "Hobbies/Interests" msgstr "" -#: src/Model/Profile.php:1025 +#: src/Model/Profile.php:1029 msgid "Love/romance" msgstr "" -#: src/Model/Profile.php:1026 +#: src/Model/Profile.php:1030 msgid "Work/employment" msgstr "" -#: src/Model/Profile.php:1027 +#: src/Model/Profile.php:1031 msgid "School/education" msgstr "" -#: src/Model/Profile.php:1028 +#: src/Model/Profile.php:1032 msgid "Contact information and Social Networks" msgstr "" @@ -3583,7 +3583,7 @@ msgstr "" #: src/Module/Admin/Logs/View.php:84 src/Module/Admin/Queue.php:72 #: src/Module/Admin/Site.php:437 src/Module/Admin/Storage.php:138 #: src/Module/Admin/Summary.php:216 src/Module/Admin/Themes/Details.php:90 -#: src/Module/Admin/Themes/Index.php:111 src/Module/Admin/Tos.php:75 +#: src/Module/Admin/Themes/Index.php:111 src/Module/Admin/Tos.php:77 #: src/Module/Moderation/Users/Create.php:61 #: src/Module/Moderation/Users/Pending.php:96 msgid "Administration" @@ -3620,7 +3620,7 @@ msgstr "" #: src/Module/Admin/Addons/Index.php:69 src/Module/Admin/Features.php:87 #: src/Module/Admin/Logs/Settings.php:81 src/Module/Admin/Site.php:440 -#: src/Module/Admin/Themes/Index.php:113 src/Module/Admin/Tos.php:83 +#: src/Module/Admin/Themes/Index.php:113 src/Module/Admin/Tos.php:86 #: src/Module/Settings/Account.php:560 src/Module/Settings/Addons.php:81 #: src/Module/Settings/Connectors.php:159 #: src/Module/Settings/Connectors.php:244 @@ -5154,21 +5154,21 @@ msgstr "" msgid "[Unsupported]" msgstr "" -#: src/Module/Admin/Tos.php:77 +#: src/Module/Admin/Tos.php:79 msgid "Display Terms of Service" msgstr "" -#: src/Module/Admin/Tos.php:77 +#: src/Module/Admin/Tos.php:79 msgid "" "Enable the Terms of Service page. If this is enabled a link to the terms " "will be added to the registration form and the general information page." msgstr "" -#: src/Module/Admin/Tos.php:78 +#: src/Module/Admin/Tos.php:80 msgid "Display Privacy Statement" msgstr "" -#: src/Module/Admin/Tos.php:78 +#: src/Module/Admin/Tos.php:80 #, php-format msgid "" "Show some informations regarding the needed information to operate the node " @@ -5176,20 +5176,28 @@ msgid "" "\">EU-GDPR." msgstr "" -#: src/Module/Admin/Tos.php:79 +#: src/Module/Admin/Tos.php:81 msgid "Privacy Statement Preview" msgstr "" -#: src/Module/Admin/Tos.php:81 +#: src/Module/Admin/Tos.php:83 msgid "The Terms of Service" msgstr "" -#: src/Module/Admin/Tos.php:81 +#: src/Module/Admin/Tos.php:83 msgid "" "Enter the Terms of Service for your node here. You can use BBCode. Headers " "of sections should be [h2] and below." msgstr "" +#: src/Module/Admin/Tos.php:84 +msgid "The rules" +msgstr "" + +#: src/Module/Admin/Tos.php:84 +msgid "Enter your system rules here. Each line represents one rule." +msgstr "" + #: src/Module/Api/ApiResponse.php:279 #, php-format msgid "API endpoint %s %s is not implemented" @@ -10238,7 +10246,7 @@ msgstr "" msgid "Exception thrown in %s:%d" msgstr "" -#: src/Module/Tos.php:57 src/Module/Tos.php:91 +#: src/Module/Tos.php:57 src/Module/Tos.php:104 msgid "" "At the time of registration, and for providing communications between the " "user account and their contacts, the user has to provide a display name (pen " @@ -10251,14 +10259,14 @@ msgid "" "settings, it is not necessary for communication." msgstr "" -#: src/Module/Tos.php:58 src/Module/Tos.php:92 +#: src/Module/Tos.php:58 src/Module/Tos.php:105 msgid "" "This data is required for communication and is passed on to the nodes of the " "communication partners and is stored there. Users can enter additional " "private data that may be transmitted to the communication partners accounts." msgstr "" -#: src/Module/Tos.php:59 src/Module/Tos.php:93 +#: src/Module/Tos.php:59 src/Module/Tos.php:106 #, php-format msgid "" "At any point in time a logged in user can export their account data from the " @@ -10269,10 +10277,14 @@ msgid "" "communication partners." msgstr "" -#: src/Module/Tos.php:62 src/Module/Tos.php:90 +#: src/Module/Tos.php:62 src/Module/Tos.php:103 msgid "Privacy Statement" msgstr "" +#: src/Module/Tos.php:100 +msgid "Rules" +msgstr "" + #: src/Module/Update/Display.php:45 msgid "Parameter uri_id is missing." msgstr "" diff --git a/view/templates/admin/tos.tpl b/view/templates/admin/tos.tpl index d4e1bcb48..2482802a1 100644 --- a/view/templates/admin/tos.tpl +++ b/view/templates/admin/tos.tpl @@ -6,6 +6,7 @@ {{include file="field_checkbox.tpl" field=$displaytos}} {{include file="field_checkbox.tpl" field=$displayprivstatement}} {{include file="field_textarea.tpl" field=$tostext}} + {{include file="field_textarea.tpl" field=$tosrules}}

{{$preview}}

diff --git a/view/templates/tos.tpl b/view/templates/tos.tpl index b0a48406c..62210b278 100644 --- a/view/templates/tos.tpl +++ b/view/templates/tos.tpl @@ -2,6 +2,11 @@ {{$tostext nofilter}} +{{if $rules}} +

{{$rulestitle}}

+ {{$rules nofilter}} +{{/if}} + {{if $displayprivstatement}}

{{$privstatementtitle nofilter}}

{{$privacy_operate nofilter}}