var xml=null,sortByPrice=1,sortByDays=2,sortedBy=sortByPrice,setFilterBy=undefined; 
var tplPackage = '';
$(document).ready(function(){
	$.ajax({url: "/_includes/package2.htm",dataType: "html",async: false,success: function(data){tplPackage=data;}});
	$.ajax({url: "/xml-files/packages.xml",cache:false,dataType:"xml",success: function(data) {xml = data;BuildDestinationDDL(data);displayData(sortByDays);}}); 
	$("#price_sort").click(function(){displayData(sortByPrice);$(this).addClass("current");$('#days_sort').removeClass("current");});
	$("#days_sort").click(function(){displayData(sortByDays);$(this).addClass("current");$('#price_sort').removeClass("current");});		
});

function filterByDestination(idx)
{
   if (undefined == setFilterBy || setFilterBy.indexOf('all dest') != -1) return true;
   var ss = $(this).find("destinations").text();
   
   setFilterBy = jQuery.trim(setFilterBy);
   var found = (ss.indexOf(setFilterBy) > -1 || ss.indexOf(setFilterBy.replace(/ /g,'-')) > -1);

   if (found) return true; else return false;
}
function displayData(sortID)
{
    if (sortID == undefined) sortID = sortedBy;
	var sXML = $(xml).find('package').filter(filterByDestination).get().sort(function(a,b){
	var aVal,bVal; 
	switch (sortID)
	{
		case sortByPrice:
		default:
		  aVal= parseInt($(a).find('price').text());
		  bVal= parseInt($(b).find('price').text());
          sortedBy = sortByPrice;		  
		  break;
		case sortByDays:
		  aVal= parseInt($(a).find('duration').text().match(/([0-9])+/)[1]); 
		  bVal= parseInt($(b).find('duration').text().match(/([0-9])+/)[1]); 
		  sortedBy = sortByDays;
		  break;				 
	}
		   return (aVal < bVal) ? -1 : 1;
	});

	if (tplPackage != null || tplPackage != undefined)
	{
		$('#packagesContainer').empty();					
		$(sXML).each(function(){
			 var _id= $(this).attr('id');
			 var _title= $(this).find('title').text();
			 var _subtitle=$(this).find('subtitle').text();
			 var _price=$(this).find('price').text();
			 var _duration=$(this).find('duration').text();
			 var _colour = $(this).find('colour').text();
			 var _link = $(this).find('link').text();
			 var _img = $(this).find('image').text();
			 var _summ = $(this).find('summary').text();
                         var _pricelbl = $(this).find('pricelabel').text();
			 
			 if (_subtitle && _subtitle.length > 0) _duration = _subtitle + ", " + _duration;
			 
			 $('#packagesContainer').append($.Format(tplPackage,0,_colour,_link,_img,_title,_duration,_summ,_price,_pricelbl));		 
		 });
		Cufon.replace('.sans', { fontFamily: 'TheSans' });
		Cufon.replace('.sans-light', { fontFamily: 'TheSansLight' });
		Cufon.replace('.serif', { fontFamily: 'TheSerif' });
		Cufon.replace('.serif-light', { fontFamily: 'TheSerifLight' });
		Cufon.now();
	}			
};
