diff --git a/app/controllers/calendar/calendar.php b/app/controllers/calendar/calendar.php index e902c9336c2727abaacb0d5800cc3fe77fe695ae..7c9947a56f8292f6a95b3fe20c5878a60a024829 100644 --- a/app/controllers/calendar/calendar.php +++ b/app/controllers/calendar/calendar.php @@ -69,7 +69,7 @@ class Calendar_CalendarController extends AuthenticatedController $actions->addLink( _('Veranstaltung auswählen'), $this->url_for('calendar/calendar/add_courses'), - Icon::create('add'), + Icon::create('seminar'), ['data-dialog' => 'size=medium'] ); } diff --git a/app/views/calendar/calendar/import.php b/app/views/calendar/calendar/import.php index d91025a6078f938f15e1a402509dc7d151a14815..cb0a04545999dbd500364df88a0efc0704f5e13c 100644 --- a/app/views/calendar/calendar/import.php +++ b/app/views/calendar/calendar/import.php @@ -18,9 +18,11 @@ <input type="checkbox" name="import_privat" value="1" checked> <?= _('Öffentliche Termine als "privat" importieren') ?> </label> - <label> + <label style="cursor: pointer;"> + <input required type="file" id="fileupload" name="importfile" accept=".ics,.ifb,.iCal,.iFBf" + style="display: none"> + <?= Icon::create('upload', Icon::ROLE_CLICKABLE, ['title' => _('Datei hochladen'), 'class' => 'text-bottom']) ?> <span class="required"><?= _('Datei zum Importieren wählen') ?></span> - <input required type="file" name="importfile" accept=".ics,.ifb,.iCal,.iFBf"> </label> </fieldset> <footer data-dialog-button> diff --git a/app/views/calendar/date/_add_edit_form.php b/app/views/calendar/date/_add_edit_form.php index 08f379011c04f9e61cc5d5684feef0204840f105..6596a388fda2f875bce2df3789ccf82844fbc8c5 100644 --- a/app/views/calendar/date/_add_edit_form.php +++ b/app/views/calendar/date/_add_edit_form.php @@ -85,6 +85,9 @@ </label> <label> <?= _('Zugriff') ?> + <?= tooltipIcon( + _('Öffentliche Termine sind systemweit sichtbar. Private Termine sind für Personen, denen der Kalender freigegeben wurde, sichtbar. Vertrauliche Termine sind hingegen nur für einen selbst sichtbar.') + ) ?> <div class="flex-row"> <select name="access"> <option value="PUBLIC" <?= $date->access === 'PUBLIC' ? 'selected' : '' ?>> @@ -97,9 +100,6 @@ <?= _('Vertraulich') ?> </option> </select> - <?= tooltipIcon( - _('Öffentliche Termine sind systemweit sichtbar. Private Termine sind für Personen, denen der Kalender freigegeben wurde, sichtbar. Vertrauliche Termine sind hingegen nur für einen selbst sichtbar.') - ) ?> </div> </label> <label> diff --git a/app/views/messages/write.php b/app/views/messages/write.php index 2c38d37ee7bd4f4e05229d6926543da4daad68e1..8bf05f611903bec03794bad08e338c8e61b5794d 100644 --- a/app/views/messages/write.php +++ b/app/views/messages/write.php @@ -145,7 +145,7 @@ <div class="progresstext">0%</div> </div> </div> - <label style="cursor: pointer;"> + <label > <input type="file" id="fileupload" multiple onChange="STUDIP.Messages.upload_from_input(this);" style="display: none;"> <?= Icon::create('upload')->asImg(['title' => _('Datei hochladen'), 'class' => 'text-bottom']) ?> <?= _("Datei hochladen") ?> diff --git a/app/views/settings/calendar.php b/app/views/settings/calendar.php index aecc23463ee4b5e081e412c4d525ed5b0bd8868c..6772829c52e9fd767032462249824570fd4d6bc8 100644 --- a/app/views/settings/calendar.php +++ b/app/views/settings/calendar.php @@ -64,27 +64,29 @@ $cal_step_weeks = [ <?= _('Einzelterminkalender') ?> </legend> - <label> - <?= _('Startuhrzeit') ?> - <select name="cal_start" aria-label="<?= _('Startzeit der Tages- und Wochenansicht') ?>" class="size-s"> - <? for ($i = 0; $i < 24; $i += 1): ?> - <option value="<?= $i ?>" <? if ($start == $i) echo 'selected'; ?>> - <?= sprintf(_('%02u:00 Uhr'), $i) ?> - </option> - <? endfor; ?> - </select> - </label> - - <label> - <?= _('Enduhrzeit') ?> - <select name="cal_end" aria-label="<?= _('Endzeit der Tages- und Wochenansicht') ?>" class="size-s"> - <? for ($i = 1; $i < 25; $i += 1): ?> - <option value="<?= $i ?>" <? if ($end == $i) echo 'selected'; ?>> - <?= sprintf(_('%02u:00 Uhr'), $i) ?> - </option> - <? endfor; ?> - </select> - </label> + <div class="hgroup"> + <label> + <?= _('Startuhrzeit') ?> + <select name="cal_start" aria-label="<?= _('Startzeit der Tages- und Wochenansicht') ?>" class="size-s"> + <? for ($i = 0; $i < 24; $i += 1): ?> + <option value="<?= $i ?>" <? if ($start == $i) echo 'selected'; ?>> + <?= sprintf(_('%02u:00 Uhr'), $i) ?> + </option> + <? endfor; ?> + </select> + </label> + + <label> + <?= _('Enduhrzeit') ?> + <select name="cal_end" aria-label="<?= _('Endzeit der Tages- und Wochenansicht') ?>" class="size-s"> + <? for ($i = 1; $i < 25; $i += 1): ?> + <option value="<?= $i ?>" <? if ($end == $i) echo 'selected'; ?>> + <?= sprintf(_('%02u:00 Uhr'), $i) ?> + </option> + <? endfor; ?> + </select> + </label> + </div> <label> <?= _('Zeitintervall der Tagesansicht') ?> @@ -151,5 +153,6 @@ $cal_step_weeks = [ <? endif ?> <input type="hidden" name="view" value="calendar"> <?= Button::createAccept(_('Übernehmen'), ['title' => _('Änderungen übernehmen')]) ?> + <?= Button::createCancel(_('Abbrechen')) ?> </footer> </form> diff --git a/lib/navigation/CalendarNavigation.php b/lib/navigation/CalendarNavigation.php index 8df16b3c4b260b05a37b5a33effa55402f90e80a..f307348aa7aaeffa45a9aca1d40068af9a630d95 100644 --- a/lib/navigation/CalendarNavigation.php +++ b/lib/navigation/CalendarNavigation.php @@ -20,10 +20,9 @@ class CalendarNavigation extends Navigation */ public function __construct() { - $title = _('Kalender'); + $title = _('Planer'); $main_url = URLHelper::getURL('dispatch.php/calendar/calendar', ['defaultDate' => date('Y-m-d')]); if (!$GLOBALS['perm']->have_perm('admin') && Config::get()->SCHEDULE_ENABLE) { - $title = _('Stundenplan'); $main_url = URLHelper::getURL('dispatch.php/calendar/schedule/index'); } parent::__construct($title, $main_url); diff --git a/resources/assets/javascripts/lib/fullcalendar.js b/resources/assets/javascripts/lib/fullcalendar.js index 615cb2d919ebac40a5a908a85fc30ff558e1ec53..17078929e8c8816e53fba6b1270607115eaf1ad7 100644 --- a/resources/assets/javascripts/lib/fullcalendar.js +++ b/resources/assets/javascripts/lib/fullcalendar.js @@ -425,6 +425,11 @@ class Fullcalendar locales: [enLocale, deLocale ], locale: String.locale === 'de-DE' ? 'de' : 'en-gb', timeFormat: 'H:mm', + slotLabelFormat: { + hour: 'numeric', + minute: '2-digit', + omitZeroMinute: false + }, nowIndicator: true, timeZone: 'local', studip_functions: [], diff --git a/resources/vue/components/form_inputs/RepetitionInput.vue b/resources/vue/components/form_inputs/RepetitionInput.vue index 55654fd23fa142723b106889076d2a58048e61ce..2a265b1d52c3af40441beb7a81412027d9f7a432 100644 --- a/resources/vue/components/form_inputs/RepetitionInput.vue +++ b/resources/vue/components/form_inputs/RepetitionInput.vue @@ -164,14 +164,14 @@ </section> <section v-if="repetition_type_value === 'MONTHLY' && repetition_month_type_value === 'dom'"> <label> - {{ $gettext('Wiederholung am einem bestimmten Tag des Monats:') }} + {{ $gettext('Wiederholung am einem bestimmten Tag des Monats') }} <input type="number" min="1" :name="name + '_dom'" v-model="repetition_dom_value"> </label> </section> <section v-if="['MONTHLY', 'YEARLY'].includes(repetition_type_value) && repetition_month_type_value === 'dow'"> <label> - {{ $gettext('Wiederholung an einem bestimmten Wochentag:') }} + {{ $gettext('Wiederholung an einem bestimmten Wochentag') }} <day-of-week-select :name="name + '_dow'" v-model="repetition_dow_value[0]" :with_indeterminate="true"></day-of-week-select> </label>