﻿var dom = document.getElementById ? true : false;
var nn4 = document.layers ? true : false;
var ie4 = document.all ? true : false;
var ie = document.all;

function getObject(id) {
    if (dom) return document.getElementById(id);
    if (ie4) return document.all[id];
    if (nn4) return document.layers[id];
}

function setTop(id, val) {
    if (dom)
        getObject(id).style.top = val + "px";
    else if (ie4)
        getObject(id).style.pixelTop = val + "px";
    else if (nn4)
        getObject(id).top = val;
}

function setLeft(id, val) {
    if (dom)
        getObject(id).style.left = val + "px";
    else if (ie4)
        getObject(id).style.pixelLeft = val + "px";
    else if (nn4)
        getObject(id).top = val;
}

function setVisibility(id, val) {
    if (dom)
        getObject(id).style.visibility = val;
    else if (ie4)
        getObject(id).style.visibility = val;
    else if (nn4)
        getObject(id).visibility = val;
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}
//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function changeOpacByObject(opacity, obj) {

    var object = obj.style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if (document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    } else {
        opacity(id, 100, 0, millisec);
    }
}

/*
* Clear Form
*/
function clearForm() {
    var form, elements, i, elm;
    form = document.forms[0];

    if (document.getElementsByTagName) {
        elements = form.getElementsByTagName('input');
        for (i = 0, elm; elm = elements.item(i++); ) {
            if (elm.getAttribute('type') == "text") {
                elm.value = '';
            }
        }
    }

    // Actually looking through more elements here
    // but the result is the same.
    else {
        elements = form.elements;
        for (i = 0, elm; elm = elements[i++]; ) {
            if (elm.type == "text") {
                elm.value = '';
            }
        }
    }
}


/*** SWAP IMAGE Javascript ***/
function MM_swapImgRestore() { //v3.0
    var i, x, a = document.MM_sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function MM_preloadImages() { //v3.0
    var d = document; if (d.images) {
        if (!d.MM_p) d.MM_p = new Array();
        var i, j = d.MM_p.length, a = MM_preloadImages.arguments; for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) { d.MM_p[j] = new Image; d.MM_p[j++].src = a[i]; } 
    }
}

function MM_findObj(n, d) { //v4.01
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
    var i, j = 0, x, a = MM_swapImage.arguments; document.MM_sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) { document.MM_sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
}

/* Set background javascript taken from zoo */
function setBackground(section, subsection, bgStyle, clearFooterBg, startDate, endDate, previewCode) {
    var preview = false;
    var now = new Date();
    var skinCode = (typeof (spacQS) == "undefined") ? null : spacQS.getQueryStringParam("skin");

    section = (typeof (section) == "undefined" || section == null) ? "" : section;
    subsection = (typeof (subsection) == "undefined" || subsection == null) ? "" : subsection;
    clearFooterBg = (typeof (clearFooterBg) == "undefined") ? true : clearFooterBg;
    startDate = (typeof (startDate) == "undefined" || startDate == null) ? null : startDate;
    endDate = (typeof (endDate) == "undefined" || endDate == null) ? null : endDate;
    previewCode = (typeof (previewCode) == "undefined" || previewCode == null) ? "" : previewCode.toLowerCase();

    _nmsnSection = (typeof (_nmsnSection) == "undefined") ? "" : _nmsnSection;
    _nmsnSubSection = (typeof (_nmsnSubSection) == "undefined") ? "" : _nmsnSubSection;

    skinCode = (skinCode == null) ? null : skinCode.toLowerCase();
    preview = (skinCode == previewCode)

    if (preview || ((startDate == null || startDate <= now) && (endDate == null || endDate >= now))) {
        if ((section == _nmsnSection || section.length == 0) && (subsection == _nmsnSubSection || subsection.length == 0)) {
            if (clearFooterBg)
                window.onload = clearFooterBackground;

            // set the background
            document.body.style.background = bgStyle;
        }
    }
}

function clearFooterBackground() {
    // clear the footers background
    if (document.getElementById("footer_container") != null)
        document.getElementById("footer_container").style.background = "none";
}
