// CALENDAR

function load_calendar(){

	putcontent("functions/calendar.php", "calendar");

}

function update_calendar(timestamp){

	putcontent("functions/calendar.php?displaytime=" + timestamp,"calendar");

}

function update_results(timefrom,timeto){
	
	putcontent("functions/calendar_events.php?f="+timefrom+ "&t="+timeto,"results");
	document.getElementById('subtitle').innerHTML='Resultate';

}




function update_timer(){

	live_update(document.getElementById("hdate").innerHTML);

	setTimeout("update_timer();",5000); // Repeating update after every 5 seconds

}



function live_update(timestamp){

	update_calendar(timestamp);

}



function lengthcheck(element,maxlength){

var textinput = document.getElementById(element).value;

	if(textinput.length > maxlength){
	
		document.getElementById("lengthinfo").innerHTML = "Der Text &uuml;berschreitet die maximale Länge von " + maxlength + " Zeichen";
		
		document.getElementById("beschreibung").value = textinput.substring(0,maxlength + 1);
		
	} else {
	
		document.getElementById("lengthinfo").innerHTML = "";
	
	}

}

// SITE FUNCTIONS

function unix_timestamp(){
var timestamp = Math.round(new Date().getTime() / 1000);
return timestamp;
}

function dynamic_comment_adding(name,comment_id,into_id, img_id){
	
	
	var comment = document.getElementById(comment_id).value;
	if(comment != ""){
	var ts = unix_timestamp() - 10;
	
	document.getElementById(into_id).innerHTML = '<div  class="avatar_comments">' + img_id + '</div><span><div class="article_additional_title">' + name + '</div></span><span><div class="article_subinfo"><div id="relative_date_dyn">...</div></div></span><div class="article_light_text" style="padding-left:35px; clear:left;">' + comment + '</div><div class="commentrepeat"></div>';
	get_relative_timestamp("functions/get_timestamp.php?time=" + ts);
	setTimeout("reset_comment()",800);
	
	}
}


function delete_comment(comment_id,element_id){
var answer = confirm ("Beitrag wird entfernt.");
		if (answer){
			
					try { document.getElementById("element_rep_nr_" + (element_id + 1)).style.display = 'none';} catch(e) {}
				try {  document.getElementById("element_com_nr_" + element_id).style.display = 'none';
				} catch(e) {}
				
				try{
					silentrun("functions/remove_comment.php?id=" + comment_id);
				} catch(e) {}
				
		}
 }


function reset_comment(){
	document.getElementById("new_comment").value = "";
}
// renders the 5 Stars with accordingly empty and full stars


// Ajax sets the rating of the article
function set_rating(rating,article_id){
silentrun_set_rating("functions/set_rating.php?id=" + article_id + "&rating="+ rating,article_id);
}

// Hover effect for the stars
function display_change_rating(rating){
var star_class = "";

	for(i = 0;i<5;i++){
			if(rating > i){
			star_class = "rating_star";
		} else {
			star_class = "rating_no_star";
		}
	document.getElementById("rating_star_" + i).className = star_class;
	}
	
}

function restore_rating(rating){
	display_change_rating(rating);
}

function element_visibility_switch(elementid){
blockstyle = document.getElementById(elementid).style.display;
if(blockstyle == 'block'){
document.getElementById(elementid).style.display = 'none';
} else {
document.getElementById(elementid).style.display = 'block';
}

}

function createXMLHttpRequest() {
	if (typeof window.XMLHttpRequest != 'undefined') { return new XMLHttpRequest();
	}
		if( typeof window.XMLHttpRequest == 'undefined' ) XMLHttpRequest = function() {
		
		try {  return new ActiveXObject("Msxml2.XMLHTTP.6.0") 	} catch(e) {}
		try {  return new ActiveXObject("Msxml2.XMLHTTP.3.0") 	} catch(e) {}
		try {  return new ActiveXObject("Msxml2.XMLHTTP") 		} catch(e) {}
		try {  return new ActiveXObject("Microsoft.XMLHTTP") 	} catch(e) {}
		
		throw new Error("Browser nicht unterst&uuml;tzt!");
		
		}
	}

function putcontent(url, componentid){

	try{
	var request = createXMLHttpRequest();
	request = createXMLHttpRequest();
	} catch(e){ document.getElementById(componentid).innerHTML = "Ihr Browser wird nicht unterst&uuml;tzt."; }


	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
		var node = document.createTextNode(request.responseText);
		document.getElementById(componentid).innerHTML = request.responseText; // Adding Javascript Response
		} 
	}
	request.open("GET", url, true);
	request.send(url);
	
}

function getcontentreturn(url){

	try{
	var request = createXMLHttpRequest();
	request = createXMLHttpRequest();
	} catch(e){ document.getElementById(componentid).innerHTML = "Ihr Browser wird nicht unterst&uuml;tzt."; }

	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
		var node = document.createTextNode(request.responseText);
		
		var textout =  request.responseText;
		if(textout == "trueXMD"){
document.getElementById("oldpw").style.display = 'none';
document.getElementById("realtimepwcheck").innerHTML = "";
document.getElementById("realtimepwcheck").innerHTML = "<img src=\"images/icon_pw_accept.gif\" />";
document.getElementById("newpw1").focus();
}
		// document.getElementById("newpw1").value = request.responseText; // Adding Javascript Response
		} 
	}
	request.open("GET", url, true);
	request.send(url);
	
}

function silentrun(url){
	
		try{
	var request = createXMLHttpRequest();
	request = createXMLHttpRequest();
	} catch(e){
	}

	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
		var textout =  request.responseText;
		} 
	}
	request.open("GET", url, true);
	request.send(url);
}


function get_relative_timestamp(url){
	
	try{
	var request = createXMLHttpRequest();
	request = createXMLHttpRequest();
	} catch(e){
	}

	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
		// var node = document.createTextNode(request.responseText);
		var textout =  request.responseText;
		// alert(textout);
		document.getElementById("relative_date_dyn").innerHTML = textout;
		} 
	}
	
	request.open("GET", url, true);
	request.send(url);
}


function silentrun_set_rating(url,article_id){
	
		try{
	var request = createXMLHttpRequest();
	request = createXMLHttpRequest();
	} catch(e){
	}

	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
		var node = document.createTextNode(request.responseText);
		var textout =  request.responseText;
			if(textout == "RATEBLOCK"){
				// display_rating(textout,"Dieses Video kann nicht bewertet werden, da Sie nicht eingeloggt sind oder weil Sie es bereits bewertet haben");
				update_rating("functions/get_rating.php?id=" + article_id,"<div class=\"content_error\">Sie haben dieses Video bereits bewertet.</div>");
			} else if(textout == "LOGINERROR"){
				update_rating("functions/get_rating.php?id=" + article_id,"<div class=\"content_error\">Sie m&uuml;ssen eingeloggt sein um Videos zu bewerten.</div>");
			} else { 
			update_rating("functions/get_rating.php?id=" + article_id,"<div class=\"article_text\">Danke f&uuml;r Ihre Bewertung</div>");
			}
		
		} 
	}
	
	request.open("GET", url, true);
	request.send(url);
}

function update_rating(url,message){
	
	try{
		var request = createXMLHttpRequest();
		request = createXMLHttpRequest();
	} catch(e){ 
		// document.getElementById(componentid).innerHTML = "Ihr Browser wird nicht unterst&uuml;tzt."; 
	}

	request.onreadystatechange = function(){ 
		if (request.readyState == 4 && request.status == 200){ 
			var node = document.createTextNode(request.responseText);
			var textout =  request.responseText;
			display_rating(textout,message);
		} 
	}
	request.open("GET", url, true);
	request.send(url);
}

