Merge branch 'spidev' into 'master'

Kalenderupdate

See merge request fronk/thetool!1805
This commit is contained in:
Daniel Spitzer
2025-10-05 19:31:45 +00:00

View File

@@ -39,8 +39,33 @@
action="<?= self::getUrl("Calendar", "save") ?>">
<div class="card no-shadow">
<div class="card-body">
<input type="hidden" name="id" value="<?= $calendars->id ?>"/>
<div class="form-group row">
<input type="hidden" name="id" value="<?= $calendars->id ?>"/> <?php if (!$calendars->id): ?>
<div class="form-group row">
<label class="col-lg-2 col-form-label">Benutzer-Typ</label>
<div class="col-lg-3">
<select class="form-control" id="user_type" name="user_type">
<option value="system">TheTool-Benutzer</option>
<option value="extern">Externer Benutzer</option>
</select>
</div>
</div>
<?php endif; ?>
<div class="form-group row" id="user_select_row" style="display: none;">
<label class="col-lg-2 col-form-label" for="user_id">TheTool Benutzer *</label>
<div class="col-lg-3">
<select class="form-control select2" id="user_id" name="user_id">
<option value="">-- Benutzer auswählen --</option>
<?php foreach ($users as $user): ?>
<option value="<?= $user->id ?>" data-email="<?= htmlspecialchars($user->email) ?>">
<?= $user->name ?>
</option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="form-group row" id="name_input_row">
<label class="col-lg-2 col-form-label" for="user_id">Name *</label>
<div class="col-lg-3">
<?php if ($calendars->user_id): ?>
@@ -48,23 +73,20 @@
<?php else: ?>
<input type="text" id="calendar_firstname" name="calendar_firstname"
value="<?= $calendars->calendar_firstname ?>"
placeholder="Vorname" class="form-control mb-2" required/>
placeholder="Vorname" class="form-control mb-2"/>
<input type="text" id="calendar_lastname" name="calendar_lastname"
value="<?= $calendars->calendar_lastname ?>"
placeholder="Nachname" class="form-control" required/>
placeholder="Nachname" class="form-control"/>
<?php endif; ?>
</div>
</div>
<?php if (!$calendars->id || !$calendars->user_id): ?>
<div class="form-group row">
<label class="col-lg-2 col-form-label" for="calendar_email">E-Mail (optional)</label>
<label class="col-lg-2 col-form-label" for="calendar_email">E-Mail *</label>
<div class="col-lg-3">
<input type="email" id="calendar_email" name="calendar_email"
value="<?= $calendars->calendar_email ?>" class="form-control"
placeholder="wird automatisch aus Name generiert"/>
<small class="form-text text-muted">
Automatisch: vorname.nachname@xinon.extern
</small>
</div>
</div>
<?php endif; ?>
@@ -226,6 +248,42 @@
<script type="text/javascript">
$(".select2").select2({placeholder: ""});
localStorage.setItem('calendarActiveTab', '#user-tab');
$('#user_type').on('change', function() {
var type = $(this).val();
if (type === 'system') {
$('#user_select_row').show();
$('#name_input_row').hide();
$('#email_input_row').hide();
$('#calendar_firstname, #calendar_lastname').removeAttr('required');
$('#user_id').attr('required', 'required');
} else {
$('#user_select_row').hide();
$('#name_input_row').show();
$('#email_input_row').show();
$('#calendar_firstname, #calendar_lastname').attr('required', 'required');
$('#user_id').removeAttr('required');
}
});
$('#user_id').on('change', function() {
var selectedUserId = $(this).val();
if (selectedUserId) {
var selectedOption = $(this).find('option:selected');
var email = selectedOption.data('email');
if (email) {
$('#calendar_email').val(email); // Kein readonly
$('#email_input_row').show();
}
} else {
$('#calendar_email').val('');
$('#email_input_row').hide();
}
});
$('#user_type').trigger('change');
$('form').on('focus', 'input[type=number]', function (e) {
$(this).on('wheel.disableScroll', function (e) {
e.preventDefault()