/*
***** Remove singles quotes, or other suspect characters *****
Author: 	Bill Westhead
Created: 	01/02/2006
Modified:	01/02/2006
*/
function filter(s) {
   var str = new String(s);
   s = s.replace(/\'/g,"");

   return s;
}


/*
***** Adjust UV checkbox *****
Author: 	Bill Westhead
Created: 	14/03/2006
Modified:	14/03/2006

NB: we have not disabled the checkboxes as this interferes with the current form processing function in ASP
*/
function checkUV(e, eVal1, eVal2, element) {
	if ((changeCHK = document.getElementById(element)) && (freeTxt = document.getElementById('free_'+element))) {
		if ((e.value == eVal1) || (e.value == eVal2)) {
			changeCHK.checked = true;
			freeTxt.innerHTML = " - <b>FREE</b>";
		} else {
			changeCHK.checked = false;
			freeTxt.innerHTML = "";
		}
	}
}

/*
***** Bookmark this page *****
Author: 	Bill Westhead
Created: 	31/01/2006
Modified:	01/02/2006
*/
function bookmark(title, url) {
   title = filter(title);
   if (document.all)
      window.external.AddFavorite(url, title);
   else if (window.sidebar)
      window.sidebar.addPanel(title, url, "");
}

/*
***** Toggle layer visibility *****
Author: 	Bill Westhead
Created: 	01/02/2006
Modified:	02/02/2006
*/
function toggle(element, layer) {
	if (typeof element == 'string') {
		element = document.getElementById(element);
	}
	if (typeof layer == 'string') {
		layer = document.getElementById(layer);
	}

	if (element.style.visibility == 'visible') {
		if (layer)	layer.style.zIndex -= 1;
		element.style.visibility = 'hidden';
	} else {
		if (layer)	layer.style.zIndex++;
		element.style.visibility = 'visible';
	}
}

/*
    Written by Jonathan Snook, http://www.snook.ca/jonathan
    Add-ons by Robert Nyman, http://www.robertnyman.com
*/

function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }   
    }
    return (arrReturnElements)
}

/*
    Written by Jonathan Snook, http://www.snook.ca/jonathan
    Add-ons by Robert Nyman, http://www.robertnyman.com
*/

function getElementsByClassNameValues(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
			if(oElement.checked == true) {
	            arrReturnElements.push(oElement.value);
			}
        }   
    }
    return (arrReturnElements)
}

/*
***** Hide all layers by class *****
Author: 	Bill Westhead
Created: 	08/02/2006
Modified:	08/02/2006
*/
function closeAllPanels(classTag) {
	var arrPanel = getElementsByClassName(document, 'div', classTag);
	
	for(var n=0;n<arrPanel.length;n++) {
		arrPanel[n].style.visibility = 'hidden';
	}
}

/*
***** Adjust available tine DD *****
Author: 	Bill Westhead
Created: 	18/04/2006
Modified:	18/04/2006

NB: we have need to disable the DD to prevent invalid input, but we also need to re-enable them if values change to untinted ('2')
*/

function checkTint(e) {
	var lensPC = document.getElementById('lensPhotoC');
	var lensTT = document.getElementById('lensTint');
	
	if ( lensTT.value != '2' ) {
		lensPC.disabled = true;
	} else if ( lensPC.value != '2' ) {
		lensTT.disabled = true;
	} else {
		lensTT.disabled = false;
		lensPC.disabled = false;
	}
/*	else if ((lensTT.value == 2) && (lensPC.value != 2))
		{lensTT.disabled = 'True'; lensPC.disabled = 'False';}
	else if ((lensTT.value != 2) && (lensPC.value == 2))
		{lensTT.disabled = 'False'; lensPC.disabled = 'True';}
*/	
	//else if ((lensTT.value == 2) && (lensPC.value != 2)) {lensTT.disabled = 'True';}
	
//	if(lensPC.value != 2) {lensPC.disabled = 'False';} else if ((lensPC.value == 2) && (lensTT.value != 2)) {lensPC.disabled = 'True';}
//	if(lensTT.value != 2) {lensPC.disabled = 'True';} else {lensPC.disabled = 'False';}
}

function checkHI(e) {
	var lensPC = document.getElementById('lensPhotoC');
//	var lensHI = document.getElementById('hiselect');
	
	if ( e.value != '9' ) {
		lensPC.disabled = true;
	} else {
		lensPC.disabled = false;
	}
}

function checkADDusage(u,addl,addr) {
	if ( u.value == 15 ) {
		return true;  // Distance usage, no further checks.
	}
	
	if ( (addl.value > 0) && (addr.value > 0) ) {
		return true;
	} else {
		alert('No values given for prescription ADD. Please amend details.');
		return false;
	}
	return true
}

function checkPlusMinus(confirmPx,lSPH,rSPH,lCYL,rCYL) {
	if ( confirmPx.checked ) {
		return true;
/*	}

	if (	(	((lSPH.value>0)&&(rSPH.value>0)) || ((lSPH.value<0)&&(rSPH.value<0))	)	&& confirmPx.value	) {
		return true;
	} else if (	(	((lCYL.value>0)&&(rCYL.value>0)) || ((lCYL.value<0)&&(rCYL.value<0))	)	&& confirmPx.value	) {
		return true;
*/	} else {
		alert('Please confirm values given for prescription SPH and CYL are correct and \'tick\' confirmation check box.');
		return false;
	}
	return false;

}
