(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_1178586 = document.getElementById('melde_1178586');
var meldeInst = new melde(meldeEl_1178586, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp1178586 = new getXMLObject();
function ajaxNewspost_1178586() {
if(xmlhttp1178586) {
var melde_message = document.getElementById("melde_message_1178586").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_1178586").value);
xmlhttp1178586.open("POST","../meldung_send.php",true);
xmlhttp1178586.onreadystatechange = handleServerResponse1178586;
xmlhttp1178586.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp1178586.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse1178586() {
if (xmlhttp1178586.readyState == 4) {
if(xmlhttp1178586.status == 200) {
document.getElementById("melde_message_1178586").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}
var meldeEl_645110 = document.getElementById('melde_645110');
var meldeInst = new melde(meldeEl_645110, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp645110 = new getXMLObject();
function ajaxNewspost_645110() {
if(xmlhttp645110) {
var melde_message = document.getElementById("melde_message_645110").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_645110").value);
xmlhttp645110.open("POST","../meldung_send.php",true);
xmlhttp645110.onreadystatechange = handleServerResponse645110;
xmlhttp645110.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp645110.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse645110() {
if (xmlhttp645110.readyState == 4) {
if(xmlhttp645110.status == 200) {
document.getElementById("melde_message_645110").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}
var meldeEl_342787 = document.getElementById('melde_342787');
var meldeInst = new melde(meldeEl_342787, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp342787 = new getXMLObject();
function ajaxNewspost_342787() {
if(xmlhttp342787) {
var melde_message = document.getElementById("melde_message_342787").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_342787").value);
xmlhttp342787.open("POST","../meldung_send.php",true);
xmlhttp342787.onreadystatechange = handleServerResponse342787;
xmlhttp342787.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp342787.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse342787() {
if (xmlhttp342787.readyState == 4) {
if(xmlhttp342787.status == 200) {
document.getElementById("melde_message_342787").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}