(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_645115 = document.getElementById('melde_645115');
var meldeInst = new melde(meldeEl_645115, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp645115 = new getXMLObject();
function ajaxNewspost_645115() {
if(xmlhttp645115) {
var melde_message = document.getElementById("melde_message_645115").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_645115").value);
xmlhttp645115.open("POST","../meldung_send.php",true);
xmlhttp645115.onreadystatechange = handleServerResponse645115;
xmlhttp645115.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp645115.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse645115() {
if (xmlhttp645115.readyState == 4) {
if(xmlhttp645115.status == 200) {
document.getElementById("melde_message_645115").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}
var meldeEl_342457 = document.getElementById('melde_342457');
var meldeInst = new melde(meldeEl_342457, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp342457 = new getXMLObject();
function ajaxNewspost_342457() {
if(xmlhttp342457) {
var melde_message = document.getElementById("melde_message_342457").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_342457").value);
xmlhttp342457.open("POST","../meldung_send.php",true);
xmlhttp342457.onreadystatechange = handleServerResponse342457;
xmlhttp342457.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp342457.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse342457() {
if (xmlhttp342457.readyState == 4) {
if(xmlhttp342457.status == 200) {
document.getElementById("melde_message_342457").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}
var meldeEl_342442 = document.getElementById('melde_342442');
var meldeInst = new melde(meldeEl_342442, {
openCallback: function() {
console.log('Callback for when melde is open.');
},
closeCallback: function() {
console.log('Callback for when melde is closed.');
}
});
meldeInst.init();
var xmlhttp342442 = new getXMLObject();
function ajaxNewspost_342442() {
if(xmlhttp342442) {
var melde_message = document.getElementById("melde_message_342442").value;
var melde_id = encodeURIComponent(document.getElementById("melde_id_342442").value);
xmlhttp342442.open("POST","../meldung_send.php",true);
xmlhttp342442.onreadystatechange = handleServerResponse342442;
xmlhttp342442.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp342442.send("message=" + melde_message + "&melde_id=" + melde_id);
}
}
function handleServerResponse342442() {
if (xmlhttp342442.readyState == 4) {
if(xmlhttp342442.status == 200) {
document.getElementById("melde_message_342442").value='';
}
else {
alert("Upsal! Da hat es jetzt irgendwo ein Problem geben! Probier es einfach nochmal!");
}
}
}