$(document).ready(function() {
	redirect(); 
	if(cid != "" && cid != null)
		show = cid;
		else
			show = 2;
	
	rightInactive = '/images/tabs/tab_right_inactive_blu.gif';
	rightActive = '/images/tabs/tab_right_active_org.gif';
	rightOver  = '/images/tabs/tab_right_over_org.gif';

	
	$.ajax({
	   type: "GET",
	   url: xXMLData,
	   dataType: "xml",
	   success: init
	});
	animatedcollapse.addDiv('xContent', 'fade=0,speed=400,hide=0');
	
	$(".topNav div").click(function () { 
      $(".topNav div").removeClass("tabActive").addClass("tabInactive");
	  $(".topNav img").attr({ src:"/images/tabs/tab_right_inactive_blu.gif"});
	  $(this).removeClass("tabInactive").removeClass("inactiveTabOver").addClass("tabActive");
	  $(this).find('img').attr({ src: "/images/tabs/tab_right_active_org.gif"});
	  var id = $(this).attr("id");
	  setupTabs(id);
    });
	$(".topNav div").hover(
		  function () {
			  if($(this).hasClass("tabInactive")){
					$(this).removeClass("tabInactive").addClass("inactiveTabOver");
					$(this).find('img').attr({ src: "/images/tabs/tab_right_over_org.gif"});
			  }
		  }, 
		  function () {
			  if($(this).hasClass("inactiveTabOver")){
				$(this).removeClass("inactiveTabOver").addClass("tabInactive");
				$(this).find('img').attr({ src: "/images/tabs/tab_right_inactive_blu.gif"});
			  }
		  }
    );
	$("#tableNav div").click(function(){
		id = $(this).attr("offerId");
		xIdArray = [];
		showDetails(id);
	});
});
var tabset = "";
var show;
var arrayPos = 0;
var xArrayMulti = new Array();
var xResultTabs = new Array()
var xIdArray = new Array();
//Used to Randomize url for ajax so the file is always fetched
var ran_unrounded=Math.random()*999999; 
var ran_number=Math.floor(ran_unrounded);
//xml file location
var xXMLData= "/includes/xml/adventure/adv_cruise.xml?id="+ ran_number;
var cid = "";
cid = gup( 'cid' );


//Loads XML in Array
function init(xml){
	//Iterator to set position in Arrays
	iterator = 0;
	$(xml).find("Cruise").each(function()
	{
		//Loads XML to Multi-Dem Array
		xArrayMulti[iterator] = [
								 	$(this).find("CruiseLine").text(),  //0
									$(this).find("Departure").text(), 	
									$(this).find("Ship").text(), 		//2
									$(this).find("Nights").text(),  
									$(this).find("Origin").text(),		//4
									$(this).find("Type").text(),
									$(this).find("Inside").text(), 		//6
									$(this).find("Outside").text(),
									$(this).find("Balcony").text(),		//8
									$(this).find("Header").text(),
									$(this).find("DatesHeader").text(),	//10
									$(this).find("Content").text(),
									$(this).find("TC").text(),			//12
									$(this).find("ImageFile").text(),
									$(this).find("ID").text(),			//14
									$(this).find("Region").text(),
									$(this).find("Price").text(),		//16
									$(this).find("OfferExtra").text()		
								];	
		iterator+=1;
	});
	setupTabs(arrayPos);
	if(show != null && show != undefined)
		showDetails(show);
	}

function setupTabs(arrayPos){
	//Creates Tabs
	createTabs(arrayPos);
	
	$.each(xResultTabs,function(i,resObjValue){
		tab = resObjValue.replace(/ /g, "_").replace(/[,!'-]/g, "");;
		$("#"+tab ).html(loadTable(xArrayMulti,resObjValue,arrayPos));
		$("#"+tab+" tr:even:not(tr:first)").addClass('orangeRow');
		$("#"+tab+" tr:odd").addClass('blueRow');
		$("#"+tab+" tr:not(tr:first)").hover(
		  function () {
					$(this).addClass("rowHover");
		  }, 
		  function () {
				$(this).removeClass("rowHover");
		  }
		);
	});
	$(".dhtmlgoodies_tabPane:not(.topNav) div").click(function(){
		var conId = $(this).find("span").html();
		var firstId = $("#"+conId.replace(/ /g, "_").replace(/[,!'-]/g, "") +" tr:first").next("tr").attr("rowId");
		setIdList(conId.replace(/ /g, "_").replace(/[,!'-]/g, ""));
		showDetails(firstId);		
	});
	$(".topNav div").click(function(){ 
		var conId = $(".dhtmlgoodies_tabPane:not(.topNav) span:first").html();
		var firstId = $("#"+conId.replace(/ /g, "_").replace(/[,!'-]/g, "") +" tr:first").next("tr").attr("rowId");
		setIdList(conId.replace(/ /g, "_").replace(/[,!'-]/g, ""));
		showDetails(firstId);		
	});

}


//This creates that tabs
function createTabs(xNode){
	arrayPos = xNode;
	if(xArrayMulti.length > 0 && $('#xTabs').html() != "")
		showTab("cruiseTabs",1);
	
	xResultTabs = [];
	var xDivContent = '<div id="cruiseTabs">';
	var xArrayIteratater=0;
	var xTabArray = new Array();
	
	$.each(xArrayMulti,function(i){
		$.each(xArrayMulti[i],function(j,objValue){
				if(j==xNode)
				{
					xTabArray[xArrayIteratater]= objValue
					xArrayIteratater+=1;
				}
			});
	});
	xArrayIteratater=0;
	
	$.each(xTabArray,function(i,tabObjValue){
		count=0;
		$.each(xResultTabs,function(j,resObjValue){
			if(resObjValue == tabObjValue)
			count += 1;
		});
		if(count==0)
		{
			xResultTabs[xArrayIteratater] = tabObjValue;
			xArrayIteratater += 1;
		}
	});
	
	xResultTabs.sort();
	
	$.each(xResultTabs,function(i,resObjValue){
		xDivContent += '<div class="dhtmlgoodies_aTab"><div id="';
		tab = resObjValue.replace(/ /g, "_").replace(/[,!'-]/g, "");
		xDivContent += tab +'" style="overflow:auto; width:100%; height:width:100%;" onmouseover="setIdList(this.id)">'+
						'<img src="/images/tabs/ajax-loader.gif" >....Loading</div></div>';
	});
	xDivContent += '</div>';
	$('#xTabs').html(xDivContent);
	initTabs('cruiseTabs',xResultTabs,0,575,"");
}

//Loads tables in the tabs
function loadTable(xmlArray,xTab,xPos)
{
	if(xResultTabs.length >= 6)
	xSpacer = '<img src="/images/spacer.gif" width="1" height="20">';
	else if(xResultTabs.length >= 12)
	xSpacer = '<img src="/images/spacer.gif" width="1" height="30">';
	else if(xResultTabs.length >= 18)
	xSpacer = '<img src="/images/spacer.gif" width="1" height="40">';
	else
	xSpacer = "";

	xOutput = '<div>'+ xSpacer + '</div>'+
				'<table width="100%"  border="0" cellspacing="0" cellpadding="1" class="advTabTbl" >'+
				'<tr>';
				
	xOutput += '<th>Departure</th>';
		
	xOutput += '<th>Nights</th>';
	
	if(xPos != 4)
		xOutput += '<th>Origin</th>';
	
	if(xPos != 5)
		xOutput +=	'<th>Destination</th>';
		
	xOutput += '<th>Credit From</th><th style="border-right:0px;">Price From</th></tr>';
				   
	xPosition = xPos;
	for(a=0;a<xmlArray.length;++a)
	{
		if(xmlArray[a][xPosition] == xTab)
		{
			xOutput += '<tr onClick="javascript:showDetails(' +  xmlArray[a][14] + ');animatedcollapse.show(\'xContent\');" align="left" rowId="'+ xmlArray[a][14]+'">';
				
			xOutput += '<td>'+  dateFormat(xmlArray[a][1]) +'</td>';
			
				
			xOutput += '<td>'+ xmlArray[a][3] +'</td>';
			
			if(xPos != 4)
				xOutput += '<td>'+  xmlArray[a][4] +'</td>';
				
			if(xPos != 5)
				xOutput += '<td>'+  xmlArray[a][5] +'</td>';
				
			xOutput += '<td>'+ addCommas(xmlArray[a][6]) +'</td><td>'+ xmlArray[a][16] +'</td></tr>';
		}	
	}
	
	xOutput += '</table>';
	
	return xOutput;
}
// Formats the credits
function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}
// Formats the date
function dateFormat(date)
{
	var xDate = date.replace("-","/").replace("-","/");
	var myDate = new Date(xDate);
	var xMonth = myDate.getMonth()+1;
	var xDay = myDate.getDate();
	var xYear = myDate.getFullYear();
	return (xMonth +"/"+ xDay +"/"+ xYear);
}
//This loads the details window
function showDetails(Id){
	var xDetails="";
	for (i=0;i< xArrayMulti.length; ++i)
	{
		if(xArrayMulti[i][14] == Id)
		{
			var xNav="";
			if(xIdArray.length > 0){
				
				if(xIdArray[0] != Id )
					xNav +='<div style="width:100px;float:left;" id="prevBtn"><img src="/images/adventures/prevOff.jpg" id="'+Id+'"></div>';
				
				if(xIdArray[xIdArray.length-1] != Id )
					xNav +='<div style="float:left;" id="nextBtn"><img src="/images/adventures/nextOff.jpg" id="'+Id+'"></div>';
			}
			 xDetails += '<div class="dhtmlgoodies_tabPane"><div class="tabActive" style="left: 0px;">'+
						 '<span style="position: relative; padding-left: 8px; padding-right: 8px;color:#FFF;">';
			 xDetails += xArrayMulti[i][0] + '</span><img src="/images/tabs/tab_right_active_org.gif"/></div>';
			 
			 
			 xDetails += '<div style="left: 0px;">'+ xNav +'</div></div>'; 
			 xDetails += '<table width="100%" height="219px"  border="0" cellspacing="0" cellpadding="0" >'+
						 '<tr style="vertical-align:top;"><td  style="border:#FEBD57 2px solid;" width="363px;" >'+
						 '<table width="100%" border="0" class="advTabTbl" style="border-collapse:collapse" ><tr><th>Inside</th><th>Outside</th>'+
						 '<th >Balcony</th></tr><tr class="blueRow"><td>';
			 xDetails += addCommas(xArrayMulti[i][6]) +'</td><td>' +  addCommas(xArrayMulti[i][7]) +
			 			 '</td><td>'+ addCommas(xArrayMulti[i][8]) +'</td></tr></table>';
						 
						 
						 
						 
			 xDetails += '<div style="padding:7px;"><span class="DefaultTextBlueBold">';
						 
		 	 xDetails += xArrayMulti[i][9] + '</span><br><span class="SmallTextBold">';
			 xDetails += xArrayMulti[i][10]  + '</span>';
			 
			 if(xArrayMulti[i][17] =="NA")
			 	 xDetails += '<br><br>';
				 else
				 xDetails += ' <span class="SmallTextBold" style="color:red;">' + xArrayMulti[i][17]  + '</span><br><br>';
				 
				 
			 xDetails += xArrayMulti[i][11] + '<br><br><strong>Call <span style="color:#3972AA;"> 1-800-953-5511'+ 
			             '</span> to book today.</strong> <div class="RightFeature" style="font-weight:normal;'+ 
						 'margin-top:5px;" align="center"> ';
			 if(xArrayMulti[i][12] == "Default")
			 	var xTC = ''
				else
			 	var xTC = xArrayMulti[i][12];
			 xDetails += xTC + '</div></div></td><td width="5px;"><img src="/images/spacer.gif" width="1" height="1"></td><td  align="center" >'+
								'<table width="100%" border="0" cellpadding="3" style="border:#6BB2EA 1px solid;"><tr><td><img src="/images/adventures/vertical/';
			 xDetails += xArrayMulti[i][13] + '" alt="'+ xArrayMulti[i][5] +'" width="190"  align="center"></td></tr></table></td></tr></table>';
		}
	}
	//Set the div with details
	$("#xContent").html(xDetails);
	
	$("#prevBtn").click(function () { 
		id = $(this).find("img").attr("id");
		getPrevId(id);
	});
	$("#nextBtn").click(function () { 
		id = $(this).find("img").attr("id");
		getNextId(id);
	});
	$("#nextBtn, #prevBtn").hover(
		  function () {
			  	src = $(this).find("img").attr("src");
				newSrc = src.replace(/Off/g, "On");
				$(this).find('img').attr({ src: newSrc});
		  }, 
		  function () {
			  	src = $(this).find("img").attr("src");
				newSrc = src.replace(/On/g, "Off");
				$(this).find('img').attr({ src: newSrc});
		  }
    );
}
//show next item
function getNextId(currentId){
	for(a=0;a<xIdArray.length;++a)
		if(xIdArray[a] == currentId)
			showDetails(xIdArray[a+1]);
}
//show previous item
function getPrevId(currentId){
	for(a=0;a<xIdArray.length;++a)
		if(xIdArray[a] == currentId)
			showDetails(xIdArray[a-1]);
}

//sets id list for the current tab for pagnation
function setIdList(tab){
	if (tabset == tab.toLowerCase()&& xIdArray.length > 0)
		return;
	tabset = tab.toLowerCase();
	var xTabTiers = tabset.replace(/ /g, "_").replace(/[,!'-]/g, "").split("+");;
	xIdArray = [];
	iterator = 0;
	for(a=0;a<xArrayMulti.length;++a)
	{
		for(b=0;b<xArrayMulti[a].length;++b)
		{	
			for(x in xTabTiers)
			{
				if(xArrayMulti[a][b].toLowerCase().replace(/ /g, "_").replace(/[,!'-]/g, "") == xTabTiers[x])
				{
					xIdArray[iterator] = xArrayMulti[a][14];
					iterator += 1;
				}
			}
		}
	}
}
function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
	return "";
  else
	return results[1];
}




