Initial commit
This commit is contained in:
@@ -0,0 +1,853 @@
|
||||
var Faecherplaner = {
|
||||
_settings: {
|
||||
"profilfachLeistungenMax1Jahr": 2,
|
||||
"profilfachLeistungenMax2Jahre": 3,
|
||||
"profilfachFortgFremdsprachenWochenstunden": 4, // fortgesetzte Fremdsprachen sind vierstündig (Ausnahme)
|
||||
"profilfachAbiFaecher": {
|
||||
inf: {schriftlich: true},
|
||||
win: {schriftlich: false}, // fehlt
|
||||
swa: {schriftlich: false}, // fehlt
|
||||
e: {schriftlich: false},
|
||||
f: {schriftlich: false},
|
||||
ru: {schriftlich: false},
|
||||
sp: {schriftlich: false}
|
||||
},
|
||||
'jahreswochenstundenNorm': 66,
|
||||
'halbjahresleistungenNorm': 40,
|
||||
'isHinweisOptionsregelEnabled': true,
|
||||
'mPruefungMax': 2, // Maximal muendliche Pruefungen
|
||||
'sPruefungMax': 3, // Maximal schriftliche Pruefungen
|
||||
'swPruefungMax': 1, // Maximal SW-Abi-Faecher
|
||||
'nwEinbringungenMin': 4, // minimale Einbringungen fuer NW-Faecher
|
||||
'gkzEinbringungenMax': 2 // Maximal gekuerzte Anbindungen
|
||||
},
|
||||
_faecher: {},
|
||||
predefinedFremdsprachen: {fs1:null, fs2:null, fs3:null, fs_spt:null, fs_ne_spt:null},
|
||||
init: function(faecher, fremdsprachen) {
|
||||
this._faecher = faecher;
|
||||
this.predefinedFremdsprachen = fremdsprachen;
|
||||
FaecherplanerEvents.recalculateHalbjahre();
|
||||
FaecherplanerEvents.recalculateJahreswochenstunden();
|
||||
FaecherplanerEvents.updatePruefung();
|
||||
},
|
||||
halbjahre_preselected_value: '',
|
||||
getByKuerzel: function(kuerzel){
|
||||
return this._faecher[kuerzel];
|
||||
}
|
||||
};
|
||||
|
||||
var FaecherplanerEvents = {
|
||||
init: function() {
|
||||
// initial data
|
||||
$.data($('#fs1').find('select.pruefung').get(0), 'lastValue', $('#fs1').find('select.pruefung option:selected').val());
|
||||
this.adjustGeoWrByGSk();
|
||||
// register events
|
||||
if (Faecherplaner.predefinedFremdsprachen.fs_ne_spt == false) {
|
||||
FaecherplanerEvents.nw2Loaded($('#nw2').find('select').get(0));
|
||||
}
|
||||
$('select.faecher').change(function(){
|
||||
FaecherplanerEvents.fachSelectChanged(this);
|
||||
});
|
||||
$('.wochenstunden_11_1_2, .wochenstunden_12_1_2, .wochenstunden_11, .wochenstunden_12').change(function(){
|
||||
FaecherplanerEvents.wochenstundenChanged(this);
|
||||
});
|
||||
$('.halbjahre').focus(function(){
|
||||
Faecherplaner.halbjahre_preselected_value = $(this).val();
|
||||
}).change(function(){
|
||||
FaecherplanerEvents.halbjahreSelectChanged(this);
|
||||
});
|
||||
$('select.pruefung').change(function(){
|
||||
FaecherplanerEvents.pruefungSelectChanged(this);
|
||||
});
|
||||
$('.pruefung_spo').add('.pruefung_mu_ku').add('.faecher_mu_ku').change(function(){
|
||||
FaecherplanerEvents.aeFaecherAbiturChanged(this);
|
||||
});
|
||||
$('#add_profilfach').click(function(){
|
||||
FaecherplanerEvents.profilfachRowAdded();
|
||||
});
|
||||
$('tr .entfernen').click(function(){
|
||||
FaecherplanerEvents.profilfachRowRemoved($(this).parents('tr'));
|
||||
});
|
||||
$('#seminar_w').add('#seminar_p').change(function(){
|
||||
FaecherplanerEvents.seminarSelectChanged(this);
|
||||
});
|
||||
$('#seminar_w').add('#seminar_p').trigger('change');
|
||||
|
||||
$('.ergebnis-jws').click(function(){
|
||||
FaecherplanerAlerts.showJwsAlert()
|
||||
});
|
||||
$('.ergebnis-hj').click(function(){
|
||||
FaecherplanerAlerts.showHjAlert()
|
||||
});
|
||||
$('.ergebnis-pruefung').click(function(){
|
||||
FaecherplanerAlerts.showPruefungAlert()
|
||||
});
|
||||
},
|
||||
profilfachChanged: function(selectBox) {
|
||||
var $parent = $(selectBox).parents('tr');
|
||||
//var $jwsObj = $($parent).find('.jahreswochenstunden');
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
if (fach != null) {
|
||||
if ($parent != null) {
|
||||
// Anpassung der Anzahl der Wochenstunden fuer beide Layouts
|
||||
$parent.removeClass().addClass(fach.farbe);
|
||||
var wochenstunden = ([Faecherplaner.predefinedFremdsprachen.fs1, Faecherplaner.predefinedFremdsprachen.fs2, Faecherplaner.predefinedFremdsprachen.fs3].indexOf(kuerzel) != -1) ?
|
||||
Faecherplaner._settings.profilfachFortgFremdsprachenWochenstunden :
|
||||
fach.profilfachWochenstunden;
|
||||
var options = {'0':{value:''}};
|
||||
options[wochenstunden] = {'value':wochenstunden+' '+wochenstunden};
|
||||
var options1Html = FaecherplanerUtils.generateOptions(options);
|
||||
options[wochenstunden] = {'value':wochenstunden};
|
||||
var options2Html = FaecherplanerUtils.generateOptions(options);
|
||||
$($parent).find('.wochenstunden_11_1_2, .wochenstunden_12_1_2').each(function(){
|
||||
$(this).removeClass('readonly').html(options1Html);
|
||||
});
|
||||
$($parent).find('.wochenstunden_11, .wochenstunden_12').each(function(){
|
||||
$(this).removeClass('readonly').html(options2Html);
|
||||
});
|
||||
$($parent).find('.jahreswochenstunden').val('0'); this.jahreswochenstundenChanged();
|
||||
|
||||
// Anpassung Einbringungen. Am Anfang sind alle Optionen inaktiv
|
||||
var leistungenObj = {};
|
||||
for (var i=0; i<=Faecherplaner._settings.profilfachLeistungenMax2Jahre; i++) {
|
||||
leistungenObj[i] = {'value':i, disabled:true};
|
||||
}
|
||||
var leistungen = FaecherplanerUtils.generateOptions(leistungenObj);
|
||||
$($parent).find('.halbjahre').removeClass('readonly').html(leistungen);
|
||||
// pruefung: Die Pruefungs-Selectbox wird nur aktiv wenn Jahre 11 und 12 bei bestimmten Faechern ausgewaehlt wurden
|
||||
$($parent).find('select.pruefung').addClass('readonly').val(0);
|
||||
}
|
||||
} else {
|
||||
$($parent).removeClass().addClass('grau').find('.wochenstunden_11_1_2, .wochenstunden_12_1_2, .wochenstunden_11, .wochenstunden_12').each(function(){
|
||||
$(this).addClass('readonly').html('');
|
||||
});
|
||||
$($parent).find('select.jahreswochenstunden').val(''); this.jahreswochenstundenChanged();
|
||||
$($parent).find('select.halbjahre').addClass('readonly').html('');
|
||||
$($parent).find('select.pruefung').addClass('readonly').val(0);
|
||||
}
|
||||
},
|
||||
|
||||
standardFachChanged: function(selectBox) {
|
||||
var $parent = $(selectBox).parents('tr');
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
var wochenstunden = fach.wochenstunden;
|
||||
if (kuerzel == Faecherplaner.predefinedFremdsprachen.fs_spt) {
|
||||
wochenstunden = fach.wochenstunden - 1;
|
||||
}
|
||||
if (fach != null) {
|
||||
$($parent).find('.wochenstunden_11_1_2, .wochenstunden_12_1_2').each(function(){
|
||||
var options = {};
|
||||
if (!$(this).hasClass('readonly')) {
|
||||
options[0] = {'value':' '};
|
||||
}
|
||||
options[wochenstunden] = {'value':wochenstunden+' '+wochenstunden};
|
||||
$(this).html(FaecherplanerUtils.generateOptions(options));
|
||||
});
|
||||
$($parent).find('.wochenstunden_11, .wochenstunden_12').each(function(){
|
||||
var options = {};
|
||||
if (!$(this).hasClass('readonly')) {
|
||||
options[0] = {'value':' '};
|
||||
}
|
||||
options[wochenstunden] = {'value':wochenstunden};
|
||||
$(this).html(FaecherplanerUtils.generateOptions(options));
|
||||
});
|
||||
$($parent).find('.jahreswochenstunden').val(wochenstunden*2);
|
||||
this.jahreswochenstundenChanged();
|
||||
}
|
||||
},
|
||||
|
||||
nw2Loaded: function(selectBox) {
|
||||
console.log('nw2 Loaded');
|
||||
//var $parent = $(selectBox).parents('tr');
|
||||
var fs1Kuerzel = $('#fs1').find('select.faecher option:selected').eq(0).val();
|
||||
var nw1Kuerzel = $('#nw1').find('select.faecher option:selected').eq(0).val();
|
||||
if ($('option:selected', selectBox).val() == fs1Kuerzel || $('option:selected', selectBox).val() == nw1Kuerzel) {
|
||||
$('option', selectBox).each(function(){
|
||||
if ($(this).val() != fs1Kuerzel && $(this).val() != nw1Kuerzel) {
|
||||
$(this).prop('selected', true);
|
||||
//$(selectBox).trigger('change');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
FaecherplanerEvents.fachSelectChanged(selectBox);
|
||||
$.data(selectBox, 'lastValue', $('option:selected', selectBox).val());
|
||||
if ($('#nw2 .wochenstunden_12_1_2').eq(0).val() == 0) { // wenn das Jahr 12 nicht ausgewählt - keine Pruefung möglich
|
||||
$('#nw2 select.pruefung').eq(0).addClass('readonly');
|
||||
}
|
||||
},
|
||||
|
||||
nw2Changed: function(selectBox) {
|
||||
//console.log('nw2 Changed');
|
||||
//alert('Hallo 0');
|
||||
var $parent = $(selectBox).parents('tr');
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
if (fach != null) {
|
||||
$parent.removeClass().addClass(fach.farbe);
|
||||
$($parent).find('.wochenstunden_11_1_2, .wochenstunden_12_1_2').each(function(){
|
||||
var options = {};
|
||||
options[fach.wochenstunden] = {'value':fach.wochenstunden+' '+fach.wochenstunden};
|
||||
$(this).html(FaecherplanerUtils.generateOptions(options));
|
||||
});
|
||||
//alert('Hallo 1 ' + fach.wochenstunden);
|
||||
$($parent).find('.wochenstunden_11, .wochenstunden_12').each(function(){
|
||||
var options = {};
|
||||
options[fach.wochenstunden] = {'value':fach.wochenstunden};
|
||||
$(this).html(FaecherplanerUtils.generateOptions(options));
|
||||
});
|
||||
//alert('Hallo 2 ' + fach.wochenstunden);
|
||||
$($parent).find('.wochenstunden_12_1_2').add('.wochenstunden_12').prepend(FaecherplanerUtils.generateOptions({'0':{'value':''}}));
|
||||
//$($parent).find('.jahreswochenstunden').val(fach.wochenstunden);
|
||||
|
||||
FaecherplanerEvents.updateNw1();
|
||||
|
||||
// Sofern eine spät beginnende FS als 2. FS gewählt wird, kann diese im Abitur nur mündlich gewählt werden, bei einer anderen Wahl (fortgeführte FS oder NW2) kann Abi auch schriftlich gewählt werden.
|
||||
var html = '';
|
||||
if (kuerzel == Faecherplaner.predefinedFremdsprachen.fs_spt) {
|
||||
html = FaecherplanerUtils.generateOptions({'':{'value':' '}, 'k':{'value':'K'}});
|
||||
} else {
|
||||
html = FaecherplanerUtils.generateOptions({'':{'value':' '}, 'k':{'value':'K'}, 's':{'value':'S'}});
|
||||
}
|
||||
$('select.pruefung', $parent).html(html);
|
||||
this.recalculateHalbjahre();
|
||||
this.jahreswochenstundenChanged();
|
||||
}
|
||||
},
|
||||
|
||||
fachSelectChanged: function(selectBox) {
|
||||
var label = $('option:selected', selectBox).text();
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var isReverted = false;
|
||||
if (kuerzel != null && kuerzel.length > 0) {
|
||||
$('select.faecher').each(function () {
|
||||
if ($('option:selected', this).val() == kuerzel && selectBox != this) {
|
||||
alert("Sie haben das Fach " + label + " bereits an anderer Stelle gewählt!\n" +
|
||||
"Eine Auswahl in zwei verschiedenen Zeilen ist nicht erlaubt.\n" +
|
||||
"Ggf. müssen Sie zuerst das Fach an der anderen Stelle abwählen.");
|
||||
$(selectBox).val($.data(selectBox, 'lastValue'));
|
||||
isReverted = true;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
if (!isReverted) {
|
||||
$.data(selectBox, 'lastValue', kuerzel);
|
||||
|
||||
// Prüfen, ob Physik, Astrophysik oder Biophysik gewählt wurde und Hinweis ausgeben
|
||||
if (kuerzel == 'ph') {
|
||||
alert("Hinweis:\n\nDie Belegung des Faches Physik kann ggf. auch\nin Form der Lehrplanalternativen Biophysik (Jgst. 11)\nbzw. Astrophysik (Jgst. 12) erfolgen.\n\nDer Fächerplaner bezeichnet diese Varianten\nebenfalls mit \"Physik\".");
|
||||
} else if (kuerzel == 'aph') {
|
||||
alert("Hinweis:\n\nDie Wahl von Astrophysik ist nicht möglich,\nwenn Sie auch das Fach Physik belegen und dieses\nan Ihrer Schule nach der Lehrplanalternative \n\"Astrophysik\" unterrichtet wird.\n\nDieser Fächerplaner kann das nicht überprüfen.");
|
||||
} else if (kuerzel == 'bph') {
|
||||
alert("Hinweis:\n\nDie Wahl von Biophysik ist nicht möglich,\nwenn Sie auch das Fach Physik belegen und dieses\nan Ihrer Schule nach der Lehrplanalternative \n\"Biophysik\" unterrichtet wird.\n\nDieser Fächerplaner kann das nicht überprüfen.");
|
||||
}
|
||||
}
|
||||
if ($(selectBox).hasClass('profilfach')) {
|
||||
FaecherplanerEvents.profilfachChanged(selectBox);
|
||||
} else if ($(selectBox).parents('tr').attr('id') == 'nw2') {
|
||||
FaecherplanerEvents.nw2Changed(selectBox);
|
||||
} else {
|
||||
FaecherplanerEvents.standardFachChanged(selectBox);
|
||||
}
|
||||
},
|
||||
|
||||
seminarSelectChanged: function(selectBox) {
|
||||
var $parent = $(selectBox).parents('tr');
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
if (fach != null) {
|
||||
$parent.removeClass().addClass(fach.farbe);
|
||||
}
|
||||
},
|
||||
|
||||
wochenstundenChanged: function(selectBox) {
|
||||
//console.log('Wochenstunden changed');
|
||||
var $parent = $(selectBox).parents('tr');
|
||||
var $faecherSelect = $parent.find('select.faecher').eq(0);
|
||||
var kuerzel = $('option:selected', $faecherSelect).val();
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
var jws = 0;
|
||||
|
||||
if (fach.nurEinJahr) {
|
||||
if (
|
||||
(parseInt($('.wochenstunden_11 option:selected', $parent).val()) > 0 && parseInt($('.wochenstunden_12 option:selected', $parent).val()) > 0) ||
|
||||
(parseInt($('.wochenstunden_11_1_2 option:selected', $parent).val()) > 0 && parseInt($('.wochenstunden_12_1_2 option:selected', $parent).val()) > 0)
|
||||
) {
|
||||
FaecherplanerAlerts.showNurEinJahrFachAlert(fach.name);
|
||||
$(selectBox).val($.data(selectBox, 'lastValue'));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive layout fields anpassen
|
||||
if ($(selectBox).hasClass('wochenstunden_11')) {
|
||||
$('.wochenstunden_11_1_2', $parent).val($(selectBox).val());
|
||||
} else if ($(selectBox).hasClass('wochenstunden_12')) {
|
||||
$('.wochenstunden_12_1_2', $parent).val($(selectBox).val());
|
||||
} else if ($(selectBox).hasClass('wochenstunden_11_1_2')) {
|
||||
$('.wochenstunden_11', $parent).val($(selectBox).val());
|
||||
} else if ($(selectBox).hasClass('wochenstunden_12_1_2')) {
|
||||
$('.wochenstunden_12', $parent).val($(selectBox).val());
|
||||
}
|
||||
$($parent).find('.wochenstunden_11_1_2, .wochenstunden_12_1_2').each(function(){
|
||||
if (!isNaN(parseInt($(this).val()))) {
|
||||
jws += parseInt($(this).val());
|
||||
}
|
||||
});
|
||||
// wenn das Jahr 12 von nw2 geaendert wurde -> Pruefungen anpassen
|
||||
// wir gehen davon aus, dass bei nw2 nur das Jahr 12 geaendert werden kann
|
||||
if ($parent.is('#nw2') && ($(selectBox).hasClass('wochenstunden_12') || $(selectBox).hasClass('wochenstunden_12_1_2'))) {
|
||||
//console.log($(selectBox).val());
|
||||
if (!isNaN(parseInt($(selectBox).val())) && parseInt($(selectBox).val()) > 0) {
|
||||
$('select.pruefung', $parent).removeClass('readonly');
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'1':{'value':'1'}, '2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
} else {
|
||||
//console.log($('.halbjahre', $parent));
|
||||
$('select.pruefung', $parent).val(0);
|
||||
$('select.pruefung', $parent).addClass('readonly');
|
||||
this.pruefungSelectChanged($('select.pruefung', $parent));
|
||||
}
|
||||
}
|
||||
|
||||
// PROFILFACH
|
||||
if ($faecherSelect.hasClass('profilfach')) {
|
||||
var leistungenObj = {};
|
||||
if ((parseInt($('.wochenstunden_11 option:selected', $parent).val()) > 0 && parseInt($('.wochenstunden_12 option:selected', $parent).val()) > 0)) {
|
||||
// Schaltet bei bestimmten Fächern im Profilbereich - falls in 11 UND 12 belegt -- die Abiwahlmöglichkeit ein oder aus
|
||||
if (kuerzel in Faecherplaner._settings.profilfachAbiFaecher) {
|
||||
//if (kuerzel == 'inf' || kuerzel == 'win' || kuerzel == 'swa' || kuerzel == 'e' || kuerzel == 'f' || kuerzel == 'ru' || kuerzel == 'sp') {
|
||||
var html = '';
|
||||
if (Faecherplaner._settings.profilfachAbiFaecher[kuerzel].schriftlich) { // Z.B. im Fach Informatik kann auch schriftliche Abi gemacht werden
|
||||
//if (kuerzel == 'inf') { // Im Fach Informatik kann auch schriftliche Abi gemacht werden
|
||||
html = FaecherplanerUtils.generateOptions({'':{'value':' '}, 'k':{'value':'K'}, 's':{'value':'S'}});
|
||||
} else {
|
||||
html = FaecherplanerUtils.generateOptions({'':{'value':' '}, 'k':{'value':'K'}});
|
||||
}
|
||||
$($parent).find('select.pruefung').html(html).removeClass('readonly');
|
||||
}
|
||||
|
||||
// Passt im Profilbereich die Auswahlmöglichkeiten der Einbringungen an
|
||||
for (var i=0; i<=Faecherplaner._settings.profilfachLeistungenMax2Jahre; i++) {
|
||||
leistungenObj[i] = {'value':i};
|
||||
}
|
||||
} else {
|
||||
// Passt im Profilbereich die Auswahlmöglichkeiten der Einbringungen an
|
||||
for (var i=0; i<=Faecherplaner._settings.profilfachLeistungenMax2Jahre; i++) {
|
||||
if (i <= Faecherplaner._settings.profilfachLeistungenMax1Jahr) {
|
||||
leistungenObj[i] = {'value':i};
|
||||
} else {
|
||||
leistungenObj[i] = {'value':i, disabled:true};
|
||||
}
|
||||
}
|
||||
$($parent).find('select.pruefung').addClass('readonly');
|
||||
}
|
||||
var leistungen = FaecherplanerUtils.generateOptions(leistungenObj);
|
||||
$($parent).find('.halbjahre').removeClass('readonly').html(leistungen);
|
||||
FaecherplanerEvents.updateNw1();
|
||||
}
|
||||
|
||||
var $jwsObj = $($parent).find('.jahreswochenstunden');
|
||||
$jwsObj.val(jws); this.jahreswochenstundenChanged();
|
||||
$.data(selectBox, 'lastValue', $('option:selected', selectBox).val());
|
||||
},
|
||||
|
||||
halbjahreSelectChanged: function(selectBox) {
|
||||
// Prüfen, ob die gewählte Einbringung zulässig ist (Optionsregel etc.)
|
||||
var nwEinbringungen = 0;
|
||||
var gkzEinbringungen = 0;
|
||||
$('.faecher').each(function(){
|
||||
var $parent = $(this).parents('tr');
|
||||
var kuerzel = $('option:selected', this).val();
|
||||
// NW-Einbringungen pruefen
|
||||
if (['c', 'ph', 'b'].indexOf(kuerzel) != -1) {
|
||||
var nwHalbjahre = $(this).parents('tr').find('.halbjahre').eq(0).val();
|
||||
if (!isNaN(parseInt(nwHalbjahre))) {
|
||||
nwEinbringungen += parseInt(nwHalbjahre);
|
||||
}
|
||||
}
|
||||
// Gekuerzte Faecher pruefen
|
||||
var fachName = $($parent).attr('id');
|
||||
if (['reli_eth', 'g_sk', 'g', 'sk', 'nw1', 'geo_wr', 'mu_ku'].indexOf(fachName) != -1) {
|
||||
var gkzHalbjahre = $(this).parents('tr').find('.halbjahre').eq(0).val();
|
||||
if ('geo_wr' == fachName) { // In WSG kann bei Geo/WR das Jahr 12 optional sein. Als gekuerzt wird das Fach nur gezaehlt, wenn beide Jahre ausgewaehlt
|
||||
var wStunden12 = $(this).parents('tr').find('.wochenstunden_12').eq(0).val();
|
||||
if (!isNaN(parseInt(wStunden12)) && parseInt(wStunden12) > 0 && gkzHalbjahre <= 2) {
|
||||
gkzEinbringungen++;
|
||||
}
|
||||
} else {
|
||||
if (gkzHalbjahre == 2) {
|
||||
gkzEinbringungen++;
|
||||
}
|
||||
}
|
||||
|
||||
//check abifach
|
||||
//console.log($('.halbjahre option[value="2"]').filter(':selected').length);
|
||||
/*if( >){
|
||||
|
||||
}*/
|
||||
}
|
||||
});
|
||||
if (nwEinbringungen < Faecherplaner._settings.nwEinbringungenMin) {
|
||||
FaecherplanerAlerts.showNwMinEinbringungenAlert(nwEinbringungen);
|
||||
}
|
||||
if (gkzEinbringungen > Faecherplaner._settings.gkzEinbringungenMax) {
|
||||
//dont allow selection of the field, move back to value before change
|
||||
//$(selectBox).find('option[value="' + Faecherplaner.halbjahre_preselected_value + '"]').prop('selected', true);
|
||||
//show alert
|
||||
FaecherplanerAlerts.showGkzMaxEinbringungenAlert(gkzEinbringungen);
|
||||
}
|
||||
this.recalculateHalbjahre();
|
||||
},
|
||||
|
||||
pruefungSelectChanged: function(selectBox) {
|
||||
var isError = this.updatePruefung();
|
||||
if (isError) {
|
||||
$(selectBox).val($.data(selectBox, 'lastValue'));
|
||||
} else {
|
||||
$.data(selectBox, 'lastValue', $('option:selected', selectBox).val());
|
||||
}
|
||||
|
||||
// Anzahl der Einbringungen anpassen
|
||||
$('#oberstufenplaner').find('.faecher').each(function(){
|
||||
var $parent = $(this).parents('tr');
|
||||
var fachName = $parent.attr('id');
|
||||
var abi = $('[name*="pruefung"] option:selected', $parent).val();
|
||||
|
||||
switch (fachName) {
|
||||
case 'reli_eth':
|
||||
case 'g_sk':
|
||||
case 'g':
|
||||
case 'sk':
|
||||
case 'mu_ku':
|
||||
case 'fs_ne_spt':
|
||||
if (abi != '') {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'4':{'value':'4'}}));
|
||||
} else if (FaecherplanerEvents.isFsNeSptEinbrSonderregel()) {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
} else {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'2':{'value':'2'},'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
}
|
||||
break;
|
||||
case 'spo':
|
||||
case ($(this).hasClass('profilfach')):
|
||||
if (abi != '') {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'4':{'value':'4'}}));
|
||||
} else {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'0':{'value':'0'}, '1':{'value':'1'}, '2':{'value':'2'}, '3':{'value':'3'}}));
|
||||
}
|
||||
break;
|
||||
case 'nw2':
|
||||
case 'geo_wr': // In WSG kann bei Geo/WR das Jahr 12 optional sein
|
||||
if (abi != '') {
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'4':{'value':'4'}}));
|
||||
} else {
|
||||
var $ws12select = $('.wochenstunden_12', $parent);
|
||||
if ($ws12select.val() == 0) { // Wenn das Jahr 12 ausgewaehlt - mehr Halbjahre
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'1':{'value':'1'}, '2':{'value':'2'}}));
|
||||
} else {
|
||||
//$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'1':{'value':'1'}, '2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
$('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
}
|
||||
//if ($ws12select.hasClass('readonly')) {
|
||||
// if (FaecherplanerEvents.isFsNeSptEinbrSonderregel()) {
|
||||
// $('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
// } else {
|
||||
// $('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
// }
|
||||
//} else {
|
||||
// $('.halbjahre', $parent).eq(0).html(FaecherplanerUtils.generateOptions({'1':{'value':'1'}, '2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
//}
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
FaecherplanerEvents.updateNw1();
|
||||
FaecherplanerEvents.recalculateHalbjahre();
|
||||
},
|
||||
|
||||
jahreswochenstundenChanged: function() {
|
||||
this.recalculateJahreswochenstunden();
|
||||
},
|
||||
|
||||
aeFaecherAbiturChanged: function() {
|
||||
// Blendet bei Abiwahl Sport, Kunst oder Musik ggf. das passende Profilfach ein oder aus.
|
||||
var spoPruefung = $('#spo').find('select.pruefung option:selected').eq(0).val();
|
||||
var muKuPruefung = $('#mu_ku').find('select.pruefung option:selected').eq(0).val();
|
||||
var $xProfilfachSelect = $('select.xprofilfach');
|
||||
var $parent = $xProfilfachSelect.parents('tr');
|
||||
var xProfilfachFach = null;
|
||||
var mainFach = null;
|
||||
if (spoPruefung == 's' || spoPruefung == 'k') {
|
||||
xProfilfachFach = 'ast';
|
||||
mainFach = 'spo';
|
||||
} else if (muKuPruefung == 's') {
|
||||
var muKuKuerzel = $('#mu_ku').find('select.faecher option:selected').eq(0).val();
|
||||
if (muKuKuerzel == 'mu') {
|
||||
xProfilfachFach = 'i_g';
|
||||
mainFach = 'mu';
|
||||
} else if (muKuKuerzel == 'ku') {
|
||||
xProfilfachFach = 'bpr';
|
||||
mainFach = 'ku';
|
||||
}
|
||||
}
|
||||
if (xProfilfachFach != null) {
|
||||
$('select.xprofilfach', $parent).val(xProfilfachFach);
|
||||
$parent.show();
|
||||
FaecherplanerAlerts.showAesteticAbiAlert(mainFach);
|
||||
} else {
|
||||
$parent.hide();
|
||||
}
|
||||
this.fachSelectChanged($xProfilfachSelect);
|
||||
},
|
||||
|
||||
geschichteSozkClicked: function() {
|
||||
var $g_sk = $('#g_sk');
|
||||
var geschSozkIsVisible = $g_sk.is(':visible');
|
||||
if (geschSozkIsVisible) {
|
||||
if (confirm('Möchten Sie statt Geschichte mit Sozialkunde (2+1 Wochenstd.) lieber Geschichte (2 Wochenstd.) und Sozialkunde (2 Wochenstd.) wählen? Dafür entfällt die Belegungsverpflichtung für Jgst. 12 in Geographie bzw. Wirtschaft/Recht.')) {
|
||||
$g_sk.hide();
|
||||
$('#g').add('#sk').show();
|
||||
}
|
||||
} else {
|
||||
if (confirm('Möchten Sie statt Geschichte (2 Wochenstd.) und Sozialkunde (2 Wochenstd.) den Verbund Geschichte mit Sozialkunde (2+1 Wochenstd.) wählen? Dafür muss zusätzlich zu Jgst. 11 auch Jgst. 12 in Geographie bzw. Wirtschaft/Recht belegt werden.')) {
|
||||
$('#g').add('#sk').hide();
|
||||
$g_sk.show();
|
||||
}
|
||||
}
|
||||
this.adjustGeoWrByGSk();
|
||||
this.jahreswochenstundenChanged();
|
||||
},
|
||||
|
||||
adjustGeoWrByGSk: function() {
|
||||
var $geo_wr = $('#geo_wr');
|
||||
var $g_sk = $('#g_sk');
|
||||
var geschSozkIsVisible = $g_sk.is(':visible');
|
||||
if (!geschSozkIsVisible) {
|
||||
$geo_wr.find('.wochenstunden_12_1_2, .wochenstunden_12').removeClass('readonly');
|
||||
$('#geo_wr .halbjahre').eq(0).html(FaecherplanerUtils.generateOptions({'1':{'value':'1'}, '2':{'value':'2'}}));
|
||||
} else {
|
||||
$geo_wr.find('.wochenstunden_12_1_2, .wochenstunden_12').addClass('readonly');
|
||||
$('#geo_wr .halbjahre').eq(0).html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
}
|
||||
this.standardFachChanged($geo_wr.find('.faecher').get(0));
|
||||
this.wochenstundenChanged($geo_wr.find('.faecher').get(0));
|
||||
},
|
||||
|
||||
recalculateJahreswochenstunden: function() {
|
||||
//console.log('Recalc');
|
||||
var stunden = 0;
|
||||
$('#planer').find('tr').filter(":visible").each(function(){
|
||||
if ($(this).find('.jahreswochenstunden').size() > 0) {
|
||||
var tmpStunden = parseInt($(this).find('.jahreswochenstunden').eq(0).val());
|
||||
if (!isNaN(tmpStunden)) {
|
||||
stunden += tmpStunden;
|
||||
}
|
||||
}
|
||||
});
|
||||
//$('.jahreswochenstunden').filter(":visible").each(function(){
|
||||
// var tmpStunden = parseInt($(this).val());
|
||||
// if (!isNaN(tmpStunden)) {
|
||||
// stunden += tmpStunden;
|
||||
// }
|
||||
//});
|
||||
var $jwsSumObj = $('.ergebnis-jws');
|
||||
$jwsSumObj.text(stunden);
|
||||
$jwsSumObj.removeClass('ok warnung fehler');
|
||||
if (stunden < Faecherplaner._settings.jahreswochenstundenNorm) {
|
||||
$jwsSumObj.addClass('fehler');
|
||||
} else if (stunden > Faecherplaner._settings.jahreswochenstundenNorm) {
|
||||
$jwsSumObj.addClass('warnung');
|
||||
} else {
|
||||
$jwsSumObj.addClass('ok');
|
||||
}
|
||||
|
||||
FaecherplanerEvents.validatePlaner();
|
||||
if (stunden > Faecherplaner._settings.jahreswochenstundenNorm) {
|
||||
alert('Sie haben in der Belegung die vorgesehene Wochenstundenzahl ('+Faecherplaner._settings.jahreswochenstundenNorm+') mit '+stunden+' um '+(stunden-Faecherplaner._settings.jahreswochenstundenNorm)+' überschritten! Bitte überlegen Sie nochmals genau, ob Sie dieses Stundenmaß angemessen bewältigen können. Bitte suchen Sie ggf. den Oberstufenkoordinator Ihrer Schule für ein persönliches Beratungsgespräch auf.');
|
||||
}
|
||||
},
|
||||
|
||||
recalculateHalbjahre: function() {
|
||||
var hj = 0;
|
||||
$('.halbjahre').filter(":visible").each(function(){
|
||||
if (!isNaN(parseInt($(this).val()))) {
|
||||
hj += parseInt($(this).val());
|
||||
}
|
||||
});
|
||||
|
||||
var $ergHj = $('.ergebnis-hj');
|
||||
$ergHj.removeClass('ok warnung fehler');
|
||||
/*if (hj < Faecherplaner._settings.halbjahresleistungenNorm) {
|
||||
$ergHj.addClass('warnung');
|
||||
} else */if (hj != Faecherplaner._settings.halbjahresleistungenNorm) {
|
||||
$ergHj.addClass('fehler');
|
||||
if (Faecherplaner._settings.isHinweisOptionsregelEnabled && FaecherplanerEvents.isFsNeSptEinbrSonderregel()) {
|
||||
FaecherplanerAlerts.showOptionsRegelAlert();
|
||||
}
|
||||
} else {
|
||||
$ergHj.addClass('ok');
|
||||
}
|
||||
$ergHj.text(hj);
|
||||
FaecherplanerEvents.validatePlaner();
|
||||
},
|
||||
|
||||
updateNw1: function() {
|
||||
var nw2Kuerzel = $('#nw2 .faecher option:selected').eq(0).val();
|
||||
//var nw1fach = Faecherplaner.getByKuerzel(nw2Kuerzel);
|
||||
// bei zwei gewählten Naturwissenschaften sind bei der NW1 weniger als 4 Einbringungen erlaubt (wenn insgesamt mind. 4 Einbringungen)
|
||||
var moreThan1 = false;
|
||||
//if (nw1fach.typ == 'nw') {
|
||||
if (nw2Kuerzel == 'b' || nw2Kuerzel == 'c' || nw2Kuerzel == 'ph') {
|
||||
moreThan1 = true;
|
||||
} else {
|
||||
$('.faecher.profilfach').each(function(){
|
||||
var kuerzel = $('option:selected', this).val();
|
||||
var $parent = $(this).parents('tr');
|
||||
if ((kuerzel == 'b' || kuerzel == 'c' || kuerzel == 'ph') && (parseInt($('.wochenstunden_11 option:selected', $parent).val()) > 0 || parseInt($('.wochenstunden_12 option:selected', $parent).val()) > 0)) {
|
||||
moreThan1 = true;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (moreThan1) {
|
||||
if (FaecherplanerEvents.isFsNeSptEinbrSonderregel()) {
|
||||
//$('[name="halbjahre[nw1]"]').html(FaecherplanerUtils.generateOptions({'2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
$('#nw1 .halbjahre').eq(0).html(FaecherplanerUtils.generateOptions({'2':{'value':'2'}, '3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
} else {
|
||||
//$('[name="halbjahre[nw1]"]').html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
$('#nw1 .halbjahre').eq(0).html(FaecherplanerUtils.generateOptions({'3':{'value':'3'}, '4':{'value':'4'}}));
|
||||
}
|
||||
} else {
|
||||
//$('[name="halbjahre[nw1]"]').html(FaecherplanerUtils.generateOptions({'4':{'value':'4'}}));
|
||||
$('#nw1 .halbjahre').eq(0).html(FaecherplanerUtils.generateOptions({'4':{'value':'4'}}));
|
||||
}
|
||||
},
|
||||
|
||||
updatePruefung: function() {
|
||||
var isError = false;
|
||||
var fsSptError = false;
|
||||
var mPruefungCount = 0;
|
||||
var sPruefungCount = 0;
|
||||
var gwPruefungCount = 0;
|
||||
|
||||
// Prüfen ob bereits 3 schriftliche und 2 mündliche Abiturfächer gewählt sind und sich ein gesellschaftswissenschaftliches darunter befindet
|
||||
$('select.pruefung').filter(":visible").each(function(){
|
||||
var val = $('option:selected', this).val();
|
||||
if (val == 's') {
|
||||
sPruefungCount++;
|
||||
} else if (val == 'k') {
|
||||
mPruefungCount++;
|
||||
}
|
||||
|
||||
if (val == 's' || val == 'k') {
|
||||
var kuerzel = $(this).parents('tr').find('.faecher').eq(0).val();
|
||||
if (typeof(kuerzel) != 'undefined') {
|
||||
var fach = Faecherplaner.getByKuerzel(kuerzel);
|
||||
if (fach != null && fach.typ == 'gw') { // Anzahl GW-Abifaecher
|
||||
gwPruefungCount++;
|
||||
}
|
||||
if (val == 's' && kuerzel == Faecherplaner.predefinedFremdsprachen.fs_spt) { // in FS-Spt kann nur eine muendliche Pruefung angelegt werden
|
||||
fsSptError = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Mehr Abifaecher als zugelassen ausgewaehlt
|
||||
if (sPruefungCount > Faecherplaner._settings.sPruefungMax || mPruefungCount > Faecherplaner._settings.mPruefungMax) {
|
||||
isError = true;
|
||||
FaecherplanerAlerts.showAbiCountAlert(sPruefungCount, mPruefungCount);
|
||||
} else if (gwPruefungCount > Faecherplaner._settings.swPruefungMax) { // Mehr GW-Abifaecher als zugelassen ausgewaehlt
|
||||
isError = true;
|
||||
FaecherplanerAlerts.showGwAbiCountAlert(gwPruefungCount);
|
||||
} else if (sPruefungCount == Faecherplaner._settings.sPruefungMax && mPruefungCount == Faecherplaner._settings.mPruefungMax && gwPruefungCount == 0) { // Kein GW-Abifach
|
||||
isError = true;
|
||||
FaecherplanerAlerts.showKeinGwAbiCountAlert();
|
||||
} else if (fsSptError) {
|
||||
isError = true;
|
||||
FaecherplanerAlerts.showFsSptAbiAlert();
|
||||
}
|
||||
|
||||
var $ergebnisPruefung = $('.ergebnis-pruefung');
|
||||
$ergebnisPruefung.find('.weit').text(sPruefungCount + ' + ' + mPruefungCount);
|
||||
$ergebnisPruefung.find('.eng').text(sPruefungCount + mPruefungCount);
|
||||
if (sPruefungCount == Faecherplaner._settings.sPruefungMax && mPruefungCount == Faecherplaner._settings.mPruefungMax) {
|
||||
$ergebnisPruefung.removeClass('fehler').addClass('ok');
|
||||
} else {
|
||||
$ergebnisPruefung.removeClass('ok').addClass('fehler');
|
||||
}
|
||||
FaecherplanerEvents.validatePlaner();
|
||||
return isError;
|
||||
},
|
||||
|
||||
isFsNeSptEinbrSonderregel: function() { //Prüft, ob die Sonderregel (auch Optionsregel) anwendbar ist oder nicht
|
||||
|
||||
//bei neu einsetzender spät beginnender Fremdsprache wäre aufgrund der Einbringungsverpflichtungen in dieser FS (3) sowie in allen Abiturfächern (4)
|
||||
//manche Abiturfächer nicht mehr möglich (z.B. Sport, Informatik, Wirtschaftsinformatik, sozialwissenschaftliche Arbeitsfelder, weitere Fremdsprache)
|
||||
//da sonst mehr als 40 einzubringende Halbjahresleistungen erreicht würden.
|
||||
//Eine Sonderregel ("Optionsregel") erlaubt bei Wahl eines solchen Abiturfachs, höchstens 2 ursprüngl. einbringungspflichtige Halbjahresleistungen in zwei Fächern
|
||||
//(Ausnahme Abiturfächer und die Naturwissenschaft, sofern nur eine gewählt) zu streichen, um auf die Höchstzahl von 40 HJL zu kommen.
|
||||
var regelMgl = false;
|
||||
if (['k', 's'].indexOf($('[name="pruefung[spo]"] option:selected').val()) != -1) {
|
||||
regelMgl = true;
|
||||
}
|
||||
$('select[name^="pruefung[profilfach_"]').each(function(){
|
||||
if (['k', 's'].indexOf($('option:selected', this).val()) != -1) {
|
||||
regelMgl = true;
|
||||
}
|
||||
});
|
||||
return regelMgl;
|
||||
},
|
||||
|
||||
profilfachRowAdded: function() {
|
||||
var $addTemplate = $('#profilfach_template');
|
||||
var $row = $addTemplate.clone(true);
|
||||
var $profilfachs = $('.faecher.profilfach:visible');
|
||||
var addCount = $profilfachs.size();
|
||||
$row.removeAttr('id');
|
||||
$('select.faecher.profilfach', $row).addClass('profilfach_'+addCount).attr('name', 'tx_ifoberstufenplaner_faecherplaner[profilfaecher][profilfach_'+addCount+']');
|
||||
$('select.wochenstunden_11', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[wochenstunden_11][profilfach_'+addCount+']');
|
||||
$('select.wochenstunden_12', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[wochenstunden_12][profilfach_'+addCount+']');
|
||||
$('select.wochenstunden_11_1_2', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[wochenstunden_11_1_2][profilfach_'+addCount+']');
|
||||
$('select.wochenstunden_12_1_2', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[wochenstunden_12_1_2][profilfach_'+addCount+']');
|
||||
$('input.jahreswochenstunden', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[jahreswochenstunden][profilfach_'+addCount+']');
|
||||
$('select.halbjahre', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[halbjahre][profilfach_'+addCount+']');
|
||||
$('select.pruefung', $row).attr('name', 'tx_ifoberstufenplaner_faecherplaner[pruefung][profilfach_'+addCount+']');
|
||||
if ($profilfachs.size() > 0) {
|
||||
$profilfachs.last().parents('tr').after($row);
|
||||
} else {
|
||||
$addTemplate.before($row);
|
||||
}
|
||||
$row.show();
|
||||
},
|
||||
|
||||
profilfachRowRemoved: function(tr) {
|
||||
$(tr).remove();
|
||||
this.recalculateHalbjahre();
|
||||
this.recalculateJahreswochenstunden();
|
||||
this.updatePruefung();
|
||||
this.validatePlaner();
|
||||
},
|
||||
|
||||
validatePlaner: function() {
|
||||
var isValid = true;
|
||||
|
||||
var $jwsSumObj = $('.ergebnis-jws');
|
||||
var $ergebnisPruefung = $('.ergebnis-pruefung');
|
||||
var $ergHj = $('.ergebnis-hj');
|
||||
|
||||
if ((!$jwsSumObj.hasClass('ok') && !$jwsSumObj.hasClass('warnung')) || !$ergebnisPruefung.hasClass('ok') || !$ergHj.hasClass('ok')) {
|
||||
isValid = false;
|
||||
}
|
||||
|
||||
if (isValid) {
|
||||
//$('.ergebnis-text').css('visibility', 'hidden');
|
||||
$('.ergebnis-text').eq(0).text('Alles klar für\'s Abitur').removeClass('fehler').addClass('ok');
|
||||
$('.ergebnis-text').eq(1).text('Alles klar').removeClass('fehler').addClass('ok');
|
||||
} else {
|
||||
$('.ergebnis-text').eq(0).text('Bitte Fehler beheben').removeClass('ok').addClass('fehler');
|
||||
$('.ergebnis-text').eq(1).text('Bitte beheben').removeClass('ok').addClass('fehler');
|
||||
//$('.ergebnis-text').css('visibility', 'visible');
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
var FaecherplanerUtils = {
|
||||
generateOptions: function(obj) {
|
||||
var html = '';
|
||||
for (var key in obj) {
|
||||
var disabled = (("disabled" in obj[key]) && obj[key].disabled == true);
|
||||
var selected = (("selected" in obj[key]) && obj[key].selected == true);
|
||||
html += '<option value="'+key+'"'+(disabled ? ' disabled' : '') + (selected ? ' selected' : '') + '>'+obj[key].value+'</option>';
|
||||
}
|
||||
return html;
|
||||
}
|
||||
};
|
||||
|
||||
var FaecherplanerAlerts = {
|
||||
showAesteticAbiAlert: function(fach) {
|
||||
var message = "Wird Kunst oder Musik als schriftliches Abiturfach mit einem fachpraktischen Anteil gewählt, muss zusätzlich zum grundständigen Unterricht ein Additum belegt werden. Das Additum ist im Fach Kunst (Bildnerische Praxis) zweistündig, im Fach Musik (Instrument) einstündig.\n\nWird Sport als schriftliches oder als mündliches Abiturfach mit einem praktischen Anteil gewählt, muss ein zweistündiges Additum (Sporttheorie) belegt werden.\n\nDie Teilnahme an einem Additum setzt im Zwischenzeugnis der Jahrgangsstufe 10 mindestens die Note 3 voraus. In Musik sind zudem angemessene Fertigkeiten im Spiel eines anerkannten Musikinstruments (ggf. Gesang) nachzuweisen.\n\nMit der Wahl eines Additums legen Sie auch das zugehörige Fach als Abiturfach bereits in Jahrgangsstufe 10 verbindlich fest. \n\n\nDie Auswahl des passenden Additums erfolgt automatisch, wenn Sie Sport als mündliches oder schriftliches Abiturfach oder Kunst oder Musik als schriftliches Abiturfach wählen.";
|
||||
switch(fach) {
|
||||
case 'spo':
|
||||
message = "Wird Sport als schriftliches oder als mündliches Abiturfach mit einem praktischen Anteil gewählt, muss das zweistündige Additum Sporttheorie belegt werden (wird nun automatisch gewählt).\n\nDie Teilnahme am Additum setzt im Zwischenzeugnis der Jahrgangsstufe 10 mindestens die Note 3 voraus.\n\nMit der Wahl des Additums legen Sie Sport als Abiturfach bereits in Jahrgangsstufe 10 verbindlich fest.";
|
||||
break;
|
||||
case 'ku':
|
||||
message = "Wird Kunst als schriftliches Abiturfach mit einem fachpraktischen Anteil gewählt, muss zusätzlich zum grundständigen Unterricht das zweistündige Additum Bildnerische Praxis belegt werden (wird nun automatisch gewählt).\n\nDie Teilnahme am Additum setzt im Zwischenzeugnis der Jahrgangsstufe 10 mindestens die Note 3 voraus.\n\nMit der Wahl des Additums legen Sie Kunst als schriftliches Abiturfach bereits in Jahrgangsstufe 10 verbindlich fest.";
|
||||
break;
|
||||
case 'mu':
|
||||
message = "Wird Musik als schriftliches Abiturfach mit einem fachpraktischen Anteil gewählt, muss zusätzlich zum grundständigen Unterricht das einstündige Additum Instrument/Gesang belegt werden (wird nun automatisch gewählt).\n\nDie Teilnahme am Additum setzt im Zwischenzeugnis der Jahrgangsstufe 10 mindestens die Note 3 voraus, zudem sind angemessene Fertigkeiten im Spiel eines anerkannten Musikinstruments (ggf. Gesang) nachzuweisen.\n\nMit der Wahl des Additums legen Sie Musik als schriftliches Abiturfach bereits in Jahrgangsstufe 10 verbindlich fest.";
|
||||
break;
|
||||
}
|
||||
alert(message);
|
||||
},
|
||||
|
||||
showAbiCountAlert: function(sPruefungCount, mPruefungCount) {
|
||||
alert("Sie müssen in "+Faecherplaner._settings.sPruefungMax+" Fächern schriftliches und in "+Faecherplaner._settings.mPruefungMax+" Fächern mündliches Abitur machen!\n" +
|
||||
"(Derzeit ausgewählt: "+sPruefungCount+"x schriftlich und "+mPruefungCount+"x mündlich.)\n" +
|
||||
"\n" +
|
||||
"Bitte löschen Sie ggf. zuerst die Abiturwahl bei einem anderen Fach, bevor Sie hier die Abiturprüfung auswählen.");
|
||||
},
|
||||
|
||||
showGwAbiCountAlert: function(gwCount) {
|
||||
alert("Sie müssen in genau einem gesellschaftswissenschaftlichen Fach (in Farbe GELB hinterlegt, z. B. Religionslehre, Ethik, Geschichte, Sozialkunde, Geographie, Wirtschaft und Recht) Abiturprüfung machen.\n" +
|
||||
"(Derzeit ausgewählt: "+gwCount+" gesellschaftswissenschaftliche Fächer)\n\n" +
|
||||
"Bitte löschen Sie ggf. zuerst die Abiturwahl bei einem anderen Fach, bevor Sie hier die Abiturprüfung auswählen.");
|
||||
},
|
||||
|
||||
showKeinGwAbiCountAlert: function() {
|
||||
alert("Sie haben hiermit "+Faecherplaner._settings.sPruefungMax+" schriftliche und "+Faecherplaner._settings.mPruefungMax+" mündliche Abiturfächer gewählt, es befindet sich aber kein gesellschaftswissenschaftliches Fach " +
|
||||
"(in Farbe GELB hinterlegt, z. B. Religionslehre, Ethik, Geschichte, Sozialkunde, Geographie, Wirtschaft und Recht) darunter.\n\n" +
|
||||
"Diese Wahl ist daher nicht erlaubt.");
|
||||
},
|
||||
|
||||
showFsSptAbiAlert: function() {
|
||||
alert("Spät beginnende Fremdsprachen können nur mündliches, nicht aber schriftliches Abiturfach sein.");
|
||||
},
|
||||
|
||||
showOptionsRegelAlert: function() {
|
||||
alert("Da Sie eine neu einsetzende, spät beginnende Fremdsprache gewählt haben \n" +
|
||||
"und mit der getroffenen Abiturwahl bereits mehr als 40 Halbjahresleistungen \n" +
|
||||
"einbringen müssten, können Sie die \"Optionsregel\" anwenden: \n\n" +
|
||||
"In zwei verschiedenen Fächern können Sie je eine Halbjahresleistung \n" +
|
||||
"streichen, so dass Sie dort nur noch je 2 einbringen. \n" +
|
||||
"Stets sind aber in den Apiturprüfungsfächern und aus den \n" +
|
||||
"Naturwissenschaften (Ph, C, B) mindestens 4 Halbjahresleistungen \n" +
|
||||
"einzubringen (ggf. mit der Naturwissenschaft 2).\n\n" +
|
||||
"(Diese Optionen werden nun in der Auswahl automatisch angeboten).\n\n");
|
||||
},
|
||||
|
||||
showNwMinEinbringungenAlert: function(einbringungen) {
|
||||
alert("Aus den Naturwissenschaften (Ph, C, B) sind mindestens "+Faecherplaner._settings.nwEinbringungenMin+" Halbjahresleistungen einzubringen.\n" +
|
||||
"(Derzeit sind insgesamt nur "+einbringungen+" gewählt.)");
|
||||
},
|
||||
|
||||
showGkzMaxEinbringungenAlert: function() {
|
||||
alert("Es kann bei höchstens "+Faecherplaner._settings.gkzEinbringungenMax+" verschiedenen Fächern, die normalerweise\n" +
|
||||
"mit 3 oder 4 Halbjahresleistungen eingebracht werden müssten,\n" +
|
||||
"eine Verringerung auf 2 eingebrachte Halbjahresleistungen\nvorgenommen werden.\n\n" +
|
||||
"Die gestrichenen Halbjahresleistungen müssen nicht ersetzt werden, falls eine \n" +
|
||||
"neu einsetzende spät beginnende Fremdsprache belegt wird und\n" +
|
||||
"durch die Wahl der Abiturprüfungsfächer die Zahl der verpflichtend\n" +
|
||||
"einzubringenden Halbjahresleistungen "+Faecherplaner._settings.halbjahresleistungenNorm+" übersteigt.")
|
||||
|
||||
},
|
||||
|
||||
showNurEinJahrFachAlert: function(name) {
|
||||
alert("Sie möchten das Fach "+ name +" in Jahrgangsstufe 11 und 12 belegen. Es ist jedoch nur die Auswahl in 11 oder 12 möglich.");
|
||||
},
|
||||
|
||||
// Click alerts
|
||||
showJwsAlert: function() {
|
||||
alert('Sie müssen insgesamt 66 Wochenstunden belegen. Mehr sind zulässig, aber bitte achten sie darauf, dieses Stundenmaß angemessen bewältigen können.');
|
||||
},
|
||||
showHjAlert: function() {
|
||||
alert('An Halbjahresnoten müssen 40 eingebracht werden.');
|
||||
},
|
||||
showPruefungAlert: function() {
|
||||
alert('Sie absolvieren drei schriftliche und zwei mündliche Abiturprüfungen. Eine davon muss in einem gesellschaftswissenschaftlichen Fach sein.');
|
||||
}
|
||||
};
|
||||
7
typo3conf/ext/if_oberstufenplaner/Resources/Public/js/jquery-ui.min.js
vendored
Normal file
7
typo3conf/ext/if_oberstufenplaner/Resources/Public/js/jquery-ui.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -0,0 +1,350 @@
|
||||
var Konfigurator = {
|
||||
Step1: {
|
||||
init: function() {
|
||||
var $gymArt = $('input[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]');
|
||||
$($gymArt).change(function(){
|
||||
Konfigurator.Step1.checkGymArt($(this).filter(':checked'));
|
||||
});
|
||||
Konfigurator.Step1.checkGymArt($gymArt.filter(':checked'));
|
||||
|
||||
var fsArray = [$('select#fs1'), $('select#fs2'), $('select#fs3'), $('select#fs_spt'), $('select#fs_ne_spt')];
|
||||
$(fsArray).each(function(){
|
||||
$self = $(this);
|
||||
$.data($self.get(0), 'lastValue', $('option:selected', $self).val());
|
||||
$self.change(function(){ // Ueberpruefen, ob die Fremdsprache bereits gewaehlt ist
|
||||
$select = $(this);
|
||||
$(fsArray).each(function(){
|
||||
if ($select.val() != '' && $select.attr('id') != $(this).attr('id') && $select.val() == $(this).val()) {
|
||||
alert('Fehler:\n\nDie Fremdsprache wurde bereits ausgewählt.');
|
||||
$select.val($.data($select.get(0), 'lastValue'));
|
||||
return false;
|
||||
}
|
||||
$.data($select.get(0), 'lastValue', $('option:selected', $select).val());
|
||||
});
|
||||
|
||||
//Ueberprüfen ob andere sprache als english ausgewählt wurde & ggf. fremdsprache2 als englisch definieren
|
||||
var fs2_select = $('#fs2');
|
||||
if($select.attr('id') == "fs1" && $select.val() != 'e'){
|
||||
|
||||
fs2_select.find('option[value="e"]').prop('selected', 'selected');
|
||||
fs2_select.prop('disabled', 'disabled');
|
||||
}else{
|
||||
fs2_select.prop('disabled', '');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('select.fs_bis_klasse').change(function(){
|
||||
$select = $(this);
|
||||
var count9 = 0;
|
||||
$('select.fs_bis_klasse').each(function(){
|
||||
if (parseInt($('option:selected', this).val()) == 9) {
|
||||
count9++;
|
||||
}
|
||||
});
|
||||
if (count9 > 1) {
|
||||
alert('Fehler:\n\n1. oder 2. Fremdsprache muss bis Jahrgangsstufe 10 gewählt sein.');
|
||||
$select.val(10);
|
||||
} else if (count9 == 0) {
|
||||
console.log('disable');
|
||||
$('#fs_ne_spt').prop('disabled','disabled');
|
||||
$('#fs_ne_spt').val("");
|
||||
//$('span.fs_ne_spt').hide();
|
||||
} else {
|
||||
console.log('enable');
|
||||
$('#fs_ne_spt').prop('disabled',false);
|
||||
//$('span.fs_ne_spt').show();
|
||||
}
|
||||
});
|
||||
$('select.fs_bis_klasse').trigger('change');
|
||||
|
||||
$(function() {
|
||||
function log( message ) {
|
||||
console.log(message);
|
||||
}
|
||||
|
||||
//function autocompleteOptionSelected(event, ui) {
|
||||
// $.get($input.data('suggestion-accept-source'), { 'tx_ifoberstufenplaner_faecherplaner[schule]': ui.item.uid }, function(data) {
|
||||
// $input.val(ui.item.name);
|
||||
// $('[name="tx_ifoberstufenplaner_faecherplaner[gym_autocomplete_selected_uid]"]').val(ui.item.uid);
|
||||
// Konfigurator.Step1.preConfigureStep1(data);
|
||||
// }, 'json');
|
||||
//}
|
||||
|
||||
$(".schule_autocomplete").each(function(){
|
||||
$input = $(this);
|
||||
if ($input.data('suggestion-source') && $input.data('suggestion-accept-source')) {
|
||||
$input.autocomplete({
|
||||
source: function(request, response) {
|
||||
$.get($input.data('suggestion-source'), { 'tx_ifoberstufenplaner_faecherplaner[query]': request.term }, function(data) {
|
||||
response(data);
|
||||
}, 'json');
|
||||
},
|
||||
minLength: 2,
|
||||
select: function( event, ui ) {
|
||||
console.log(ui);
|
||||
//log( ui.item ?
|
||||
//"Selected: " + ui.item.uid + " aka " + ui.item.name :
|
||||
//"Nothing selected, input was " + this.value );
|
||||
$.get($input.data('suggestion-accept-source'), { 'tx_ifoberstufenplaner_faecherplaner[schule]': ui.item.uid }, function(data) {
|
||||
$input.val(ui.item.name);
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[gym_autocomplete_selected_uid]"]').val(ui.item.uid);
|
||||
Konfigurator.Step1.preConfigureStep1(data);
|
||||
}, 'json');
|
||||
},
|
||||
search: function() {
|
||||
if ($('#spinner-loader').size() == 1) {
|
||||
$('#spinner-loader').show();
|
||||
} else {
|
||||
$(this).after('<i class="fa fa-spinner fa-spin" id="spinner-loader"></i>');
|
||||
}
|
||||
},
|
||||
open: function(){
|
||||
$('#spinner-loader').remove();
|
||||
var $uia = $('.ui-autocomplete');
|
||||
$uia.css('width', '300px');
|
||||
if ($uia.position().left+300 > $(window).width()) {
|
||||
$uia.css('left', $(window).width() - 300-20);
|
||||
}
|
||||
},
|
||||
focus: function (event, ui) {
|
||||
this.value = ui.item.name;
|
||||
event.preventDefault(); // Prevent the default focus behavior.
|
||||
}
|
||||
});
|
||||
$input.data("ui-autocomplete")._renderItem = function(ul, item) {
|
||||
return $("<li>")
|
||||
.data("item.autocomplete", item)
|
||||
.append("<a onclick=''>" + item.name + "</a>")
|
||||
.appendTo(ul);
|
||||
};
|
||||
|
||||
// init on start if not empty
|
||||
if ($input.val() != '') {
|
||||
$uidField = $('[name="tx_ifoberstufenplaner_faecherplaner[gym_autocomplete_selected_uid]"]');
|
||||
if ($uidField.val() != '') {
|
||||
|
||||
}
|
||||
//console.log($input.data('ui-autocomplete'));
|
||||
//$input.data('uiAutocomplete')._trigger('select');
|
||||
var item = {
|
||||
name: $input.val(),
|
||||
uid: $uidField.val()
|
||||
};
|
||||
$input.data('ui-autocomplete')._trigger('select', 'autocompleteselect', {item:item});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
preConfigureStep1: function(schulen) {
|
||||
if (typeof(schulen) != 'undefined' && schulen.length > 0) {
|
||||
var typen = [];
|
||||
var sprachen1 = [];
|
||||
var sprachen2 = [];
|
||||
var sprachen3 = [];
|
||||
$(schulen).each(function(i, schule){
|
||||
var typSplit = schule.K.split(' ');
|
||||
for (var k=0; k<typSplit.length; k++) {
|
||||
if (typSplit[k] == 'SG' || typSplit[k] == 'NTG' || typSplit[k].substr(0, 3) == 'MuG' || typSplit[k] == 'WSG-W' || typSplit[k] == 'WSG-S') {
|
||||
var val = typSplit[k].replace('-', '').toLowerCase();
|
||||
if (jQuery.inArray(val, typen) === -1) {
|
||||
typen.push(val);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (jQuery.inArray(schule.Sprache1, sprachen1) === -1) {
|
||||
sprachen1.push(schule.Sprache1);
|
||||
}
|
||||
if (jQuery.inArray(schule.Sprache2, sprachen2) === -1) {
|
||||
sprachen2.push(schule.Sprache2);
|
||||
}
|
||||
if (jQuery.inArray(schule.Sprache3, sprachen3) === -1) {
|
||||
sprachen3.push(schule.Sprache3);
|
||||
}
|
||||
});
|
||||
|
||||
var fixSelected = false;
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').each(function(){
|
||||
if (jQuery.inArray($(this).val(), typen) === -1) {
|
||||
$(this).attr('disabled',true);
|
||||
if ($(this).is(':checked')) {
|
||||
fixSelected = true;
|
||||
}
|
||||
} else {
|
||||
$(this).attr('disabled',false);
|
||||
}
|
||||
});
|
||||
if (fixSelected) {
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').not(':disabled').eq(0).trigger('click');
|
||||
//$('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').not(':disabled').eq(0).prop('checked', true);
|
||||
}
|
||||
// wenn nur eine Option aktiv -> check
|
||||
if ($('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').not(':disabled').size() == 1) {
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').not(':disabled').eq(0).trigger('click');
|
||||
}
|
||||
// wenn keine Option aktiv -> alle aktivieren
|
||||
if ($('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').not(':disabled').size() == 0) {
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[gym_art]"]').attr('disabled', false);
|
||||
}
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[fs1]"] option').each(function() {
|
||||
if (jQuery.inArray($(this).text(), sprachen1) === -1) {
|
||||
$(this).attr('disabled',true);
|
||||
} else {
|
||||
$(this).attr('disabled',false);
|
||||
}
|
||||
});
|
||||
if ($('[name="tx_ifoberstufenplaner_faecherplaner[fs1]"] option:selected').is(':disabled')) {
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[fs1]"] option').not(':disabled').eq(0).prop('selected', true);
|
||||
}
|
||||
var preselected = false;
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[fs2]"] option').each(function() {
|
||||
if (jQuery.inArray($(this).text(), sprachen2) === -1) {
|
||||
$(this).attr('disabled',true);
|
||||
} else {
|
||||
$(this).attr('disabled',false);
|
||||
if (
|
||||
!preselected &&
|
||||
$(this).text() != $('[name="tx_ifoberstufenplaner_faecherplaner[fs1]"] option:selected').text()
|
||||
) {
|
||||
$(this).prop('selected', true);
|
||||
preselected = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
//$('[name="tx_ifoberstufenplaner_faecherplaner[fs2]"] option').each(function(){
|
||||
//
|
||||
//});
|
||||
//if ($('[name="tx_ifoberstufenplaner_faecherplaner[fs2]"] option:selected').is(':disabled')) {
|
||||
// $('[name="tx_ifoberstufenplaner_faecherplaner[fs2]"] option').not(':disabled').eq(0).prop('selected', true);
|
||||
//}
|
||||
var preselected = false;
|
||||
$('[name="tx_ifoberstufenplaner_faecherplaner[fs3]"] option').each(function() {
|
||||
if (jQuery.inArray($(this).text(), sprachen3) === -1) {
|
||||
$(this).attr('disabled',true);
|
||||
} else {
|
||||
$(this).attr('disabled',false);
|
||||
if (
|
||||
!preselected &&
|
||||
$(this).val() != '' &&
|
||||
$(this).text() != $('[name="tx_ifoberstufenplaner_faecherplaner[fs1]"] option:selected').text() &&
|
||||
$(this).text() != $('[name="tx_ifoberstufenplaner_faecherplaner[fs2]"] option:selected').text()
|
||||
) {
|
||||
$(this).prop('selected', true);
|
||||
preselected = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
//if ($('[name="tx_ifoberstufenplaner_faecherplaner[fs3]"] option:selected').is(':disabled')) {
|
||||
// $('[name="tx_ifoberstufenplaner_faecherplaner[fs3]"] option').not(':disabled').eq(0).prop('selected', true);
|
||||
//}
|
||||
}
|
||||
},
|
||||
|
||||
checkGymArt: function(checkbox) {
|
||||
var $fs3Span = $('span.fs3');
|
||||
//var $fsSptSpan = $('span.fs_spt');
|
||||
$fs3Span.hide();
|
||||
|
||||
switch($(checkbox).val()) {
|
||||
case 'sg':
|
||||
$fs3Span.show();
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
configureSelectedGymFromAutocomplete: function(gym) {
|
||||
|
||||
}
|
||||
},
|
||||
Step3: {
|
||||
faecher : {},
|
||||
init: function(faecher) {
|
||||
Konfigurator.Step3.faecher = faecher;
|
||||
var $fs1 = $('select#fs1');
|
||||
var $nw1 = $('select#nw1');
|
||||
var $nw2 = $('select#nw2');
|
||||
if ($nw2.size() > 0) {
|
||||
var fs1Kuerzel = $('option:selected', $fs1).eq(0).val();
|
||||
var nw1Kuerzel = $('option:selected', $nw1).eq(0).val();
|
||||
if ($('option:selected', $nw2).val() == fs1Kuerzel || $('option:selected', $nw2).val() == nw1Kuerzel) {
|
||||
$('option', $nw2).each(function () {
|
||||
if ($(this).val() != fs1Kuerzel && $(this).val() != nw1Kuerzel) {
|
||||
$(this).prop('selected', true);
|
||||
//$(selectBox).trigger('change');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
$.data($nw2.get(0), 'lastValue', $('option:selected', $nw2).val());
|
||||
this.nw2Changed($nw2.get(0));
|
||||
}
|
||||
$.data($fs1.get(0), 'lastValue', $('option:selected', $fs1).val());
|
||||
$.data($nw1.get(0), 'lastValue', $('option:selected', $nw1).val());
|
||||
|
||||
// register events
|
||||
$fs1.add($nw1).add($nw2).change(function(){
|
||||
Konfigurator.Step3.fachSelectChanged(this);
|
||||
});
|
||||
},
|
||||
nw2Changed: function(selectBox) {
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
var fach = Konfigurator.Step3.faecher[kuerzel];
|
||||
if (fach != null) {
|
||||
$(selectBox).removeClass().addClass(fach.farbe);
|
||||
}
|
||||
},
|
||||
fachSelectChanged: function(selectBox) {
|
||||
var tmp = [];
|
||||
var fachKuerzel = $('option:selected', selectBox).val();
|
||||
$('select#fs1').add('select#nw1').add('select#nw2').each(function(){
|
||||
var $el = $(this);
|
||||
if ($el.get(0) != selectBox) {
|
||||
var tmpKuerzel = $('option:selected', this).val();
|
||||
tmp.push(tmpKuerzel);
|
||||
}
|
||||
});
|
||||
if (tmp.indexOf(fachKuerzel) != -1) {
|
||||
KonfiguratorAlerts.showFachAlreadySelectedAlert(Konfigurator.Step3.faecher[fachKuerzel]['name']);
|
||||
//$(selectBox).val($.data(selectBox, 'lastValue'));
|
||||
} else {
|
||||
$.data(selectBox, 'lastValue', $('option:selected', selectBox).val());
|
||||
if ($(selectBox).is('#nw2')) {
|
||||
this.nw2Changed(selectBox);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
Step4: {
|
||||
faecher: {},
|
||||
init: function (wFaecher, pFaecher) {
|
||||
Konfigurator.Step4.wFaecher = wFaecher;
|
||||
Konfigurator.Step4.pFaecher = pFaecher;
|
||||
|
||||
// register events
|
||||
$('#seminar_w').add('#seminar_p').change(function(){
|
||||
Konfigurator.Step4.fachSelectChanged(this);
|
||||
});
|
||||
$('#seminar_w').add('#seminar_p').trigger('change');
|
||||
},
|
||||
fachSelectChanged: function(selectBox) {
|
||||
var kuerzel = $('option:selected', selectBox).val();
|
||||
if ($(selectBox).is('#seminar_w')) {
|
||||
var fach = Konfigurator.Step4.wFaecher[kuerzel];
|
||||
} else {
|
||||
var fach = Konfigurator.Step4.pFaecher[kuerzel];
|
||||
}
|
||||
if (fach != null) {
|
||||
$(selectBox).removeClass().addClass(fach.farbe);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var KonfiguratorAlerts = {
|
||||
showFachAlreadySelectedAlert: function(fachName) {
|
||||
alert('Sie haben das Fach '+fachName+' bereits an einer anderen Stelle ausgewählt. Bitte ändern Sie an dieser Stelle Ihre Wahl!');
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user