From 9268a3d31255f895dedb5224b0e655f88b8ab45e Mon Sep 17 00:00:00 2001
From: Moritz Strohm <strohm@data-quest.de>
Date: Thu, 23 May 2024 10:14:55 +0000
Subject: [PATCH] made texts more accessible, fixes #4022

Closes #4022

Merge request studip/studip!2874
---
 app/controllers/course/studygroup.php                 |  2 +-
 app/controllers/settings/settings.php                 |  4 ++--
 app/views/accessibility/forms/report_barrier.php      |  2 +-
 app/views/admin/plugin/edit_automaticupdate.php       |  2 +-
 app/views/course/enrolment/_priocourses.php           | 10 +++++-----
 app/views/news/display.php                            |  5 +++--
 app/views/oer/admin/hosts.php                         |  2 +-
 app/views/oer/market/licenseinfo.php                  |  2 +-
 app/views/questionnaire/widget.php                    |  2 +-
 app/views/resources/room_group/permissions.php        |  2 +-
 app/views/settings/notification.php                   |  2 +-
 lib/admissionrules/termsadmission/templates/input.php |  2 +-
 lib/classes/StudygroupModel.php                       |  4 ++--
 templates/check_object_exception.php                  |  2 +-
 templates/login_emailactivation.php                   |  4 ++--
 15 files changed, 24 insertions(+), 23 deletions(-)

diff --git a/app/controllers/course/studygroup.php b/app/controllers/course/studygroup.php
index 500a0b61448..c3757789729 100644
--- a/app/controllers/course/studygroup.php
+++ b/app/controllers/course/studygroup.php
@@ -785,7 +785,7 @@ class Course_StudygroupController extends AuthenticatedController
             // send invite message to user
             $msg     = new messaging();
             $sem     = new Seminar($id);
-            $message = sprintf(_("%s möchte Sie auf die Studiengruppe %s aufmerksam machen. Klicken Sie auf den untenstehenden Link, um direkt zur Studiengruppe zu gelangen.\n\n %s"),
+            $message = sprintf(_("%s möchte Sie auf die Studiengruppe %s aufmerksam machen. Klicken Sie auf den folgenden Link, um direkt zur Studiengruppe zu gelangen.\n\n %s"),
                 get_fullname(), $sem->name, URLHelper::getlink("dispatch.php/course/studygroup/details/" . $id, ['cid' => null]));
             $subject = _("Sie wurden in eine Studiengruppe eingeladen");
             $msg->insert_message($message, get_username($receiver), '', '', '', '', '', $subject);
diff --git a/app/controllers/settings/settings.php b/app/controllers/settings/settings.php
index 0346c242f79..327b62d7507 100644
--- a/app/controllers/settings/settings.php
+++ b/app/controllers/settings/settings.php
@@ -46,11 +46,11 @@ abstract class Settings_SettingsController extends AuthenticatedController
             $exception = new AccessDeniedException(_('Sie dürfen dieses Profil nicht bearbeiten'));
             $exception->setDetails([
                 _("Wahrscheinlich ist Ihre Session abgelaufen. Bitte "
-                 ."nutzen Sie in diesem Fall den untenstehenden Link, "
+                 ."nutzen Sie in diesem Fall den folgenden Link, "
                  ."um zurück zur Anmeldung zu gelangen.\n\n"
                  ."Eine andere Ursache kann der Versuch des Zugriffs "
                  ."auf Userdaten, die Sie nicht bearbeiten dürfen, sein. "
-                 ."Nutzen Sie den untenstehenden Link, um zurück auf "
+                 ."Nutzen Sie den folgenden Link, um zurück auf "
                  ."die Startseite zu gelangen."),
             ]);
             throw $exception;
diff --git a/app/views/accessibility/forms/report_barrier.php b/app/views/accessibility/forms/report_barrier.php
index 5dd8d7d9089..51ca07993d7 100644
--- a/app/views/accessibility/forms/report_barrier.php
+++ b/app/views/accessibility/forms/report_barrier.php
@@ -1,2 +1,2 @@
-<?= MessageBox::info(_('Auf dieser Seite können Sie eine Barriere melden, die die Nutzbarkeit von Stud.IP für Sie einschränkt. Füllen Sie dazu das untenstehende Formular aus.'))->hideClose() ?></p>
+<?= MessageBox::info(_('Auf dieser Seite können Sie eine Barriere melden, die die Nutzbarkeit von Stud.IP für Sie einschränkt. Füllen Sie dazu das folgende Formular aus.'))->hideClose() ?></p>
 <?= $form->render() ?>
diff --git a/app/views/admin/plugin/edit_automaticupdate.php b/app/views/admin/plugin/edit_automaticupdate.php
index 7e87c319a19..2feb1bcaa69 100644
--- a/app/views/admin/plugin/edit_automaticupdate.php
+++ b/app/views/admin/plugin/edit_automaticupdate.php
@@ -46,7 +46,7 @@ if ($_SERVER['HTTPS'] == 'on' && $_SERVER['SERVER_PORT'] != 443 ||
     <fieldset>
         <legend><?= _("Daten für das bereitstellende System") ?></legend>
         <p class="info">
-            <?= _("Tragen Sie bei gitlab, github.com oder dem Pluginmarktplatz untenstehende URL ein, die der Webhook aufrufen soll.") ?>
+            <?= _("Tragen Sie bei gitlab, github.com oder dem Pluginmarktplatz die folgende URL ein, die der Webhook aufrufen soll.") ?>
             <? if ($plugin['automatic_update_secret']) : ?>
             <?= _("Dieser Aufruf muss noch mit dem Sicherheitstoken abgesichert werden.") ?>
             <? endif ?>
diff --git a/app/views/course/enrolment/_priocourses.php b/app/views/course/enrolment/_priocourses.php
index 749a19c5de4..a1e1bce4da6 100644
--- a/app/views/course/enrolment/_priocourses.php
+++ b/app/views/course/enrolment/_priocourses.php
@@ -36,15 +36,15 @@ asort($user_prio);
 <? endif; ?>
 
     <p class="hidden-medium-down">
-        <?= _('Ziehen Sie die in Frage kommenden Veranstaltungen auf die rechte Seite '
+        <?= _('Ziehen Sie die in Frage kommenden Veranstaltungen in den Bereich für ausgewählte Veranstaltungen '
             . 'und ordnen Sie sie dort in der Reihenfolge der von Ihnen gewünschten '
-            . 'Priorität an. Sie können mehr Veranstaltungen nach rechts ziehen als Sie '
+            . 'Priorität an. Sie können mehr Veranstaltungen ziehen als Sie '
             . 'tatsächlich belegen wollen.') ?>
     </p>
     <p class="hidden-medium-up">
-        <?= _('Sortieren Sie die in Frage kommenden Veranstaltungen auf die rechte Seite '
+        <?= _('Sortieren Sie die in Frage kommenden Veranstaltungen im Bereich für ausgewählte Veranstaltungen '
             . 'und ordnen Sie sie dort in der Reihenfolge der von Ihnen gewünschten '
-            . 'Priorität an. Sie können mehr Veranstaltungen nach rechts zuweisen als Sie '
+            . 'Priorität an. Sie können mehr Veranstaltungen zuweisen als Sie '
             . 'tatsächlich belegen wollen.') ?>
     </p>
 
@@ -79,7 +79,7 @@ asort($user_prio);
             <ul id="selected-courses">
                 <li class="empty">
                     <span class="hidden-medium-up">
-                        <?= _('Die gewünschten Veranstaltungen links auswählen') ?>
+                        <?= _('Die gewünschten Veranstaltungen aus der Liste der verfügbaren Veranstaltungen auswählen') ?>
                     </span>
                     <span class="hidden-medium-down">
                         <?= _('Gewünschte Veranstaltungen hierhin ziehen') ?>
diff --git a/app/views/news/display.php b/app/views/news/display.php
index 356ec1f1249..7d9e2d0334e 100644
--- a/app/views/news/display.php
+++ b/app/views/news/display.php
@@ -8,7 +8,8 @@
         </h1>
         <nav>
         <? if ($perm): ?>
-            <a href="<?= $controller->link_for('news/edit_news/new/' . $range); ?>" data-dialog>
+            <a href="<?= $controller->link_for('news/edit_news/new/' . $range); ?>" data-dialog
+               title="<?= _('Hinzufügen') ?>">
                 <?= Icon::create('add') ?>
             </a>
         <? endif; ?>
@@ -49,7 +50,7 @@
     <? endforeach; ?>
     <? if (!$news): ?>
     <section>
-        <?= _('Es sind keine aktuellen Ankündigungen vorhanden. Um neue Ankündigungen zu erstellen, klicken Sie rechts auf das Plus-Zeichen.') ?>
+        <?= _('Es sind aktuell keine Ankündigungen vorhanden. Nutzen Sie die Funktion „Hinzufügen“, um eine neue Ankündigung zu erstellen.') ?>
     </section>
         <? if ($perm && $count_all_news) : ?>
             <footer>
diff --git a/app/views/oer/admin/hosts.php b/app/views/oer/admin/hosts.php
index c60c937e939..0289d9069d0 100644
--- a/app/views/oer/admin/hosts.php
+++ b/app/views/oer/admin/hosts.php
@@ -78,7 +78,7 @@
         <form action="<?= $controller->link_for("oer/admin/add_new_host") ?>" method="post">
             <h2><?= _('Werden Sie Teil des weltweiten Stud.IP Lernmarktplatzes!') ?></h2>
             <div>
-                <?= _('Der Lernmarktplatz ist ein Ort des Austauschs von kostenlosen und freien Lernmaterialien. Daher wäre es schade, wenn er nur auf Ihr einzelnes Stud.IP beschränkt wäre. Der Lernmarktplatz ist daher als dezentrales Netzwerk konzipiert, bei dem alle Nutzer aller Stud.IPs sich gegenseitig Lernmaterialien tauschen können und nach Lernmaterialien anderer Nutzer suchen können. <em>Dezentral</em> heißt dieses Netzwerk, weil es nicht einen einzigen zentralen Server gibt, der wie eine große Suchmaschine alle Informationen bereit hält. Stattdessen sind im besten Fall alle Stud.IPs mit allen anderen Stud.IPs direkt vernetzt. So ein dezentrales Netz ist sehr ausfallsicher und es passt zur Opensource-Idee von Stud.IP, weil man sich von keiner zentralen Institution abhängig macht. Aber Ihr Stud.IP muss irgendwo einen ersten Kontakt zum großen Netzwerk aller Lernmarktplätze finden, um loslegen zu können. Wählen Sie dazu irgendeinen der unten aufgeführten Server aus. Sie werden Index-Server genannt und bilden das Tor zum Rest des ganzen Netzwerks. Achten Sie darauf, dass Sie mit mindestens einem, aber auch nicht zu vielen Indexservern verbunden sind.') ?>
+                <?= _('Der Lernmarktplatz ist ein Ort des Austauschs von kostenlosen und freien Lernmaterialien. Daher wäre es schade, wenn er nur auf Ihr einzelnes Stud.IP beschränkt wäre. Der Lernmarktplatz ist daher als dezentrales Netzwerk konzipiert, bei dem alle Nutzer aller Stud.IPs sich gegenseitig Lernmaterialien tauschen können und nach Lernmaterialien anderer Nutzer suchen können. <em>Dezentral</em> heißt dieses Netzwerk, weil es nicht einen einzigen zentralen Server gibt, der wie eine große Suchmaschine alle Informationen bereit hält. Stattdessen sind im besten Fall alle Stud.IPs mit allen anderen Stud.IPs direkt vernetzt. So ein dezentrales Netz ist sehr ausfallsicher und es passt zur Opensource-Idee von Stud.IP, weil man sich von keiner zentralen Institution abhängig macht. Aber Ihr Stud.IP muss irgendwo einen ersten Kontakt zum großen Netzwerk aller Lernmarktplätze finden, um loslegen zu können. Wählen Sie dazu irgendeinen der folgenden Server aus. Sie werden Index-Server genannt und bilden das Tor zum Rest des ganzen Netzwerks. Achten Sie darauf, dass Sie mit mindestens einem, aber auch nicht zu vielen Indexservern verbunden sind.') ?>
             </div>
 
             <ul class="clean" style="text-align: center;">
diff --git a/app/views/oer/market/licenseinfo.php b/app/views/oer/market/licenseinfo.php
index 4618027f414..eda26585049 100644
--- a/app/views/oer/market/licenseinfo.php
+++ b/app/views/oer/market/licenseinfo.php
@@ -18,7 +18,7 @@
 </p>
 <h2><?= _('Lizenzen auf dem Marktplatz') ?></h2>
 <p>
-    <?= _('Zum Glück gibt es kluge Menschen, die sich zum Thema <em>Lizenzen</em> kluge Gedanken gemacht haben. Daher gibt es die sogenannten CreativeCommons-Lizenzen. Die sind international gültig und besagen genau das, was oben gefordert ist. Damit haben alle, die den Marktplatz nutzen, absolute Rechtssicherheit. Diese Lizenzen kommen auch außerhalb des Marktplatzes sehr oft zum Einsatz. Musikerinnen und Musiker lizensieren ihre Musikrohdateien damit, Schriftsteller und Schriftstellerinnen ihre Gedichte und Lehrende auch ganz natürlich ihre Vorlesungsfolien. Die einzige echte Auflage ist, dass bei Weitergabe oder bei der Bearbeitung der Materialien alle Autorinnen und Autoren in irgendeiner Form transparent genannt werden müssen!') ?>
+    <?= _('Zum Glück gibt es kluge Menschen, die sich zum Thema <em>Lizenzen</em> kluge Gedanken gemacht haben. Daher gibt es die sogenannten CreativeCommons-Lizenzen. Die sind international gültig und besagen genau das, was im vorangegangenen Text gefordert ist. Damit haben alle, die den Marktplatz nutzen, absolute Rechtssicherheit. Diese Lizenzen kommen auch außerhalb des Marktplatzes sehr oft zum Einsatz. Musikerinnen und Musiker lizensieren ihre Musikrohdateien damit, Schriftsteller und Schriftstellerinnen ihre Gedichte und Lehrende auch ganz natürlich ihre Vorlesungsfolien. Die einzige echte Auflage ist, dass bei Weitergabe oder bei der Bearbeitung der Materialien alle Autorinnen und Autoren in irgendeiner Form transparent genannt werden müssen!') ?>
 </p>
 <p>
     <?= _('Dabei eine kleine Warnung: Wenn Sie vorhaben, mit ihren Vorlesungsfolien oder Übungsblättern und Musterlösungen noch Millionen Euro zu verdienen, dann stellen Sie diese Materialien nicht auf den Marktplatz, denn die Nutzung aller Materialien ist unentgeltlich (selbstverständlich verdienen auch wir nichts damit) und die Materialien können, wenn sie einmal heruntergeladen worden sind, auch noch beliebig weiter verteilt werden. Es gibt zwar eine CreativeCommons-Lizenz, die kommerzielle Nutzung ausschließt. Die ist aber explizit für den Marktplatz nicht praktikabel. Denn stellen Sie sich diese Frage: Wenn Lehrende Material vom Marktplatz innerhalb ihrer Veranstaltungen verwenden und zum Beispiel eine Infografik aus einer Präsentation an die Wand projizieren, ist das dann eine kommerzielle Nutzung? Ja, irgendwie schon, denn sie werden natürlich für ihre Lehrtätigkeit bezahlt. Wir legen besonderen Wert auf die Rechtssicherheit aller Nutzer und Nutzerinnen. Deswegen kommen auf unseren Marktplatz keine Materialien, die die kommerzielle Nutzung ausschließen. Nichtsdestotrotz haben Sie weiterhin alle Rechte, ihre Vorlesungsfolien auf anderem Wege über einen Verlag zu veröffentlichen und Tantiemen zu bekommen.') ?>
diff --git a/app/views/questionnaire/widget.php b/app/views/questionnaire/widget.php
index 044f246aa2a..9804b24646b 100644
--- a/app/views/questionnaire/widget.php
+++ b/app/views/questionnaire/widget.php
@@ -31,7 +31,7 @@
         <section class="noquestionnaires">
             <?= _('Es sind keine Fragebögen vorhanden.') ?>
             <? if ($allowed_to_add) : ?>
-                <?= _("Um neue Fragebögen zu erstellen, klicken Sie rechts auf das Plus.") ?>
+                <?= _("Nutzen Sie die Aktion „Fragebogen hinzufügen“ um einen neuen Fragebogen hinzuzufügen.") ?>
             <? endif ?>
         </section>
     <? endif; ?>
diff --git a/app/views/resources/room_group/permissions.php b/app/views/resources/room_group/permissions.php
index 17090ceab1d..1dd970d4f06 100644
--- a/app/views/resources/room_group/permissions.php
+++ b/app/views/resources/room_group/permissions.php
@@ -28,7 +28,7 @@
         <?= $this->render_partial(
             'resources/resource/permissions',
             [
-                'custom_empty_list_message' => _('Es sind keine gemeinsamen Rechte für die oben aufgeführten Räume vorhanden.'),
+                'custom_empty_list_message' => _('Es sind keine gemeinsamen Rechte für die zuvor aufgelisteten Räume vorhanden.'),
                 'custom_save_button_text' => _('Zuweisen'),
                 'custom_form_action_link' => URLHelper::getLink('dispatch.php/resources/room_group/permissions/' . $clipboard->id),
                 'custom_hidden_fields' => [
diff --git a/app/views/settings/notification.php b/app/views/settings/notification.php
index b46ea454195..2fd4f9cfa9d 100644
--- a/app/views/settings/notification.php
+++ b/app/views/settings/notification.php
@@ -24,7 +24,7 @@
             </tr>
             <tr>
                 <td colspan="2">
-                    <?= _('Benachrichtigung für unten aufgeführte Veranstaltungen:') ?>
+                    <?= _('Benachrichtigungen für die folgenden Veranstaltungen:') ?>
                 </td>
                 <? $i = 0; ?>
                 <? foreach ($modules as $index => $data): ?>
diff --git a/lib/admissionrules/termsadmission/templates/input.php b/lib/admissionrules/termsadmission/templates/input.php
index 4c91f7ff105..0151c54b388 100644
--- a/lib/admissionrules/termsadmission/templates/input.php
+++ b/lib/admissionrules/termsadmission/templates/input.php
@@ -6,5 +6,5 @@
 
 <label>
     <input type="checkbox" name="terms_accepted" value="1">
-    <?= _('Hiermit akzeptiere ich die oben angezeigten Teilnahmebedingungen') ?>
+    <?= _('Hiermit akzeptiere ich die Teilnahmebedingungen') ?>
 </label>
diff --git a/lib/classes/StudygroupModel.php b/lib/classes/StudygroupModel.php
index 76899f107a3..051ada7b18d 100644
--- a/lib/classes/StudygroupModel.php
+++ b/lib/classes/StudygroupModel.php
@@ -532,7 +532,7 @@ class StudygroupModel
         if (StudygroupModel::isInvited($user_id, $sem_id)) {
             $subject .= ' ' . _('Einladung akzeptiert');
             $message = sprintf(
-                _("%s hat die Einladung zur Studiengruppe %s akzeptiert. Klicken Sie auf den untenstehenden Link, um direkt zur Studiengruppe zu gelangen.\n\n [Direkt zur Studiengruppe]%s"),
+                _("%s hat die Einladung zur Studiengruppe %s akzeptiert. Klicken Sie auf den folgenden Link, um direkt zur Studiengruppe zu gelangen.\n\n [Direkt zur Studiengruppe]%s"),
                 get_fullname($user_id),
                 $sem->getName(),
                 URLHelper::getlink(
@@ -543,7 +543,7 @@ class StudygroupModel
         } else {
             $subject .= ' ' . _('Neuer Mitgliedsantrag');
             $message = sprintf(
-                _("%s möchte der Studiengruppe %s beitreten. Klicken Sie auf den untenstehenden Link, um direkt zur Studiengruppe zu gelangen.\n\n [Direkt zur Studiengruppe]%s"),
+                _("%s möchte der Studiengruppe %s beitreten. Klicken Sie auf den folgenden Link, um direkt zur Studiengruppe zu gelangen.\n\n [Direkt zur Studiengruppe]%s"),
                 get_fullname($user_id),
                 $sem->getName(),
                 URLHelper::getlink(
diff --git a/templates/check_object_exception.php b/templates/check_object_exception.php
index 64a51882d55..bb54ddf3475 100644
--- a/templates/check_object_exception.php
+++ b/templates/check_object_exception.php
@@ -3,7 +3,7 @@ $current_page = _('Kein Objekt gewählt')
 ?>
     <?= MessageBox::exception(htmlReady($exception->getMessage()), [
             _('Dieser Teil des Systems kann nur genutzt werden, wenn Sie vorher ein Objekt (Veranstaltung oder Einrichtung) gewählt haben.'),
-            sprintf(_('Dieser Fehler tritt auch auf, wenn Ihre Session abgelaufen ist. Bitte nutzen Sie in diesem Fall den untenstehenden Link, um zurück zur Anmeldung zu gelangen.'))]) ?>
+            sprintf(_('Dieser Fehler tritt auch auf, wenn Ihre Session abgelaufen ist. Bitte nutzen Sie in diesem Fall den folgenden Link, um zurück zur Anmeldung zu gelangen.'))]) ?>
 
     <? if ($last_edited = Request::get('content') . Request::get('description') . Request::get('body')) : ?>
         <p>
diff --git a/templates/login_emailactivation.php b/templates/login_emailactivation.php
index 4f75807678e..cf8221ac47d 100644
--- a/templates/login_emailactivation.php
+++ b/templates/login_emailactivation.php
@@ -9,7 +9,7 @@ use Studip\Button, Studip\LinkButton;
  <b><?= _('E-Mail Aktivierung') ?></b>
 </td></tr>
 <tr><td style="background-color: #fff; padding: 1.5em;">
-<?= _('Sie haben Ihre E-Mail-Adresse geändert. Um diese frei zu schalten müssen Sie den Ihnen an Ihre neue Adresse zugeschickten Aktivierungs Schlüssel im unten stehenden Eingabefeld eintragen.'); ?>
+<?= _('Sie haben Ihre E-Mail-Adresse geändert. Um diese frei zu schalten müssen Sie den Ihnen an Ihre neue Adresse zugeschickten Aktivierungs Schlüssel im folgenden Eingabefeld eintragen.'); ?>
 <br><form action="activate_email.php" method="post">
  <?= CSRFProtection::tokenTag() ?>
  <input name="key">
@@ -25,7 +25,7 @@ use Studip\Button, Studip\LinkButton;
  <b><?= _('E-Mail Aktivierung neu senden') ?></b>
 </td></tr>
 <tr><td style="background-color: #fff; padding: 1.5em;">
-<?= _('Sollten Sie keine E-Mail erhalten haben, können Sie sich einen neuen Aktivierungsschlüssel zuschicken lassen. Geben Sie dazu Ihre gewünschte E-Mail-Adresse unten an:'); ?>
+<?= _('Sollten Sie keine E-Mail erhalten haben, können Sie sich einen neuen Aktivierungsschlüssel zuschicken lassen. Geben Sie dazu Ihre gewünschte E-Mail-Adresse im folgenden Formular an:'); ?>
 <form action="activate_email.php" method="post">
 <?= CSRFProtection::tokenTag() ?>
 <input type="hidden" name="uid" value="<?= $uid ?>">
-- 
GitLab