var evt_id=''; var ser_id=''; var seq_id=''; var yer_id=''; var stg_id='00'; var tmp=''; var tmp_array='';
var cls_string=''; var ft=''; var head_string=''; var st=''; var stage_cls_array = new Array(); var overall_cls_array = new Array(); var ent_array = new Array(); var chp_array = new Array(); var sl_array = new Array();  var res_timer; 
$(document).ready(function(){
	tmp=$.ajax({ url: "php/evt_h.php?unique=" + new Date().valueOf(), async: false}).responseText;
	tmp_array=tmp.split("~"); evt_id=tmp_array[0]; ser_id=rf(tmp_array[1],4); seq_id=rf(tmp_array[2],2); yer_id=tmp_array[3];
	document.getElementById('eventheader').innerHTML=tmp_array[4]; document.getElementById('mmheader').innerHTML = $.ajax({ url: "php/evtmnu_h.php?e="+evt_id+"&unique=" + new Date().valueOf(), async: false}).responseText;	
	head_string=$.ajax({ url: "php/evtstg_h.php?t="+st+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	tmp_array=head_string.split("~"); stg_id=rf(tmp_array[0],2); st=tmp_array[1]; document.getElementById('header').innerHTML=tmp_array[2]; init_stage();
	cls_string = $.ajax({ url: "php/cls.php?t="+ft+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	var tmp_array=cls_string.split("~"); if (tmp_array[0]!='') { ft=tmp_array[0];} build_cls(tmp_array[1]); res_timer=setTimeout ("refresh_res()", 5000);
	$(window).unload(function(){clearTimeout(res_timer);});
});
//
function entries_change()
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = "";
	setup_header("ENTRIES"); display_ent();
}
function penalties_change()
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = "";
	setup_header("PENALTIES"); display_pen();
}
function retirements_change()
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = "";
	setup_header("RETIREMENTS"); display_ret();
}
function itin_change()
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = "";
	setup_header("ITINERARY"); display_itin();
}
function day_results(option)
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = ""; display_day(option);
}
function startlist_change(option)
{
	clearTimeout(res_timer); document.getElementById('header').innerHTML = ""; document.getElementById('fullp').innerHTML = "";
	setup_header("START LISTS"); display_sl(option);
}
function stage_change(option)
{
	clearTimeout(res_timer); setup_times_basic();
	ft=''; st=''; head_string=$.ajax({ url: "php/evtstg_h.php?t="+st+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+option+"&unique=" + new Date().valueOf(), async: false}).responseText;
	var tmp_array=head_string.split("~"); stg_id=rf(option,2); st=tmp_array[1]; document.getElementById('header').innerHTML=tmp_array[2]; init_stage();
	cls_string = $.ajax({ url: "php/cls.php?t="+ft+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	var tmp_array=cls_string.split("~"); if (tmp_array[0]!='') {ft=tmp_array[0];}build_cls(tmp_array[1]); res_timer=setTimeout ("refresh_res()", 5000);
}
function stage_times()
{
	clearTimeout(res_timer); stg_id='0'; ft=''; st=''; setup_times_basic();
	head_string=$.ajax({ url: "php/evtstg_h.php?t="+st+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	tmp_array=head_string.split("~"); stg_id=rf(tmp_array[0],2); st=tmp_array[1]; document.getElementById('header').innerHTML=tmp_array[2]; init_stage();	
	cls_string = $.ajax({ url: "php/cls.php?t="+ft+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	var tmp_array=cls_string.split("~"); if (tmp_array[0]!='') {ft=tmp_array[0];}build_cls(tmp_array[1]); res_timer=setTimeout ("refresh_res()", 5000);
}
function refresh_res()
{
	var tmp=$.ajax({ url: "php/evtstg_h.php?t="+st+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	if (tmp!=head_string&&tmp!='') {head_string=tmp;tmp_array=head_string.split("~");st=tmp_array[1];document.getElementById('header').innerHTML=tmp_array[2]; ft='';}
	var new_cls_string = $.ajax({ url: "php/cls.php?t="+ft+"&e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+stg_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	if (new_cls_string!='') {cls_string=new_cls_string;var tmp_array=cls_string.split("~");if (tmp_array[0]!='') { ft=tmp_array[0];}build_cls(tmp_array[1]);}res_timer=setTimeout ("refresh_res()", 5000);
}
//
//
//
//
function display_itin()
{
	var itin_doc_display = "";
	itin_doc_display = itin_doc_display + '<center>';
	itin_doc_display = itin_doc_display + '<table id="fullp_detail_table">';
	
	var last_date=""; var last_type="";
	var day_counter=0; var stage_counter=0; var eol_counter=0; var lin_counter=0;
	var itin_det = $.ajax({ url: "php/itn.php?e="+evt_id+"&unique=" + new Date().valueOf(), async: false}).responseText.split("/");;
	loop_count=itin_det.length;
	for(var i=0; i<loop_count; i++)
	{
		if (itin_det[i]!="")
		{
			var lin_det=itin_det[i].split("<");
			if (lin_det[0]=="i")
			{
				if (lin_det[8]!=last_date)
				{	
					++day_counter;
					itin_doc_display = itin_doc_display + '<tr>';
					itin_doc_display = itin_doc_display + '<td class="itin_day_header" colspan="5">DAY '+day_counter+' - '+lin_det[8]+'</td>';
					itin_doc_display = itin_doc_display + '</tr>';
					itin_doc_display = itin_doc_display + '<tr>';
					itin_doc_display = itin_doc_display + '<td width="50" id="class_table_header">Stage</td>';
					itin_doc_display = itin_doc_display + '<td width="350" id="class_table_header">Name</td>';
					itin_doc_display = itin_doc_display + '<td width="100" id="class_table_header">Stage<br>Length</td>';
					itin_doc_display = itin_doc_display + '<td width="100" id="class_table_header">First<br>Car&nbsp;Due</td>';
					itin_doc_display = itin_doc_display + '<td width="100" id="class_table_header">Status</td>';
					itin_doc_display = itin_doc_display + '</tr>';	
					last_date=lin_det[8];
				}
				
				if (lin_det[3]=='N')
				{	
					++lin_counter;
					++stage_counter;
					itin_doc_display = itin_doc_display + '<tr class="even_row_stg">';  
					
					itin_doc_display = itin_doc_display + '<td class="itin_ss">SS'+stage_counter+'</td>';
					var stat=""; var link_ref="";
					if (lin_det[9]=='0')
					{
						stat='TO RUN';
						link_ref='';
						itin_doc_display = itin_doc_display + '<td class="itin_ss_name">'+link_ref+lin_det[2]+'</td>';
					} else if (lin_det[9]=='1') {
						stat='RUNNING';
						link_ref='<a href="#"';
						link_ref=link_ref+' onclick=\'stage_change("'+stage_counter+'")\'>';
						itin_doc_display = itin_doc_display + '<td class="itin_ss_name">'+link_ref+lin_det[2]+'</a></td>';
					} else if (lin_det[9]=='2') {
						stat='STOPPED';
						link_ref='<a href="#"';
						link_ref=link_ref+' onclick=\'stage_change("'+stage_counter+'")\'>';
						itin_doc_display = itin_doc_display + '<td class="itin_ss_name">'+link_ref+lin_det[2]+'</a></td>';
					} else if (lin_det[9]=='3') {
						stat='COMPLETE';
						link_ref='<a href="#"';
						link_ref=link_ref+' onclick=\'stage_change("'+stage_counter+'")\'>';
						itin_doc_display = itin_doc_display + '<td class="itin_ss_name">'+link_ref+lin_det[2]+'</a></td>';
					} else if (lin_det[9]=='9') {
						stat='CANCELLED';
						link_ref='';
						itin_doc_display = itin_doc_display + '<td class="itin_ss_name">'+link_ref+lin_det[2]+'</td>';
					}

					itin_doc_display = itin_doc_display + '<td class="itin_ss_len">'+lin_det[5]+' km</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_ss_len">'+lin_det[4]+'</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_ss_stat">'+stat+'</td>';
					itin_doc_display = itin_doc_display + '</tr>';	
				}				
				else if ((lin_det[3]=='A')||(lin_det[3]=='U')||(last_type=='W'))
				{	
					++lin_counter;
					itin_doc_display = itin_doc_display + '<tr class="odd_row_stg">';  
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					if (lin_det[3]!="U") {					
						itin_doc_display = itin_doc_display + '<td class="itin_other_name">DAY START</td>';
					} else {
						itin_doc_display = itin_doc_display + '<td class="itin_other_name">DAY START INTO SERVICE</td>';
					}
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_other_tim">'+lin_det[4]+'</td>';
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '</tr>';	
				}
				else if ((lin_det[3]=='C')||(lin_det[3]=='H'))
				{	
					++lin_counter;
					itin_doc_display = itin_doc_display + '<tr class="odd_row_stg">';  
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_other_name"><i>SERVICE</i></td>';
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_other_tim"><i>'+lin_det[4]+'</i></td>';
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '</tr>';	
				}
				else if ((lin_det[3]=='B')||(lin_det[3]=='T')||(lin_det[3]=='W'))
				{	
					++lin_counter;
					++eol_counter;
					var link_ref="";
					itin_doc_display = itin_doc_display + '<tr class="odd_row_stg">';  
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					
					link_ref='<a href="#"';
					link_ref=link_ref+' onclick=\'day_results("D'+eol_counter+'")\'>';
					itin_doc_display = itin_doc_display + '<td class="itin_other_name">'+link_ref+'DAY FINISH</a></td>';
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '<td class="itin_other_tim">'+lin_det[4]+'</td>';
					itin_doc_display = itin_doc_display + '<td>&nbsp;</td>';
					itin_doc_display = itin_doc_display + '</tr>';	
				}
				last_type=lin_det[3];
			}
		}
	}

	itin_doc_display = itin_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = itin_doc_display;
}
function display_sl(option)
{
	var sl_string = $.ajax({ url: "php/str.php?e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+option+"&unique=" + new Date().valueOf(), async: false}).responseText;
	ent_array = []; chp_array = []; sl_array = []; var data;
	if ($.browser.msie)
	{
		data = new ActiveXObject("Microsoft.XMLDOM");
		data.async = false;
		data.loadXML(sl_string);
	} else {
		data = sl_string;
	}   
	
	var sl_counter=0;
	$(data).find("slist").each(function () {
		++sl_counter;
		sl_array[sl_counter] = new SList();
		sl_array[sl_counter].no = $(this).find("slist_number").text();
		sl_array[sl_counter].name = $(this).find("slist_desc").text();
	});

	var chp_counter=0;
	$(data).find("championship").each(function () {
		++chp_counter;
		chp_array[chp_counter] = new Champ();
		chp_array[chp_counter].code = $(this).find("print_code").text();
		chp_array[chp_counter].name = $(this).find("show_code").text();
	});

	var entdet_doc_display = "";
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td id="class_eod_table_header" colspan="9">'+sl_array[1].name+'</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';

	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td width="25" id="class_table_header">No</td>';
	entdet_doc_display = entdet_doc_display + '<td width="30" id="class_table_header">&nbsp;</td>';
	entdet_doc_display = entdet_doc_display + '<td width="245" id="class_table_header">Team</td>';
	entdet_doc_display = entdet_doc_display + '<td width="190" id="class_table_header">Driver<br>Co-Driver</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Nat</td>';
	entdet_doc_display = entdet_doc_display + '<td width="205" id="class_table_header">Vehicle</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Class</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">FIA<br>Priority</td>';
	entdet_doc_display = entdet_doc_display + '<td width="50" id="class_table_header">Start<br>Time</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';
	
	var ent_counter=0;
	$(data).find("comp").each(function () {
		++ent_counter;
		ent_array[ent_counter] = new Entry();
		ent_array[ent_counter].no = $(this).find("comp_no").text();
		ent_array[ent_counter].team = $(this).find("entrant").text();
		ent_array[ent_counter].driver = $(this).find("driver").text();
		ent_array[ent_counter].driver_first = $(this).find("driver_first").text();
		ent_array[ent_counter].driver_last = $(this).find("driver_last").text();
		ent_array[ent_counter].codriver = $(this).find("codriver").text();
		ent_array[ent_counter].codriver_first = $(this).find("codriver_first").text();
		ent_array[ent_counter].codriver_last = $(this).find("codriver_last").text();
		ent_array[ent_counter].driver_nat = $(this).find("driver_nat").text();
		ent_array[ent_counter].codriver_nat = $(this).find("codriver_nat").text();
		ent_array[ent_counter].vehicle = $(this).find("vehicle").text();
		ent_array[ent_counter].vehicle_make = $(this).find("vehicle_make").text();
		ent_array[ent_counter].vehicle_model = $(this).find("vehicle_model").text();
		ent_array[ent_counter].vehicle_class = $(this).find("vehicle_cls").text();
		ent_array[ent_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		ent_array[ent_counter].priority = $(this).find("priority").text();
		ent_array[ent_counter].elig = $(this).find("elig").text();
		ent_array[ent_counter].remarks = $(this).find("start_time").text();
	});

	var ent_counter=0;
	var loop_count = ent_array.length;
	if (loop_count != 0 )
	{
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (ent_array[i].no != "")
				{
					++ent_counter;
					var remainder = ent_counter % 2;
					var quotient = ( ent_counter - remainder ) / 2;
					if (remainder != 0) {
						entdet_doc_display = entdet_doc_display + '<tr class="odd_row_stg">';  
					} else {
						entdet_doc_display = entdet_doc_display + '<tr class="even_row_stg">';  
					}						
					entdet_doc_display = entdet_doc_display + '<td id="ent_no">' + ent_array[i].no + '</td>';
					if (ent_array[i].vehicle_tyre=="MICHELIN") {
						entdet_doc_display = entdet_doc_display + '<td id="ent_no"><img src="images/mich_icon.png"></td>';
					} else {
						entdet_doc_display = entdet_doc_display + '<td id="ent_no">&nbsp;</td>';
					}
					entdet_doc_display = entdet_doc_display + '<td id="ent_entrant">' +  ent_array[i].team + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_crew">' + ent_array[i].driver_first + '&nbsp;' + ent_array[i].driver_last + '<br>' + ent_array[i].codriver_first + '&nbsp;' + ent_array[i].codriver_last + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_nat">' + ent_array[i].driver_nat + '<br>' + ent_array[i].codriver_nat + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_veh">' + ent_array[i].vehicle + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="str_class">' + ent_array[i].vehicle_class + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_pri">' + ent_array[i].priority + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="str_time">' + ent_array[i].remarks + '</i></td>';
					entdet_doc_display = entdet_doc_display + '</tr>';
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
	}

	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = entdet_doc_display;
}
function display_day(option)
{
	var entdet_doc_display = ""; var day_no=option.substr(1);
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td id="fullp_detail_head_text">';
	entdet_doc_display = entdet_doc_display + 'DAY RESULTS';
	entdet_doc_display = entdet_doc_display + '</td>';	
	entdet_doc_display = entdet_doc_display + '</tr>';  

	entdet_doc_display = entdet_doc_display + '<tr>';  
	entdet_doc_display = entdet_doc_display + '<td id="class_table_head_divider_line"></td>';
	entdet_doc_display = entdet_doc_display + '</tr>';  

	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('header').innerHTML = entdet_doc_display;

	entdet_doc_display = ""; var eod_desc='';
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	
	if (option.substr(0,1)=='F') {
		eod_desc='FINAL CLASSIFICATION';
		entdet_doc_display = entdet_doc_display + '<td id="class_eod_table_header" colspan="12">FINAL CLASSIFICATION</td>';
	} else {
		eod_desc='AFTER DAY '+option;
		entdet_doc_display = entdet_doc_display + '<td id="class_eod_table_header" colspan="12">AFTER DAY '+day_no+'</td>';
	}
	entdet_doc_display = entdet_doc_display + '</tr>';

	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td width="25" id="class_table_header">Pos</td>';
	entdet_doc_display = entdet_doc_display + '<td width="30" id="class_table_header">&nbsp;</td>';
	entdet_doc_display = entdet_doc_display + '<td width="25" id="class_table_header">No</td>';
	entdet_doc_display = entdet_doc_display + '<td width="160" id="class_table_header">Driver<br>Co-Driver</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Nat</td>';
	entdet_doc_display = entdet_doc_display + '<td width="170" id="class_table_header">Vehicle</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Class</td>';
	entdet_doc_display = entdet_doc_display + '<td width="70" id="class_table_header">Stage<br>Time</td>';
	entdet_doc_display = entdet_doc_display + '<td width="60" id="class_table_header">Penalties</td>';
	entdet_doc_display = entdet_doc_display + '<td width="70" id="class_table_header">Total<br>Time</td>';
	entdet_doc_display = entdet_doc_display + '<td width="70" id="class_table_header">Diff<br>Fastest<br><i>(Prev)</i></td>';
	entdet_doc_display = entdet_doc_display + '<td width="70" id="class_table_header">Eligibility</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';	
	
	day_no=zeroPad(day_no,2)
 	var day_string = $.ajax({ url: "php/eod.php?e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&l="+day_no+"&unique=" + new Date().valueOf(), async: false}).responseText;
 	overall_cls_array = []; chp_array = []; var data;
 	if ($.browser.msie)
 	{
 		data = new ActiveXObject("Microsoft.XMLDOM");
 		data.async = false;
 		data.loadXML(day_string);
 	} else {
 		data = day_string;
 	}   

	var ovr_counter=0;
	$(data).find("comp").each(function () {
		++ovr_counter;
		overall_cls_array[ovr_counter] = new OvrCls();
		overall_cls_array[ovr_counter].no = $(this).find("comp_no").text();
		overall_cls_array[ovr_counter].team = $(this).find("entrant").text();
		overall_cls_array[ovr_counter].driver = $(this).find("driver").text();
		overall_cls_array[ovr_counter].driver_first = $(this).find("driver_first").text();
		overall_cls_array[ovr_counter].driver_last = $(this).find("driver_last").text();
		overall_cls_array[ovr_counter].codriver = $(this).find("codriver").text();
		overall_cls_array[ovr_counter].codriver_first = $(this).find("codriver_first").text();
		overall_cls_array[ovr_counter].codriver_last = $(this).find("codriver_last").text();
		overall_cls_array[ovr_counter].driver_nat = $(this).find("driver_nat").text();
		overall_cls_array[ovr_counter].codriver_nat = $(this).find("codriver_nat").text();
		overall_cls_array[ovr_counter].vehicle = $(this).find("vehicle").text();
		overall_cls_array[ovr_counter].vehicle_make = $(this).find("vehicle_make").text();
		overall_cls_array[ovr_counter].vehicle_model = $(this).find("vehicle_model").text();
		overall_cls_array[ovr_counter].vehicle_class = $(this).find("vehicle_cls").text();
		overall_cls_array[ovr_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		overall_cls_array[ovr_counter].pos = $(this).find("pos").text();
		overall_cls_array[ovr_counter].stime = $(this).find("stime").text();
		overall_cls_array[ovr_counter].otime = $(this).find("time").text();
		overall_cls_array[ovr_counter].ptime = $(this).find("ptime").text();
		overall_cls_array[ovr_counter].odif_first = $(this).find("dif_first").text();
		overall_cls_array[ovr_counter].odif_prev = $(this).find("dif_prev").text();
		overall_cls_array[ovr_counter].elig = $(this).find("elig").text();
	});

	var chp_counter=0;
	$(data).find("championship").each(function () {
		++chp_counter;
		chp_array[chp_counter] = new Champ();
		chp_array[chp_counter].code = $(this).find("print_code").text();
		chp_array[chp_counter].name = $(this).find("show_code").text();
	});

	var ent_counter=0;
	var loop_count = overall_cls_array.length;
	if (loop_count != 0 )
	{
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (overall_cls_array[i].no != "")
				{
					++ent_counter;
					var remainder = ent_counter % 2;
					var quotient = ( ent_counter - remainder ) / 2;
					if (remainder != 0) {
						entdet_doc_display = entdet_doc_display + '<tr class="odd_row_stg">';  
					} else {
						entdet_doc_display = entdet_doc_display + '<tr class="even_row_stg">';  
					}


					entdet_doc_display = entdet_doc_display + '<td id="eod_pos">' + overall_cls_array[i].pos + '</td>';
					if (overall_cls_array[i].vehicle_tyre=="MICHELIN") {
						entdet_doc_display = entdet_doc_display + '<td id="eod_pos"><img src="images/mich_icon.png"></td>';
					} else {
						entdet_doc_display = entdet_doc_display + '<td id="eod_pos">&nbsp;</td>';
					}
					entdet_doc_display = entdet_doc_display + '<td id="eod_no">' + overall_cls_array[i].no + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_driver">' + overall_cls_array[i].driver_first + '&nbsp;' + overall_cls_array[i].driver_last + '<br>' + overall_cls_array[i].codriver_first + '&nbsp;' + overall_cls_array[i].codriver_last + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_nat">' + overall_cls_array[i].driver_nat + '<br>' + overall_cls_array[i].codriver_nat + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_vehicle">' + overall_cls_array[i].vehicle_make + '&nbsp;' + overall_cls_array[i].vehicle_model + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_class">' + overall_cls_array[i].vehicle_class + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_stage_time">' + overall_cls_array[i].stime + '</td>';
					if (overall_cls_array[i].ptime!='')
					{
						entdet_doc_display = entdet_doc_display + '<td id="eod_pen_time">' + overall_cls_array[i].ptime.substr(0,overall_cls_array[i].ptime.length-2) + '</td>';
					} else {
						entdet_doc_display = entdet_doc_display + '<td id="eod_pen_time">&nbsp;</td>';
					}
					entdet_doc_display = entdet_doc_display + '<td id="eod_ovr_time">' + overall_cls_array[i].otime + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_diff">' + overall_cls_array[i].odif_first + '<br><i>' + overall_cls_array[i].odif_prev +'</i></td>';
					entdet_doc_display = entdet_doc_display + '<td id="eod_nat">' + overall_cls_array[i].elig + '</td>';
					entdet_doc_display = entdet_doc_display + '</tr>';
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
	}

	var chp_counter=0; var loop_count = chp_array.length;
	if (loop_count != 0 )
	{
		entdet_doc_display = entdet_doc_display + '<tr>';
		entdet_doc_display = entdet_doc_display + '<td id="class_ent_table_footer" colspan="12">';		
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (chp_array[i].no != "")
				{
					if (i==1)
					{
						entdet_doc_display = entdet_doc_display + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					} else {
						entdet_doc_display = entdet_doc_display + '&nbsp;/&nbsp;' + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					}
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
		entdet_doc_display = entdet_doc_display + '</td>';
		entdet_doc_display = entdet_doc_display + '</tr>';
	}
	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = entdet_doc_display;
}
function display_ret()
{
	var ent_string = $.ajax({ url: "php/ret.php?e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	ent_array = []; chp_array = []; var data;
	if ($.browser.msie)
	{
		data = new ActiveXObject("Microsoft.XMLDOM");
		data.async = false;
		data.loadXML(cls_string);
	} else {
		data = ent_string;
	}   
	
	var ent_counter=0;
	$(data).find("comp").each(function () {
		++ent_counter;
		ent_array[ent_counter] = new Entry();
		ent_array[ent_counter].no = $(this).find("comp_no").text();
		ent_array[ent_counter].team = $(this).find("entrant").text();
		ent_array[ent_counter].driver = $(this).find("driver").text();
		ent_array[ent_counter].driver_first = $(this).find("driver_first").text();
		ent_array[ent_counter].driver_last = $(this).find("driver_last").text();
		ent_array[ent_counter].codriver = $(this).find("codriver").text();
		ent_array[ent_counter].codriver_first = $(this).find("codriver_first").text();
		ent_array[ent_counter].codriver_last = $(this).find("codriver_last").text();
		ent_array[ent_counter].driver_nat = $(this).find("driver_nat").text();
		ent_array[ent_counter].codriver_nat = $(this).find("codriver_nat").text();
		ent_array[ent_counter].vehicle = $(this).find("vehicle").text();
		ent_array[ent_counter].vehicle_make = $(this).find("vehicle_make").text();
		ent_array[ent_counter].vehicle_model = $(this).find("vehicle_model").text();
		ent_array[ent_counter].vehicle_class = $(this).find("vehicle_cls").text();
		ent_array[ent_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		ent_array[ent_counter].priority = $(this).find("priority").text();
		ent_array[ent_counter].elig = $(this).find("elig").text();
		ent_array[ent_counter].control = $(this).find("control").text().toUpperCase();
		ent_array[ent_counter].control_type = $(this).find("control_type").text();
		ent_array[ent_counter].remarks = $(this).find("reason").text();
	});

	var chp_counter=0;
	$(data).find("championship").each(function () {
		++chp_counter;
		chp_array[chp_counter] = new Champ();
		chp_array[chp_counter].code = $(this).find("print_code").text();
		chp_array[chp_counter].name = $(this).find("show_code").text();
	});
	
	var entdet_doc_display = "";
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td width="25" id="class_table_header">No</td>';
	entdet_doc_display = entdet_doc_display + '<td width="160" id="class_table_header">Driver<br>Co-Driver</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Nat</td>';
	entdet_doc_display = entdet_doc_display + '<td width="185" id="class_table_header">Vehicle</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Class</td>';
	entdet_doc_display = entdet_doc_display + '<td width="205" id="class_table_header">Control Retired</td>';
	entdet_doc_display = entdet_doc_display + '<td width="160" id="class_table_header">Reason</td>';
	entdet_doc_display = entdet_doc_display + '<td width="50" id="class_table_header">Eligibility</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';	
	
	var ent_counter=0;
	var loop_count = ent_array.length;
	if (loop_count != 0 )
	{
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (ent_array[i].no != "")
				{
					++ent_counter;
					var remainder = ent_counter % 2;
					var quotient = ( ent_counter - remainder ) / 2;
					if (remainder != 0) {
						entdet_doc_display = entdet_doc_display + '<tr class="odd_row_stg">';  
					} else {
						entdet_doc_display = entdet_doc_display + '<tr class="even_row_stg">';  
					}

					var cr_desc="TC";
					if ((ent_array[i].control_type=='O')||(ent_array[i].control_type=='N'))
					{
						cr_desc="SS";
					}
					entdet_doc_display = entdet_doc_display + '<td id="ret_no">' + ent_array[i].no + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_crew">' + ent_array[i].driver_first + '&nbsp;' + ent_array[i].driver_last + '<br>' + ent_array[i].codriver_first + '&nbsp;' + ent_array[i].codriver_last + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_nat">' + ent_array[i].driver_nat + '<br>' + ent_array[i].codriver_nat + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_veh">' + ent_array[i].vehicle + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_class">' + ent_array[i].vehicle_class + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_control">' + cr_desc + ent_array[i].control + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_reason">' + ent_array[i].remarks + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ret_elig">' + ent_array[i].elig + '</td>';
					entdet_doc_display = entdet_doc_display + '</tr>';
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
	}
	var chp_counter=0; var loop_count = chp_array.length;
	if (loop_count != 0 )
	{
		entdet_doc_display = entdet_doc_display + '<tr>';
		entdet_doc_display = entdet_doc_display + '<td id="class_ent_table_footer" colspan="8">';		
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (chp_array[i].no != "")
				{
					if (i==1)
					{
						entdet_doc_display = entdet_doc_display + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					} else {
						entdet_doc_display = entdet_doc_display + '&nbsp;/&nbsp;' + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					}
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
		entdet_doc_display = entdet_doc_display + '</td>';
		entdet_doc_display = entdet_doc_display + '</tr>';
	}
	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = entdet_doc_display;
}
function display_pen()
{
	var ent_string = $.ajax({ url: "php/pen.php?e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	ent_array = []; chp_array = []; var data;
	if ($.browser.msie)
	{
		data = new ActiveXObject("Microsoft.XMLDOM");
		data.async = false;
		data.loadXML(ent_string);
	} else {
		data = ent_string;
	}   
	
	var ent_counter=0;
	$(data).find("penalty").each(function () {
		++ent_counter;
		ent_array[ent_counter] = new Entry();
		ent_array[ent_counter].no = $(this).find("comp_no").text();
		ent_array[ent_counter].team = $(this).find("entrant").text();
		ent_array[ent_counter].driver = $(this).find("driver").text();
		ent_array[ent_counter].driver_first = $(this).find("driver_first").text();
		ent_array[ent_counter].driver_last = $(this).find("driver_last").text();
		ent_array[ent_counter].codriver = $(this).find("codriver").text();
		ent_array[ent_counter].codriver_first = $(this).find("codriver_first").text();
		ent_array[ent_counter].codriver_last = $(this).find("codriver_last").text();
		ent_array[ent_counter].driver_nat = $(this).find("driver_nat").text();
		ent_array[ent_counter].codriver_nat = $(this).find("codriver_nat").text();
		ent_array[ent_counter].vehicle = $(this).find("vehicle").text();
		ent_array[ent_counter].vehicle_make = $(this).find("vehicle_make").text();
		ent_array[ent_counter].vehicle_model = $(this).find("vehicle_model").text();
		ent_array[ent_counter].vehicle_class = $(this).find("vehicle_cls").text();
		ent_array[ent_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		ent_array[ent_counter].priority = $(this).find("priority").text();
		ent_array[ent_counter].elig = $(this).find("elig").text();
		ent_array[ent_counter].control = $(this).find("control").text();
		ent_array[ent_counter].control_type = $(this).find("control_type").text();
		ent_array[ent_counter].remarks = $(this).find("remarks").text();
		ent_array[ent_counter].time = $(this).find("time").text();
		ent_array[ent_counter].total_time = $(this).find("total_time").text();
	});
	
	var entdet_doc_display = "";
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td width="35" id="class_table_header">No</td>';
	entdet_doc_display = entdet_doc_display + '<td width="250" id="class_table_header">Driver<br>Co-Driver</td>';
	entdet_doc_display = entdet_doc_display + '<td width="50" id="class_table_header">Nat</td>';
	entdet_doc_display = entdet_doc_display + '<td width="250" id="class_table_header">Vehicle</td>';
	entdet_doc_display = entdet_doc_display + '<td width="50" id="class_table_header">Class</td>';
	entdet_doc_display = entdet_doc_display + '<td width="70" id="class_table_header">Control</td>';
	entdet_doc_display = entdet_doc_display + '<td width="200" id="class_table_header">Reason</td>';
	entdet_doc_display = entdet_doc_display + '<td width="60" id="class_table_header">Penalty</td>';
	entdet_doc_display = entdet_doc_display + '<td width="60" id="class_table_header">Total<br>Penalty</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';	

	var ent_counter=0; var last_no=''; var ent_line='';
	var pen_control=''; var pen_reason=''; var pen_time=''; var pen_total='';
	var loop_count = ent_array.length;
	if (loop_count != 0 )
	{
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (ent_array[i].no!="")
				{
					if (ent_array[i].no!=last_no)
					{
						if (last_no!='') {
							ent_line = ent_line + '<td width="70" id="pen_control">' + pen_control + '</td>';
							ent_line = ent_line + '<td width="200" id="pen_reason">' + pen_reason + '</td>';
							ent_line = ent_line + '<td width="60" id="pen_time">' + pen_time + '</td>';
							ent_line = ent_line + '<td width="60" id="pen_time">' + pen_total + '</td>';
							ent_line = ent_line + '</tr>';
							entdet_doc_display = entdet_doc_display + ent_line;
						}
						
						++ent_counter; ent_line='';
						var remainder = ent_counter % 2;
						var quotient = ( ent_counter - remainder ) / 2;
						if (remainder != 0) {
							ent_line = ent_line + '<tr class="odd_row_stg">';  
						} else {
							ent_line = ent_line + '<tr class="even_row_stg">';  
						}
						ent_line = ent_line + '<td width="35" id="pen_no">' + ent_array[i].no + '</td>';
						ent_line = ent_line + '<td width="250" id="pen_crew">' + ent_array[i].driver_first + '&nbsp;' + ent_array[i].driver_last + '<br>' + ent_array[i].codriver_first + '&nbsp;' + ent_array[i].codriver_last + '</td>';
						ent_line = ent_line + '<td width="50" id="pen_nat">' + ent_array[i].driver_nat + '<br>' + ent_array[i].codriver_nat + '</td>';
						ent_line = ent_line + '<td width="250" id="pen_veh">' + ent_array[i].vehicle_make + '&nbsp;' + ent_array[i].vehicle_model + '</td>';
						ent_line = ent_line + '<td width="50" id="pen_class">' + ent_array[i].vehicle_class + '</td>';
						pen_control=''; pen_reason=''; pen_time=''; pen_total='';
					}
					
					var cr_desc="TC";
					if ((ent_array[i].control_type=='O')||(ent_array[i].control_type=='N'))
					{
						cr_desc="SS";
					}
					if (pen_control!='') {
						pen_control = pen_control + '<br>';
						pen_reason = pen_reason + '<br>';
						pen_time = pen_time + '<br>';
					}
					
					pen_control = pen_control +  cr_desc + ent_array[i].control;
					pen_reason = pen_reason + ent_array[i].remarks;
					pen_time = pen_time + ent_array[i].time;					
					pen_total = ent_array[i].total_time;										
					last_no=ent_array[i].no;
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
	}

	ent_line = ent_line + '<td width="70" id="pen_control">' + pen_control + '</td>';
	ent_line = ent_line + '<td width="200" id="pen_reason">' + pen_reason + '</td>';
	ent_line = ent_line + '<td width="60" id="pen_time">' + pen_time + '</td>';
	ent_line = ent_line + '<td width="60" id="pen_time">' + pen_total + '</td>';
	ent_line = ent_line + '</tr>';
	entdet_doc_display = entdet_doc_display + ent_line;
	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = entdet_doc_display;

}
function display_ent()
{
	var ent_string = $.ajax({ url: "php/ent.php?e="+evt_id+"&y="+yer_id+"&s="+ser_id+"&q="+seq_id+"&unique=" + new Date().valueOf(), async: false}).responseText;
	ent_array = []; chp_array = []; var data;
	if ($.browser.msie)
	{
		data = new ActiveXObject("Microsoft.XMLDOM");
		data.async = false;
		data.loadXML(ent_string);
	} else {
		data = ent_string;
	}   

	var ent_counter=0;
	$(data).find("comp").each(function () {
		++ent_counter;
		ent_array[ent_counter] = new Entry();
		ent_array[ent_counter].no = $(this).find("comp_no").text();
		ent_array[ent_counter].team = $(this).find("entrant").text();
		ent_array[ent_counter].driver = $(this).find("driver").text();
		ent_array[ent_counter].driver_first = $(this).find("driver_first").text();
		ent_array[ent_counter].driver_last = $(this).find("driver_last").text();
		ent_array[ent_counter].codriver = $(this).find("codriver").text();
		ent_array[ent_counter].codriver_first = $(this).find("codriver_first").text();
		ent_array[ent_counter].codriver_last = $(this).find("codriver_last").text();
		ent_array[ent_counter].driver_nat = $(this).find("driver_nat").text();
		ent_array[ent_counter].codriver_nat = $(this).find("codriver_nat").text();
		ent_array[ent_counter].vehicle = $(this).find("vehicle").text();
		ent_array[ent_counter].vehicle_make = $(this).find("vehicle_make").text();
		ent_array[ent_counter].vehicle_model = $(this).find("vehicle_model").text();
		ent_array[ent_counter].vehicle_class = $(this).find("vehicle_cls").text();
		ent_array[ent_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		ent_array[ent_counter].priority = $(this).find("priority").text();
		ent_array[ent_counter].elig = $(this).find("elig").text();
	});

	var chp_counter=0;
	$(data).find("championship").each(function () {
		++chp_counter;
		chp_array[chp_counter] = new Champ();
		chp_array[chp_counter].code = $(this).find("print_code").text();
		chp_array[chp_counter].name = $(this).find("show_code").text();
	});
	
	var entdet_doc_display = "";
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td width="25" id="class_table_header">No</td>';
	entdet_doc_display = entdet_doc_display + '<td width="30" id="class_table_header">&nbsp;</td>';
	entdet_doc_display = entdet_doc_display + '<td width="245" id="class_table_header">Team</td>';
	entdet_doc_display = entdet_doc_display + '<td width="190" id="class_table_header">Driver<br>Co-Driver</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Nat</td>';
	entdet_doc_display = entdet_doc_display + '<td width="205" id="class_table_header">Vehicle</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">Class</td>';
	entdet_doc_display = entdet_doc_display + '<td width="40" id="class_table_header">FIA<br>Priority</td>';
	entdet_doc_display = entdet_doc_display + '<td width="50" id="class_table_header">Eligibility</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';	

	var ent_counter=0;
	var loop_count = ent_array.length;
	if (loop_count != 0 )
	{
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (ent_array[i].no != "")
				{
					++ent_counter;
					var remainder = ent_counter % 2;
					var quotient = ( ent_counter - remainder ) / 2;
					if (remainder != 0) {
						entdet_doc_display = entdet_doc_display + '<tr class="odd_row_stg">';  
					} else {
						entdet_doc_display = entdet_doc_display + '<tr class="even_row_stg">';  
					}
					
					entdet_doc_display = entdet_doc_display + '<td id="ent_no">' + ent_array[i].no + '</td>';
					if (ent_array[i].vehicle_tyre=="MICHELIN") {
						entdet_doc_display = entdet_doc_display + '<td id="ent_no"><img src="images/mich_icon.png"></td>';
					} else {
						entdet_doc_display = entdet_doc_display + '<td id="ent_no">&nbsp;</td>';
					}
					entdet_doc_display = entdet_doc_display + '<td id="ent_entrant">' + ent_array[i].team + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_crew">' + ent_array[i].driver_first + '&nbsp;' + ent_array[i].driver_last + '<br>' + ent_array[i].codriver_first + '&nbsp;' + ent_array[i].codriver_last + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_nat">' + ent_array[i].driver_nat + '<br>' + ent_array[i].codriver_nat + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_veh">' + ent_array[i].vehicle + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_class">' + ent_array[i].vehicle_class + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_pri">' + ent_array[i].priority + '</td>';
					entdet_doc_display = entdet_doc_display + '<td id="ent_elig">' + ent_array[i].elig + '</i></td>';
					entdet_doc_display = entdet_doc_display + '</tr>';
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
	}
	var chp_counter=0; var loop_count = chp_array.length;
	if (loop_count != 0 )
	{
		entdet_doc_display = entdet_doc_display + '<tr>';
		entdet_doc_display = entdet_doc_display + '<td id="class_ent_table_footer" colspan="9">';		
		for(var i=1; i<loop_count+1; i++)
		{	
			try
			{
				if (chp_array[i].no != "")
				{
					if (i==1)
					{
						entdet_doc_display = entdet_doc_display + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					} else {
						entdet_doc_display = entdet_doc_display + '&nbsp;/&nbsp;' + chp_array[i].code + '&nbsp;=&nbsp;' + chp_array[i].name;
					}
				}
			}
			catch(err)
			{
				var dummy=1;
			}
		}
		entdet_doc_display = entdet_doc_display + '</td>';
		entdet_doc_display = entdet_doc_display + '</tr>';
	}
	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('fullp').innerHTML = entdet_doc_display;
}
//
//
function build_cls(cls_string)
{
	var cls_return_string=''; stage_cls_array = []; overall_cls_array = [];
	var data;
	if ($.browser.msie)
	{
		data = new ActiveXObject("Microsoft.XMLDOM");
		data.async = false;
		data.loadXML(cls_string);
	} else {
		data = cls_string;
	}   

	$(data).find("stage").each(function () {
		stg_id = $(this).find("stage_number").text();
	});

	var stg_counter=0; var ovr_counter=0;
	$(data).find("stage_comp").each(function () {
		++stg_counter;
		stage_cls_array[stg_counter] = new StageCls();
		stage_cls_array[stg_counter].no = $(this).find("comp_no").text();
		stage_cls_array[stg_counter].team = $(this).find("entrant").text();
		stage_cls_array[stg_counter].driver = $(this).find("driver").text();
		stage_cls_array[stg_counter].driver_first = $(this).find("driver_first").text();
		stage_cls_array[stg_counter].driver_last = $(this).find("driver_last").text();
		stage_cls_array[stg_counter].codriver = $(this).find("codriver").text();
		stage_cls_array[stg_counter].codriver_first = $(this).find("codriver_first").text();
		stage_cls_array[stg_counter].codriver_last = $(this).find("codriver_last").text();
		stage_cls_array[stg_counter].driver_nat = $(this).find("driver_nat").text();
		stage_cls_array[stg_counter].codriver_nat = $(this).find("codriver_nat").text();
		stage_cls_array[stg_counter].vehicle = $(this).find("vehicle").text();
		stage_cls_array[stg_counter].vehicle_make = $(this).find("vehicle_make").text();
		stage_cls_array[stg_counter].vehicle_model = $(this).find("vehicle_model").text();
		stage_cls_array[stg_counter].vehicle_class = $(this).find("vehicle_cls").text();
		stage_cls_array[stg_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		stage_cls_array[stg_counter].pos = $(this).find("pos").text();
		stage_cls_array[stg_counter].stime = $(this).find("time").text();
		stage_cls_array[stg_counter].sdif_first = $(this).find("dif_first").text();
		stage_cls_array[stg_counter].sdif_prev = $(this).find("dif_prev").text();
		stage_cls_array[stg_counter].speed = $(this).find("speed").text();
	});

	var stg_doc_display = '<center>';
	stg_doc_display = stg_doc_display + '<table id="class_results_table_stage" cellspacing="0" cellpadding="1">';
	stg_doc_display = stg_doc_display + '<tr>';
	stg_doc_display = stg_doc_display + '<td id="class_header_stage" colspan="8">STAGE CLASSIFICATION</td>';
	stg_doc_display = stg_doc_display + '</tr>';
	
	stg_doc_display = stg_doc_display + '<tr>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">Pos</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">&nbsp;</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">No</td>';
	stg_doc_display = stg_doc_display + '<td width="105" id="class_table_header">Driver<br>Co-Driver</td>';
	stg_doc_display = stg_doc_display + '<td width="130" id="class_table_header">Vehicle</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">Cls</td>';
	stg_doc_display = stg_doc_display + '<td width="50" id="class_table_header">Stage<br>Time</td>';
	stg_doc_display = stg_doc_display + '<td width="60" id="class_table_header">Diff<br>Fastest<br><i>(Prev)</i></td>';
	stg_doc_display = stg_doc_display + '</tr>';	

	for(var i=1; i<stage_cls_array.length; i++)
	{
		var remainder = i % 2; var quotient = ( i - remainder ) / 2;
		if (remainder != 0) {
			cls_return_string=cls_return_string+'<tr id="odd_row">';  
		} else {
			cls_return_string=cls_return_string+'<tr id="even_row">';  
		}

		var remainder = i % 2;
		var quotient = ( i - remainder ) / 2;
		if (remainder != 0) {
			stg_doc_display = stg_doc_display + '<tr class="odd_row_stg">';  
		} else {
			stg_doc_display = stg_doc_display + '<tr class="even_row_stg">';  
		}
		
		stg_doc_display = stg_doc_display + '<td id="class_stage_pos">' + stage_cls_array[i].pos + '</td>';					
		if (stage_cls_array[i].vehicle_tyre=="MICHELIN") {
			stg_doc_display = stg_doc_display + '<td id="class_stage_pos"><img src="images/mich_icon.png"></td>';
		} else {
			stg_doc_display = stg_doc_display + '<td id="class_stage_pos">&nbsp;</td>';
 		}
 		var d_init=stage_cls_array[i].driver_first.substring(0,1); var c_init=stage_cls_array[i].codriver_first.substring(0,1);
		stg_doc_display = stg_doc_display + '<td id="class_stage_pos">' + stage_cls_array[i].no + '</td>';
		stg_doc_display = stg_doc_display + '<td id="class_stage_driver">' + d_init + '.&nbsp;' + stage_cls_array[i].driver_last + '<br>' + c_init + '.&nbsp;' + stage_cls_array[i].codriver_last + '</td>';
		stg_doc_display = stg_doc_display + '<td id="class_stage_vehicle">' + stage_cls_array[i].vehicle_make + '<br>' + stage_cls_array[i].vehicle_model  + '</td>';
		stg_doc_display = stg_doc_display + '<td id="class_stage_class">' + stage_cls_array[i].vehicle_class  + '</td>';
		stg_doc_display = stg_doc_display + '<td id="class_stage_time">' + stage_cls_array[i].stime + '</td>';
		stg_doc_display = stg_doc_display + '<td id="class_stage_diff">' + stage_cls_array[i].sdif_first + '<br><i>' + stage_cls_array[i].sdif_prev +'</i></td>';
		stg_doc_display = stg_doc_display + '</tr>';

	}
	stg_doc_display = stg_doc_display + '</table>';
	stg_doc_display = stg_doc_display + '</center>';
	document.getElementById('stgcls').innerHTML = stg_doc_display;

	$(data).find("overall_comp").each(function () {
		++ovr_counter;
		overall_cls_array[ovr_counter] = new OvrCls();
		overall_cls_array[ovr_counter].no = $(this).find("comp_no").text();
		overall_cls_array[ovr_counter].team = $(this).find("entrant").text();
		overall_cls_array[ovr_counter].driver = $(this).find("driver").text();
		overall_cls_array[ovr_counter].driver_first = $(this).find("driver_first").text();
		overall_cls_array[ovr_counter].driver_last = $(this).find("driver_last").text();
		overall_cls_array[ovr_counter].codriver = $(this).find("codriver").text();
		overall_cls_array[ovr_counter].codriver_first = $(this).find("codriver_first").text();
		overall_cls_array[ovr_counter].codriver_last = $(this).find("codriver_last").text();
		overall_cls_array[ovr_counter].driver_nat = $(this).find("driver_nat").text();
		overall_cls_array[ovr_counter].codriver_nat = $(this).find("codriver_nat").text();
		overall_cls_array[ovr_counter].vehicle = $(this).find("vehicle").text();
		overall_cls_array[ovr_counter].vehicle_make = $(this).find("vehicle_make").text();
		overall_cls_array[ovr_counter].vehicle_model = $(this).find("vehicle_model").text();
		overall_cls_array[ovr_counter].vehicle_class = $(this).find("vehicle_cls").text();
		overall_cls_array[ovr_counter].vehicle_tyre = $(this).find("vehicle_tyre").text();
		overall_cls_array[ovr_counter].pos = $(this).find("pos").text();
		overall_cls_array[ovr_counter].otime = $(this).find("time").text();
		overall_cls_array[ovr_counter].ptime = $(this).find("ptime").text();
		overall_cls_array[ovr_counter].odif_first = $(this).find("dif_first").text();
		overall_cls_array[ovr_counter].odif_prev = $(this).find("dif_prev").text();
	});

	var ovr_doc_display = '<center>';
	ovr_doc_display = ovr_doc_display + '<table id="class_results_table_ovr" cellspacing="0" cellpadding="1">';
	ovr_doc_display = ovr_doc_display + '<tr>';
	ovr_doc_display = ovr_doc_display + '<td id="class_header_stage" colspan="8">OVERALL CLASSIFICATION</td>';
	ovr_doc_display = ovr_doc_display + '</tr>';
	
	ovr_doc_display = ovr_doc_display + '<tr>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">Pos</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">&nbsp;</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">No</td>';
	ovr_doc_display = ovr_doc_display + '<td width="105" id="class_table_header">Driver<br>Co-Driver</td>';
	ovr_doc_display = ovr_doc_display + '<td width="130" id="class_table_header">Vehicle</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">Cls</td>';
	ovr_doc_display = ovr_doc_display + '<td width="60" id="class_table_header">Total<br>Time<br><i>Penalties</i></td>';
	ovr_doc_display = ovr_doc_display + '<td width="60" id="class_table_header">Diff<br>Fastest<br><i>(Prev)</i></td>';
	ovr_doc_display = ovr_doc_display + '</tr>';	
	
	line_counter=0;
	for(var i=1; i<overall_cls_array.length; i++)
	{
		var remainder = i % 2; var quotient = ( i - remainder ) / 2;
		if (remainder != 0) {
			ovr_doc_display = ovr_doc_display + '<tr class="odd_row_ovr">';  
		} else {
			ovr_doc_display = ovr_doc_display + '<tr class="even_row_ovr">';  
		}

		ovr_doc_display = ovr_doc_display + '<td id="class_stage_pos">' + overall_cls_array[i].pos + '</td>';
		if (overall_cls_array[i].vehicle_tyre=="MICHELIN") {
			ovr_doc_display = ovr_doc_display + '<td id="class_stage_pos"><img src="images/mich_icon.png"></td>';
		} else {
			ovr_doc_display = ovr_doc_display + '<td id="class_stage_pos">&nbsp;</td>';
		}
 		var d_init=overall_cls_array[i].driver_first.substring(0,1); var c_init=overall_cls_array[i].codriver_first.substring(0,1);
		ovr_doc_display = ovr_doc_display + '<td id="class_stage_pos">' + overall_cls_array[i].no + '</td>';
		ovr_doc_display = ovr_doc_display + '<td id="class_stage_driver">' + d_init + '.&nbsp;' + overall_cls_array[i].driver_last + '<br>' + c_init + '.&nbsp;' + overall_cls_array[i].codriver_last + '</td>';
		ovr_doc_display = ovr_doc_display + '<td id="class_stage_vehicle">' + overall_cls_array[i].vehicle_make + '<br>' + overall_cls_array[i].vehicle_model + '</td>';
		ovr_doc_display = ovr_doc_display + '<td id="class_stage_class">' + overall_cls_array[i].vehicle_class + '</td>';
		if (overall_cls_array[i].ptime!='')
		{
			var pen = overall_cls_array[i].ptime.substring(0, overall_cls_array[i].ptime.length-2);
			ovr_doc_display = ovr_doc_display + '<td id="class_ovr_time">' + overall_cls_array[i].otime + '<br><i>[' + pen + ']</i></td>';
		} else {
			ovr_doc_display = ovr_doc_display + '<td id="class_ovr_time">' + overall_cls_array[i].otime + '</td>';
		}
		ovr_doc_display = ovr_doc_display + '<td id="class_stage_diff">' + overall_cls_array[i].odif_first + '<br><i>' + overall_cls_array[i].odif_prev +'</i></td>';
		ovr_doc_display = ovr_doc_display + '</tr>';
	}	

	ovr_doc_display = ovr_doc_display + '</table>';
	ovr_doc_display = ovr_doc_display + '</center>';
    document.getElementById('ovrcls').innerHTML = ovr_doc_display;
}
function init_stage()
{
	var stg_doc_display = '<center>';
	stg_doc_display = stg_doc_display + '<table id="class_results_table_stage" cellspacing="0" cellpadding="1">';
	stg_doc_display = stg_doc_display + '<tr>';
	stg_doc_display = stg_doc_display + '<td id="class_header_stage" colspan="8">STAGE CLASSIFICATION</td>';
	stg_doc_display = stg_doc_display + '</tr>';
	
	stg_doc_display = stg_doc_display + '<tr>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">Pos</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">&nbsp;</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">No</td>';
	stg_doc_display = stg_doc_display + '<td width="105" id="class_table_header">Driver<br>Co-Driver</td>';
	stg_doc_display = stg_doc_display + '<td width="130" id="class_table_header">Vehicle</td>';
	stg_doc_display = stg_doc_display + '<td width="20" id="class_table_header">Cls</td>';
	stg_doc_display = stg_doc_display + '<td width="50" id="class_table_header">Stage<br>Time</td>';
	stg_doc_display = stg_doc_display + '<td width="60" id="class_table_header">Diff<br>Fastest<br><i>(Prev)</i></td>';
	stg_doc_display = stg_doc_display + '</tr>';	
	stg_doc_display = stg_doc_display + '</table>';
	stg_doc_display = stg_doc_display + '</center>';
	document.getElementById('stgcls').innerHTML = stg_doc_display;
	
	var ovr_doc_display = '<center>';
	ovr_doc_display = ovr_doc_display + '<table id="class_results_table_ovr" cellspacing="0" cellpadding="1">';
	ovr_doc_display = ovr_doc_display + '<tr>';
	ovr_doc_display = ovr_doc_display + '<td id="class_header_stage" colspan="8">OVERALL CLASSIFICATION</td>';
	ovr_doc_display = ovr_doc_display + '</tr>';
	
	ovr_doc_display = ovr_doc_display + '<tr>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">Pos</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">&nbsp;</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">No</td>';
	ovr_doc_display = ovr_doc_display + '<td width="105" id="class_table_header">Driver<br>Co-Driver</td>';
	ovr_doc_display = ovr_doc_display + '<td width="130" id="class_table_header">Vehicle</td>';
	ovr_doc_display = ovr_doc_display + '<td width="20" id="class_table_header">Cls</td>';
	ovr_doc_display = ovr_doc_display + '<td width="60" id="class_table_header">Total<br>Time<br><i>Penalties</i></td>';
	ovr_doc_display = ovr_doc_display + '<td width="60" id="class_table_header">Diff<br>Fastest<br><i>(Prev)</i></td>';
	ovr_doc_display = ovr_doc_display + '</tr>';	
	ovr_doc_display = ovr_doc_display + '</table>';
	ovr_doc_display = ovr_doc_display + '</center>';
    document.getElementById('ovrcls').innerHTML = ovr_doc_display;
}
function setup_times_basic()
{
	var doc_display = '';
	doc_display = doc_display + '<table class="master">';
	doc_display = doc_display + '<tr>';
	doc_display = doc_display + '<td id="stgcls" class="stgclsbox" valign="top">';
	doc_display = doc_display + '</td>';
	doc_display = doc_display + '<td id="ovrcls" class="ovrclsbox" valign="top">';
	doc_display = doc_display + '</td>';
	doc_display = doc_display + '</tr>';
	doc_display = doc_display + '</table>';
	document.getElementById('fullp').innerHTML = doc_display;
}
function setup_header(option)
{
	var entdet_doc_display = "";
	entdet_doc_display = entdet_doc_display + '<center>';
	entdet_doc_display = entdet_doc_display + '<table id="fullp_detail_table">';
	entdet_doc_display = entdet_doc_display + '<tr>';
	entdet_doc_display = entdet_doc_display + '<td id="fullp_detail_head_text">';
	entdet_doc_display = entdet_doc_display + option;
	entdet_doc_display = entdet_doc_display + '</td>';
	entdet_doc_display = entdet_doc_display + '</tr>';  
	entdet_doc_display = entdet_doc_display + '<tr>';  
	entdet_doc_display = entdet_doc_display + '<td id="class_table_head_divider_line"></td>';
	entdet_doc_display = entdet_doc_display + '</tr>';  
	entdet_doc_display = entdet_doc_display + '</table>';
    document.getElementById('header').innerHTML = entdet_doc_display;
}
//
//
//
function StageCls(pos, no, team, driver, driver_first, driver_last, codriver, codriver_first, codriver_last, driver_nat, codriver_nat, vehicle, vehicle_make, vehicle_model, vehicle_class, vehicle_tyre, stime, sdif_first, sdif_prev, speed)
{
	this.pos = pos;
	this.no = no;
	this.team = team;
	this.driver = driver;
	this.driver_first = driver_first;
	this.driver_last = driver_last;
	this.codriver = codriver;
	this.codriver_first = codriver_first;
	this.codriver_last = codriver_last;
	this.driver_nat = driver_nat;
	this.codriver_nat = codriver_nat;
	this.vehicle = vehicle;
	this.vehicle_make = vehicle_make;
	this.vehicle_model = vehicle_model;
	this.vehicle_class = vehicle_class;
	this.vehicle_tyre = vehicle_tyre;
	this.stime = stime;
	this.sdif_first = sdif_first;
	this.sdif_prev = sdif_prev;
	this.speed = speed;
}
function OvrCls(pos, no, team, driver, driver_first, driver_last, codriver, codriver_first, codriver_last, driver_nat, codriver_nat, vehicle, vehicle_make, vehicle_model, vehicle_class, vehicle_tyre, oclass, stime, ptime, otime, odif_first, odif_prev, elig)
{
	this.pos = pos;
	this.no = no;
	this.team = team;
	this.driver = driver;
	this.driver_first = driver_first;
	this.driver_last = driver_last;
	this.codriver = codriver;
	this.codriver_first = codriver_first;
	this.codriver_last = codriver_last;
	this.driver_nat = driver_nat;
	this.codriver_nat = codriver_nat;
	this.vehicle = vehicle;
	this.vehicle_make = vehicle_make;
	this.vehicle_model = vehicle_model;
	this.vehicle_class = vehicle_class;
	this.vehicle_tyre = vehicle_tyre;
	this.oclass = oclass;
	this.stime = stime;
	this.ptime = ptime;
	this.otime = otime;
	this.odif_first = odif_first;
	this.odif_prev = odif_prev;
	this.elig = elig;
}
function Entry(no, team, driver, driver_first, driver_last, codriver, codriver_first, codriver_last, driver_nat, codriver_nat, vehicle, vehicle_make, vehicle_model, vehicle_class, vehicle_tyre, priority, elig, control, control_type, remarks, time, total_time)
{
	this.no = no;
	this.team = team;
	this.driver = driver;
	this.driver_first = driver_first;
	this.driver_last = driver_last;
	this.codriver = codriver;
	this.codriver_first = codriver_first;
	this.codriver_last = codriver_last;
	this.driver_nat = driver_nat;
	this.codriver_nat = codriver_nat;
	this.vehicle = vehicle;
	this.vehicle_make = vehicle_make;
	this.vehicle_model = vehicle_model;
	this.vehicle_class = vehicle_class;
	this.vehicle_tyre = vehicle_tyre;
	this.priority = priority;
	this.elig = elig;
	this.control = control;
	this.control_type = control_type;
	this.remarks = remarks;
	this.time = time;
	this.total_time = total_time;
}
function Champ(code, name)
{
	this.code = code;
	this.name = name;
}
function SList(no, name)
{
	this.no = no;
	this.name = name;
}
//
//
//
function rf(tmp_str,tmp_len)
{
	while(tmp_str.charAt(0)==='0') { tmp_str=tmp_str.slice(1); }
	tmp_str=zeroPad(tmp_str,tmp_len)
	return tmp_str;
}
function zeroPad(num,count)
{
	var numZeropad = num + '';
	while(numZeropad.length < count) { numZeropad = "0" + numZeropad; }
	return numZeropad;
}

