var isDOM = document.getElementById;
var isOpera = isOpera5 = window.opera && isDOM;
var isOpera6 = isOpera && window.print;
var isOpera7 = isOpera && document.readyState;
var isMSIE = document.all && document.all.item && !isOpera;
var isMSIE5 = isDOM && isMSIE;
var isNetscape4 = document.layers;
var isMozilla = isDOM && navigator.appName == "Netscape";

var DOMtype='';
var JSObjects = new Array();
if (document.getElementById) DOMtype='std'; else if (document.all) DOMtype='ie4'; else if (document.layers) DOMtype='ns4';
fetchObject = function(id) {
    if (typeof JSObjects[id] == 'undefined') {
        switch (DOMtype) {
            case 'std': JSObjects[id] = document.getElementById(id); break;
            case 'ie4': JSObjects[id] = document.all[id]; break;
            case 'ns4': JSObjects[id] = document.layers[id];break;
        }
    }
    return JSObjects[id];
}

createElement = function(type, parent) {
    var el = document.createElement(type);
    if (typeof parent != 'undefined') {
        parent.appendChild(el);
    } else {
        document.getElementsByTagName("body")[0].appendChild(el);
    }
    return el;
};

removeStyleClass = function(el, className) {
    if (!(el && el.className)) return;
    var cls = el.className.split(" ");
    var ar = new Array();
    for (var i = cls.length; i > 0;) if (cls[--i] != className) ar[ar.length] = cls[i];
    el.className = ar.join(" ");
};

addStyleClass = function(el, className) {
    removeStyleClass(el, className);
    el.className += " " + className;
};

isset = function(el) {
    return (typeof el != 'undefined');
}

//########

function OpenWindow(url,target,width,height,left,top){
    if (!left) {left = 100;}
    if (!top) {top = 100;}
    jswindow=window.open(url,target,'width='+width+',height='+height+',left='+left+',top='+top+',copyhistory=no,directories=no,menubar=no,location=no,scrollbars=yes,resizable=yes');
    jswindow.focus();
    return false;
}

function redirect(str) {document.location.href = BASE_URL + str;}

function getEventCoords(evt) {
    var coords = {left:0, top:0};
    if (evt.pageX) {
        coords.left = evt.pageX;
        coords.top = evt.pageY;
    } else if (evt.clientX) {
        coords.left = evt.clientX + document.body.scrollLeft - document.body.clientLeft;
        coords.top = evt.clientY + document.body.scrollTop - document.body.clientTop;
        if (document.body.parentElement && document.body.parentElement.clientLeft) {
            var bodParent = document.body.parentElement;
            coords.left += bodParent.scrollLeft - bodParent.clientLeft;
            coords.top += bodParent.scrollTop - bodParent.clientTop;
        }
    }
    return coords;
}

////////////////

function Set_Cookie(name, value) {
    var today = new Date();
    today.setTime(today.getTime());
    var expires_date = new Date(today.getTime() + (400 * 1000 * 60 * 60 * 24));
    document.cookie = name + "=" +escape( value ) + ";expires=" + expires_date.toGMTString() + ";path=/";
}
function Set_Cookie_Path(name, value) {
    var today = new Date();
    today.setTime(today.getTime());
    var expires_date = new Date(today.getTime() + (400 * 1000 * 60 * 60 * 24));
    document.cookie = name + "=" +escape( value ) + ";expires=" + expires_date.toGMTString();
}

function Get_Cookie(name) {
    var start = document.cookie.indexOf(name + "=");
    var len = start + name.length + 1;
    if ((!start) && (name != document.cookie.substring(0, name.length))) {return null;}
    if (start == -1) {return null;}
    var end = document.cookie.indexOf( ";", len );
    if (end == -1) {end = document.cookie.length;}
    return unescape(document.cookie.substring(len, end));
}