var checkBizName = false;
var womensNetwork = false;
var courseButtons = true;
var noPPS = false;
var reqArray = new Array();
var radioArray = new Array();
var discArray = new Array();
var googleMapX, googleMapY, googleMapText;
var townOK = true;
var townMsg = "";
var validExtensions = "doc,docx,xls,txt";

// position of the tooltip relative to the mouse in pixel //
var offsetx = 12;
var offsety =  8;
var ie5 = (document.getElementById && document.all); 
var ns6 = (document.getElementById && !document.all); 
var ua = navigator.userAgent.toLowerCase();
var isapple = (ua.indexOf('applewebkit') != -1 ? 1 : 0);
var ddoffsetx = -13;
var ddoffsety = 0;
var fadeimages = new Array();
var fadebgcolor = "white";
var fadearray = new Array();
var fadeclear = new Array();
var dom = (document.getElementById);
var iebrowser = document.all;
var discountedCodes = "";


function catImgHover() {
}

function updateInterests() {
	var il;
	il = "";
	for (index=0; index < document.registerform.elements.length; index++) {
		if(document.registerform.elements[index].type == "checkbox") {
			if(document.registerform.elements[index].checked) {		
				il = il + (il==""?"":",") + document.registerform.elements[index].value;
			}		
		}
	}
	document.registerform.interests.value = il;
}

function warnAm() {
	alert("Please exercise caution when adjusting the total cost, this amount will be charged to the card, if applicable.");
}

function switchCourseInfo(cid) {
	if (getObj("hidden_" + cid).style.display == "block") {
		getObj("hidden_" + cid).style.display = "none";
		getObj("control_" + cid).innerHTML = getObj("control_" + cid).innerHTML.replace("Less", "More");
	} else {
		getObj("hidden_" + cid).style.display = "block";
		getObj("control_" + cid).innerHTML = getObj("control_" + cid).innerHTML.replace("More", "Less");
	}
}

function checkVacancyRef(strAction) {
	if (document.formRef.jref.value == "") {
		alert("Please enter a job reference number");
		return false;
	}
	//alert("/vacancy-ref-search/" + document.formRef.jref.value);
	document.formRef.action = strAction + "/detail/_" + document.formRef.jref.value;
	return true;
}

function checkLookupAll(strTable) {
	setChecked = false;
	lenTable = strTable.length;
	if (document.formLookup['lookup_' + strTable + '_all'].checked) setChecked = true;		
	for (i=0; i < document.formLookup.elements.length; i++) {		
		if (document.formLookup.elements[i].name.substring(0, 7 + lenTable) == "lookup_" + strTable) {
			document.formLookup.elements[i].checked = setChecked;
		}
	}
}

function checkVacancies() {
	//if (checkCheckboxSet("lookup_vacancies_salaryrange", "Salary Range") && checkCheckboxSet("lookup_vacancies_location", "Location")) {
		return true;
	//}
	return false;
}

function checkCheckboxSet(strTable, strMsg) {
	lenTable = strTable.length;
	for (i=0; i < document.formLookup.elements.length; i++) {		
		if (document.formLookup.elements[i].name.substring(0, lenTable) == strTable && document.formLookup.elements[i].name != strTable + "_all") {			
			if (document.formLookup.elements[i].checked) return true;			
		}
	}
	alert("Please select at least one option from " + strMsg);
	return false;
}

function doKBSearch(strNavLink) {
	var strAction;
	//alert(strNavLink);
	cat = document.kbsearch.categoryid.options[document.kbsearch.categoryid.selectedIndex].value;
	kw = document.kbsearch.kbkeywords.value;
	if (cat == "" && kw == "") {
		alert("Please select a category or enter keyword(s)");
	} else {
		if (cat.length == 0) {
			strAction = strNavLink + "/kbsearch/" + kw;			
		}
		if (kw.length == 0) {
			strAction = strNavLink + cat;
		}
		if (cat.length != 0 && kw.length != 0) {
			strAction = strNavLink + "/kbsearch" + cat + "/" + kw;			
		}
	}
	document.kbsearch.action = strAction;
	document.kbsearch.submit();
}

function closeOverlay() {
	getObj("content_overlay").style.visibility = 'hidden';
	getObj("content_fader").style.visibility = 'hidden';
}

function showFLV(pFilename) {				
	if (AC_FL_RunContent == 0) {
		alert("This page requires AC_RunActiveContent.js.");
	} else {
		AC_FL_RunContent(
			'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
			'width', '550',
			'height', '350',
			'src', '/flash-video',
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'align', 'middle',
			'play', 'true',
			'loop', 'true',
			'scale', 'showall',
			'wmode', 'window',
			'devicefont', 'false',
			'id', 'flash-video',
			'bgcolor', '#ffffff',
			'name', 'flash-video',
			'menu', 'true',
			'allowFullScreen', 'true',
			'allowScriptAccess','always',
			'movie', '/flash-video',
			'salign', '',
			'FlashVars', 'videourl=' + pFilename
		); 
	}
}


function createURLString(strText) {
	var strTemp;
	strTemp = strText.replace("-", "~");
	strTemp = strTemp.replace(strTemp.toLowerCase(), " ", "-");
	strTemp = strTemp.replace("/", "_");
	strTemp = strTemp.replace("`", "'");
	strTemp = strTemp.replace(String.fromCharCode(10), "");
	strTemp = strTemp.replace(String.fromCharCode(13), "");
	return strTemp;
}

function writeChecker(BA_lang) {
	//alert(getCheckerHTML());
	user_language = BA_lang;
	if (document.getElementById("content_BA_checker")) { document.getElementById("content_BA_checker").innerHTML = getCheckerHTML(); }
	//alert(document.getElementById("content_BA_checker").innerHTML);
}

function doBookassist(ga_code, ba_page, ba_lang, hotelid, serviceid, guideid, pwidth, pheight, extrap) {
		var pageTracker = _gat._getTracker(ga_code);
		pageTracker._setDomainName("none");
		pageTracker._setAllowLinker(true);
		pageTracker._initData();
		pageTracker._trackPageview();

		var paramsForBA = "?action=" + ba_page + "&user_language=" + ba_lang;
		if (hotelid != "") { paramsForBA = paramsForBA + "&hotel_id=" + hotelid; }
		paramsForBA = paramsForBA + "&service_model=" + serviceid + "&guide_id=" + guideid + "&dw=" + (pwidth - 10) + "&ca=center";
		var destinationURL = 'http://www.bookassist.com/conduit/bookassist.do';
		
		if (location.search) {
			paramsForBA = location.search + "&action=" + ba_page + "&user_language=" + ba_lang + "&hotel_id=" + hotelid + "&service_model=" + serviceid + "&guide_id=" + guideid + "&dw=" + (pwidth - 10) + "&ca=center";
		}
		
		if (extrap != '') { paramsForBA = paramsForBA + "&" + extrap }
		var topLocation = location.href;
		if (topLocation.indexOf('http://') == 0) {
			topLocation = topLocation.substring(7);
		}
		paramsForBA = paramsForBA + '&bp=' + escape(topLocation);
		destinationURL = destinationURL + paramsForBA;
		try {
			pageTracker._initData();
			destinationURL = pageTracker._getLinkerUrl(destinationURL);
			
		} catch(e){} finally {}
			
		document.write("<iframe id=main name=main src='" + destinationURL + "' frameBorder=0 width=" + pwidth + " scrolling=no height=" + pheight + "></iframe>");
	}

function checkCountry(val) {
}

function alertChecker() {
	alert(getCheckerHTML());
}

function checkList(val) {
	if ((val == 0) || (isNaN(val))) {
		alert("Please enter a valid quantity");
		return false;
	}
	return true;
}

function checkPoll() {
	myOption = -1;
	for (i = pollform.vote.length - 1; i > -1; i--) {
		if (pollform.vote[i].checked) {
			myOption = i; i = -1;
		}
	}
	if (myOption == -1) {
		alert("You must select an option before voting");
		return false;
	}
	//windowHeight = 150 + (pollform.vote.length * 40);
	//win = window.open('','myWin','height=' + windowHeight + ',width=300,top=50,left=50,scrollbars=0,resizable=no,status=yes');
	//pollform.target='myWin';
	//document.location.href
	return true;
}


function openCloseUp(strTitle, strDefaultImage) {
	//if (currentImage == "") { currentImage = strDefaultImage; }
	newURL = "/core/modules/closeup.asp?file=" + strDefaultImage + "&title=" + strTitle;
	newWin = window.open(newURL, 'detailsWindowId', 'height=550,width=500,top=50,left=50,scrollbars=yes,resizable=yes,status=yes');	
	newWin.focus();
}	

function swapPic(strFile) {
	document.images.mainpic.src = "/download/1/.zoom/." + strFile;
}

function swapThumb(obj) {
	temp = document.images.mainpic.src;
	document.images.mainpic.src = getObj(obj).src.replace("/.zoom/.", "/");
	file = temp.substr(temp.lastIndexOf("/") + 1);
	getObj(obj).src = temp.replace(file, ".zoom/." + file);
}

function fadeshow(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
this.pausecheck=pause
this.mouseovercheck=0
this.delay=delay
this.degree=10 //initial opacity degree (10%)
this.curimageindex=0
this.nextimageindex=1
fadearray[fadearray.length]=this
this.slideshowid=fadearray.length-1
this.canvasbase="canvas"+this.slideshowid
this.curcanvas=this.canvasbase+"_0"
if (typeof displayorder!="undefined")
theimages.sort(function() {return 0.5 - Math.random();})
this.theimages=theimages
this.imageborder=parseInt(borderwidth)
this.postimages=new Array() //preload images
for (p=0;p<theimages.length;p++){
this.postimages[p]=new Image()
this.postimages[p].src=theimages[p][0]
}
 
var fadewidth=fadewidth+this.imageborder*2
var fadeheight=fadeheight+this.imageborder*2
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div></div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
this.startit()
else{
this.curimageindex++
setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
}
}

function fadepic(obj){
if (obj.degree<100){
obj.degree+=10
if (obj.tempobj.filters&&obj.tempobj.filters[0]){
if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
obj.tempobj.filters[0].opacity=obj.degree
else //else if IE5.5-
obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
}
else if (obj.tempobj.style.MozOpacity)
obj.tempobj.style.MozOpacity=obj.degree/101
else if (obj.tempobj.style.KhtmlOpacity)
obj.tempobj.style.KhtmlOpacity=obj.degree/100
else if (obj.tempobj.style.opacity&&!obj.tempobj.filters)
obj.tempobj.style.opacity=obj.degree/101
}
else{
clearInterval(fadeclear[obj.slideshowid])
obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
obj.populateslide(obj.tempobj, obj.nextimageindex)
obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
}
}
 
fadeshow.prototype.populateslide=function(picobj, picindex){
var slideHTML=""
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">'
slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML+='</a>'
picobj.innerHTML=slideHTML
}
 
 
fadeshow.prototype.rotateimage=function(){
if (this.pausecheck==1) //if pause onMouseover enabled, cache object
var cacheobj=this
if (this.mouseovercheck==1)
setTimeout(function(){cacheobj.rotateimage()}, 100)
else if (iebrowser&&dom||dom){
this.resetit()
var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
crossobj.style.zIndex++
fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
}
else{
var ns4imgobj=document.images['defaultslide'+this.slideshowid]
ns4imgobj.src=this.postimages[this.curimageindex].src
}
this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
}
 
fadeshow.prototype.resetit=function(){
this.degree=10
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
if (crossobj.filters&&crossobj.filters[0]){
if (typeof crossobj.filters[0].opacity=="number") //if IE6+
crossobj.filters(0).opacity=this.degree
else //else if IE5.5-
crossobj.style.filter="alpha(opacity="+this.degree+")"
}
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=this.degree/100
else if (crossobj.style.opacity&&!crossobj.filters)
crossobj.style.opacity=this.degree/101
}
 
 
fadeshow.prototype.startit=function(){
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
this.populateslide(crossobj, this.curimageindex)
if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
var cacheobj=this
var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
}
this.rotateimage()
}


function customOnload() {	
}

function getObj(objId, formId) {
		var fullId = objId;
		if (formId != null && formId.length > 0) {
			fullId = formId + ':' + objId;
		}
		var elem = null;
		if (document.getElementById) {
			elem = document.getElementById(fullId);
		} else if (document.all) {
			elem = document.all[fullId];
		} else if (document.layers) {
			elem = document.layers[fullId];
		}
		return elem;
}
	
function newelement(newid) { 
    if(document.createElement)
    { 
        var el = document.createElement('div'); 
        el.id = newid;     
        with(el.style) { 
            display = 'none';
            position = 'absolute';
        } 
        el.innerHTML = '&nbsp;'; 
        document.body.appendChild(el); 
    } 
} 


function getmouseposition(e) {
    if(document.getElementById)
    {
        var iebody=(document.compatMode && 
        	document.compatMode != 'BackCompat') ? 
        		document.documentElement : document.body;
        pagex = (isapple == 1 ? 0:(ie5)?iebody.scrollLeft:window.pageXOffset);
        pagey = (isapple == 1 ? 0:(ie5)?iebody.scrollTop:window.pageYOffset);
        mousex = (ie5)?event.x:(ns6)?clientX = e.clientX:false;
        mousey = (ie5)?event.y:(ns6)?clientY = e.clientY:false;

        var lixlpixel_tooltip = document.getElementById('tooltip');
        lixlpixel_tooltip.style.left = (mousex+pagex+offsetx) + 'px';
        lixlpixel_tooltip.style.top = (mousey+pagey+offsety) + 'px';
    }
}

function tooltip(tip) {
    if(!document.getElementById('tooltip')) newelement('tooltip');
    var lixlpixel_tooltip = document.getElementById('tooltip');
    lixlpixel_tooltip.innerHTML = tip;
    lixlpixel_tooltip.style.display = 'block';
    document.onmousemove = getmouseposition;
}

function exit() {
    document.getElementById('tooltip').style.display = 'none';
}

function showContinue(courseId) {
	if (courseButtons) {
		for (i = 0; i < document.bookForm.elements.length; i++) {
			if (document.bookForm.elements[i].name.substring(0, 2) == "c_") {
				document.bookForm.elements[i].style.visibility = "hidden";			
			}
		}	
		document.bookForm["c_" + courseId].style.visibility = "visible";
	}
}

function checkPaymentMethod() {
	if (document.bookform.paymenttype.selectedIndex != 0) {
		document.bookform.cardnumber.disabled = true;
		document.bookform.expmonth.disabled = true;
		document.bookform.expyear.disabled = true;
		document.bookform.cardname.disabled = true;
		if (document.bookform.issuenum) document.bookform.issuenum.disabled = true;
		document.bookform.cardtype.disabled = true;
	} else {
		document.bookform.cardnumber.disabled = false;
		document.bookform.expmonth.disabled = false;
		document.bookform.expyear.disabled = false;
		document.bookform.cardname.disabled = false;
		if (document.bookform.issuenum) document.bookform.issuenum.disabled = false;
		document.bookform.cardtype.disabled = false;
	}
}

function registerEvent(formid, eventid) {
	document.bookForm.chosenFormId.value = formid;
	document.bookForm.chosenCourseId.value = eventid;
	document.bookForm.ids.value = eventid;
	document.bookForm.submit();
}

function checkTowns(townId) {
	if ((townId == "0") && (townMsg != "")) {
		alert(townMsg);
		townOK = false;
	} else townOK = true;
}

function showRandomImage(strAltText) {	
	var j = 0;
	var p = theImages.length;
	var preBuffer = new Array();
	for (i = 0; i < p; i++){
	   preBuffer[i] = new Image();
	   preBuffer[i].src = theImages[i];
	}
	var whichImage = Math.round(Math.random()*(p-1));
	document.write('<img alt="' + strAltText + '" src="' + theImages[whichImage] + '">');
}

function showBookAssistTracking(account, hotel_id, hotel_group_id, guide_id, refer) {
	if (top.document) {
		if (top.document.referrer) {
			refer = escape(top.document.referrer);
		}
	}
	var s = "";
	if (top.location) {
		s = top.location.href;
	}
	var re = /[&\?]r=([^&]*)/;
	var r = "unset";
	found = s.match(re);
	if(found) {
		if(found.length>1) {
			r = escape(found[1]);
		}
	}
	var p = "";
	if(top.location) {
		p = top.location.pathname;
	}
	s = escape(s);
	p = escape(p);
	document.write('<img class="batrack" border=0 hspace=0 space=0 src="http://www.bookassist.com/conduit/baimg.jsp?ref=' + refer + 
		'&s='+ s +
		'&a='+ account +
		'&p='+ p +
		'&h='+ hotel_id +
		'&g='+ guide_id +
		'&hg='+ hotel_group_id +
		'&r='+r+'">');
}


function showMemberDetails(DirectoryId){		
	//newURL = "/Directory/showDetails.asp?id=" + DirectoryId
	//newWin = window.open(newURL, 'detailsWindowId','height=500,width=300,top=50,left=50,scrollbars=1,resizable=yes,status=yes');	
	//newWin.focus()
	membersearchForm.searchWords.value = DirectoryId;
	membersearchForm.offset.value = 0;
	membersearchForm.submit();
}


function submitSearch(){
	var searchStr = membersearchForm.searchWords.value;
	membersearchForm.offset.value = "";
	membersearchForm.submit()
}

function reorderSearch(Field) {
	membersearchForm.orderBy.value = Field;
	membersearchForm.offset.value = 1;
	membersearchForm.submit();
}


function submitSearchNextPage(offset){
	offset = offset + 20;
	var searchStr = membersearchForm.searchWords.value;
	membersearchForm.offset.value = offset;
	membersearchForm.submit()
}


function submitSearchPrevPage(offset){
	offset = offset - 20;
	var searchStr = membersearchForm.searchWords.value;
	membersearchForm.offset.value = offset;
	membersearchForm.submit()
}

function initDropDownMenus() {
	for (var i = 0; i < menus.length; i++) {
		menus[i].onactivate = new Function("document.getElementById('menu" + (i+1) + "_loc').className='active';");
		menus[i].ondeactivate = new Function("document.getElementById('menu" + (i+1) + "_loc').className='';");
	}
	ypSlideOutMenu.writeCSS();
}

function load() {
  if (GBrowserIsCompatible()) {
    var map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    locator = new GLatLng(googleMapX, googleMapY);
    map.setCenter(locator, 16);
    map.addOverlay(createMarker(locator, googleMapText));
  }
}
	
function createMarker(point, text) {
 	var marker = new GMarker(point);
 	GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(text); });
	return marker;
}

function checkMemberUpload() {
	if ((document.memberForm.filetitle.value == "") || (document.memberForm.filename.value == "")) {
		alert("Please enter a title and select your file for upload");
		return false;
	}	
	return true;
}

function addRequiredFormElement(strTitle) {
	reqArray[reqArray.length] = strTitle;
}

function addRadio(strTitle) {
	radioArray[radioArray.length] = strTitle;	
}

function showDetails(galleryId,height,width) {
	Height=height + 100
	width = width + 50
	newURL = "/Gallery/showDetails.asp?id=" + galleryId;
	newWin = window.open(newURL, 'detailsWindowId','height=' + height + ',width=' + width +',top=50,left=50,scrollbars=0,resizable=yes,status=yes');	
	newWin.focus()
}

function getIds() {
	strIds = "";
	foundNonZero = false;

	for (i = 0; i < document.bookForm.elements.length; i++) {
		if (document.bookForm.elements[i].name.substring(0, 4) == "part") {
			
			if (document.bookForm.elements[i].type == "hidden") {
				strValue = document.bookForm.elements[i].value;
			}
			else {
				strValue = document.bookForm.elements[i].options[document.bookForm.elements[i].selectedIndex].value;			
			}
			//alert("2");
			if (strValue != "0") {
				foundNonZero = true;
				if (strIds.length > 0) strIds = strIds + ",";
				strIds = strIds + document.bookForm.elements[i].name.substring(13);
			}
		}
	}
	if (!foundNonZero) {
		alert("You have not selected any participants for any courses");
	} 
	else {
		//alert(strIds);
		document.bookForm.ids.value = strIds;
		document.bookForm.submit();	
	}
}

function showDetails(EventId) {
	newURL = "/Calendar/showDetails.asp?id=" + EventId;
	newWin = window.open(newURL,'detailsWindowId','height=420,width=470,top=50,left=50,scrollbars=1,resizable=no,status=no,location=no,menubar=no,toolbar=no');	
	newWin.focus();
}

function LUNCheck(number) {
	var i, sum, weight;
	sum=0;
	for (i = 0; i < number.length - 1; i++) {
		weight = number.substr(number.length - (i + 2), 1) * (2 - (i % 2));
		sum += ((weight < 10) ? weight : (weight - 9));
	}

	if (parseInt(number.substr(number.length-1)) == ((10 - sum % 10) % 10)) {
		return true;
	}
	return false;
}

function checkPPS(strPPS) {
	var i, modVal;
	strDigits = "0123456789";
	// check length
	if ((strPPS.length < 8) || (strPPS.length > 9)) {
		alert("The PPS number '" + strPPS + "' is an invalid length.\rPPS numbers should usually be 8 characters, 7 digits followed by a letter.\rIn some cases 9 characters including two letters may be accepted.");
		return false;
	}
	// check first 7 chars are numbers
	for (i = 0; i < 7; i++) {
		if (strDigits.indexOf(strPPS.charAt(i)) == -1) {
			alert("The PPS number '" + strPPS + "' is not valid");
			return false;
		}
	}	
	ppsCodes = "ABCDEFGHIJKLMNOPQRSTUVW";
	intTotal = 0;
	intCode = 8;
	for (i = 0; i < 7; i++) {
		intTotal = intTotal + (intCode * strPPS.charAt(i));
		intCode = intCode - 1;
	}
	modVal = intTotal % 23;
	if (modVal == 0) {
		ppsLetter = "W";
	} else {
		ppsLetter = ppsCodes.charAt(modVal - 1);
	}
	if (strPPS.charAt(7).toUpperCase() != ppsLetter) {
		alert("The PPS number '" + strPPS + "' is not valid");
		return false;
	}	
	return true;
}

function checkMemberForm() {
	if (document.memberform.userfield.value.toLowerCase() == "email") {
		if (!validateEmail(document.memberform.email.value)) {
			alert("Please enter a valid email address");
			return false;
		}
	} else {
		if (document.memberform.email.value == "") {
			alert("Please enter a value for " + document.memberform.userText.value);
			return false;
		}
	}
	if (document.memberform.pass.value == "") {
		alert("Please enter a value for " + document.memberform.passwordText.value);
		return false;
	}
}

function checkAdminEmailConfirm(strEmail) {
	if (strEmail != "") {
		document.bookform.sendconfirmemail.checked = true;
	} else {
		document.bookform.sendconfirmemail.checked = false;
	}			
}

function checkMemberDeleteFile(intId, strFilename) {
	if (confirm("Are you sure you want to delete this file")) {
		document.deletefileform.id.value = intId;
		document.deletefileform.filename.value = strFilename;
		document.deletefileform.submit();
	}
}

function checkDelivery() {	
	if (document.deliveryForm.giftto.value.length < 2) {
		alert("Please enter the recipient's name");
		return false;
	}
	if ((document.deliveryForm.chooseaddress.options[document.deliveryForm.chooseaddress.selectedIndex].value == "new") && (document.deliveryForm.alternativeaddress.value.length < 4)) {
		alert("Please enter an alternative delivery address");
		return false;
	}	
	if (document.deliveryForm.deliverytelephone.value.length < 4) {
		alert("Please leave a contact number for our courier");
		return false;
	}
}

function checkPassword() {
	if (!validateEmail(document.passwordform.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	return true;
}

function checkCatSearch(catURL) {
	if (document.searchform.SearchWords.value == '') {
		alert("Please enter a keyword");
		return false;
	} else {
		formAction = catURL + "/" + createURLString(document.searchform.SearchWords.value) + "/search";
		if (document.searchform.PriceFrom) {
			if (document.searchform.PriceFrom.value != '') {
				formAction += "?priceFrom=" + document.searchform.PriceFrom.value + "&priceTo=";
				if (document.searchform.PriceTo.value != '') {
					formAction += document.searchform.PriceTo.value;
				}
			}				
		}
		document.searchform.action = formAction;
	}
	return true;
}

function createURLString(strText) {
	var strTemp;
	strTemp = strText.replace(/-/g, "~");
	strTemp = strTemp.replace(/ /g, "-");
	strTemp = strTemp.replace(/\//g, "_");
	strTemp = strTemp.replace(/`/g, "'");
	return strTemp.toLowerCase();
}

function checkDeliveryAddress() {	
	if (document.deliveryForm.chooseaddress.options[document.deliveryForm.chooseaddress.selectedIndex].value == "new") {
		document.deliveryForm.alternativeaddress.disabled = false;
		document.deliveryForm.alternativeaddress.style.backgroundColor = "#ffffff";
	} else {
		document.deliveryForm.alternativeaddress.disabled = true;
		document.deliveryForm.alternativeaddress.style.backgroundColor = "#eeeeee";
	}
}

function checkGiftOrder() {
	if (document.deliveryForm.giftorder.options[document.deliveryForm.giftorder.selectedIndex].value == "Yes") {
		document.deliveryForm.giftto.disabled = false;
		document.deliveryForm.giftto.style.backgroundColor = "#ffffff";
		document.deliveryForm.giftfrom.disabled = false;
		document.deliveryForm.giftfrom.style.backgroundColor = "#ffffff";
		document.deliveryForm.giftmessage.disabled = false;
		document.deliveryForm.giftmessage.style.backgroundColor = "#ffffff";
	} else {
		document.deliveryForm.giftto.disabled = true;
		document.deliveryForm.giftto.style.backgroundColor = "#eeeeee";
		document.deliveryForm.giftfrom.disabled = true;
		document.deliveryForm.giftfrom.style.backgroundColor = "#eeeeee";
		document.deliveryForm.giftmessage.disabled = true;
		document.deliveryForm.giftmessage.style.backgroundColor = "#eeeeee";
	}	
}

function checkCataloguePayment() {
	if ((document.paymentform.cardnumber.value.length == 0) || (document.paymentform.cardname.value.length == 0)) {
		alert("Please enter your card number and name as it appears on the card");
		return false;
	}
	if (document.paymentform.over18) {
		if (!document.paymentform.over18.checked) {
			alert("Please confirm that you are over 18 years of age");
			return false;
		}		
	}
	if (!LUNCheck(document.paymentform.cardnumber.value)){
		alert("Your card number seems to be invalid - please check and retry");
		return false;
	}
	today = new Date();
	thisMonth = today.getMonth() + 1;
	thisYear = today.getYear();
	selMonth = parseInt(document.paymentform.expmonth.options[document.paymentform.expmonth.selectedIndex].value, 10);
	selYear = parseInt("20" + document.paymentform.expyear.options[document.paymentform.expyear.selectedIndex].value);
				
	if (selYear < thisYear) {
		alert("Card expiry year set in the past");
		return false;
	}		
	if ((selYear == thisYear) && (selMonth < thisMonth)) {
		alert("Card expiry month set in the past");
		return false;
	}
	if ((document.paymentform.cardtype.value != "LASER") && (document.paymentform.cvn.value.length == 0)) {
		alert("Please enter a valid CVN number. This is the last 3 or 4 digits on the back (Visa, MC or Diners) or front of your card (AmEx)");
		return false;
	}
	
	document.paymentform.submitbutton.value = "Please Wait";
	document.paymentform.submitbutton.disabled = true;
	return true;
}

function checkCustomerRegistrationForm() {
		var chrspace = " ";
		//var apostrophe = "'";
		if (document.registerform.firstname.value.length == 0) {
			alert("Please enter your first name");
			return false;
		}
		if (document.registerform.surname.value.length == 0) {
			alert("Please enter your surname");
			return false;
		}
		if (!validateEmail(document.registerform.email.value)) {
			alert("Please enter a valid email address");
			return false;
		}
		if (document.registerform.pword.value != document.registerform.pword2.value) {
			alert("Your passwords do not match, please check");
			return false;
		}
		if (document.registerform.pword.value.length < 5) {
			alert("Your password must be at least 5 characters");
			return false;
		}
		if (document.registerform.pword.value.indexOf(chrspace) > -1) {
			alert("Your password cannot contain spaces or apostrophes");
			return false;
		}
		if (document.registerform.telephone && document.registerform.mobile) {
			if ((document.registerform.telephone.value.length == 0) && (document.registerform.mobile.value.length == 0)) {
				alert("Please enter at least one telephone number");
				return false;
			}
		}
		if (document.registerform.street) {
			if (document.registerform.street.value.length == 0) {
				alert("Please enter your street address (line 1)");
				return false;
			}
		}
		if (document.registerform.town) {
			if (document.registerform.town.value.length == 0) {
				alert("Please enter your town address");
				return false;
			}
		}
		if (document.registerform.county) {
			if (document.registerform.county.value.length == 0) {
				alert("Please enter your county address");
				return false;
			}
		}
	
		if (document.registerform.terms) {
			if (!document.registerform.terms.checked) {				
				alert("You have not agreed to the terms & conditions");
				return false;
			}
		}
		updateInterests();
		return true;
	
	}


function findFormObject(elementName) {
	var i;
	for(i=0; i < document.formbuilder.elements.length; i++) {	
		if (document.formbuilder.elements[i].name == elementName) {
 			return document.formbuilder.elements[i]; 			
 		}
 	}
 	return false;
}

function checkFormBuilder() {
	var i;
	if (reqArray.length > 0) {
		for (i = 0; i < reqArray.length; i++) {
			reqObj = findFormObject(reqArray[i]);
			if (reqObj.value.length == 0) {
				realName = reqObj.name.replace(/_/g, " ");
				realName = realName.substring(realName.indexOf(" ")+1);
				alert("Please enter a value for '" + realName + "'");
				return false;
			}
			if (((reqObj.name.toLowerCase().indexOf("email") != -1) || (reqObj.name.toLowerCase().indexOf("e-mail") != -1)) && (!ValidEmail(reqObj.value))) {
				realName = reqObj.name.replace(/_/g, " ");
				realName = realName.substring(realName.indexOf(" ")+1);
				alert("Please enter a valid email address for '" + realName + "'");
				return false;
			}
		}
	}
	if (radioArray.length > 0) {
		for (i = 0; i < radioArray.length; i++) {			
			checkArray = document.getElementsByName(radioArray[i]);			
			numChecked = 0;
			if (checkArray.length > 0) {
				for (j = 0; j < checkArray.length; j++) {			
					if (checkArray[j].checked == true) {
						numChecked = numChecked + 1;
					}
				}
				if (numChecked == 0) {
					cap = radioArray[i].replace(/_/g, " ")
					cap = cap.substring(cap.indexOf(" ") + 1);
					alert("Please select an option from '" + cap + "'");
					return false;
				}
			}
			else {				
				if (!document.formbuilder[radioArray[i]].checked) {
					alert("You have not ticked " + radioArray[i].replace(/_/g, " "));
					return false;
				}
			}
		}
	}
	// valid file types
	arrExt = validExtensions.split(",");
	fileOK = true;					
	for (i = 0; i < document.formbuilder.elements.length; i++) {
		if ((document.formbuilder.elements[i].type == "file") && (document.formbuilder.elements[i].value != "")) {
			fileOK = false;
			splitFile = document.formbuilder.elements[i].value.split(".");
			for (j = 0; j < arrExt.length; j++) {
				if (arrExt[j] == splitFile[splitFile.length - 1]) fileOK = true;			
			}
		}
	}
	if (!fileOK) {
		alert("Only " + validExtensions + " files allowed");
		return false;
	}	
	if (document.formbuilder.strCAPTCHA.value == "") {
		alert("Please enter the security code");
		return false;
	}
	return true;
}


function checkPayment2() {

	var i;
	
	if (!townOK) {
		alert(townMsg);
		return false;
	}

	for (i = 0; i < document.bookform.elements.length; i++) {
		if ((document.bookform.elements[i].name.substring(0, 4) == "user")) {			
			if ((document.bookform.elements[i].value.length == 0) || (document.bookform.elements[i].value == " ")) {
				alert("Please make sure you enter a name for all participants");
				return false;
			}
		}
	}
	
	for (i = 0; i < document.bookform.elements.length; i++) {
		if ((document.bookform.elements[i].name.substring(0, 3) == "pps")) {
			//alert("pps checking " + document.bookform.elements[i].value);
			if (!womensNetwork && !noPPS) { 
				if (checkPPS(document.bookform.elements[i].value) == false) return false;
			}
		}
	}

	if ((document.bookform.email_returning.value.length != "") && (document.bookform.password_returning.value == "")) {
		alert("You have entered a returning customer email address but no password");
		return false;
	}
	
	if (document.bookform.email_returning.value.length == "") {		
		if ((document.bookform.firstname.value.length == 0) || (document.bookform.firstname.value == " ")) {
			alert("Please enter your first name");
			return false;
		}
		if ((document.bookform.surname.value.length == 0) || (document.bookform.surname.value == " ")) {
			alert("Please enter your surname");
			return false;
		}
		if (checkBizName) {
			if ((document.bookform.bizname.value.length == 0) || (document.bookform.bizname.value == " ")) {
				alert("Please enter your business name");
				return false;
			}
		}
		if (document.bookform.admin.value == "0") {
			if ((document.bookform.email.value.length == 0) || (document.bookform.email.value == " ")) {
				alert("Please enter your email address");
				return false;
			}
			if (!validateEmail(document.bookform.email.value)) {
				alert("Please enter a valid email address");
				return false;
			}
			if (document.bookform.email.value != document.bookform.email2.value) {
				alert("Your email addresses do not match");
				return false;
			}
		}

		if ((document.bookform.street.value.length == 0) || (document.bookform.street.value == " ")) {
			alert("Please enter your street address");
			return false;
		}
	
		if ((document.bookform.county.value.length == 0) || (document.bookform.county.value == " ")) {
			alert("Please enter your county address");
			return false;
		}
			
		if ((document.bookform.telephone.value.length == 0) || (document.bookform.telephone.value == " ")) {
			alert("Please enter your telephone number");
			return false;
		}
	}
	
	// agree
	if (document.bookform.tcflag.value == 1) {
		if (!document.bookform.agree.checked) {
			alert("You have not agreed to the Terms & Conditions");
			return false;
		}
	}
	
	// only check card details if non-admin
	if (document.bookform.admin.value == "1" && document.bookform.totalformcost.value != 0) {
		if (document.bookform.paymenttype.selectedIndex == 0) {
			return checkCC();
		}
	} else {
		if (document.bookform.totalformcost.value != 0) {
			return checkCC();
		}
	}
	

	return true;
}


function checkMailingList(confirmEmail) {	
	if (document.mailingListForm.fullname) {
		if ((document.mailingListForm.fullname.value.length == 0) || (document.mailingListForm.fullname.value == " ")) {
			alert("Please enter your name");
			return false;
		}
	}
	if (!validateEmail(document.mailingListForm.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	if (confirmEmail == 1) {
		if (document.mailingListForm.email.value != document.mailingListForm.email2.value) {
			alert("Your email addresses do not match");
			return false;
		}
	}
	return true;
}

function checkCC() {

	if ((document.bookform.cardnumber.value.length == 0) || (document.bookform.cardname.value.length == 0)) {
		alert("Please enter your card number and name as it appears on the card");
		return false;
	}
	today = new Date();
	thisMonth = today.getMonth() + 1;
	thisYear = today.getYear();
	selMonth = parseInt(document.bookform.expmonth.options[document.bookform.expmonth.selectedIndex].value, 10);
	selYear = parseInt("20" + document.bookform.expyear.options[document.bookform.expyear.selectedIndex].value);
		
	if (selYear < thisYear) {
		alert("Card expiry year set in the past");
		return false;
	}
	if ((selYear == thisYear) && (selMonth < thisMonth)) {
		alert("Card expiry month set in the past");
		return false;
	}
	/*if ((document.bookform.cardtype.value == "SWITCH") && (document.bookform.issuenum.value.length == 0)) {
		alert("Please enter your Switch card issue number");
		return false;
	}*/
	if (!LUNCheck(document.bookform.cardnumber.value)){
		alert("Your card number seems to be invalid - please check and retry");
		return false;
	}
	document.bookform.submitbutton.value = "Please Wait";
	document.bookform.submitbutton.disabled = true;
	return true;
}

function checkLogin() {
	if ((document.loginform.email.value == "") || (document.loginform.pass.value == "")) {
		alert("Please enter an email address and password");
		return false;
	}
	return true;
}

function checkRegister() {
	if (!validateEmail(document.registerform.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	return true;
}

function updateCost() {	
	document.bookform.totalformcost.value = document.bookform.numusers.value * document.bookform.cost.value;
	document.getElementById("totalcost").innerHTML = "<b>€" + document.bookform.totalformcost.value + "</b>";	
	// clear unnecessary inputs
	for (i = 0; i < document.bookform.maxusers.value; i++) {
		userName = document.getElementById('user' + (i + 1));
		if (i >= document.bookform.numusers.value) {			
			userName.value = "";
			userName.disabled = true;
		} else {
			userName.disabled = false;
		}
	}
}

function validateEmail(strEmail){
	if (strEmail.indexOf("@") == -1 || strEmail.indexOf(".") == -1) return false;
	return true;
}

function ValidEmail(stremail) {
	if ((stremail.indexOf("'") != -1) || (stremail.indexOf("!") != -1)) return false;
	if ((stremail.indexOf("@") != -1) && (stremail.indexOf(".") != -1)) return true;
	return false;
}

function checkPasswordReminder() {
	if (!ValidEmail(document.formPasswordReminder.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	if (document.formPasswordReminder.cardnumber.value.length < 9) {
		alert("Your card number should be 9 digits long");
		return false;
	}	
	return true;
}

function checkPasswordRequest() {
	if (document.formPasswordRequest.customername.value.length < 1) {
		alert("Please enter your name");
		return false;
	}
	if (!ValidEmail(document.formPasswordRequest.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	if (document.formPasswordRequest.password.value.length < 4) {
		alert("Please enter at least 4 characters for your password");
		return false;
	}
	/*if ((document.formPasswordRequest.password.indexOf("'") == -1) || (document.formPasswordRequest.password.indexOf(" ") == -1))
		alert("Your password contains invalid characters");
	}	*/
	if (document.formPasswordRequest.cardnumber.value.length < 9) {
		alert("Your card number should be 9 digits long");
		return false;
	}
	if (document.formPasswordRequest.address.value.length < 1) {
		alert("Please enter your address");
		return false;
	}
	return true;
}

function Checkjoinform() {
	if (document.joinform.title.value == "Select_t") {
		alert("Please select a title");
		return false;
	}
	if (document.joinform.surname.value.length < 1) {
		alert("Please enter your surname");
		return false;
	}
	if (document.joinform.firstname.value.length < 1) {
		alert("Please enter your first name");
		return false;
	}
	if (document.joinform.address1.value.length < 1) {
		alert("Please enter your address");
		return false;
	}
	if (document.joinform.town.value.length < 1) {
		alert("Please enter your town");
		return false;
	}
	if (document.joinform.county.value.length < 1) {
		alert("Please enter your county");
		return false;
	}
	/*if (document.joinform.telephone.value.length < 1) {
		alert("Please enter your telephone number");
		return false;
	}
	if (document.joinform.mobile.value.length < 1) {
		alert("Please enter your mobile number");
		return false;
	}*/
	if (!ValidEmail(document.joinform.email.value)) {
		alert("Please enter a valid email address");
		return false;
	}
	radioChecked = false;
	for (i = 0; i < document.joinform.membercard.length; i++)
	{		
		if (document.joinform.membercard[i].checked) {
			radioChecked = true;
		}
	}
	if (!radioChecked) {
		alert("Please select preferred membership format (card or keyfob)");
		return false;
	}
	if (top.window.name.substring(0, 17) == "PigsBackMemberID_") {
		document.joinform.pb.value = "<br>This registration has come through Pigsback.com";
	}
	
	return true;
}


function ValidateLogin() {
	strNumber = document.formLogin.inputID.value;
	strWord = document.formLogin.inputPIN.value;	
	if (!ValidNumber(strNumber) || strNumber.length != 9) {
		alert("Invalid member number");
	}
	else {
		if (strWord.length < 1) {
			alert("You must enter a password");
		}
		else return true;
	}
	return false;
}


function ValidNumber(strNumber) {
	if (strNumber.length == 0) return false;
	for(x = 0; x < strNumber.length; x++) {		
		if (strNumber.charCodeAt(x) < 48 || strNumber.charCodeAt(x) > 57) {
			return false;
		}
	}
	return true;
}

function SwapImage(objImage, strNewpath) {	
	objImage.src = strNewpath;
}


function updateLinks(mapval){
var hrefStr = ""
	if (mapval) {	
		for (index = 0; index < document.links.length;index++) {
			hrefStr = document.links[index].href
			if (document.links[index].search == "" && hrefStr.indexOf("#") < 0 && hrefStr.indexOf("javascript:") < 0 && hrefStr.indexOf("mailto:") < 0) {
				document.links[index].href = document.links[index].href + "?map=" + mapval
			}
			else {
				//alert (hrefStr.indexOf("#")) 
				if (hrefStr.indexOf("#") < 0 && hrefStr.indexOf("javascript:") < 0 && hrefStr.indexOf("mailto:") < 0) {
					document.links[index].href = document.links[index].href + "&map=" + mapval
					
				}
			}
		}
	}
}



function checkMinSize(elementArray,size,showMessage){

var testVal
testVal = ""
var failedItems = new Array()
var failedNames = ""
	for (index=0;index < elementArray.length;index++){
		testVal = elementArray[index].value
		if(testVal.length < size){
			failedItems[failedItems.length] = elementArray[index]
			failedNames = failedNames + (failedNames.length>0?",":"") + elementArray[index].name 
		}
	}
	
	if (showMessage && failedNames.length > 0){
		alert ("The following item(s) must be at least " + size + " characters in length: " + failedNames)	
	}

	return failedItems;

}

function checkMaxSize(elementArray,size,showMessage){

var testVal
testVal = ""
var failedItems = new Array()
var failedNames = ""
	for (index=0;index < elementArray.length;index++){
		testVal = elementArray[index].value
		if(testVal.length > size){
			failedItems[failedItems.length] = elementArray[index]
			failedNames = failedNames + (failedNames.length>0?",":"") + elementArray[index].name 
		}
	}
	
	if (showMessage && failedNames.length > 0){
		alert ("The following item(s) must be no more than " + size + " characters in length: " + failedNames)	
	}

	return failedItems;

}

function checkBlank(elementArray,showMessage){

var testVal
var failedNames = ""

testVal = ""
var failedItems = new Array()

	for (index=0;index < elementArray.length;index++){
		testVal = elementArray[index].value
		if(testVal.length < 1){
			failedItems[failedItems.length] = elementArray[index]
			failedNames = failedNames + (failedNames.length>0?",":"") + elementArray[index].name 

		}
	}
	if (showMessage && failedNames.length > 0){
		alert ("Please enter data into the following field(s): " + failedNames)	
	}
	return failedItems;

}
function checkNumeric(elementArray,showMessage){
var testVal
var failedItems = new Array()
var failedNames = ""

testVal = ""
	for (index=0;index < elementArray.length;index++){
		testVal = elementArray[index].value
		if(isNaN(testVal)){
			failedItems[failedItems.length] = elementArray[index]
			failedNames = failedNames + (failedNames.length>0?",":"") + elementArray[index].name 

		}
	}
	
	if (showMessage && failedNames.length > 0){
		alert ("The following item(s) may only contain numbers: " + failedNames)	
	}
	return failedItems
}

function checkEmail(elementArray,showMessage){
	 //make sure there's an '@' followed at some point by a '.'
	 var atLoc;
	 var failedItems = new Array();
	 var failedNames = "";
	for (index=0;index < elementArray.length;index++){
		 emailStr = elementArray[index].value;
		 atLoc = emailStr.indexOf("@");
		 if (atLoc > 0) {
			if(emailStr.indexOf(".",atLoc) > 0) {
				continue;				
			}
		 }
		failedItems[failedItems.length] = elementArray[index]
		failedNames = failedNames + (failedNames.length>0?",":"") + elementArray[index].name;

	}
	//if we get here then the email is not valid
	if (showMessage && failedNames.length > 0){
		alert ("Please enter a valid email address for the following field(s): " + failedNames);
	}
	return failedItems;
}
 
function catchChange(sender){
//generic function that can be redirected for use with autogenerated inputs (from Inputs2.asp)
//e.g.
}

function checkCode(cid, pid) {
	var digits;
	var digTotal = 0;
	var discount = 30;
	ppsCodes = "ABCDEFGHIJKLMNOPQRSTUVW";
	digits = getObj("networkcode_" + cid + "_" + pid).value.substring(3, getObj("networkcode_" + cid + "_" + pid).value.length - 1);
	for (i = 0; i < digits.length; i++) {
		digTotal += parseInt(digits.charAt(i));
	}
	modVal = digTotal % 23;
	if (modVal == 0) {
		ppsLetter = "W";
	} else {
		ppsLetter = ppsCodes.charAt(modVal - 1);
	}
	if (ppsLetter == getObj("networkcode_" + cid + "_" + pid).value.charAt(getObj("networkcode_" + cid + "_" + pid).value.length - 1)) {		
		appliedDiscount = roundNumber((getObj("total_" + cid).value / getObj("numparts_" + cid).value) * (discount/100), 2);		
		if (checkOtherCodes(getObj("networkcode_" + cid + "_" + pid).value, cid, pid)) {
			getObj("codetext_" + cid + "_" + pid).innerHTML = "You have received a " + discount + "% discount of &euro;" + appliedDiscount + " from this course (&euro;" + getObj("total_" + cid).value + ").";
			getObj("codeimage_" + cid + "_" + pid).innerHTML = "<img src='/core/images/icon-good.gif'>";
			getObj("disc_" + cid + "_" + pid).value = appliedDiscount;
		} else {
			getObj("codeimage_" + cid + "_" + pid).innerHTML = "<img src='/core/images/icon-bad.gif'>";
			getObj("codetext_" + cid + "_" + pid).innerHTML = "You cannot use the same code for more than one participant";
		}
		
	} else {
		getObj("codeimage_" + cid + "_" + pid).innerHTML = "<img src='/core/images/icon-bad.gif'>";
		getObj("codetext_" + cid + "_" + pid).innerHTML = "Enter your network ID to receive discount";
	}
	totalDiscounts();
}

function totalDiscounts() {
	var totalDisc = 0;
	var courseids = getObj("ids").value.split(",");	
	for (i = 0; i < courseids.length; i++) {
		for (j = 0; j < getObj("numparts_" + courseids[i]).value; j++) {
			totalDisc += parseFloat(getObj("disc_" + courseids[i] + "_" + (j+1)).value);
		}		
	}
}

function checkOtherCodes(val, cid, pid) {	
	var courseids = getObj("ids").value.split(",");	
	for(i = 0; i < courseids.length; i++) {
		for(j = 1; j < getObj("numparts_" + courseids[i]).value; j++) {			
			if (getObj("networkcode_" + courseids[i] + "_" + j).value.toUpperCase() == val.toUpperCase() && cid == courseids[i] && pid != j) {				
				return false;
			}			
		}
	}
	return true;
}


function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}

 
 
