﻿/**
 * Asynchroner AJAX-Requester (GET)
 * @param url
 * @param targetid
 * @return
 */
function doRequest(url, targetid)
{
	var http_request = null;
	var targetdiv = targetid || false;
	var urlmethod = 'GET';
	
	if (document.getElementById(targetdiv))
		document.getElementById(targetdiv).innerHTML = '<center><img src="/images/ajax-loader.gif" alt="Loading..." /></center>';
	if (window.XMLHttpRequest)
	{
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType)
		{
			http_request.overrideMimeType('text/xml');
			// zu dieser Zeile siehe weiter unten
		}
	} else if (window.ActiveXObject)
	{
		try
		{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e)
		{
			try
			{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e)
			{}
		}
	}

	if (!http_request)
	{
		alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
		return false;
	}
	if ( urlmethod == 'GET' ) {
		// Callback function
		http_request.onreadystatechange = function() {
			if (http_request.readyState == 4)
			{
				if (http_request.status == 200)
				{
					if ( targetdiv ) {
						document.getElementById(targetdiv).innerHTML = http_request.responseText;
					}
				}
			}
		};
		http_request.open(urlmethod, url, true);
		http_request.setRequestHeader("Pragma", "no-cache");
		http_request.setRequestHeader("Cache-Control", "must-revalidate");
		http_request.setRequestHeader("If-Modified-Since", document.lastModified);
		http_request.send(null);
		return;
	}
}

/**
 * Asynchroner AJAX-Requester (POST)
 * @param url
 * @param parameters
 * @return
 */
function makePOSTRequest(url, parameters) {
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/html');
		} else if (window.ActiveXObject) { // IE
			try {
					http_request = new ActiveXObject("Msxml2.XMLHTTP");
				} catch (e) {
					try {
						http_request = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (e) {}
				}
		}
		if (!http_request) {
			alert('Cannot create XMLHTTP instance');
			return false;
		}
		http_request.onreadystatechange = function() {
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					//alert(http_request.responseText);
					result = http_request.responseText;
					document.getElementById('CommentForm').innerHTML = result;
				} else {
					alert('There was a problem with the request.');
				}
			}
		};
		http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", parameters.length);
		http_request.setRequestHeader("Connection", "close");
		http_request.send(parameters);
	}
}


function get(obj, targetURL) {
	var ErrStr = '';
	var poststr = "title=" + encodeURI( document.getElementById("title").value ) +
					"&text=" + encodeURI( document.getElementById("text").value ) +
					"&articleid=" + encodeURI( document.getElementById("articleid").value ) +
					"&rating=" + encodeURI( document.getElementById("rating").value ) +
					"&c_action=" + encodeURI( document.getElementById("c_action").value ) +
					"&c_view=" + encodeURI( document.getElementById("c_view").value );

	if (document.getElementById("title").value == '') {
		ErrStr += 'Keine Überschrift<br />';
	}

	if (document.getElementById("rating").value == 0) {
		ErrStr += 'Keine Bewertung';
	}

	if ( ErrStr.length == 0 ) {
		makePOSTRequest(targetURL, poststr);
	} else {
		document.getElementById('myspan').innerHTML = ErrStr;
		return false;
	}
}

function visible(div, state) {
	if (state=='0') {
			document.getElementById(div).style.visibility = 'hidden';
			document.getElementById(div).style.display = 'none';		
	} else {
		document.getElementById(div).style.visibility = 'visible';
		document.getElementById(div).style.display = 'block';		
	}
}
		  
function toggle(div) {
	if (document.getElementById(div).style.display != 'none')
	{
		visible(div, 0);
	}
	else 
	{
		visible(div, 1);
	}
}

	function doSearch(param) 
	{
		if (param.length > 2) {
			doRequest('/ajax/bootstrap.php?c_mod=mod_search&c_view=SearchDropDown&search=' + param, 'searchresult');
		}
		if( document.getElementById('search_in').value != '') {
			visible('searchresult', 1);
		}
		else {
			visible('searchresult', 0);
		}
	}

	function emptyinput( input ) 
	{
		if( document.getElementById(input).value == 'Finden Sie ihr Produkt.....') 
		{
			document.getElementById(input).value = '';
		}
	} 

	function tickLiveShopping() {
		var d=new Date();
		var eventdate = new Date(d.getYear() + 1900, d.getMonth(), d.getDate() + 1, 0, 0, 0);
		count=Math.floor((eventdate.getTime()-d.getTime())/1000);
		days = Math.floor(count/(60*60*24));
		hours = Math.floor(count/(60*60));
		minutes = Math.floor(count/(60)) - (hours * 60);
		seconds = count - (minutes * 60) - (hours * 60 * 60);

		var s_hours = (hours < 10) ? '0' + hours : hours ;
		var s_minutes = (minutes < 10) ? '0' + minutes : minutes ;
		var s_seconds = (seconds < 10) ? '0' + seconds : seconds ;

		if(document.getElementById('ldate'))
			document.getElementById('ldate').innerHTML = s_hours+':'+s_minutes+':'+s_seconds;

		window.setTimeout("tickLiveShopping()", 1000);
	}
/*
	function initLiveShopping( div ) {
		doIt('/ajax/live-shopping/index.php', div);
		tickLiveShopping();
	}

	function initPComments( article_id, page, order, maxc ) {
		doIt('/ajax/product-rating/index.php?action=b&article_id=' + article_id , 'b_comment');
		doIt('/ajax/product-rating/index.php?action=view&article_id=' + article_id + '&page=' + page + '&order=' + order  + '&max=' + maxc, 'p_comment');
	}

	function initWriteComment( article_id ) {
		doRequest('/index.php?PContent=259&c_mod=mod_productrating&c_view=ProductRating_Page&ArticleID=' + article_id , 'w_comment');
	}

	function initMain() {
		doIt('/ajax/main/index.php', 'c_main');
	}
	
	function initAngebote(id)
	{
		doIt('/ajax/angebote/index.php?id='+id, 'angebote');	
	}
*/	
function initCoins() {
	doRequest('/ajax/coins/index.php', 'c_coins');
	doRequest('/ajax/coins/index.php?action=show', 'c_coins2');
}
	
function merken ( username, articleid) {
	doRequest('/ajax/merkzettel/index.php?action=add&username='+ username +'&articleid=' + articleid, 'div_merken');
}

function zettel ( username ) {
	doRequest('/ajax/merkzettel/index.php?action=show&username='+ username, 'div_merken');
}
	
function checkStars( value ) {
	document.getElementById('rating').value = value;
	for (i=1; i<=5; i++) {
		if (i <= value) {
			document.getElementById('stern_' + i).className='stern_active';
		} else {
			document.getElementById('stern_' + i).className='stern';
		}
	}
}

function checkForm() {
	var Error = false;
	var ErrorStr = '';

	if (document.getElementById('title').value == '') {
		Error = true;
		ErrorStr += 'Sie müssen eine Überschrift eingeben\n';
	}

	if (document.getElementById('rating').value == 0) {
		Error = true;
		ErrorStr += 'Sie müssen den Artikel bewerten\n';
	}

	if (Error) {
		alert(ErrorStr);
		return false;
	} else {
		return true;
	}
}

