
function getStyleObject(objectId) {
    // cross-browser function to get an object's style object given its id
    if(document.getElementById && document.getElementById(objectId)) {
	// W3C DOM
	return document.getElementById(objectId).style;
    } else if (document.all && document.all(objectId)) {
	// MSIE 4 DOM
	return document.all(objectId).style;
    } else if (document.layers && document.layers[objectId]) {
	// NN 4 DOM.. note: this won't find nested layers
	return document.layers[objectId];
    } else {
	return false;
    }
} // getStyleObject

function changeObjectVisibility(objectId, newVisibility) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.visibility = newVisibility;
	return true;
    } else {
	// we couldn't find the object, so we can't change its visibility
	return false;
    }
} // changeObjectVisibility

function moveObject(objectId, newXCoordinate, newYCoordinate) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.left = newXCoordinate;
	styleObject.top = newYCoordinate;
	return true;
    } else {
	// we couldn't find the object, so we can't very well move it
	return false;
    }
} // moveObject


function winPop(url,n,wid,height,scroll,toolbar,menubar) {
	var strOpt = '';
	strOpt = "height=" + height + ",width=" + wid + ",location=no";
	if (scroll==1) strOpt += ',scrollbars=yes';
	else strOpt += ',scrollbars=no';
	if (toolbar==1) strOpt += ',toolbar=yes';
	else strOpt += ',toolbar=no';
	if (menubar==1) strOpt += ',menubar=yes';
	else strOpt += ',menubar=no';
	var w = window.open(url,n,strOpt);
	w.focus();
}   
function winPopCenter(url, name, width, height, scroll, toolbar, menubar, resizable) {
	var winl = (screen.width-width)/2;
	var wint = (screen.height-height)/2;

	var strOpt = '';
	strOpt = "height=" + height + ",width=" + width + ",location=no,top=" + wint + ", left=" + winl;
	
	if (scroll==1) strOpt += ',scrollbars=yes';
	else strOpt += ',scrollbars=no';
	if (toolbar==1) strOpt += ',toolbar=yes';
	else strOpt += ',toolbar=no';
	if (menubar==1) strOpt += ',menubar=yes';
	else strOpt += ',menubar=no';
	if (resizable==1) strOpt += ',resizable=yes';
	else strOpt += ',resizable=no';
	
	var w = window.open(url,name,strOpt);
	w.focus();
}

function trim(sString) {
    while (sString.substring(0, 1) == ' ') {
        sString = sString.substring(1, sString.length);
    }
    while (sString.substring(sString.length - 1, sString.length) == ' ') {
        sString = sString.substring(0, sString.length - 1);
    }
    return sString;
}

// call with comma-separated list of images to precache. eg: preload('image1.jpg,image2.jpg,image3.jpg');
function preloadImages(images) {
    if (document.images) {
        var i = 0;
        var imageArray = new Array();
        imageArray = images.split(',');
        var imageObj = new Image();
        for (i = 0; i <= imageArray.length - 1; i++) {
            //document.write('<img src="' + imageArray[i] + '" />');// Write to page (uncomment to check images)
            imageObj.src = images[i];
        }
    }
}

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 addLoadEvent(func) { 
    var oldonload = window.onload; 
    if (typeof window.onload != 'function') { 
        window.onload = func; 
    } else { 
        window.onload = function() { 
	        if (oldonload) { 
	            oldonload(); 
	        } 
	        func(); 
        } 
    } 
} 
