var sitesToSearch =new Object();
sitesToSearch['Amazon'] = "http://www.amazon.com/gp/search?ie=UTF8&keywords={$query}&tag=monmonja05-20&index=blended&linkCode=ur2&camp=1789&creative=9325"
function closePanel(panel){
	$("#"+ panel).animate({
		height:0
	},"slow",function(){
		resizeBody();
		$(this).css("display","none");
	});
}

function showTab(node,tabPanel,tabToShow){
	$(node).parent().find("a").removeClass("selected");
	$(node).addClass("selected");
	$("#"+tabPanel).find(".tab").hide();
	
	$("#"+tabToShow).show();
}
var previousSelectedSite = "";
var doNagate = false;
function negateValue(node){
	if(jQuery("#siteSources input[type='checkbox']:checked").length == 0){
		alert("Must have atleast 1 search engine")
		return false;
	}
	doNagate = true;
}

function convertFromYoutube(site){
	if(($("#searchTxt").val().indexOf("/watch") > -1 || $("#searchTxt").val().indexOf("/v/") )&& $("#searchTxt").val().indexOf("youtube") > -1){
		$("#services").height(0).animate({
			height:20
		}).html("<div align='center'>Converting your youtube link to searchable format</div>");
		$.get(siteHeadUrl+"youtube/getTitle",{q:$("#searchTxt").val()},function(str){
			if(str.indexOf("Fatal error") > -1){
				$("#services").html("<div align='center'>There seems to be an error to your youtube video link. Please check the link</div>");
			}else{
				$("#searchTxt").val(str);
				closePanel("services")
				searchForm(site);
			}
		});
		return;
	}
}

function keywordSearch(){
	location.href = siteHeadUrl + "search/keyword/k:"+$("#searchTxt").val(); 
}

var searchEnginesUsed = new Object();
var searchEnginesUsedLength = 0;
function searchForm(site,node){
	if( jQuery("#siteSources input[type='checkbox']").get(0)){
		searchEnginesUsedLength = jQuery("#siteSources input[type='checkbox']:checked").length;
	}
	
	if(site != "search"){
		
		if(doNagate == false){
			searchEnginesUsed = new Object();
			searchEnginesUsedLength = 1;
			jQuery("#siteSources input[type='checkbox']:checked").attr("checked",false);
			
			$(node).find("input").attr('checked',true);		
		}else{
			if(searchEnginesUsedLength == 0){
				$(node).find("input").attr('checked',true);	
				return false;
			}else if(searchEnginesUsedLength > 3){
				alert("We currently support up to 3 search engine at the same time. Please unselect one before selecting a new one.");
				$(node).find("input").attr('checked',false);	
				return;
			}
		}
		doNagate = false;

		if($(node).find("input").is(':checked')){
			searchEnginesUsed[site] = sitesToSearch[site];
		}else{
			delete searchEnginesUsed[site];
			searchEnginesUsedLength--;
		}

		searchEnginesUsedLength = jQuery("#siteSources input[type='checkbox']:checked").length
	}
	
	
	
	if($("#searchTxt").val().length == 0 && site){
		alert("Please input something on the searchbox.");
		return false;
	}else{
		convertFromYoutube(site);
		frameMaximize = null
		$("#closeSearchSiteLabel").show();
		$("body").css("overflow","hidden");
		
		var selectedSitesStr = "";
		var filterString = "";
		var searchEnginesUsedCount =  j = 0;
		
		if(searchEnginesUsedLength == 0){
			site = "Google";
			searchEnginesUsed[site] = sitesToSearch[site]; 
		}
		
		var sitesStr = "";
		for(var iSite in searchEnginesUsed){
			sitesStr += iSite + ",";
		}
		sitesStr = sitesStr.substr(0,sitesStr.length - 1);
		$("#searchIFrameDiv .searchIFrameDiv[name!="+sitesStr+"]").remove();
		
		for(var iSite in searchEnginesUsed){
			selectedSitesStr += iSite + ", ";
			
			var urlRaw = searchEnginesUsed[iSite];
			urlRaw = urlRaw.replace("\{\$query\}",$("#searchTxt").val() + filterString);
			
			if($("#searchIFrameDiv").find("."+iSite).length){
				$("#searchIFrameDiv").find("."+iSite).attr("src",urlRaw);
			}else{
				
				$("#contentSiteStart").hide().remove();
				var str = '<div class="searchIFrameDiv" name="'+iSite+'" >';
					str += '<iframe class="searchIFrame '+iSite+'" src="'+urlRaw+'" height="100%"  width="100%" frameborder="0"></iframe>';
					if(searchEnginesUsedLength > 1){
						str += '<div class="searchEngineFooter">';
							str += '<a href="javascript:void(0)" onclick="maximizeFrame(this)">Maximize this frame</a>';
						str += '</div>';
					}
				str += '</div>';
				$("#searchIFrameDiv").append(str);
			}
			
			
			$.post(siteHeadUrl+"search/record",{
				q:$("#searchTxt").val(),
				s:iSite
			});
		}
		
		$("#contentForLayout").hide();
		$("#searchIFrameDiv").css("display","block");	
		resizeBody();
		
		
	
		selectedSitesStr = selectedSitesStr.substring(0,selectedSitesStr.length -2)
		$("#siteSelected").html(selectedSitesStr);
	}
}

var frameMaximize = null;
function maximizeFrame(node){
	$(".searchIFrameDiv").width(0).css("display","none")
	frameMaximize = $(node).parents(".searchIFrameDiv");
	frameMaximize.width($("body").width()).show();
	closePanel('services')
	var str = '';//'<div style="float:left">Found the video to your query? <a href="">Yes</a> &bull; Share</div>'
	str += '<div style="float:right"><a href="javascript:void(0)" onclick="minimize(this)">Minimize</a></div>'
	str += '<div style="clear:both"></div>'
	$(node).parents(".searchEngineFooter").html(str);
}

function minimize(node){
	frameMaximize = null;
	var str = '<a href="javascript:void(0)" onclick="maximizeFrame(this)">Maximize this frame</a>';
	$(node).parents(".searchEngineFooter").html(str);
	resizeBody();
	$(".searchIFrameDiv").show();
}

function resizeBody(){
	var searchIFrameCount = $(".searchIFrame").length;
	var bodyHeight = jQuery.browser.msie ? document.documentElement.clientHeight : window.innerHeight;
	var topSearchPanelHeight = $("#header").height();
	var servicesHeight = $("#services").height();
	var contentPossibleHeight = bodyHeight - topSearchPanelHeight - servicesHeight - 20;
	
	$("#contentSiteStart").height(contentPossibleHeight);
	if(frameMaximize == null){
		if(searchIFrameCount != 0){
			$(".searchIFrameDiv").each(function(i,node){
				var totalHeight = ($(".searchIFrame").length == 1) ? contentPossibleHeight : contentPossibleHeight - 25;
				$(node).css("width",($("body").width() / searchIFrameCount)-3).height(contentPossibleHeight);
				
				$(node).find(".searchIFrame").height(totalHeight)
			})
		}
	}else{
		frameMaximize.css("width",$("body").width() ).height(contentPossibleHeight);
		frameMaximize.find(".searchIFrame").height(contentPossibleHeight - 25);
	}
	
}

function closeWatchYoutube(node){
	$(node).parents(".youtubeWatchPanel").hide();
}

function watchYoutube(yId,query,node){
	$.post(siteHeadUrl + "youtube/watch/"+yId+"/"+query+"?f=1",{
		ajax:1
	},function(str){
		$(node).parent().parent().find(".youtubeDescription").append("<div class='youtubeEmbedBg'></div>"+str).show();
	})
}

$().ready(function(){
	resizeBody();
	$(window).resize(resizeBody);
	$("#closeSearchSite").click(function(){
		$("#searchIFrameDiv").fadeOut(function(){
			$("#contentForLayout").show();
			$("#closeSearchSiteLabel").hide();
			$("body").css("overflow","auto");
		});
		return false;
	})
	$("#changeSearchSite").click(function(){
		$("#services").animate({
			height:40
		}).html("<div align='center'>Loading</div>");
		$.get($(this).attr("href") + "?rnd="+Math.random(),function(e){
			$("#services").html(e).animate({
				height:140
			},"slow",function(){
				resizeBody()
			});
			if(searchEnginesUsedLength == 0){
				site = "Google";
				searchEnginesUsed[site] = sitesToSearch[site]; 
			}
			for(var iSite in searchEnginesUsed){
				$("#"+iSite+"Engine").find("input").attr('checked',true);
			}
		})
		return false;
	});
});
