var globalObj = {}; //global object
$(function() {
	Z.Global = {
		ctz_url:'post/get_ctz_ads.php',
		dt_advertiser_url : window.location.protocol+'//'+document.domain+'/post/get-dt-advertiser.php',
		dt_Ads: null,
		ie : 'Microsoft Internet Explorer',
		//ie : 'Netscape',
		init:function(){
			var El = this;
			$.ajax({
				url: El.dt_advertiser_url,
				//dataType: 'json',
				success: function(res){
					El.dt_Ads = jQuery.parseJSON(res);
					
						$('body').append('<iframe id="iframe-vacation" src="iframe/vacation-page.php" onload="load_ctz_ads1(this,\'ctz-ads2\',vacation_interval,\'ul-container-vacation\',\'tab-1\',0);" style="display:none;"></iframe>');
						vacation_interval =  setInterval(function(){
							displayResult($('#iframe-vacation'), $('#ctz-ads2'), vacation_interval,'ul-container-vacation','tab-1',0);
						},1000);
					
					
						$('body').append('<iframe id="iframe-hotel" src="iframe/hotel-page.php" onload="load_ctz_ads2(this,\'ctz-ads-hotel\',hotel_interval,\'ul-container-hotel\',\'tab-2\',5);" style="display:none;"></iframe>');
						hotel_interval =  setInterval(function(){
							displayResult($('#iframe-hotel'), $('#ctz-ads-hotel'), hotel_interval,'ul-container-hotel','tab-2',5);
						},1000);
					
						$('body').append('<iframe id="iframe-car" src="iframe/car-page.php" onload="load_ctz_ads3(this,\'ctz-ads-car\',car_interval,\'ul-container-car\',\'tab-3\',5);" style="display:none;"></iframe>');
						car_interval =  setInterval(function(){
							displayResult($('#iframe-car'), $('#ctz-ads-car'), car_interval,'ul-container-car','tab-3',5);
						},1000);
					
						$('body').append('<iframe id="iframe-cruise" src="iframe/cruise-page.php" onload="load_ctz_ads4(this,\'ctz-ads-cruise\',cruise_interval,\'ul-container-cruise\',\'tab-4\',5);" style="display:none;"></iframe>');
						cruise_interval =  setInterval(function(){
							displayResult($('#iframe-cruise'), $('#ctz-ads-cruise'), cruise_interval,'ul-container-cruise','tab-4',5);
						},1000);
					
						$('body').append('<iframe id="iframe-flight" src="iframe/flight-page.php" onload="load_ctz_ads5(this,\'ctz-ads\',flight_interval,\'ul-container-air\',\'tab-1\',5);" style="display:none;"></iframe>');
						flight_interval =  setInterval(function(){
							displayResult($('#iframe-flight'), $('#ctz-ads'), flight_interval,'ul-container-air','tab-1',5);
						},1000);
				}
			});
		},
		getAdsClassification:function(str){
			//debugger;
			for(var x=0;x<this.dt_Ads.length;x++){
				var a = this.dt_Ads[x].advertiser.replace('.com','');
				if(str == 'travelticker') str = 'travel-ticker';
				if(a == str){
					//console.log(str+' - '+this.dt_Ads[x].classification);
					return this.dt_Ads[x].classification;
				}
			}
			//console.log(str);
			return '';
		},
		getCtzAds: function(_param, _callback){
			return $.ajax({
				url: this.ctz_url,
				data:_param,
				success: _callback
			});
		},
		guidGenerator : function() {
			var S4 = function() {
				return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
			};
			return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());
		}
	}
});

var flight_interval = '';
var vacation_interval = '';
var hotel_interval = '';
var car_interval = '';
var cruise_interval = '';

/*var tabsCount = 0;
	
var tabsCountInterval = setInterval(function(){ // check tab advertiser
	if(tabsCount == 4){ // 4 types of advertiser air, package, hotel, car
		clearTimeout(tabsCountInterval);
		$('input').customInput(); //format checkbox
	}
},500);*/

function load_ctz_ads(e,targetId,intervalId,divUl,tab,maxCheck) {return false;
	if (e.src == ""){
	}else{
		intervalId =  setInterval(function(){
			displayResult(e, $('#'+targetId), intervalId,divUl,tab,maxCheck);
		},1000);
	}
}

function displayResult(iframeObj, targetObj, intervalId,divUl, tab,maxCheck){
	//var obj = $(iframeObj).contents().find('#a_default_checkbox img');
	var obj = $(iframeObj).contents().find('label img'); //wth sa chrome
	if(obj.length==0){
		obj = $(iframeObj).contents().find('#example_1_ct_anchor label img'); //wth sa chrome
	}
	if(obj.length>0){
		clearTimeout(intervalId);
		$(targetObj).find("li:not(:last-child)").remove();
		var OTA = new Array();
		var META = new Array();
		for(var x=obj.length-1;x>-1;x--){
			
			var src = $(obj[x]).attr('src');
			var name = src.replace('http://static.clicktripz.com/images/advertisers/90x22/','').replace('_90x22.png','');
			var checked = '';
			if(maxCheck>x){
				//checked='checked="yes"';
			}
			var pub_id = 0;
			//if(divUl == 'ul-container-air') {
				//try {
					var tmp = globalObj.getAdsClassification(name);
				//}catch(e){}
				
			//}
			var hideMe = "";
			switch(name){
				case "kayak":
					pub_id = '1';
					break;
				case "orbitz":
					pub_id = '2';
					break;
				case "hotwire":
					pub_id = '3';
					hideMe = "style='display:none;'";
					break;
				case "priceline":
					pub_id = '4';
					break;
				case "tripadvisor":
					pub_id = '5';
					hideMe = "style='display:none;'";
					break;
				case "dealbase":
					pub_id = '7';
					//checked='';
					break;
				case "expedia":
					pub_id = '9';
					//if(divUl != 'ul-container-vacation')
						//checked='checked="yes"';
					break;
				case "travelticker":
					pub_id = '10 ';
					break;
				case "hotels":
					pub_id = '11 ';
					break;
				case "hotelplanner":
					pub_id = '12 ';
					break;
				case "mobissimo":
					pub_id = '13 ';
					break;
				case "fly":
					pub_id = '14';
					hideMe = "style='display:none;'";
					break;
				case "nextag":
					pub_id = '15';
					break;
				case "cheaptickets":
					pub_id = '16';
					break;
				case "carrentals":
					pub_id = '18';
					break;
				 case "shermanstravel":
					pub_id = '29';
					break;
				case "travelpost":
					pub_id = '34';
					break;
			}
			
			if(hideMe==''){
				var li = $('<li id="'+x+'" '+hideMe+'><div class="tile" id="'+pub_id+'">'+
					'<input id="'+divUl+'-chck-'+x+'" type="checkbox" class="chck" '+checked+' />'+
					'<label for="'+divUl+'-chck-'+x+'"><img class="ads-img" width="100px" src="'+src+'"></label>'+
					'<input type="hidden" value="'+src+'" class="img" />'+
					'<input type="hidden" value="Air" class="type" />'+
					'<input type="hidden" value="'+name+'" class="title" />'+
					'<input type="hidden" value="" class="url" />'+
					'<input type="hidden" value="'+tmp+'" class="classification" />'+
					'</div></li>');
				if(tmp == 'OTA'){
					OTA.push(li);
				}else{
					META.push(li);
				}
			}
			
			//targetObj.prepend(li);
		}
		
		for(var x = 0;x<META.length;x++){
			targetObj.prepend(META[x]);
		}
		
		for(var x = 0;x<OTA.length;x++){
			targetObj.prepend(OTA[x]);
		}		
		
		targetObj.find('.chck').change(function(){
			if($(this).is(':checked')){
				if(this.id.indexOf('tab-1')){
					objFlight.createPrePopWin();
				}else if(this.id.indexOf('tab-2')){
					objHotel.createPrePopWin();
				}else if(this.id.indexOf('tab-3')){
					objCruise.createPrePopWin();
				}
			}
		});
		var id = targetObj[0].id;
		
		$('#'+divUl+' .chck').customInput();
		
		$('#'+tab+' .result-container').show();
		$('#'+tab+' #search-btn').show();
		$('#'+tab+' #right-side-banner').hide();
		$('#'+tab+' .front-banner').css({background: 'url("http://fliasia.s3.amazonaws.com/widget-wide/images/desc-trip-mama6.png") no-repeat scroll 0 0 transparent'});
		
		
		var a = Object.create(Z.Random);
		a.init(OTA.length-1,maxCheck);
		//a.init(6,17);
		var preCheck = a.getUnique().sort();
		//console.log((OTA.length-1)+'-'+maxCheck+' '+preCheck);
		$(targetObj).find('.chck').each(function(i,v){
			if($(this).parent().parent().find('input.classification').val() == 'OTA'){
				if(i == preCheck[0]){
					preCheck.shift();
					$(this).attr('checked','checked').trigger('updateState');
				}
			}
		});
		
		//**********makalibog!******************
		/*if(	divUl==	"ul-container-air"){
			//uncheck hotwire
			var check1 = true;
			$(targetObj).find('.chck').each(function(i,v){
				//if($(this).parent().parent().find('input.classification').val() == 'OTA'){
					if($(this).parent().parent().find('.title').val() =="hotwire"){
						if($(this).is(':checked')){
							$(this).attr('checked',false);
							$(this).trigger('updateState'); 
							return false;
						}
					}
				//}
			});
			
			//check trip advisor
			$(targetObj).find('.chck').each(function(i,v){
				//if($(this).parent().parent().find('input.classification').val() == 'OTA'){debugger;
					if($(this).parent().parent().find('.title').val() =="tripadvisor"){
						if($(this).is(':checked')==false){
							$(this).attr('checked','checked');
							$(this).trigger('updateState'); 
							check1 = false;
							return false;
						}
					}
				//}
			});
			
			//check1
			if(check1){
				$(targetObj).find('.chck').each(function(i,v){
					if($(this).parent().parent().find('input.classification').val() == 'OTA'){
						if($(this).parent().parent().find('.title').val() !="tripadvisor" &&
							$(this).parent().parent().find('.title').val() !="hotwire"){
							if($(this).is(':checked')==false){
								$(this).attr('checked','checked');
								$(this).trigger('updateState'); 
								check1 = false;
								return false;
							}
						}
					}
				});
			}
		} */ 
		//**********************
		
		//tabsCount++;
	}
}

Z.Random = {
	Found: false,
	Current : new Array(),
	MaxValue:0, //(e.g. 2 is equal to: 0,1,2)
	NumUnique:0,
	Count:0,
	Current : new Array(this.NumUnique),
	init : function(max,num){
		if(max<num) num=max;
		this.MaxValue = max;
		this.NumUnique = num;
	},
	getUnique : function(){
		this.GetUnique();
		//console.log(this.Current[0] + ", " + this.Current[1] + ", " + this.Current[2]+ ", " + this.Current[3]);
		return this.Current;
	},
	GetUnique: function(){
		for (i=0;this.Count<this.NumUnique;this.Count++){
			this.Found=false;
			var rndValue = this.get_random();
			var j=0;
			for (j=0;j<this.Current.length;j++){
				if (this.Current[j] == rndValue){
					this.Found=true;
					break;
				}
			}
			if (this.Found){
				this.Count--;
			} else {
				this.Current[this.Count]=rndValue;
			}
		}
	},
	get_random: function (){
		var ranNum= Math.round(Math.random()*this.MaxValue);
		return ranNum;
	}

}

