(function() { 'use strict'; function classReg(cl) { return new RegExp('(\\s|^)'+ cl +'(\\s|$)'); } function hasClass(el, cl) { return el.className.match(classReg(cl)); } function addClass(el, cl) { if (!hasClass(el, cl)) { el.className += ' ' + cl; } } function removeClass(el, cl) { if (hasClass(el, cl)) { el.className = el.className.replace(classReg(cl), ''); } } function extend(obj1, obj2) { var obj = {}; for (var key in obj1) { obj[key] = obj2[key] === undefined ? obj1[key] : obj2[key]; } return obj; } var melde = function(el, opts) { this.melde = el, this.triggerBtn = document.querySelectorAll('[data-trigger-melde="' + this.melde.id + '"]'), this.closeBtn = this.melde.querySelectorAll('[data-close-melde]'), this.body = document.body, this.defaults = { activeClass: 'melde--active', bodyClass: 'melde-is-active', overlay: true, overlayClass: 'melde__overlay', openCallback: null, closeCallback: null }, this.opts = extend(this.defaults, opts); }; melde.prototype = { init: function() { this.meldeTriggering(); }, meldeTriggering: function() { var self = this; for (var i = 0; i < self.triggerBtn.length; i++) { self.triggerBtn[i].addEventListener('click', self.openmelde.bind(this)); } }, openmelde: function() { var self = this; if (self.opts.overlay) { self.appendOverlay(); } addClass(self.melde, self.opts.activeClass); addClass(self.body, self.opts.bodyClass); for (var i = 0; i < self.closeBtn.length; i++) { self.closeBtn[i].addEventListener('click', this.closemelde.bind(this)); } if (self.opts.openCallback) { self.opts.openCallback.call(self); } setTimeout(function() { self.closeBtn[0].focus(); }, 500); }, closemelde: function() { var self = this; removeClass(self.melde, self.opts.activeClass); removeClass(self.body, self.opts.bodyClass); for (var i = 0; i < self.closeBtn.length; i++) { self.closeBtn[i].removeEventListener('click', this.closemelde.bind(this)); } if (self.opts.overlay) { self.removeOverlay(); } if (self.opts.closeCallback) { self.opts.closeCallback.call(self); } }, appendOverlay: function() { var self = this; self.overlay = document.createElement('div'); self.overlay.className = self.opts.overlayClass; self.melde.appendChild(self.overlay); }, removeOverlay: function() { var self = this; setTimeout(function() { self.overlay.remove(); }, 500); } }; window.melde = melde; })(); var meldeEl_11 = document.getElementById('melde_11'); var meldeInst = new melde(meldeEl_11, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp11 = new getXMLObject(); function ajaxNewspost_11() { if(xmlhttp11) { var melde_message = document.getElementById("melde_message_11").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_11").value); xmlhttp11.open("POST","../meldung_send.php",true); xmlhttp11.onreadystatechange = handleServerResponse11; xmlhttp11.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp11.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse11() { if (xmlhttp11.readyState == 4) { if(xmlhttp11.status == 200) { document.getElementById("melde_message_11").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_12 = document.getElementById('melde_12'); var meldeInst = new melde(meldeEl_12, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp12 = new getXMLObject(); function ajaxNewspost_12() { if(xmlhttp12) { var melde_message = document.getElementById("melde_message_12").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_12").value); xmlhttp12.open("POST","../meldung_send.php",true); xmlhttp12.onreadystatechange = handleServerResponse12; xmlhttp12.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp12.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse12() { if (xmlhttp12.readyState == 4) { if(xmlhttp12.status == 200) { document.getElementById("melde_message_12").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_15 = document.getElementById('melde_15'); var meldeInst = new melde(meldeEl_15, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp15 = new getXMLObject(); function ajaxNewspost_15() { if(xmlhttp15) { var melde_message = document.getElementById("melde_message_15").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_15").value); xmlhttp15.open("POST","../meldung_send.php",true); xmlhttp15.onreadystatechange = handleServerResponse15; xmlhttp15.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp15.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse15() { if (xmlhttp15.readyState == 4) { if(xmlhttp15.status == 200) { document.getElementById("melde_message_15").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_16 = document.getElementById('melde_16'); var meldeInst = new melde(meldeEl_16, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp16 = new getXMLObject(); function ajaxNewspost_16() { if(xmlhttp16) { var melde_message = document.getElementById("melde_message_16").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_16").value); xmlhttp16.open("POST","../meldung_send.php",true); xmlhttp16.onreadystatechange = handleServerResponse16; xmlhttp16.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp16.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse16() { if (xmlhttp16.readyState == 4) { if(xmlhttp16.status == 200) { document.getElementById("melde_message_16").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_38 = document.getElementById('melde_38'); var meldeInst = new melde(meldeEl_38, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp38 = new getXMLObject(); function ajaxNewspost_38() { if(xmlhttp38) { var melde_message = document.getElementById("melde_message_38").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_38").value); xmlhttp38.open("POST","../meldung_send.php",true); xmlhttp38.onreadystatechange = handleServerResponse38; xmlhttp38.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp38.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse38() { if (xmlhttp38.readyState == 4) { if(xmlhttp38.status == 200) { document.getElementById("melde_message_38").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_39 = document.getElementById('melde_39'); var meldeInst = new melde(meldeEl_39, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp39 = new getXMLObject(); function ajaxNewspost_39() { if(xmlhttp39) { var melde_message = document.getElementById("melde_message_39").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_39").value); xmlhttp39.open("POST","../meldung_send.php",true); xmlhttp39.onreadystatechange = handleServerResponse39; xmlhttp39.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp39.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse39() { if (xmlhttp39.readyState == 4) { if(xmlhttp39.status == 200) { document.getElementById("melde_message_39").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_40 = document.getElementById('melde_40'); var meldeInst = new melde(meldeEl_40, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp40 = new getXMLObject(); function ajaxNewspost_40() { if(xmlhttp40) { var melde_message = document.getElementById("melde_message_40").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_40").value); xmlhttp40.open("POST","../meldung_send.php",true); xmlhttp40.onreadystatechange = handleServerResponse40; xmlhttp40.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp40.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse40() { if (xmlhttp40.readyState == 4) { if(xmlhttp40.status == 200) { document.getElementById("melde_message_40").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } } var meldeEl_595 = document.getElementById('melde_595'); var meldeInst = new melde(meldeEl_595, { openCallback: function() { console.log('Callback for when melde is open.'); }, closeCallback: function() { console.log('Callback for when melde is closed.'); } }); meldeInst.init(); var xmlhttp595 = new getXMLObject(); function ajaxNewspost_595() { if(xmlhttp595) { var melde_message = document.getElementById("melde_message_595").value; var melde_id = encodeURIComponent(document.getElementById("melde_id_595").value); xmlhttp595.open("POST","../meldung_send.php",true); xmlhttp595.onreadystatechange = handleServerResponse595; xmlhttp595.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp595.send("message=" + melde_message + "&melde_id=" + melde_id); } } function handleServerResponse595() { if (xmlhttp595.readyState == 4) { if(xmlhttp595.status == 200) { document.getElementById("melde_message_595").value=''; } else { alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!"); } } }