
var negids = ""; //global var beinhaltet alle ausgeblendeten SprücheIDs mit Komma getrennt, wird immer bei jedem Sprüche holen Ajax Request mitgesendet

//Array mit Sprüchen befüllen die default mäßig angehakt
var kategorienarraypos = new Array('neue_Sprueche');  //beinhaltet nur die ausgewaelten Kategorien, dauerhaft
//array voreingestellten Kategorien befüllen

//Benötigt, damit beim ersten Laden der Seite alle Sprüche angezeigt werden und zur Eventinitialisierung
window.addEvent('domready', function(){behandlekategorienarray(''); setevents(); getelemntsimplement(); });





function getelemntsimplement() {
if(!document.getElementsByClassName){
document.getElementsByClassName=function(cn){
var allT=document.getElementsByTagName('*'), allCN=[], i=0, a;
	while(a=allT[i++]){
	a.className==cn?allCN[allCN.length]=a:null;
	}
return allCN
}}}


function setevents() {

//Setzen der Events für Kategorienauswahl
$('kurz').addEvent('click', function(){ behandlekategorienarray('kurz'); });
$('Gutscheine').addEvent('click', function(){ behandlekategorienarray('Gutscheine'); });
$('Top').addEvent('click', function(){ behandlekategorienarray('Top'); });
$('Zitate').addEvent('click', function(){ behandlekategorienarray('Zitate'); });
$('Liebe').addEvent('click', function(){ behandlekategorienarray('Liebe'); });
$('Lebensweisheiten').addEvent('click', function(){ behandlekategorienarray('Lebensweisheiten'); });
$('Winter').addEvent('click', function(){ behandlekategorienarray('Winter'); });
$('lustig').addEvent('click', function(){ behandlekategorienarray('lustig'); });
$('Reime').addEvent('click', function(){ behandlekategorienarray('Reime'); });
$('frech').addEvent('click', function(){ behandlekategorienarray('frech'); });
$('geburtstag18').addEvent('click', function(){ behandlekategorienarray('18'); });
$('geburtstag20').addEvent('click', function(){ behandlekategorienarray('20'); });
$('geburtstag25').addEvent('click', function(){ behandlekategorienarray('25'); });
$('geburtstag30').addEvent('click', function(){ behandlekategorienarray('30'); });
$('geburtstag40').addEvent('click', function(){ behandlekategorienarray('40'); });
$('geburtstag50').addEvent('click', function(){ behandlekategorienarray('50'); });
$('geburtstag60').addEvent('click', function(){ behandlekategorienarray('60'); });
$('geburtstag70').addEvent('click', function(){ behandlekategorienarray('70'); });
$('geburtstag80').addEvent('click', function(){ behandlekategorienarray('80'); });
$('geburtstag90').addEvent('click', function(){ behandlekategorienarray('90'); });
$('geburtstag100').addEvent('click', function(){ behandlekategorienarray('100'); });
$('feiern').addEvent('click', function(){ behandlekategorienarray('feiern'); });
$('vergessen').addEvent('click', function(){ behandlekategorienarray('vergessen'); });
$('Kindergeburtstag').addEvent('click', function(){ behandlekategorienarray('Kindergeburtstag'); });
$('neue_Sprueche').addEvent('click', function(){ behandlekategorienarray('neue_Sprueche'); });

//Tipps
$('atipp01').addEvent('click', function(){ ajaxrequestfortipps('tipp01'); });
$('contact').addEvent('click', function(){ ajaxrequestforcontact('', ''); });

//Gelöschte Sprüche Speichern: Übergib die eingegeben Benutzerwerte User und Passwort
$('Laden').addEvent('click', function(){ ladenegids($('user').get('value'), $('password').get('value')); });
$('Speichern').addEvent('click', function(){ speicherenegids($('user').get('value'), $('password').get('value')); });

}

/*
//Derzeit Problem, dass nicht bestimmbar welcher Spruch ID zu verwenden ist
//evtl. lösbar sein, über parsing der bereits vergeben span ID
//wenn "live" Event in mootools implementiert muss nicht mehr nach jedem Ajax Request ausgeführt werden
function seteventssprueche() {
var zaehler01 = 1;
//Setzen der Events für Sprüche Löschbuttons
//Sprüche Löschbuttons haben ID in der Form: "negidsdelete9" etc.
while(zaehler01 < 1000) {
	if ( $chk($('negidsdelete'+zaehler01))) { $('negidsdelete'+zaehler01).addEvent('click', function(){ stacknegids('negidsdelete'+zaehler01);}); }
	zaehler01 = zaehler01 + 1;
	

}

}
*/


//wenn "live" Event in mootools implementiert muss nicht mehr nach jedem Ajax Request ausgeführt werden
function seteventstcontact() {
//Setzen der Events für Sprüche Löschbuttons
//Sprüche Löschbuttons haben ID in der Form: "negidsdelete9" etc.

	if ( $chk($('mailsubmit'))) { $('mailsubmit').addEvent('click', function(){ ajaxrequestforcontact($('userfrom').get('value'), $('mailbody').get('value'));}); }
}


function ladenegids(luser, lpassword) {
//
//get method because of IE bug
	 var request02 = new Request({url:'./content/getnegids.php', method: 'get', data: {'user': luser, 'password': lpassword}, 
		onRequest : function() {
			//Clear the text currently inside the results div.
			$('Statusladebereich').set('text', '');
			//Inject the new DOM elements into the results div.
			$('Statusladebereich').set('html', '<img src=\"./styles/images/indicator.gif\" width=\"48\" height=\"48\" alt=\"checking\" />');
		},
		onSuccess: function(txt) {
			
		if (txt == 'False' || txt == '') {
			$('Statusladebereich').set('text', 'Username oder Passwort falsch.'); }

		else { 	negids = txt;
			$('Statusladebereich').set('text', 'Ihre bereits gelöschten Sprüche sind nun ausgeblendet!');
			behandlekategorienarray(''); }
		},
		//Our request will most likely succeed, but just in case, we'll add an
		//onFailure method which will let the user know what happened.
		onFailure: function() {
			$('Statusladebereich').set('text', 'Keine Laden der Einstellungen moeglich');
		}
	});
	
	request02.send();



}

function speicherenegids(luser, lpassword) {
 var request03 = new Request({url:'./content/savenegids.php', method: 'get', data: {'user': luser, 'password': lpassword, 'negids': negids}, 
		onRequest : function() {
			//Clear the text currently inside the results div.
			$('Statusladebereich').set('text', '');
			//Inject the new DOM elements into the results div.
			$('Statusladebereich').set('html', '<img src=\"./styles/images/indicator.gif\" width=\"17\" height=\"17\" alt=\"checking\" />');
		},
		onSuccess: function(txt) {
			$('Statusladebereich').set('text', txt);
			
		},
		//Our request will most likely succeed, but just in case, we'll add an
		//onFailure method which will let the user know what happened.
		onFailure: function() {
			$('Statusladebereich').set('text', 'Keine Speichern der Einstellungen moeglich');
		}
	});
	
	request03.send();
}



function ajaxrequestforsprueche(lkategorien)  { //Ajax Request,  ersetzt <div id="ajaxresult"> Inhalt, zerstört alten Request nicht
	
//get method because of IE bug
	 var request = new Request.HTML({url:'./content/content20.php', method: 'get', link: 'chain', data: {'kategorienpos': lkategorien, 'negids': negids}, 
		onRequest : function(html) {
			//disable all checkboxes for further input
			$$('.check-me').each(function(elements) { elements.set('disabled','true') }); 
			//Clear the text currently inside the results div.
			$('ajaxresult').set('text', '');
			
			


			//Inject the new DOM elements into the results div.
			$('ajaxresult').set('html', '<img src=\"./styles/images/indicator.gif\" width=\"22\" height=\"22\" alt=\"checking\" />');
		},
		onSuccess: function(html) {
			//Clear the text currently inside the results div.
			$('ajaxresult').set('text', '');
			//Inject the new DOM elements into the results div.
			$('ajaxresult').adopt(html);
			
			//enable all checkboxes for further input
			$$('.check-me').each(function(elements) { elements.erase('disabled','true') }); 

			//Sprüche Events setzen
			//seteventssprueche();
		},
		//Our request will most likely succeed, but just in case, we'll add an
		//onFailure method which will let the user know what happened.
		onFailure: function() {
			$('ajaxresult').set('text', 'Keine Sprueche gefunden');
		}
	});
	document.getElementById('h4').style.visibility = "visible";
	request.send();

};

function ajaxrequestforcontact(luserfrom, lmailbody)  { //Ajax Request,  ersetzt <div id="ajaxresult"> Inhalt, zerstört alten Request nicht
	
//get method because of IE bug
	 var request = new Request.HTML({url:'./content/contact.php', method: 'get', link: 'chain', data: {'userfrom': luserfrom, 'mailbody': lmailbody}, 
		onRequest : function(html) {
			//Clear the text currently inside the results div.
			$('ajaxresult').set('text', '');
			//Inject the new DOM elements into the results div.
			$('ajaxresult').set('html', '<img src=\"./styles/images/indicator.gif\" width=\"22\" height=\"22\" alt=\"checking\" />');
		},
		onSuccess: function(html) {
			//Clear the text currently inside the results div.
			$('ajaxresult').set('text', '');
			//Inject the new DOM elements into the results div.
			$('ajaxresult').adopt(html);

			//Event setzen fuer submit
			seteventstcontact();
		},
		//Our request will most likely succeed, but just in case, we'll add an
		//onFailure method which will let the user know what happened.
		onFailure: function() {
			$('ajaxresult').set('text', 'Fehler');
		}
	});

	document.getElementById('h4').style.visibility = "hidden";
	request.send();

};


function ajaxrequestfortipps(tipp)  { //allgmein verfuegbaren Ajax Request,  ersetzt <div id="ajaxresult"> Inhalt, zerstört allten Request nicht
	
//get method because of IE bug
	 var request = new Request.HTML({url:'./content/' +tipp +'.php', method: 'get', link: 'chain', 
		onRequest : function(html) {
			//Clear the text currently inside the results div.
			$('ajaxresult').set('text', '');
			//Inject the new DOM elements into the results div.
			$('ajaxresult').set('html', '<img src=\"./styles/images/indicator.gif\" width=\"22\" height=\"22\" alt=\"checking\" />');
		},
		onSuccess: function(responseHTML) {
			//Clear the text currently inside the results div.
			$('ajaxresult').set('html', '');
			//Inject the new DOM elements into the results div.
			$('ajaxresult').adopt(responseHTML);
				
			
		},
		//Our request will most likely succeed, but just in case, we'll add an
		//onFailure method which will let the user know what happened.
		onFailure: function() {
			$('ajaxresult').set('text', 'Tipp nicht ladbar.');
		}
	});

	document.getElementById('h4').style.visibility = "hidden";

	//statistic
	piwikTracker.trackGoal(1); 

	request.send();

};


function behandlekategorienarray(clickedkategorie) {

//Piwik Statistics
//piwikTracker.trackLink( '/content20', 'addTransaction', clickedkategorie );

var lkategorien = ''; //local var beinhaltet alle ausgewählten Kategorien mit Komma getrennt
//Löscht oder trägt neue Kategorie in globales array und übergibt aktuelle Kategorien an Request

//Suche geklicktes Element, wenn vorhanden dann entferne, wenn nicht vorhanden füge es hinzu
if ( clickedkategorie != '') {
if ( kategorienarraypos.contains(clickedkategorie) )
{
kategorienarraypos.erase(clickedkategorie);
}
else
{
kategorienarraypos.include(clickedkategorie);
}
} 

//Untersuche gesamtes Array gefüllte Werte
var tmp01 = kategorienarraypos.length;
lkategorien = ''; //leer machen zum neu befüllen

while(tmp01 > 0){

//Befüllung der Kategorienvariable anhand der tatsächlichen Auswahl
if ( kategorienarraypos[tmp01-1] != '' ) {
lkategorien = lkategorien + kategorienarraypos[tmp01-1] + ',';
tmp01 = tmp01 - 1;
}
}

ajaxrequestforsprueche(lkategorien);

}  //function





function stacknegids(newnegid) {
//fuege neue auszublendende SpruecheIDs der globalen negid Speichervariable zu

negids = negids + newnegid + ",";

var tmp01 = "" + newnegid;
//setzt Spruch via css invisible
//document.getElementById(tmp01).style.color = "#ece8e3";

document.getElementById(tmp01).style.visibility = "hidden";
}




