﻿var PTAH_MyTicket_IsLoaded = false;
var PTAH_AttendeeList = "";
var PTAH_NewAttendee_ObjectId = -1;
var PTAH_NewAttendee_SelectObj = "";
var PTAH_Unpaid_Ticket_Count = 0;
var PTAH_RegisteredTickets_Count = 0;
var PTAH_TicketsLoaded = false;
var PTAH_SelfRegistered = false;
var PTAH_AttendeeListLoaded = false;
var PTAH_NoOfDays = 0; 
var PTAH_PreviousView = "";
var PTAH_PermittedToRegisterOthers = false;
var PTAH_CurrentEditAttendeeObjectId;

function InitPayToAttendHomepage(){

	ShowWait(true);

	PreLoad = true;

	AddControlBox("PTAH_Choice","What do you want to do?",GetContentFromContentTemplate("PayToAttendHomepage_TicketsForOthers"), document.getElementById("PTAH_WhatDoYouWantToDo"),"PTAH");	
	
	AddControlBox("PTAH_RegisterSelf","Register",GetContentFromContentTemplate("PayToAttendHomepage_RegisterSelf"), document.getElementById("PTAH_TicketsForSelf"),"PTAH");

	AddControlBox("PTAH_RegisterContact","Register a Ticket for someone else",GetContentFromContentTemplate("PayToAttendHomepage_RegisterContact"), document.getElementById("PTAH_TicketsForOthers"),"PTAH");

	AddControlBox("PTAH_RegisterAttendee","Register new Attendee ",GetContentFromContentTemplate("PayToAttendHomepage_RegisterAttendee"), document.getElementById("PTAH_RegisterNewAttendee"),"PTAH");

	AddControlBox("PTAH_EditAttendee","Edit Attendee ",GetContentFromContentTemplate("PayToAttendHomepage_EditAdditionalUser"), document.getElementById("PTAH_EditAdditionalUser"),"PTAH");	
	
	ShowWait(false);
	
	PreLoad = false;
	
}

function PTAH_Home(){

	PTAH_AttendeeListLoaded = false;  //IE Bug. Need to reload attendee list each time homepage is opened.

    document.getElementById("PTAH_TicketsForSelf").style.display = "none";
	document.getElementById("PTAH_TicketsForOthers").style.display = "none";
	document.getElementById("PTAH_RegisterNewAttendee").style.display = "none";
	document.getElementById("PTAH_EditAdditionalUser").style.display = "none";
	
	document.getElementById("PTAH_WhatDoYouWantToDo").style.display = "block";
	document.getElementById("PTAH_AdditionalUsersList").style.display = "block";
	document.getElementById("PTAH_TicketList").style.display = "block";
	
	PTAH_Homepage_DrawUnpaidTicketCount();
	
}

function PTAH_Homepage_EnableTicketsForOthers(enabled){

	if(enabled == "true"){
		PTAH_PermittedToRegisterOthers = true;
	}else{
		PTAH_PermittedToRegisterOthers = false;
		document.getElementById("PTAH_Icon_AdditionalTicketsForOthers").src = ICON_PTAH_REGISTEROTHERS_INACTIVE;
	}

}

function PTAH_HideHomepage(){

	document.getElementById("PTAH_WhatDoYouWantToDo").style.display = "none";
	document.getElementById("PTAH_AdditionalUsersList").style.display = "none";
	document.getElementById("PTAH_TicketList").style.display = "none";
	
}

function PTAH_Homepage_DrawUnpaidTicketCount(){

    ShowWait(true);

    document.getElementById("PTAH_TicketList").innerHTML = "";
    document.getElementById("PTAH_Homepage_UnpaidTicketCount").innerHTML = "";
    Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=976&eoid="+EVENT_OBJECTID, PTAH_Homepage_DrawUnpaidTicketCount_Response);

}

function PTAH_Homepage_DrawUnpaidTicketCount_Response(){
    
     if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		var container, sh, sicon,sIcon2, sspacer, aDelete;
		var UnpaidTickets = 0;
		var PaidTickets = 0;
		var i, j;
		var RegistrationTicketCount = 0;
	     
		nodes = XmlDoc.getElementsByTagName("Tickets")
		PTAH_Homepage_EnableTicketsForOthers(nodes[0].getAttribute("allowedtobuyticketsforothers"));
		PTAH_Unpaid_Ticket_Count = 0;

		RegistrationTicketCount = nodes[0].getAttribute("registrationtickets");
		PTAH_RegisteredTickets_Count = RegistrationTicketCount;
	        	if (PTAH_RegisteredTickets_Count > 0) {
	        		PTAH_SelfRegistered = true;
	        		document.getElementById("PTAH_Icon_RegisterSelf").src = ICON_PTAH_REGISTERSELF_INACTIVE;
	        	}
	        	else {
	        		PTAH_SelfRegistered = false;
	        		document.getElementById("PTAH_Icon_RegisterSelf").src = ICON_PTAH_REGISTERSELF;
	        	}
	    nodes = XmlDoc.getElementsByTagName("Ticket")
	    if(nodes.length > 0){		
		
		    AddListBox("CurrentTickets","My Tickets",document.getElementById("PTAH_TicketList"),"PTAH");
	    
	        container = document.getElementById("PTAH_ListBox_MainContent_CurrentTickets");
			container.className = "ListBox_MainContent";
	        container.innerHTML = "";    
	        
	        for(i = 0; i < nodes.length; i++){

	        	//if(parseInt(nodes[i].getAttribute("purchasedby")) == parseInt(nodes[i].getAttribute("purchasedfor"))){

    	    
    	        ticketDesc = "Purchased for: " + nodes[i].getAttribute("purchasedforname") + "<br/>";
    	        ticketDesc += "Attendance: ";
    	        
    	        nodesDays = nodes[i].getElementsByTagName("Day");
    	        for(j = 0; j < nodesDays.length; j++){
    	        
    	            ticketDesc += "Day " + nodesDays[j].getAttribute("dayid") + ": " + nodesDays[j].getAttribute("userfullname") + "; ";
    	            
    	        
    	        }
    	    
    	        if(nodes[i].getAttribute("paid") == ""){
    	        
	                //unpaid ticket
	        	    
	        	    AddListBoxItem(-1, nodes[i].getAttribute("ticketobjectid"), nodes[i].getAttribute("name"), ticketDesc, container, null, "PTAH", ICON_TICKET_UNPAID)
	    
	                sh = document.getElementById("PTAH_ListBox_ItemHeader_"+nodes[i].getAttribute("ticketobjectid"));
	                sicon = document.createElement("img");
	                sicon.src = ICON_ITEM_UNPAID;
		            sicon.alt = "Attention: You need to pay for this ticket.";
		            sicon.title = "Attention: You need to pay for this ticket.";

		            aDelete = document.createElement("a");
		            aDelete.href = "javascript:PTAH_RemoveTicket(" + nodes[i].getAttribute("ticketobjectid") + ");";
		            aDelete.style.verticalAlign = 'top';

		            sIcon2 = document.createElement("img");
		            sIcon2.src = ICON_ITEM_REMOVE;
		            sIcon2.alt = "Remove ticket";
		            sIcon2.title = "Remove ticket";

		            if (isIE) { sicon.onload = png; }
		            if (isIE) { sIcon2.onload = png; }

		            sspacer = document.createElement("span");
		            sspacer.innerHTML = '  ';

		            sh.appendChild(sicon);
		            sh.appendChild(sspacer);
		            aDelete.appendChild(sIcon2);
	                sh.appendChild(aDelete);

	                UnpaidTickets += 1;
    	        
	            }else{
    	        
	                //paid ticket
	                
	                AddListBoxItem(-1, nodes[i].getAttribute("ticketobjectid"), nodes[i].getAttribute("name"), ticketDesc, container, null, "PTAH", ICON_TICKET_PAID)
	    
	                sh = document.getElementById("PTAH_ListBox_ItemHeader_"+nodes[i].getAttribute("ticketobjectid"));
	                sicon = document.createElement("img");
	                sicon.src = ICON_ITEM_PAID;
		            sicon.alt = "You have paid for this ticket.";
		            sicon.title = "You have paid for this ticket.";
	                if(isIE){sicon.onload = png;}
	                sh.appendChild(sicon);
	                
	                PaidTickets += 1;
    	        
	            }
    	    
	        }
	        
            PTAH_Unpaid_Ticket_Count = UnpaidTickets;



           }
    	
    	if(PTAH_Unpaid_Ticket_Count > 0){
            document.getElementById("PTAH_Icon_PayForTickets").src = ICON_PTAH_PAYFORTICKETS;
            document.getElementById("PTAH_Homepage_UnpaidTicketCount").innerHTML = "(you have " + PTAH_Unpaid_Ticket_Count + " unpaid tickets)";	
        }else{
            document.getElementById("PTAH_Icon_PayForTickets").src = ICON_PTAH_PAYFORTICKETS_INACTIVE;
            document.getElementById("PTAH_Homepage_UnpaidTicketCount").innerHTML = "(you have no unpaid tickets)";
        }  
	    
		PTAH_DrawAdditionalUsers();
	    //ShowWait(false);
		
	}

}

function PTAH_DrawAdditionalUsers(){

	if(PTAH_PermittedToRegisterOthers){

		ShowWait(true);

		Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=913&eoid="+EVENT_OBJECTID, PTAH_DrawAdditionalUsers_Response);

	}else{ShowWait(false);}
	
}

function PTAH_DrawAdditionalUsers_Response(){

    if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		
		//  USER LIST
		var nodes = XmlDoc.getElementsByTagName("RegisteredContact");
		var container;
		
		
		if(nodes.length > 0){
		
			try{
		
				if(!PTAH_AttendeeListLoaded){
					document.getElementById("PTAH_AdditionalUsersList").innerHTML = "";
					AddControlBox("PTAH_AttendeesList","Attendees I've registered",GetContentFromContentTemplate("PayToAttendHomepage_AdditionalUsersList"), document.getElementById("PTAH_AdditionalUsersList"),"PTAH");	
					PTAH_AttendeeListLoaded = true;
				}
				
				container = document.getElementById("PTAH_ControlBox_MainContent_PTAH_AttendeesList");
				container.innerHTML = "";
				container.className = "ListBox_MainContent";
				
				for(i = 0; i < nodes.length; i++){
					AddListBoxItem(-1, nodes[i].getAttribute("objectid"), nodes[i].getAttribute("name"), "A user i registered", container, "PTAH_OpenEditAdditionalUser("+nodes[i].getAttribute("objectid")+");", "PTAH", ICON_ITEM_USER,"objectid:"+nodes[i].getAttribute("objectid")+";")
					AddStageProgressIcon(nodes[i].getAttribute("objectid"), "", "blank", "PTAH")
				}
			
			}catch(ex){}
			
		}else{
			//no registered users
			try{
				document.getElementById("PTAH_AdditionalUsersList").innerHTML = "";
			}catch(ex){}
		}
	
		ShowWait(false);
	
	}

}

function IE_PTAH_OpenEditAdditionalUser(){

	PTAH_OpenEditAdditionalUser(this.getAttribute("objectid"));

}

function PTAH_OpenEditAdditionalUser(objid){
	
	ShowWait(true);
    
	PTAH_CurrentEditAttendeeObjectId = objid;
	
	document.getElementById("PTAH_TicketList").style.display = "none";
	document.getElementById("PTAH_TicketsForSelf").style.display = "none";
	document.getElementById("PTAH_TicketsForOthers").style.display = "none";
	document.getElementById("PTAH_RegisterNewAttendee").style.display = "none";
	document.getElementById("PTAH_WhatDoYouWantToDo").style.display = "none";
	document.getElementById("PTAH_AdditionalUsersList").style.display = "none";
	document.getElementById("PTAH_EditAdditionalUser").style.display = "block";
	
	Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=524&oid="+objid+"&eoid="+EVENT_OBJECTID, PTAH_OpenEditAdditionalUser_Response);

}

function PTAH_OpenEditAdditionalUser_Response(){

	if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		var nodes = XmlDoc.getElementsByTagName("RegisteredAttendee");
		
		var t, f, s, e, tel;
		
		try{t = nodes[0].getElementsByTagName("Title")[0].firstChild.data;}catch(ex){t = "";}
		try{f = nodes[0].getElementsByTagName("Forenames")[0].firstChild.data;}catch(ex){f = "";}
		try{s = nodes[0].getElementsByTagName("Surname")[0].firstChild.data;}catch(ex){s = "";}
		try{e = nodes[0].getElementsByTagName("Email")[0].firstChild.data;}catch(ex){e = "";}
		try{tel = nodes[0].getElementsByTagName("Tel")[0].firstChild.data;}catch(ex){tel = "";}
		
		document.getElementById("txtEditAttendee_Title").value = t;
		document.getElementById("txtEditAttendee_Forenames").value = f;
		document.getElementById("txtEditAttendee_Surname").value = s;
		document.getElementById("txtEditAttendee_Email").value = e;
		document.getElementById("txtEditAttendee_Tel").value = tel;
		
		ShowWait(false);	
	}

}

function PTAH_EditAdditionalUser_Save(){

	ShowWait(true);
	
	var t, f, s, e, tel;
	
	t = document.getElementById("txtEditAttendee_Title").value;
	f = document.getElementById("txtEditAttendee_Forenames").value;
	s = document.getElementById("txtEditAttendee_Surname").value;
	e = document.getElementById("txtEditAttendee_Email").value;
	tel = document.getElementById("txtEditAttendee_Tel").value;
	
	
	var url = ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx";
	
	var params = "cmd=523&coid="+PTAH_CurrentEditAttendeeObjectId;
	params += "&title="+escape(t);
	params += "&forenames="+escape(f);
	params += "&surname="+escape(s);
	params += "&tel="+escape(tel);
	params += "&email="+escape(e);
	
	//alert(url + "?" + params);
	
	Ajax_PostXmlPage(url, params, PTAH_EditAdditionalUser_Save_Response);
	

}

function PTAH_EditAdditionalUser_Save_Response(){

	if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		
		PTAH_CurrentEditAttendeeObjectId = -1;
		
		PTAH_Home();
		
		ShowWait(false);
		
	}

}

function PTAH_OpenEditAdditionalUser_Cancel(){

	if(confirm("Unsaved changes will be lost. Continue?")){
		PTAH_CurrentEditAttendeeObjectId = -1;
		document.getElementById("txtEditAttendee_Title").value = "";
		document.getElementById("txtEditAttendee_Forenames").value = "";
		document.getElementById("txtEditAttendee_Surname").value = "";
		document.getElementById("txtEditAttendee_Email").value = "";
		document.getElementById("txtEditAttendee_Tel").value = "";
		PTAH_Home();
	}

}

function PTAH_RemoveTicket(id) {
	if (confirm('Are you sure you want to remove the ticket?')) {
		ShowWait(true);
		var url = ROOT_DIR + "Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=674&eoid=" + EVENT_OBJECTID + "&ticketobjectid=" + id;
		Ajax_GetXmlPage(url, PTAH_RemoveTicket_Response);
	}
}

function PTAH_RemoveTicket_Response() {
	if (Ajax_XmlHttp_IsReady()) {

		ShowWait(false);

		PTAH_Home();

	}
}

function PTAH_AddTicketForOther(){

	var ticketProductId = -1;
	var addProducts = '';
	/*
	var radioGroup = document.frmEventManagement.chkTicketForOther;
	
    var radioGroupLength = radioGroup.length; 
    if(!IsNumeric(radioGroupLength)){radioGroupLength = -1;}
	if(parseInt(radioGroupLength) <= 0){
	    if(radioGroup.checked == true){
	        ticketProductId = radioGroup.value;
	    }
	}else{
	    for( i = 0; i < radioGroup.length; i++ ){
		    if(radioGroup[i].checked == true){
			    ticketProductId = radioGroup[i].value;
			    break;
		    }
	    }	
	}
	*/

	ticketProductId = GetSelectedTicket();
	addProducts = GetSelectedAdditionalProducts();

    var t, f, s, e, tel;
    var userid = -1;
    
    userid = document.getElementById("PTAH_TicketsForOthers_selExistingUser").value;

	if(parseInt(ticketProductId) > 0){

	    if(userid <= -1){

            t = document.getElementById("txtTicketsForOthers_Title").value;
            f = document.getElementById("txtTicketsForOthers_Forenames").value;
            s = document.getElementById("txtTicketsForOthers_Surname").value;
            e = document.getElementById("txtTicketsForOthers_Email").value;
            tel = document.getElementById("txtTicketsForOthers_Tel").value;
	    
	        if(t == "" || f == "" || s == "" || e == "" || tel == ""){
	            alert("You must complete all fields for a new user.");
	            return;	        
	        }
	    	    
	    }
	    
		if(confirm("Are you sure you want to add this ticket?")){

	        ShowWait(true);
        	
	        //get the day's attendence
        	
	        var inputItems = document.getElementsByTagName("select");
	        var inputItem, attendanceRecord;
	        var attendanceRecord = "";
	        for(var i = 0; i < inputItems.length; i++){
                inputItem = inputItems[i];
	            if(inputItem.id.indexOf("selAttendance_TicketForOthers_") == 0){     
	                attendanceRecord += (inputItem.id.substring(33) + ":" + inputItem.value + ";");  
	            }
	        }

            var url = ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=673&eoid="+EVENT_OBJECTID;
            url += "&tpid=" + ticketProductId;
            url += "&apid=" + addProducts;
            url += "&ta="+attendanceRecord;
            url += "&uid="+userid;
            url += "&t="+escape(t);
            url += "&f="+escape(f);
            url += "&s="+escape(s);
            url += "&e="+escape(e);
            url += "&tel="+escape(tel);

	        Ajax_GetXmlPage(url, PTAH_AddTicketForOther_Response);

		}
		
	}else{
	
		alert("You must select a ticket first.");
		
	}

}

function PTAH_AddTicketForOther_Response(){

	if(Ajax_XmlHttp_IsReady()){

    	ShowWait(false);
		
		PTAH_Home();
		
	}

}

function PTAH_AddMyTicket(){

	var ticketProductId = -1;
	var addProducts = '';
	
	/*
	var radioGroup = document.frmEventManagement.chkMyTicket;  // document.getElementById("chkMyTicket");
		
    var radioGroupLength = radioGroup.length; 
    if(!IsNumeric(radioGroupLength)){radioGroupLength = -1;}
	if(parseInt(radioGroupLength) <= 0){
	    if(radioGroup.checked == true){
	        ticketProductId = radioGroup.value;
	    }
	}else{
	    for( i = 0; i < radioGroup.length; i++ ){
		    if(radioGroup[i].checked == true){
			    ticketProductId = radioGroup[i].value;
			    break;
		    }
	    }	
	}
	*/
	
	ticketProductId = GetSelectedTicket();
	addProducts = GetSelectedAdditionalProducts();

	if(ticketProductId > 0){
		if(confirm("Are you sure you want to add this ticket?")){
			PTAH_AddTicket(ticketProductId, addProducts);
		}
	}else{
		alert("You must select a ticket first.");
	}

}

function PTAH_AddTicket(ticketProductId, AddtionalTickets){

	ShowWait(true);
	
	//get the day's attendence
	
	var inputItems = document.getElementsByTagName("select");
	var inputItem, attendanceRecord;
	attendanceRecord = "";
	for(var i = 0; i < inputItems.length; i++){
        inputItem = inputItems[i];
	    if(inputItem.id.indexOf("selAttendance_") == 0){     
	        attendanceRecord += (inputItem.id.substring(17) + ":" + inputItem.value + ";");  
	    }
	}

	Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=672&eoid="+EVENT_OBJECTID+"&tpid="+ticketProductId+"&ta="+attendanceRecord+"&apid="+AddtionalTickets, PTAH_AddTicket_Response);

}

function PTAH_AddTicket_Response(){

	if(Ajax_XmlHttp_IsReady()){
	
		ShowWait(false);
		
		PTAH_Home();
	
	}

}

function PTAH_RegisterSelf(){
	
	if(PTAH_SelfRegistered){alert("You have already brought a ticket for yourself.\nYou cannot buy another.");return;}
	
	PTAH_PreviousView = "RegisterSelf";
	
	PTAH_HideHomepage();
	
	document.getElementById("PTAH_RegisterNewAttendee").style.display = "none";
	document.getElementById("PTAH_TicketsForSelf").style.display = "block";

	PTAH_InitTickets();

}

function PTAH_InitTickets(){

	if(PTAH_TicketsLoaded){return;}
	
	ShowWait(true);
	Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=557&eoid="+EVENT_OBJECTID, PTAH_InitTickets_Response);

}

function PTAH_InitTickets_Response(){

	if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		var nodes = XmlDoc.getElementsByTagName("Ticket")
		var Additonalnodes = XmlDoc.getElementsByTagName("AdditionalTicket")
		
		var tblTicket = document.getElementById("PTAH_MyTicket_Tickets");
		var tblDays = document.getElementById("PTAH_MyTicket_Days");
		var tblTicketsForOthers = document.getElementById("PTAH_TicketForOthers_Tickets");
		var tblDaysForOthers = document.getElementById("PTAH_TicketForOthers_Days");
		var tr, td, input, span, select, sel, sel2;
		
		//render ticket options
		
		for(var i = 0; i < nodes.length; i++){	

            //MY TICKET

			tr = tblTicket.insertRow(tblTicket.rows.length);
			tr.id = "PTAH_Ticket_"+nodes[i].getAttribute("productid");
			
				td = tr.insertCell(0);
				
					td.style.width = "20px";
					
					/*
					input = document.createElement("input");
					input.type = "radio";
					input.id = "chkMyTicket";
					input.name = "chkMyTicket";
					input.value = nodes[i].getAttribute("productid");
					
					if(isIE){
						input.onclick = PTAH_SelectTicket;
					}else{
						input.setAttribute("onclick", "PTAH_SelectTicket(this);");
					}
					*/
					
					input = document.createElement("input")
					input.type = "checkbox";
					input.id = "chkMyTicket_" + nodes[i].getAttribute("productid");
					input.value = nodes[i].getAttribute("productid");
					
					if(isIE){
						input.onclick = SelectTicket;
					}else{
						input.setAttribute("onclick", "SelectTicket(this);");
					}
				
					td.appendChild(input)
				
				td = tr.insertCell(1);
				
					span = document.createElement("span");
					span.className = "PayToAttend_ProductName";
					span.innerHTML = nodes[i].getAttribute("name");
					
					td.appendChild(span);
					td.appendChild(document.createElement("br"));
					
					span = document.createElement("span");
					span.className = "PayToAttend_Price";
					span.innerHTML = nodes[i].getAttribute("priceexvat");
					
					td.appendChild(span);

					span = document.createElement("span");
					span.className = "PayToAttend_VatPrice";
					span.innerHTML = (" (" + nodes[i].getAttribute("price") + " inc. VAT)");
					
					td.appendChild(span);
			
			if(i < nodes.length-1){
	
				tr = tblTicket.insertRow(tblTicket.rows.length);
				tr.className = "PayToAttend_ProductRowSep";
				
					td = tr.insertCell(0);
					td.colSpan = "2";
	
				tr = tblTicket.insertRow(tblTicket.rows.length);
				
					td = tr.insertCell(0);
					td.colSpan = "2";
					
			}
			
		    //TICKETS FOR OTHERS
	
			tr = tblTicketsForOthers.insertRow(tblTicketsForOthers.rows.length);
			tr.id = "PTAH_TicketForOther_"+nodes[i].getAttribute("productid");
			
				td = tr.insertCell(0);
				
					td.style.width = "20px";
					
					/*
					input = document.createElement("input");
					input.type = "radio";
					input.id = "chkTicketForOther";
					input.name = "chkTicketForOther";
					input.value = nodes[i].getAttribute("productid");
					
					if(isIE){
						input.onclick = PTAH_SelectTicket;
					}else{
						input.setAttribute("onclick", "PTAH_SelectTicket(this);");
					}
					*/
					
					input = document.createElement("input")
					input.type = "checkbox";
					input.id = "chkTicketForOther_" + nodes[i].getAttribute("productid");
					input.value = nodes[i].getAttribute("productid");
					
					if(isIE){
						input.onclick = SelectTicket;
					}else{
						input.setAttribute("onclick", "SelectTicket(this);");
					}
				
					td.appendChild(input)
				
				td = tr.insertCell(1);
				
					span = document.createElement("span");
					span.className = "PayToAttend_ProductName";
					span.innerHTML = nodes[i].getAttribute("name");
					
					td.appendChild(span);
					td.appendChild(document.createElement("br"));
					
					span = document.createElement("span");
					span.className = "PayToAttend_Price";
					span.innerHTML = nodes[i].getAttribute("priceexvat");
					
					td.appendChild(span);

					span = document.createElement("span");
					span.className = "PayToAttend_VatPrice";
					span.innerHTML = (" (" + nodes[i].getAttribute("price") + " inc. VAT)");
					
					td.appendChild(span);
			
			if(i < nodes.length-1){
	
				tr = tblTicketsForOthers.insertRow(tblTicketsForOthers.rows.length);
				tr.className = "PayToAttend_ProductRowSep";
				
					td = tr.insertCell(0);
					td.colSpan = "2";
	
				tr = tblTicket.insertRow(tblTicketsForOthers.rows.length);
				
					td = tr.insertCell(0);
					td.colSpan = "2";
					
			}

		}

		//render additional products
		if (Additonalnodes.length > 0) {

			var tblAddSelf = document.getElementById("PTAH_MyTicket_Additional");
			var tblAddOthers = document.getElementById("PTAH_TicketForOthers_Additional");

			tblAddOthers.style.display = "block";
			tblAddSelf.style.display = "block";

			var chkBoxNames = '';

			for (var i = 0; i < Additonalnodes.length; i++) {
				//TICKETS FOR OTHERS

				tr = tblAddOthers.insertRow(tblAddOthers.rows.length);
				tr.id = "PTAH_TicketForOther_Addtional_" + Additonalnodes[i].getAttribute("productid");

				td = tr.insertCell(0);

				td.style.width = "20px";

				input = document.createElement("input")
				input.type = "checkbox";
				input.id = "chkAddTicketForOther_" + Additonalnodes[i].getAttribute("productid");
				input.value = Additonalnodes[i].getAttribute("productid");
				if (chkBoxNames.length > 0) {
					chkBoxNames += "," + input.id;
				} else {
					chkBoxNames = input.id;
				}

				td.appendChild(input)

				td = tr.insertCell(1);

				span = document.createElement("span");
				span.className = "PayToAttend_ProductName";
				span.innerHTML = Additonalnodes[i].getAttribute("name");

				td.appendChild(span);
				td.appendChild(document.createElement("br"));
				if (Additonalnodes[i].firstChild.data.length > 0) {
					span = document.createElement("span");
					span.innerHTML = Additonalnodes[i].firstChild.data;
					td.appendChild(span);
					td.appendChild(document.createElement("br"));
				}

				span = document.createElement("span");
				span.className = "PayToAttend_Price";
				span.innerHTML = Additonalnodes[i].getAttribute("priceexvat");

				td.appendChild(span);

				span = document.createElement("span");
				span.className = "PayToAttend_VatPrice";
				span.innerHTML = (" (" + Additonalnodes[i].getAttribute("price") + " inc. VAT)");

				td.appendChild(span);

				//TICKETS FOR SELF

				tr = tblAddSelf.insertRow(tblAddSelf.rows.length);
				tr.id = "PTAH_TicketForSelf_Addtional_" + Additonalnodes[i].getAttribute("productid");

				td = tr.insertCell(0);

				td.style.width = "20px";

				input = document.createElement("input")
				input.type = "checkbox";
				input.id = "chkAddTicketForSelf_" + Additonalnodes[i].getAttribute("productid");
				input.value = Additonalnodes[i].getAttribute("productid");
				if (chkBoxNames.length > 0) {
					chkBoxNames += "," + input.id;
				} else {
					chkBoxNames = input.id;
				}

				td.appendChild(input)

				td = tr.insertCell(1);

				span = document.createElement("span");
				span.className = "PayToAttend_ProductName";
				span.innerHTML = Additonalnodes[i].getAttribute("name");

				td.appendChild(span);
				td.appendChild(document.createElement("br"));

				if (Additonalnodes[i].firstChild.data.length > 0) {
					span = document.createElement("span");
					span.innerHTML = Additonalnodes[i].firstChild.data;
					td.appendChild(span);
					td.appendChild(document.createElement("br"));
				}


				span = document.createElement("span");
				span.className = "PayToAttend_Price";
				span.innerHTML = Additonalnodes[i].getAttribute("priceexvat");

				td.appendChild(span);

				span = document.createElement("span");
				span.className = "PayToAttend_VatPrice";
				span.innerHTML = (" (" + Additonalnodes[i].getAttribute("price") + " inc. VAT)");

				td.appendChild(span);
			}
			document.getElementById("txtAddtionalProducts").value = chkBoxNames;
		}
		
		//render days
		
		nodes = XmlDoc.getElementsByTagName("Day")
		for(var i = 0; i < nodes.length; i++){	
		    
		    PTAH_NoOfDays += 1;
		    
		    //MY TICKET 
		    
			tr = tblDays.insertRow(tblDays.rows.length);
			
				td = tr.insertCell(0);
					td.width = "160px";
					td.innerHTML = "Day " + nodes[i].getAttribute("id") + " (" + nodes[i].getAttribute("longdate") + ")";
				
				td = tr.insertCell(1);
					
					select = document.createElement("select");
										
					select.id = ("selAttendance_Day"+(i+1));
					
					select.options[select.options.length] = new Option("I will attend on this day",USER_OBJECTID);	
					
					if(PTAH_PermittedToRegisterOthers){			
						select.options[select.options.length] = new Option("-----------------------","");	
						select.options[select.options.length] = new Option("Register new attendee","new");
						select.options[select.options.length] = new Option("-----------------------","");
					}else{
						select.disabled = true;
					}
						
					if(isIE){
						select.onchange = PTAH_SelectAttendee;
					}else{
						select.setAttribute("onchange", "PTAH_SelectAttendee(this);");
					}
					
					td.appendChild(select);
				
				td = tr.insertCell(2);
				
				
				
			//TICKETS FOR OTHERS
				
			tr = tblDaysForOthers.insertRow(tblDaysForOthers.rows.length);
			
				td = tr.insertCell(0);
					td.width = "160px";
					td.innerHTML = "Day " + nodes[i].getAttribute("id") + " (" + nodes[i].getAttribute("longdate") + ")";
				
				td = tr.insertCell(1);
					
					select = document.createElement("select");
					
					select.id = ("selAttendance_TicketForOthers_Day"+(i+1));
					
					select.options[select.options.length] = new Option("Ticket holder will attend","0");	
					select.options[select.options.length] = new Option("I will attend",USER_OBJECTID);	
					select.options[select.options.length] = new Option("-----------------------","");	
					select.options[select.options.length] = new Option("Register new attendee","new");
					select.options[select.options.length] = new Option("-----------------------","");
					
					if(isIE){
						select.onchange = PTAH_SelectAttendee;
					}else{
						select.setAttribute("onchange", "PTAH_SelectAttendee(this);");
					}
					
					td.appendChild(select);
				
				td = tr.insertCell(2);
				
		}
		
		nodes = XmlDoc.getElementsByTagName("RegisteredContact")
		
		if(PTAH_PermittedToRegisterOthers){
			for(var j = 1; j <= PTAH_NoOfDays; j++){
			    
			    sel = document.getElementById("selAttendance_Day"+j)
			    sel2 = document.getElementById("selAttendance_TicketForOthers_Day"+j)
			    
			    for(i = 0; i < nodes.length; i++){
			    
			        sel.options[sel.options.length] = new Option(nodes[i].getAttribute("name"),nodes[i].getAttribute("objectid"));
	    		    sel2.options[sel2.options.length] = new Option(nodes[i].getAttribute("name"),nodes[i].getAttribute("objectid"));
			    }
	    
			}
		}
		
		sel = document.getElementById("PTAH_TicketsForOthers_selExistingUser");
		    
		for(i = 0; i < nodes.length; i++){
		    
		    sel.options[sel.options.length] = new Option(nodes[i].getAttribute("name"),nodes[i].getAttribute("objectid"));
		    
		}	   
				
		ShowWait(false);
		
		PTAH_TicketsLoaded = true;

	}

}
			
function PTAH_RegisterOther(){

	if(!PTAH_PermittedToRegisterOthers){
		alert("You are not permitted to purchase tickets for others.");
		return;
	}

    PTAH_PreviousView = "RegisterTicketForOthers";

	PTAH_HideHomepage();
	
	document.getElementById("PTAH_TicketsForOthers").style.display = "block";
	document.getElementById("PTAH_RegisterNewAttendee").style.display = "none";
	
	PTAH_InitTickets();

}

function PTAH_SelectAttendee(sel){

    if(!sel){sel = this;}
    PTAH_NewAttendee_SelectObj = sel;

	if(PTAH_NewAttendee_SelectObj.value == "new"){
	
		PTAH_RegisterNewAttendee();
	
	}
	
}

function PTAH_RegisterNewAttendee(){

	document.getElementById("PTAH_TicketsForSelf").style.display = "none";
	document.getElementById("PTAH_TicketsForOthers").style.display = "none";
	document.getElementById("PTAH_WhatDoYouWantToDo").style.display = "none";
	document.getElementById("PTAH_AdditionalUsersList").style.display = "none";
	document.getElementById("PTAH_RegisterNewAttendee").style.display = "block";

}

var PTAH_CurrentSelectedTicket;
function PTAH_SelectTicket(radio){

   // try{
    /*
		if(!radio){radio = this;}	
		
		var radioId = radio.id;
		var radioGrp = eval('document.frmEventManagement.'+radioId);

		var radioGroupLength = radioGrp.length; 
	    if(!IsNumeric(radioGroupLength)){radioGroupLength = -1;}
		
		var ticketProductId;
		
		if(parseInt(radioGroupLength) <= 0){
		    if(radio.checked == true){
		        ticketProductId = radio.value;
		    }
		}else{
			for( i = 0; i < radioGrp.length; i++ ){
				radioGrp[i].checked == false;
			}
		    for( i = 0; i < radioGrp.length; i++ ){
			    if(radioGrp[i].checked == true){
				    ticketProductId = radioGrp[i].value;
					radioGrp[i].checked == true;
				    break;
			    }
		    }	
		}
		
	
	    if(PTAH_CurrentSelectedTicket){PTAH_CurrentSelectedTicket.className = "";}
		
		
	    if(radioId.indexOf("TicketForOther") > -1){
	        PTAH_CurrentSelectedTicket = document.getElementById("PTAH_TicketForOther_"+ticketProductId);
	    }else{
	        PTAH_CurrentSelectedTicket = document.getElementById("PTAH_Ticket_"+ticketProductId);
	    }
		
    	
	    PTAH_CurrentSelectedTicket.className = "PayToAttend_TicketSelected";

    //}catch(ex){}
*/
}

function PTAH_RegisterNewAttendeeContact(){

    ShowWait(true);   
    
    var url = ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=523&coid=" + PTAH_NewAttendee_ObjectId;
    
    url += "&title=" + document.getElementById("txtNewAttendee_Title").value;
    url += "&forenames=" + document.getElementById("txtNewAttendee_Forenames").value;
    url += "&surname=" + document.getElementById("txtNewAttendee_Surname").value;
    url += "&email=" + document.getElementById("txtNewAttendee_Email").value;
    url += "&tel=" + document.getElementById("txtNewAttendee_Tel").value;

	Ajax_GetXmlPage(url, PTAH_RegisterNewAttendeeContact_Response);  

}

function PTAH_RegisterNewAttendeeContact_Response(){

    if(Ajax_XmlHttp_IsReady()){
		var XmlDoc = Ajax_XmlHttp.responseXML;
		var nodes = XmlDoc.getElementsByTagName("NewContact")
		var bContinue = true;
		var sel;
		    
		PTAH_NewAttendee_ObjectId = nodes[0].getAttribute("objectid");
		
		PTAH_AttendeeList += (PTAH_NewAttendee_ObjectId + ":" + nodes[0].getAttribute("objectname") + ";");	    
		
		PTAH_NewAttendee_SelectObj.options[PTAH_NewAttendee_SelectObj.options.length] = new Option(nodes[0].getAttribute("objectname"),PTAH_NewAttendee_ObjectId);
		PTAH_NewAttendee_SelectObj.options[PTAH_NewAttendee_SelectObj.options.length-1].selected = true;
		
		for(var i = 1; i <= PTAH_NoOfDays; i++){
		
			sel = document.getElementById("selAttendance_Day"+i)
			sel.options[sel.options.length] = new Option(nodes[0].getAttribute("objectname"),PTAH_NewAttendee_ObjectId);

			sel = document.getElementById("selAttendance_TicketForOthers_Day"+i)
			sel.options[sel.options.length] = new Option(nodes[0].getAttribute("objectname"),PTAH_NewAttendee_ObjectId);
		
		}
		
		sel = document.getElementById("PTAH_TicketsForOthers_selExistingUser");
		sel.options[sel.options.length] = new Option(nodes[0].getAttribute("objectname"),PTAH_NewAttendee_ObjectId);
		
		PTAH_NewAttendee_ObjectId = -1;
		PTAH_NewAttendee_SelectObj = null;
		
		if(PTAH_PreviousView == "RegisterSelf"){
		
			PTAH_RegisterSelf();
		
		}else{
		
			PTAH_RegisterOther();
		
		}
		
		PTAH_PreviousView = "";
		    
		ShowWait(false);
	}

}

function PTAH_PayForTickets(){

    if(PTAH_Unpaid_Ticket_Count <= 0){
        
        alert("You have no unpaid tickets.\nPlease click 'Register Myself' or ' Register additional tickets...' to add tickets too your basket.");
    
    }else{
    
        Ajax_GetXmlPage(ROOT_DIR+"Atom/PayToAttend/PayToAttend_Cmd.aspx?cmd=667&eoid="+EVENT_OBJECTID, PTAH_PayForTickets_Response);  
    
    } 

}

function PTAH_PayForTickets_Response(){

    if(Ajax_XmlHttp_IsReady()){
    
		var XmlDoc = Ajax_XmlHttp.responseXML;
		var nodes = XmlDoc.getElementsByTagName("ShoppingCart")
		
	    document.location.href = nodes[0].getAttribute("carturl");
		
	}

}

function PTAH_TicketsForOthers_ExistingUser(sel){

    if(sel.value > 0){
    
        document.getElementById("txtTicketsForOthers_Title").value = "";   
        document.getElementById("txtTicketsForOthers_Forenames").value = "";   
        document.getElementById("txtTicketsForOthers_Surname").value = "";   
        document.getElementById("txtTicketsForOthers_Email").value = "";   
        document.getElementById("txtTicketsForOthers_Tel").value = "";   
        document.getElementById("txtTicketsForOthers_Title").disabled = true;   
        document.getElementById("txtTicketsForOthers_Forenames").disabled = true;   
        document.getElementById("txtTicketsForOthers_Surname").disabled = true;   
        document.getElementById("txtTicketsForOthers_Email").disabled = true;      
        document.getElementById("txtTicketsForOthers_Tel").disabled = true;     
    
    }else{
    
        document.getElementById("txtTicketsForOthers_Title").disabled = false;   
        document.getElementById("txtTicketsForOthers_Forenames").disabled = false;   
        document.getElementById("txtTicketsForOthers_Surname").disabled = false;   
        document.getElementById("txtTicketsForOthers_Email").disabled = false;      
        document.getElementById("txtTicketsForOthers_Tel").disabled = false;    
    
    }

}

function SelectTicket(chkbox){

	if(!chkbox){chkbox = this;}
	ClearTicketSelection(chkbox);
	
	if(chkbox.id.indexOf("TicketForOther") > -1){
		PTAH_CurrentSelectedTicket = document.getElementById("PTAH_TicketForOther_"+chkbox.value);
	}else{
		PTAH_CurrentSelectedTicket = document.getElementById("PTAH_Ticket_"+chkbox.value);
	}
	
	PTAH_CurrentSelectedTicket.className = "PayToAttend_TicketSelected";	

}

function ClearTicketSelection(selectedChkBox){

	PTAH_CurrentSelectedTicket = null;

	var inputs = document.getElementsByTagName("input");
	
	for(var i = 0; i < inputs.length; i++){
	
		try{
	
			if(((inputs[i].id.indexOf("chkMyTicket") == 0) || (inputs[i].id.indexOf("chkTicketForOther") == 0)) && (inputs[i].id != selectedChkBox.id)){
				inputs[i].checked = false;
				if(inputs[i].id.indexOf("TicketForOther") > -1){
					CurrentSelectedTicket = document.getElementById("PTAH_TicketForOther_"+inputs[i].value);
				}else{
					CurrentSelectedTicket = document.getElementById("PTAH_Ticket_"+inputs[i].value);
				}
				CurrentSelectedTicket.className = "";
			}
		
		}catch(ex){}
	
	}

}

function GetSelectedTicket(){

	var ticketid;
	try{
		ticketid = PTAH_CurrentSelectedTicket.id;
		ticketid = ticketid.replace("PTAH_Ticket_","");
		ticketid = ticketid.replace("PTAH_TicketForOther_","");
	}catch(ex){ticketid = -1;}
	
	return(ticketid);

}

function GetSelectedAdditionalProducts() {
	var AddtionalIds = '';
	if (document.getElementById("txtAddtionalProducts").value != '') {
		var chkBoxes = document.getElementById("txtAddtionalProducts").value.split(",");
		if (chkBoxes.length > 0) {
			for (var i = 0; i < chkBoxes.length; i++) {
				if (document.getElementById(chkBoxes[i]).checked) {
					if (AddtionalIds.length > 0) {
						AddtionalIds += "#" + document.getElementById(chkBoxes[i]).value;
					} else {
						AddtionalIds = document.getElementById(chkBoxes[i]).value;
					}
				}
			}
			//alert(AddtionalIds);
		}
	}
	return (AddtionalIds);
}
