First Commit
This commit is contained in:
297
html/sternwarte/beoanswer/js/beoanswer.js
Executable file
297
html/sternwarte/beoanswer/js/beoanswer.js
Executable file
@@ -0,0 +1,297 @@
|
||||
/*
|
||||
*
|
||||
*/
|
||||
$(document).ready(function() {
|
||||
|
||||
let sendobject = {
|
||||
stattgefunden: false,
|
||||
anzahl: 0,
|
||||
spende:0,
|
||||
betrag:0,
|
||||
rem:'',
|
||||
newtermin: '1900-01-01',
|
||||
};
|
||||
let ajaxURL = '../../intern/sofue/php/sofueDB.php'
|
||||
$('#versn').html("Version: " + VERSION + ' vom ' + VDATE);
|
||||
|
||||
console.log("von php:", url_fdate, url_id);
|
||||
|
||||
let t = $('#sofueHead').html();
|
||||
$('#sofueHead').html(t+url_fdate);
|
||||
|
||||
// Change bei 'stattgefunden'
|
||||
$('#inputstatt').change(function() {
|
||||
let s = $('input[name="statt"]:checked').val();
|
||||
console.log(s);
|
||||
if(s == "nein") {
|
||||
showAbsage();
|
||||
sendobject.stattgefunden=false;
|
||||
} else if (s=='ja') {
|
||||
showBesucher();
|
||||
sendobject.stattgefunden=true;
|
||||
}
|
||||
});
|
||||
|
||||
// der JA-Zweig
|
||||
function showBesucher() {
|
||||
$('#besucher').removeClass("hide");
|
||||
}
|
||||
|
||||
$('#beszahl').keydown(e=>{
|
||||
let keycode = e.keyCode || e.which;
|
||||
if(keycode == 13) {
|
||||
besucher = $('#beszahl').val();
|
||||
if($.isNumeric(besucher)) {
|
||||
console.log(besucher);
|
||||
sendobject.anzahl = besucher;
|
||||
showSpende();
|
||||
} else {
|
||||
alert("Nur Ziffern eingeben");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#btnOK0').click(()=>{
|
||||
besucher = $('#beszahl').val();
|
||||
if($.isNumeric(besucher)) {
|
||||
console.log(besucher);
|
||||
sendobject.anzahl = besucher;
|
||||
showSpende();
|
||||
} else {
|
||||
alert("Nur Ziffern eingeben");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
function showSpende() {
|
||||
$('#diespende').removeClass("hide");
|
||||
}
|
||||
|
||||
$('#inputspend').change(function() {
|
||||
let spende=0;
|
||||
let s = $('input[name="spend"]:checked').val();
|
||||
console.log(s);
|
||||
if(s == "bar") {
|
||||
spende=1;
|
||||
showBarspende();
|
||||
} else {
|
||||
showRemark();
|
||||
if (s=='ueberweis') {
|
||||
spende=2;
|
||||
} else if (s=='kasse') {
|
||||
spende=3;
|
||||
}
|
||||
}
|
||||
sendobject.spende = spende;
|
||||
});
|
||||
|
||||
function showBarspende() {
|
||||
$('#barspend').removeClass("hide");
|
||||
}
|
||||
|
||||
$('#barsp').keydown(e=>{
|
||||
let keycode = e.keyCode || e.which;
|
||||
if(keycode == 13) {
|
||||
let barsp = $('#barsp').val();
|
||||
if($.isNumeric(barsp)) {
|
||||
console.log(barsp);
|
||||
sendobject.betrag = barsp;
|
||||
showRemark();
|
||||
} else {
|
||||
alert("Nur Ziffern eingeben");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#btnOK1').click(()=>{
|
||||
let barsp = $('#barsp').val();
|
||||
if($.isNumeric(barsp)) {
|
||||
console.log(barsp);
|
||||
sendobject.betrag = barsp;
|
||||
showRemark();
|
||||
} else {
|
||||
alert("Nur Ziffern eingeben");
|
||||
}
|
||||
});
|
||||
|
||||
$('#btnOK2').click(()=>{
|
||||
sendobject.rem = $('#remark').val();
|
||||
showFertig();
|
||||
});
|
||||
|
||||
function showRemark() {
|
||||
let p = $('#btnOK2').offset();
|
||||
$('#btnOK2').offset({top: p.top-10, left: p.left});
|
||||
$('#remarks').removeClass('hide');
|
||||
}
|
||||
|
||||
function showFertig() {
|
||||
$('#fertig').removeClass("hide");
|
||||
$('#btnsend').removeClass("hide");
|
||||
}
|
||||
|
||||
// der NEIN-Zweig
|
||||
function showAbsage() {
|
||||
$('input[name="nostatt"]').prop('checked',"");
|
||||
$('#inputabs').removeClass("hide");
|
||||
}
|
||||
|
||||
// Change bei 'nicht stattt'
|
||||
$('#inputabs').change(function() {
|
||||
let s = $('input[name="nostatt"]:checked').val();
|
||||
console.log(s);
|
||||
if(s == "abgesagt") {
|
||||
showFertig();
|
||||
} else if (s == "verschoben") {
|
||||
showVerschoben();
|
||||
}
|
||||
});
|
||||
|
||||
function showVerschoben() {
|
||||
$('#verschbn').removeClass("hide");
|
||||
|
||||
|
||||
// Picker für den neuen Termin
|
||||
$('#newtermin').datetimepicker( // Initialisierung des datetimepickers
|
||||
{
|
||||
addSliderAccess: true,
|
||||
sliderAccessArgs: { touchonly: false },
|
||||
showOn: 'focus' , // onFocus wird der Picker angezeigt
|
||||
timeFormat: 'HH:mm',
|
||||
showMinute: true,
|
||||
stepMinute: 15,
|
||||
// showSecond: false,
|
||||
// showMillisec: false,
|
||||
// showMicrosec: false,
|
||||
// showTimezone: false,
|
||||
hourMin: 13,
|
||||
dateFormat: "yy-mm-dd", // angezeigt wird in diesem Format
|
||||
minDate: "+1d", // min Datum: morgen
|
||||
closeText: "OK", // erst wenn OK geklickt wird, dann gehts weiter
|
||||
timeText: "Uhrzeit", // Texte dazu
|
||||
hourText: "Stunde",
|
||||
onClose: function (dateText, inst) { // was passiert, wenn OK gedrückt wird:
|
||||
if(dateText != "") {
|
||||
var dt = moment(dateText).format('YYYY-MM-DD HH:mm');
|
||||
$("#newtermin").html(dt);
|
||||
sendobject.newtermin=dt;
|
||||
showFertig();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Datepicker auf Deutsch einstellen
|
||||
$.datepicker.regional['de'] = {
|
||||
closeText: '',
|
||||
prevText: '<',
|
||||
nextText: '>',
|
||||
currentText: '',
|
||||
monthNames: ['Januar','Februar','März','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Dezember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dez'],
|
||||
dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
|
||||
dayNamesShort: ['SON','MON','DIE','MIT','DON','FRE','SAM'],
|
||||
dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
weekHeader: 'KW',
|
||||
dateFormat: 'yyyy-mm-dd',
|
||||
firstDay: 1,
|
||||
isRTL: false,
|
||||
showMonthAfterYear: false,
|
||||
yearSuffix: ''
|
||||
};
|
||||
$.datepicker.setDefaults($.datepicker.regional['de']); // diese Einstellung nun übernehmen
|
||||
|
||||
// Buttons
|
||||
$('#btncancel').click(()=>location.reload());
|
||||
|
||||
$('#btnsend').click(()=>{
|
||||
console.log("Sende an Datenbank:");
|
||||
console.log(sendobject);
|
||||
clearAll(0);
|
||||
let cmd = {
|
||||
stattgefunden: sendobject.stattgefunden ? 1 : 0,
|
||||
id: url_id,
|
||||
cmd: 'UPDATEAFTER'
|
||||
};
|
||||
if(sendobject.stattgefunden) { // der Termin hat stattgefunden
|
||||
cmd.besucher = sendobject.anzahl;
|
||||
cmd.remark = sendobject.rem;
|
||||
cmd.bezahlt = (function() {
|
||||
console.log("sendobjc:", sendobject);
|
||||
if( sendobject.spende == 1 ) {
|
||||
return `bar Kasse (€${sendobject.betrag})`;
|
||||
} else if (sendobject.spende == 2) {
|
||||
return 'Überweisung';
|
||||
} else if (sendobject.spende == 3) {
|
||||
return 'Spendenkasse';
|
||||
} else return 'Keine';
|
||||
})()
|
||||
} else { // der Termin hat NICHT stattgefunden
|
||||
cmd.besucher = sendobject.anzahl;
|
||||
cmd.remark = '';
|
||||
cmd.bezahlt = 'Keine';
|
||||
if(sendobject.newtermin != '1900-01-01') {
|
||||
cmd.wtermin = sendobject.newtermin; // er wurde verlegt, also gibts einen neuen Wunschtermin
|
||||
} else {
|
||||
cmd.status = 3; // nicht stattgefunden -> abgesagt
|
||||
}
|
||||
}
|
||||
console.log(cmd);
|
||||
if(url_id != null) {
|
||||
doAjaxCall_arr(ajaxURL,cmd,showajaxerg);
|
||||
}
|
||||
});
|
||||
|
||||
function clearAll(was) {
|
||||
$('#tosend').addClass('hide');
|
||||
$('#inputstatt').addClass('hide');
|
||||
$('#fertig').addClass('hide');
|
||||
$('#verschbn').addClass('hide');
|
||||
$('#inputabs').addClass('hide');
|
||||
$('#besucher').addClass('hide');
|
||||
$('#diespende').addClass('hide');
|
||||
$('#barspend').addClass('hide');
|
||||
$('#remarks').addClass('hide');
|
||||
}
|
||||
|
||||
|
||||
function showajaxerg(erg) {
|
||||
console.log("AjaxErg: ", erg);
|
||||
$('#beendet').removeClass('hide');
|
||||
}
|
||||
|
||||
// Klick auf den Anleitungs-Button
|
||||
$('#btnMan').click(function() {
|
||||
$("#anleitung").dialog('open');
|
||||
});
|
||||
|
||||
|
||||
// 3. Dialog für die Anleitung
|
||||
// Dieser hat KEINEN Button (wird über das Schließkreuz beendet) und
|
||||
// eine etwas kleinere Schrift
|
||||
$("#anleitung").dialog({
|
||||
autoOpen: false,
|
||||
width: 400,
|
||||
modal: true,
|
||||
position: {my: 'top', at: 'top', of: window },
|
||||
title: 'Anleitung',
|
||||
open:
|
||||
function() {
|
||||
$(this).load('beoanswer.html');
|
||||
},
|
||||
buttons: [
|
||||
{
|
||||
text: "Abbrechen",
|
||||
click : function() {
|
||||
$(this).dialog("close");
|
||||
},
|
||||
width: 150,
|
||||
}
|
||||
],
|
||||
});
|
||||
|
||||
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user