﻿var blnListingsSelected = false;

function toggleListingSelection(strElement) {
    blnListingsSelected = !blnListingsSelected;
    toggleListings(strElement, blnListingsSelected);
}
function toggleListings(strElement, blnSelected) {
    
    var objForm = document.forms[0];
    
    if (objForm != null) {
        for (var i = 0; i < objForm.length; i++) {
            var strTagID = objForm[i].id;
            if (strTagID.indexOf(strElement) != -1) {
                objForm[i].checked = blnSelected;
            }
        }
    }
}

// Gets matching array value.
function getArrayValue(array, value) {
    for (var i = 0; i < array.length; i = i + 2) {
        if (array[i] == value) {
            return array[i + 1];
        }
    }
}

// Writes text to a layer.
function WriteLayer(ID, parentID, sText) {
    if (document.layers) {
        var oLayer;
        if (parentID) {
            oLayer = eval('document.' + parentID + '.document.' + ID + '.document');
        } else {
            oLayer = document.layers[ID].document;
        }
        oLayer.open();
        oLayer.write(sText);
        oLayer.close();
    } else if (parseInt(navigator.appVersion)>=5&&navigator.appName=="Netscape") {
        document.getElementById(ID).innerHTML = sText;
    } else if (document.all) {
        document.all[ID].innerHTML = sText;
    }
}

// Pagination Functions
function navigateTo(pageURL) {
    
    var strQueryStringName = 'sel';
    var formItems = getQueryString();
    var formValue = formItems[1][strQueryStringName];
    var strPreviousSel;
    var strSelected = getSelectedItems('chkSelID_');
    
    if (formValue != undefined) {
        strPreviousSel = decodeURL(formValue)
    }
    
	var strSelection = '';
	// = pageURL + '&sel=';
	if ((strPreviousSel != undefined) && (strPreviousSel != null) && (strPreviousSel != '')) {
	    strSelection += strPreviousSel;
	}
	if ((strSelected != undefined) && (strSelected != null) && (strSelected != '')) {
	    strSelection += strSelected;
	}
	if (strSelection != '') {
	    pageURL += '&sel=' + strSelection;
	}
    document.location = pageURL;
}
function getSelectedItems(strElement) {
    var strSelected = '';
    var objForm = document.forms[0];
    
    if (objForm != null) {
        for (var i = 0; i < objForm.length; i++) {
            var strTagID = objForm[i].id;
            if (strTagID.indexOf(strElement) != -1) {
                if (objForm[i].checked) {
                    strSelected += strTagID.substring((strTagID.indexOf(strElement) + 9), strTagID.length) + ',';
                }
            }
        }
        strSelected = strSelected.substr(0, (strSelected.length - 1));
    }
    
    return strSelected;
}

//Gets the query string
function getQueryString()
{
	var formItems = new Array();
	var formKeys = new Array();
	var myURL = document.URL;
	// Get the query string
	var startQs = myURL.indexOf('?',0);	
	if (startQs >=0)
	{
		var qs = myURL.substring(startQs+1);
		var items = qs.split('&');
		var keyIdx = 0;
		for(var idx=0; idx < items.length; idx++)
		{
			var tmpItem = items[idx].split('=');
			if(formItems[tmpItem[0]] == null)
			{
				formKeys[keyIdx++] = tmpItem[0];
				formItems[tmpItem[0]] = tmpItem[1];
			}
			else
			{
				formItems[tmpItem[0]] =  formItems[tmpItem[0]] + ',' + tmpItem[1];
			}
		}
	}
	return new Array(formKeys,formItems);
}
function decodeURL(uri)
{
	var isOld = false;

	var bBrowser= navigator.appName;
	var bVersion = navigator.appVersion;
	var decoded = uri;

	if(bBrowser == 'Microsoft Internet Explorer')
	{
		isOld = (bVersion.indexOf('MSIE 5.0') != -1);
	}

	if(isOld)
		decoded = unescape(uri);
	else
		decoded = decodeURIComponent(uri);

	while (decoded.search('%27') != -1)
	{
		decoded = decoded.replace('%27','\''); //encode single quotes
	}

	while (decoded.search('%2B') != -1)
	{
		decoded = decoded.replace('%2B','[\+]'); //encode single quotes
	}

	return decoded;
}

function showMenu(menu) {
    var subMenu = document.getElementById(menu);
    subMenu.style.display = 'block';
    
    var shadow = document.getElementById(menu + 'Shadow');
    shadow.style.display = 'block';
    
    //openMenuIFrame(subMenu);
    var iFrame = getIFrame(subMenu);
    iFrame.style.width = subMenu.offsetWidth + 'px';
	iFrame.style.height = subMenu.offsetHeight + 'px';
	iFrame.style.top = subMenu.style.top;
	iFrame.style.left = subMenu.style.left;
	iFrame.style.display = 'block';
}
function hideMenu(menu) {
    var subMenu = document.getElementById(menu);
    subMenu.style.display = 'none';
    
    var shadow = document.getElementById(menu + 'Shadow');
    shadow.style.display = 'none';
    
   removeMenuIFrame(subMenu);
}

function openMenuIFrame(menu) {
    if (menu == null) return;
    
    var iFrame = getIFrame(menu);
    if (iFrame == null) {
        iFrame = createMenuIFrame(menu);
    }
    
    menu.style.zIndex = 100;
    
    //alert('Menu top/left: ' + menu.style.top + ', ' + menu.style.left);
    //alert('zIndex: ' + menu.style.zIndex);
    iFrame.style.width = menu.offsetWidth + 'px';
	iFrame.style.height = menu.offsetHeight + 'px';
	iFrame.style.top = menu.style.top;
	iFrame.style.left = menu.style.left;
	iFrame.style.zIndex = menu.style.zIndex - 1;
	iFrame.style.border = '0px';
	//iFrame.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';
	//iFrame.style.zIndex = 50;
	iFrame.style.position = 'absolute';
	iFrame.style.display = 'block';
	iFrame.scrolling = 'no';
	iFrame.frameborder = 0;
	iFrame.innerHtml = 'test';
	//iFrame.src = '';
	//menu.style.zIndex = 101;
}

function createMenuIFrame(menu) {
    if (menu == null) return null;
    
//    var shim = document.createElement("<iframe scrolling='no' frameborder='0'"+
//                                      "style='position:absolute; top:0px;"+
//                                      "left:0px; display:none'></iframe>"); 
    
    var iFrame = document.createElement('iframe');
    iFrame.name = getIFrameID(menu);
    iFrame.id = getIFrameID(menu);
    
	//
	//iFrame.style.zIndex = '98';
	//menu.insertBefore(iFrame, menu.firstChild);
	//menu.style.zIndex = '99';
	
	if (menu.offsetParent == null || menu.offsetParent.id == '') {
	    //alert('test');
	    window.document.body.appendChild(iFrame);
	} else {
	    //alert('test2');
	    //menu.insertBefore(iFrame, menu.firstChild);
	    //menu.style.zIndex = '99';
	    menu.appendChild(iFrame);
	    //menu.offsetParent.appendChild(iFrame);
	}
	
	return iFrame;
}

function removeMenuIFrame(menu) {
    if (menu == null) return;
    var iFrame = getIFrame(menu);
    if (iFrame != null) {
        iFrame.style.display = 'none';
    }
    
    //alert(menu.id + ': ' + menu.style.zIndex + ' ' + iFrame.id + ': ' + iFrame.style.zIndex);
//    if (menu) { 
//        //alert(menu.firstChild);
//        menu.removeChild(menu.firstChild); 
//    }
}

function getIFrameID(menu) {
    if (menu.id == null) return '__shim';
    return '__shim' + menu.id;
}
function getIFrame(menu) {
    return document.getElementById(getIFrameID(menu));
}
	
	

function showLayer(div) {
    var divToShow = document.getElementById(div);
    divToShow.style.display = 'block';
}
function hideLayer(div) {
    var divToHide = document.getElementById(div);
    divToHide.style.display = 'none';
}

function toggleLayerDisplay(div) {
    var divToShow = document.getElementById(div);
    if (divToShow.style.display == 'block') {
        divToShow.style.display = 'none';
    } else {
        divToShow.style.display = 'block';
    }
}
function changeLocMenu(lstMenu, txtBox, divMenu, divTextBox, blnChildMenus) {
    changeLocMenu(lstMenu, txtBox, divMenu, divTextBox, null, null, null, null, blnChildMenus);
}
function changeLocMenu(lstMenu, txtBox, divMenu, divTextBox, lstMenuChild, txtBoxChild, divMenuChild, divTextBoxChild, blnChildMenus) {
    
    var isRegion = (divTextBox.indexOf('RegionUser') != -1);
 
    lstValue = document.forms[0][lstMenu].value;
    if ((lstValue != '') && (lstValue != null)) {
        hideLayer(divTextBox);
        showLayer(divMenu);
        if (blnChildMenus) {
            changeLocMenu(lstMenuChild, txtBoxChild, divMenuChild, divTextBoxChild, false);
        }
    } else {
        if (isRegion) {
            hideLayer(divMenu);
            hideLayer(divTextBox);
            document.forms[0][txtBox].value = '';
        } else {
            hideLayer(divMenu);
            showLayer(divTextBox);
            document.forms[0][txtBox].value = '';
            if (blnChildMenus) {
                hideLayer(divMenuChild);
                hideLayer(divTextBoxChild);
                document.forms[0][txtBoxChild].value = '';
            }
        }
    }
}
function changeEventMenu(lstMenu, divMenu) {
    lstValue = document.forms[0][lstMenu].value;
    if ((lstValue != '') && (lstValue != null)) {
        showLayer(divMenu);
    } else {
        hideLayer(divMenu);
    }
}

var selEventDay;
var selEventMonth;
var selEventYear;

function showCalendar(anchor, calendar) {
	calendar.offsetX = 0;
	calendar.offsetY = -2;
	calendar.showCalendar(anchor['id'])
}

function showCalendar(anchor, calendar, y, m, d) {
    selEventDay = d;
    selEventMonth = m;
    selEventYear = y;
    calendar.offsetX = 0;
	calendar.offsetY = -2;
    calendar.showCalendar(anchor['id']);
}

function setCal(y,m,d) {
    var day = document.getElementById(selEventDay);
    day.selectedIndex = d;
    var month = document.getElementById(selEventMonth);
    month.selectedIndex = m;
    var year = document.getElementById(selEventYear);
    year.value = y;
}

function getTZOffset() {
    var dateNow = new Date();
    var intTZOffset = dateNow.getTimezoneOffset();
    return intTZOffset;
}
function setTZOffset() {
    if ((document.cookie) && (document.cookie != "")) {
        var cookieThis = unescape(document.cookie);
        var arrCookie = cookieThis.split(";");
        var blnTZ = false;
        
        for (i = 0; i < arrCookie.length; i++) {
            if (arrCookie.indexOf("TZ") > -1) {
                blnTZ = true;
            }
        }
        
        if (!blnTZ) {
            createCookie("TZ", getTZOffset());
        }
    } else {
        createCookie("TZ", getTZOffset());
    }
}

function createCookie(name, value) {
    document.cookie = name + "=" + value + ";";
}

function formSubmit(arrButtons) {
    for (var i = 0; i < arrButtons.length; i = i + 2) {
        var id = document.getElementById(arrButtons[i]);
        var strClass = arrButtons[i + 1];
        var bBrowser = navigator.userAgent;
        var blnIsNull = true;
            if (id != null) {
                blnIsNull = false;
            }
        if (id != null) {
            id.disable = true;
            if ((strClass == '') || (strClass == null)) {
                id.className = 'submitImageDisabled';
            } else {
                id.className = strClass;
            }
        }
    }
}
  
function DOLSelectAll(menu) {
    DOLSelectAll(menu, null);
}
function DOLSelectAll(menu, DOLMenu) {
    var lstMenu = document.getElementById(menu);
    for (i = 0; i < lstMenu.length; i++) {
        lstMenu.options[i].selected = true;
    }
    if (DOLMenu != null) {
        eval(DOLMenu).change(lstMenu);
    }
}

function DOLDeselectAll(menu) {
    DOLDeselectAll(menu, null);
}
function DOLDeselectAll(menu, DOLMenu) {
    var lstMenu = document.getElementById(menu);
    for (i = 0; i < lstMenu.length; i++) {
        lstMenu.options[i].selected = false;
    }
    if (DOLMenu != null) {
        eval(DOLMenu).change(lstMenu);
    }
}