force zuteilung form anpassung
All checks were successful
Deploy Workshop-Wahlen (DEV / PROD) / deploy (push) Successful in 12s

This commit is contained in:
Blitz08
2026-01-31 11:37:11 +01:00
parent 8fca38f6fe
commit e34ce64906

View File

@@ -111,43 +111,45 @@ function kc_force_zuteilung_page() {
foreach ($wahlen as $w) $wahl_phases[intval($w->id)] = intval($w->anzahl_einheiten); foreach ($wahlen as $w) $wahl_phases[intval($w->id)] = intval($w->anzahl_einheiten);
echo '<script>var kcWahlPhases = ' . wp_json_encode($wahl_phases) . ';</script>'; echo '<script>var kcWahlPhases = ' . wp_json_encode($wahl_phases) . ';</script>';
echo '<script> echo <<<'JS'
jQuery(function($){ <script>
$("#kc-force-teilnehmer-dropdown").select2({placeholder:"Teilnehmer auswählen…",allowClear:true}); jQuery(function($){
$("#kc-force-wahl-dropdown").select2({placeholder:"Wahl auswählen…",allowClear:true}); $("#kc-force-teilnehmer-dropdown").select2({placeholder:"Teilnehmer auswählen…",allowClear:true});
$("#kc-force-workshop-dropdown").select2({placeholder:"Workshop auswählen…",allowClear:true}); $("#kc-force-wahl-dropdown").select2({placeholder:"Wahl auswählen…",allowClear:true});
$("#kc-force-workshop-dropdown").select2({placeholder:"Workshop auswählen…",allowClear:true});
function refreshPhaseSelect($wahlSelect, $phaseSelect, current) { function refreshPhaseSelect($wahlSelect, $phaseSelect, current) {
var wid = parseInt($wahlSelect.val(),10); var wid = parseInt($wahlSelect.val(),10);
var max = (wid && kcWahlPhases[wid]) ? parseInt(kcWahlPhases[wid],10) : 1; var max = (wid && kcWahlPhases[wid]) ? parseInt(kcWahlPhases[wid],10) : 1;
$phaseSelect.empty(); $phaseSelect.empty();
for(var i=1;i<=max;i++){ for(var i=1;i<=max;i++){
var opt = $('<option>').val(i).text(i + (i===1? ' (Phase)':' (Phase)')); var opt = $("<option>").val(i).text(i + (i===1? " (Phase)":" (Phase)"));
$phaseSelect.append(opt); $phaseSelect.append(opt);
} }
if (current) { if (current) {
$phaseSelect.val(current); $phaseSelect.val(current);
} }
$phaseSelect.prop('disabled', false); $phaseSelect.prop("disabled", false);
} }
// Bind change for all existing wahl selects on the page // Bind change for all existing wahl selects on the page
$(document).on('change', '#kc-force-wahl-dropdown', function(){ $(document).on("change", "#kc-force-wahl-dropdown", function(){
var $w = $(this); var $w = $(this);
var $phase = $w.closest('form').find('[name="phase"]'); var $phase = $w.closest("form").find("[name='phase']");
refreshPhaseSelect($w, $phase); refreshPhaseSelect($w, $phase);
}); });
// Initialize existing phase selects based on their selected wahl // Initialize existing phase selects based on their selected wahl
$('[name="phase"]').each(function(){ $("[name='phase']").each(function(){
var $phase = $(this); var $phase = $(this);
var $form = $phase.closest('form'); var $form = $phase.closest("form");
var $wahl = $form.find('#kc-force-wahl-dropdown'); var $wahl = $form.find("#kc-force-wahl-dropdown");
var current = $phase.val(); var current = $phase.val();
refreshPhaseSelect($wahl, $phase, current); refreshPhaseSelect($wahl, $phase, current);
}); });
}); });
</script>'; </script>
JS;
echo '</div>'; echo '</div>';
return; return;
} }