var isIE =   navigator.userAgent.indexOf("MSIE") > -1
          && navigator.userAgent.indexOf("Opera") == -1;

var HeightCorrector = 50;
var WidthCorrector = 6;



function PopUpAGB()
{
 popupURL = "http://www.german-historica.de/site/popupagb.htm";
 window.open(popupURL, "GermanHistorica", "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=yes,width=1000,height=700,screenX=0,screenY=0");
}

function PopUpClose()
{
 self.close();
}


/**
 * extracts the uri of the current page
 */
function getURI()
{
	var loc = window.location + "";
	return loc.match(/(\/[^\/?]+)+/)[0];
}


function RemoveSpaces(inp) {
	var buffer = '';
	for (z=0; z < inp.length; z++)
		if(inp.charAt(z) != ' ') buffer = buffer + inp.charAt(z);
	return buffer;
}

function setFocus(element)
{
	element.focus();

	if(isIE)
	{
		if(element.oldClassName == null)
			element.oldClassName = element.className;
		element.className = "inputfocus";
	}

	if(element.select)
		element.select();
}

function PageLoaded()
{

	if(isIE)
		setFocusOnInputs()
	hideLoading();
}

function PageLoadedLB()
{
	//$(function() {$('a[rel^=lightbox]').lightBox();});
	//$(function() {$('a.lightbox').lightBox();});
}

function setFocusOnInputs()
{
	var inputs = document.getElementsByTagName("input");

	for(var i = 0; i < inputs.length; i++)
	{
		var input = inputs[i];
		if(input.type == "text"
			|| input.type == "password")
		{
			if(input.oldClassName == null)
				input.oldClassName = input.className;

			input.oldFocus = (input.onfocus)?input.onfocus:function(){};
			input.onfocus = function() { this.className = "inputfocus"; this.oldFocus(); };

			input.oldBlur = (input.onblur)?input.onblur:function(){};
			input.onblur = function() { this.className = this.oldClassName; this.oldBlur(); };
		}
	}

	inputs = document.getElementsByTagName("textarea");

	for(i = 0; i < inputs.length; i++)
	{
		var input = inputs[i];

		if(input.oldClassName == null)
			input.oldClassName = input.className;

		input.oldFocus = (input.onfocus)?input.onfocus:function(){};
		input.onfocus = function() { this.className = "inputfocus"; this.oldFocus(); };

		input.oldBlur = (input.onblur)?input.onblur:function(){};
		input.onblur = function() { this.className = this.oldClassName; this.oldBlur(); };
	}
}

function onInputFocus()
{
	doInputFocus(this);
}

function doInputFocus(element)
{
	element.oldClassName = element.className;
	element.className = "inputfocus";
}

function onInputBlur()
{
	this.className = this.oldClassName;
}

function filterKey(event, keycode, fun)
{
	var pressedcode;
	if(window.event)
		pressedcode = window.event.keyCode;
	else
		pressedcode = event.which;

	if(pressedcode == keycode)
	{
		fun();
		return false;
	}
	else
		return true;
}

function hideLoading()
{
	document.body.style.cursor = 'auto';
	if(document.getElementById('PageLoading') != null)
		document.getElementById('PageLoading').style.visibility = 'hidden';
}

function showLoading()
{
	if(document.getElementById('PageLoading') != null)
		document.getElementById('PageLoading').style.visibility = 'visible';
}

function hideMeldung()
{
	document.body.style.cursor = 'auto';
	if(document.getElementById('PageMeldung') != null)
		document.getElementById('PageMeldung').style.visibility = 'hidden';
}

function showMeldung()
{
	if(document.getElementById('PageMeldung') != null)
		document.getElementById('PageMeldung').style.visibility = 'visible';
}


/**
 * Functions used by NumberInput-Element
 */

function increase(input)
{
	if(input.value == '')
		input.value = 1;
	else
		if(!isNaN(input.value))
			input.value = (parseInt(input.value)+1);

	return false;
}

function decrease(input)
{
	if(input.value == '')
		input.value = 0;
	else
		if(!isNaN(input.value))
			input.value = (parseInt(input.value)-1);

	return false;
}


// focuses first text input element
function focusFirstTextinput()
{
	var els = document.forms[0].elements;
	for(var i = 0; i < els.length; i++)
	{
		var el = els[i];
		if(el.type.toLowerCase() == 'text' || el.tagName.toLowerCase() == 'textarea')
		{
			setFocus(el);
			return;
		}
	}
}

var inputElementNames = new Array("input", "textarea", "select");
// gets all sub input elements
function collectQueryString(el)
{
	var qs = "";
	for(var e = 0; e < inputElementNames.length; e++)
	{
		var inputs = el.getElementsByTagName(inputElementNames[e]);
		for(var i = 0; i < inputs.length; i++)
		{
			var input = inputs[i];

			// only use enabled
			if(input.disabled)
				continue;
			// only use checked values for checkbox and radio
			if((input.type == 'radio' || input.type == 'checkbox')
					&& !input.checked)
				continue;

			if(qs.length > 0)
				qs += "&";
			qs += input.name+"="+encodeURIComponent(input.value);
		}
	}
	return qs;
}



function UserChange()
    {
    $.ajax({
     type: "POST",
     url: "/shopx.php",
     data: "userchange=doit",
     success: function(msg){
        var rstatus=0;
        var rmeldung=0;
        var rfehler=0;
        var rlocation=0;
        var rueck=msg.split('&&');
        for (var i in rueck) {
          var element=rueck[i].split('==');
          if (element[0] == 'status')     rstatus    = element[1];
          if (element[0] == 'fehler')     rfehler    = element[1];
          if (element[0] == 'meldung')    rmeldung   = element[1];
          if (element[0] == 'location')   rlocation  = element[1];
          }
        if (rstatus == 'OK') {
          location.replace(rlocation);
          }
        }
    });
    }

function OpenArtikel(artikelnr)
    {
    searchurl = "/main/suche.htm?suchartikel="+artikelnr+"&suche=start";
    location.replace(searchurl);
    }

function GotoClearKart(kartlocation)
    {
    karturl = "http://"+ kartlocation +".german-historica.de/main/clearkart.htm";
    //wait(10000);
    //alert("gotoCK: "+karturl);
    location.replace(karturl);
    }

function wait(msecs)
    {
    var start = new Date().getTime();
    var cur = start
    while(cur - start < msecs)
        {
        cur = new Date().getTime();
        }
    }

function ClearKart(kartlocation)
    {
    karturl = ""+ kartlocation +".german-historica.de/shopx.php";
    $.ajax({
     type: "POST",
     url: karturl,
     data: "clearkart=doit",
     success: function(msg){
        var rstatus=0;
        var rfehler=0;
        var rueck=msg.split('&&');
        for (var i in rueck) {
          var element=rueck[i].split('==');
          if (element[0] == 'status')     rstatus    = element[1];
          if (element[0] == 'fehler')     rfehler    = element[1];
          }
        if (rstatus == 'OK') {
          //alert("OK");
          //location.replace(rlocation);
          }
        if (rstatus == 'ERROR') {
          //alert("ERROR" +  rfehler);
          //location.replace(rlocation);
          }
        }
    });
    }
