String.prototype.contains = function (string) {
    return this.indexOf(string) != -1;
}

Array.prototype.inArray = function (value) {
    var i;
    for (i=0; i < this.length; i++) {
        if (this[i] == value) {
            return true;
        }
    }
    return false;
};

location.getParameter = function (parameterName) {
    var queryString = this.search.substring(1);
    if (queryString != null) {
        var nameValuePairs = queryString.split("&");
        for(var i = 0; i < nameValuePairs.length; i++) {
            var nameValuePair = nameValuePairs[i].split("=");
            if (nameValuePair[0] == parameterName) {
                return nameValuePair[1];
            }
        }
    }
}

// Correctly handle PNG transparency in Win IE 5.5 or higher.
// http://homepage.ntlworld.com/bobosola. Updated 02-March-2004

function correctPNG() 
{
    for(var i=0; i<document.images.length; i++)
    {
        var img = document.images[i]
        var imgName = img.src.toUpperCase()
        // if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
        //if (imgName.indexOf(".PNG")!=-1)
        if (/png/i.test(imgName))
        {
            var imgID = (img.id) ? "id='" + img.id + "' " : ""
            var imgClass = (img.className) ? "class='" + img.className + "' " : ""
            var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
            var imgStyle = "display:inline-block;" + img.style.cssText 
            if (img.align == "left") imgStyle = "float:left;" + imgStyle
            if (img.align == "right") imgStyle = "float:right;" + imgStyle
            if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle            
            var strNewHTML = "<span " + imgID + imgClass + imgTitle
            + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
            + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
            + "(src=\'" + img.src + "\', sizingMethod='" + getImageScalingMethod(img.className) + "');\"></span>" 
            img.outerHTML = strNewHTML
            i = i-1
        }
    }
}

var scaleAsImageClasses = new Array(
    "offer-box-top",
    "offer-box-bottom",
    "offer-or-image"
);
    
function getImageScalingMethod(imgClassName) {
    return scaleAsImageClasses.inArray(imgClassName) ? "image" : "scale";
}

var fixedHeightClasses = new Array(
    "offers",
    "offer-group",
    "offers-box-background"
);

function setDivHeights() {
    var divs = document.getElementsByTagName("div");
    
    for (var i = 0; i < divs.length ;i++) {
        if (fixedHeightClasses.inArray(divs[i].className) ) {
            divs[i].style.height = divs[i].offsetHeight + "px";
        }
    }
}

if (window.addEventListener) {
    window.addEventListener("load", positionFooter, false);
} else if (window.attachEvent) {
    window.attachEvent("onload", positionFooter);
    window.attachEvent("onload", correctPNG);
    window.attachEvent("onload", setDivHeights);
}

function positionFooter() {
    document.body.getHeight = function() {    
        return (this.scrollHeight > this.offsetHeight) ? this.scrollHeight : this.offsetHeight;
    }
    
    var footer = document.getElementById("footer");
    
    if (footer) {
        var footerHeight = footer.offsetHeight;
        var bodyHeight = document.body.getHeight();
        
        footer.style.top = (bodyHeight - footerHeight) + "px";
    }
}
