﻿function verifyCompatibleBrowser() {
    this.ver = navigator.appVersion
    this.dom = document.getElementById ? 1 : 0
    this.ie5 = (this.ver.indexOf("MSIE 5") > -1 && this.dom) ? 1 : 0;
    this.ie4 = (document.all && !this.dom) ? 1 : 0;
    this.ns5 = (this.dom && parseInt(this.ver) >= 5) ? 1 : 0;
    this.ns4 = (document.layers && !this.dom) ? 1 : 0;
    this.bw = (this.ie5 || this.ie4 || this.ns4 || this.ns5)
    return this
}
bw = new verifyCompatibleBrowser()

var speed = 500
var loop, timer

function ConstructObject(obj, nest) {
    nest = (!nest) ? '' : 'document.' + nest + '.'
    this.el = bw.dom ? document.getElementById(obj) : bw.ie4 ? document.all[obj] : bw.ns4 ? eval(nest + 'document.' + obj) : 0;
    this.css = bw.dom ? document.getElementById(obj).style : bw.ie4 ? document.all[obj].style : bw.ns4 ? eval(nest + 'document.' + obj) : 0;
    this.scrollHeight = bw.ns4 ? this.css.document.height : this.el.offsetHeight
    this.clipHeight = bw.ns4 ? this.css.clip.height : this.el.offsetHeight
    this.up = MoveAreaUp; this.down = MoveAreaDown;
    this.MoveArea = MoveArea; this.x; this.y;
    this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}
function MoveArea(x, y) {
    this.x = x; this.y = y;
    this.css.left = this.x + 'px';
    this.css.top = this.y + 'px';
}
function MoveAreaDown(move) {
    if (this.y > -this.scrollHeight + objContainer.clipHeight) {
        this.MoveArea(0, this.y - move)
        if (loop) setTimeout(this.obj + ".down(" + move + ")", speed)
    }
}
function MoveAreaUp(move) {
    if (this.y < 0) {
        this.MoveArea(0, this.y - move)
        if (loop) setTimeout(this.obj + ".up(" + move + ")", speed)
    }
}
function PerformScroll(speed) {
    if (initialised) {
        loop = true;
        if (speed > 0) objScroller.down(speed)
        else objScroller.up(speed)
    }
}
var up = false;
function ScrollAllTheWay() {
    if (up == true) {
        objScroller.MoveArea(0, 0);
        up = false;
    }
    else {
        objScroller.MoveArea(0, -objScroller.scrollHeight + objContainer.clipHeight);
        up = true;
    }
}
function CeaseScroll() {
    loop = false
    if (timer) clearTimeout(timer)
}
var initialised;
function InitialiseScrollableArea() {
    objContainer = new ConstructObject('divContainer')
    objScroller = new ConstructObject('divContent', 'divContainer')
    objScroller.MoveArea(0, 0)
    objContainer.css.visibility = 'visible'
    initialised = true;
    if (objScroller.scrollHeight < objContainer.scrollHeight)
        document.getElementById('moreDiv').style.visibility = 'hidden';
    else
        document.getElementById('moreDiv').style.visibility = 'visible';

}

function displayStatusMsg(msgStr) {
    status = msgStr;
    document.returnValue = true;
}

function preloadImages() {
    var d = document; if (d.images) {
        if (!d.p) d.p = new Array();
        var i, j = d.p.length, a = preloadImages.arguments; for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) { d.p[j] = new Image; d.p[j++].src = a[i]; }
    }
}

function swapImgRestore() {
    var i, x, a = document.sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function findObj(n, d) {
    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 = findObj(n, d.layers[i].document); return x;
}

function swapImage() {
    var i, j = 0, x, a = swapImage.arguments; document.sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = findObj(a[i])) != null) { document.sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
}

function reloadPage(init) {  //reloads the window if Nav4 resized
    if (init == true) with (navigator) {
        if ((appName == "Netscape") && (parseInt(appVersion) == 4)) {
            document.pgW = innerWidth; document.pgH = innerHeight; onresize = reloadPage;
        }
    }
    else if (innerWidth != document.pgW || innerHeight != document.pgH) location.reload();
}

