/**********************************************************\
' Name     : default.js
' Purpose  : Default javascripts
' Created  : 2008-02-05; Internetfabriken
' Modified : 2008-03-25; Internetfabriken
' Comment  :
\**********************************************************/

// The mighty dollar function
function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

// Get a cookie by name
function GetCookie(name) 
{
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) 
    {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg) return GetCookieVal(j);
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break; 
    }
    return null;
}

// Get Cookie value
function GetCookieVal(offset)
{
    var endstr = document.cookie.indexOf (";", offset);
    if (endstr == -1) endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
}

// Set cookie by name
function SetCookie (name, value) 
{
    var argv = SetCookie.arguments;
    var argc = SetCookie.arguments.length;
    var expires = (argc > 2) ? argv[2] : null;
    var path = (argc > 3) ? argv[3] : null;
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;
    document.cookie = name + "=" + escape (value) +
        ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
        ((path == null) ? "" : ("; path=" + path)) +
        ((domain == null) ? "" : ("; domain=" + domain)) +
        ((secure == true) ? "; secure" : "");
}

// Delete cookie by name
function DeleteCookie(name) 
{    
    var exp = new Date();
    exp.setTime (exp.getTime() - 1000000000);
    SetCookie(name,'', exp.toGMTString());
}

// Show a layer
function ShowLayer(targetId)
{
    try
    {
        var target = $(targetId);
        target.style.display = 'block';
    }
    catch(err) { }
}

// Hide a layer
function HideLayer(targetId)
{
    try
    {
        var target = $(targetId);
        target.style.display = 'none';
    }
    catch(err) { }
}


// Show/Hide a layer
function ToggleLayer(targetId)
{
    try
    {
        var target = $(targetId);
        if (target.style.display == 'block') target.style.display = 'none';
        else target.style.display = 'block';
    }
    catch(err) { }
}

// Show/Hide a layer from a image
function ToggleLayerWithImage(targetId, imageId, showImageSrc, hideImageSrc)
{
    try
    {
        var target = $(targetId);
        var image = $(imageId);
        if (target.style.display == 'block')
        {
            target.style.display = 'none';
            image.src = hideImageSrc; 
        }
        else
        {
            target.style.display = 'block';
            image.src = showImageSrc;
        }
    }
    catch(err) { }
}

// Clear textbox if it's contents is the default value
function ClearTextBox(e1) {
    if (e1.defaultValue==e1.value) {
	    e1.value = "";
    }
}

// Update statistics for hotspots
function UpdateHotSpotStatistics(productName, productId, sponsorName, sponsorId)
{
    var xmlHttp;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e)
            {
               // Browser doesn't support ajax...
                return false;
            }
        }
    }
    
    var url='/Templates/Services/Sifo.ashx?Produkt=' + productName + '&ProductId=' + productId + '&Sponsor=' + sponsorName + '&SponsorId=' + sponsorId;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}