function get_cookie(c) {
   
    var cookie = top.document.cookie;
    cookies = cookie.split('; ');
    for (i=0; i < cookies.length; i++) {
        pair = cookies[i].split('=');
	if (pair[0] == c) {
	    return pair[1];
	}
    }
    return false;
}

function onLink(event, layer, timer, X1, Y1) {

    if(!(timer == null) && timer != 0) clearTimeout(timer);
    if(window.active_layer != null && window.active_layer != 0) hE(window.active_layer);
    var X, Y;
    if(!X1){
        if(document.layers){
            X = event.pageX - 3;
        }
        else if(navigator.userAgent.indexOf('Opera') != -1){
            X = event.clientX - 3;
        }
        else{
            X = event.clientX + document.body.scrollLeft - 3;
        }
    }
    else X = X1;
    if(!Y1){
        if(document.layers){
            Y = event.pageY + 4;
        }
        else if(navigator.userAgent.indexOf('Opera') != -1){
            Y = event.clientY + 4;
        }
        else{
            Y = event.clientY + document.body.scrollLeft + 4;
        }
    }
    else {
        Y = Y1;
	if(navigator.userAgent.indexOf('etscape') != -1) Y = Y - 15;
    }
    var el = gE(layer);
    var mid = screenMiddle();
    var off = X - mid;
    sX(el, X);
    sY(el, Y);
    sE(el);
    window.active_layer = el;
//    alert('The width of the page is ' + getWidth() + ' and the element offset is ' + off + '.');
}

function onLink3(event, layer, timer) {

    if(!(timer == null) && timer != 0) clearTimeout(timer);
    if(window.active_layer != null && window.active_layer != 0) hE(window.active_layer);
    var pos = getElementPosition(layer + '_link');
    var X = pos.left;
    var Y = pos.top;
    var dim = getElementSize(layer + '_link');
    var w = dim.width; 
    var h = dim.height;
    var el = gE(layer);
    sX(el, X - 1);
    sY(el, Y + h + 8);
    sE(el);
    window.active_layer = el;
}

function show_and_position(layer, place) {

    if(window.active_layer != null && window.active_layer != 0) hE(window.active_layer);
//    alert('The layer is ' + layer + ' and the placeholder is ' + place + '.');
    var pos = getElementPosition(place);
    var X = pos.left;
    var Y = pos.top;
    var dim = getElementSize(place);
    var w = dim.width; 
    var h = dim.height;
    var el = gE(layer);
    sX(el, X);
    sY(el, Y);
    sE(el);
    window.active_layer = el;
}

function getElementPosition(eid){

    var parent = gE(eid);
    var left = 0;
    var top = 0;
    while(parent){
        left += parent.offsetLeft;
        top += parent.offsetTop;
        parent = parent.offsetParent;
    }
    if(navigator.userAgent.indexOf('MSIE') != -1) left += document.body.leftMargin * 1;
    return {left:left, top:top};
}

function getElementSize(eid){

    var el = gE(eid);
    var w = el.offsetWidth;
    var h = el.offsetHeight;
    return {width:w, height:h};
}

function getWidth() {

    if(document.layers){
        return window.innerWidth;
    }
    else {
        return document.body.offsetWidth;
    }
}

function screenMiddle(){

    var width = getWidth();
    var mid;
    if(width % 2 == 0){
        mid = width / 2;
    }
    else{
        mid = (width + 1) / 2;
    }
    return mid;
}

function onLink2(event, layer, timer, X1, Y1) {

    if(!(timer == null) && timer != 0) clearTimeout(timer);
    if(window.active_layer != null && window.active_layer != 0) hE(window.active_layer);
    var link = gE(layer + '_link');
//    var X = gX(link); //link.left;
//    var Y = gY(link); //link.top;
    var X = link.style.left;
    var Y = link.style.top;
    var el = gE(layer);
    window.alert('The layer is ' + link + 'and the X is ' + X + ' and Y is ' + Y + '.');

    sX(el, X);
    sY(el, Y);
    sE(el);
    window.active_layer = el;
}
       
function offLink(layer) {

    window.status = '';
    var code = 'var el = gE(\'' + layer + '\'); hE(el)';
    var tid = setTimeout(code, 1325);
    return tid;
}

function prettifyString(s) {

    var a = s.split('_');
    for(var i = 0; i < a.length; i++) a[i] = a[i].substring(0, 1).toUpperCase() + a[i].substring(1);
    var s = a.join(' ');
//    if(s.indexOf('s') != s.length - 1) s = s + 's';
    return s;
}

function select_all(form) {

    if(!form) return alert('What the heck am I supposed to select?  I don\'t see no records!'); 
    var s = form.selected;
    if(!s) return alert('There ain\'t nothin\' for me to select!!!');
    if(!s.length){
        s.checked = true;
        return false;
    }
    for(var i = 0; i < s.length; i++){
        s[i].checked = true;
    }
}

function deselect_all(form) {

    if(!form) return alert('What the heck am I supposed to deselect?  I don\'t see no records!'); 
    var s = form.selected;
    if(!s) return alert('There ain\'t nothin\' for me to deselect!!!');
    if(!s.length){
        s.checked = false;
        return false;
    }
    for(var i = 0; i < s.length; i++){
        s[i].checked = false;
    }
}

function email_check(form, type, actions) {

    if(!actions) actions = 'select all records ';
    if(!any_selected(form)){
        var ans = confirm('No records have been selected.  Do you want to ' + actions  + ' in ' + type + '?');
        return ans;
    }
    return true;
}

function any_selected(form) {

    if(!form) return false;
    var s = form.selected;
    if(!s) return false;
    if(!s.length) return s.checked;
    for(var i = 0; i < s.length; i++) if(s[i].checked == true) return true;
    return false;
}

function exactly_one_selected(f){

    if(!f) return false;
    var s = f.selected;
    if(!s) return false;
    if(!s.length) return s.checked;
    var already_checked = false;
    for(var i = 0; i < s.length; i++) {
	if(s[i].checked == true){
     	    if(already_checked) return false;
            already_checked = true;
        }
    }
    return already_checked;
}

function get_lone_selected_value(f){

    if(exactly_one_selected(f)){
        var s = f.selected;
	if(s.length){
            for(var i = 0; i < s.length; i++) {
	        if(s[i].checked == true) return s[i].value;
            }
        }
        else{
            if(s.checked == true) return s.value;
        }
    }
    return;
}

function cursor_position(e){
    if(e.createTextRange) {
        e.cursor = document.selection.createRange().duplicate();
    }
    else e.ignore = 1;
}

function insert_text(e, t){

    var p;
    if(e.createTextRange && e.cursor){
        p = e.cursor;
        p.text = p.text.charAt(p.text.length - 1) == ' ' ? t + ' ' : t;
    }
    else if(!e.ignore) e.value = t;
}