// searching.js

var searching = {
	
	cur_browse:0,
	
	user:function(id,e) {

		var code = (e.keyCode ? e.keyCode : e.which);
			if(code == 13) { //Enter keycode
				$('#search_form').submit()
		}

	}, // Pressed Enter
	
	city:function(id,val,e) {
		
		var code = (e.keyCode ? e.keyCode : e.which);
		
		if(code == 13 && searching.cur_browse > 0) {
			
			$("#"+id).val($("#suggest"+searching.cur_browse).text());
			
			searching.cur_browse = 0;
			
			$(".suggestbox").remove();
			
		} else if(code == 40 && searching.cur_browse >= 0 && $("#suggest"+(searching.cur_browse+1)).html() != null) { //Arrow Down
			
			searching.cur_browse++;
			$("div.suggestion").css('backgroundColor', '#f3f3f3');
			$("#suggest"+searching.cur_browse).css('backgroundColor', '#9696FF');
			
		} else if(code == 38 && searching.cur_browse > 1) { //Arrow Up
		
			searching.cur_browse--;
			$("div.suggestion").css('backgroundColor', '#f3f3f3');
			$("#suggest"+searching.cur_browse).css('backgroundColor', '#9696FF');
			
		} else if (code == 38 || code == 40|| code == 13) {
		
		} else {
			
			$.ajax({
	
				type:"GET",
	
				url:"/apps/search.php",
	
				data:"c="+val,
	
				success:function(data) {
					
					searching.cur_browse = 0;
					
					$(".suggestbox").remove();
					
					$("#"+id).after(data);
					
					if (id == 'CityInput_val') {
						
						$(".suggestbox").css('padding','0 10px 0 0')
						.css('width','159px');
						
					}
	
				}
	
			});
			
		}
		
	}, // Recommend city
	
	blurred:function() {
		
		if (searching.cur_browse > 0) {
			
			$("#CityInput").val($("#suggest"+searching.cur_browse).text());
			
		}
		
		searching.cur_browse = 0;
		
		$(".suggestbox").remove();
		
	},
	
	over:function(id) {
		
		searching.cur_browse = id;
		$("div.suggestion").css('backgroundColor', '#f3f3f3');
		$("#suggest"+id).css('backgroundColor', '#9696FF');
		
	}, // Mouse over
	
	out:function() {
		
		searching.cur_browse = 0;
		$("div.suggestion").css('backgroundColor', '#f3f3f3');
		
	}, // Mouse out
	
	reveal:function(id) {
		
		var Speed = "fast";
		
		if (id == "table") {
			
			Speed = "slow"
			
			if ($("#search_"+id).css("display") == "none") {
					
				$("#advanced_opt").fadeTo(Speed,0.5);
				
				$("#advanced_on").val("yes");
					
			} else {
				
				$("#advanced_opt").fadeTo(Speed,1);
				
				$("#advanced_on").val("");
				
			}
			
		}
		
		if ($("#search_"+id).css("display") == "none") {
			
			$("#search_"+id).slideDown(Speed);
			
		} else {
			
			$("#search_"+id).slideUp(Speed);
			
		}
		
	}, // Reveal and Cover
	
	check:function (id) {
		
		if (id == "username") {
			
			$("#src").select();
		
		} else if (id == "city") {
			
			$("#CityInput").select();
		
		} else if ($("#search_"+id).attr('checked') == true) {
			
			$("#search_"+id).attr('checked', false);
			
		} else {
			
			$("#search_"+id).attr('checked', true);
			
		}
		
		searching.genders($("#search_"+id).val());
		
	},
	
	genders:function(ele) {
		
		if (!$("#search_women").attr('checked') && !$("#search_men").attr('checked')) {
			
			if ($("#search_women").val() == ele) {
				
				$("#search_men").attr('checked', true);
				
			} else {
				
				$("#search_women").attr('checked', true);
				
			}
			
		}
		
	},
	
	genders_val:function(ele) {
		
		if (!$("#search_women_val").attr('checked') && !$("#search_men_val").attr('checked')) {
			
			if ($("#search_women_val").val() == ele) {
				
				$("#search_men_val").attr('checked', true);
				
			} else {
				
				$("#search_women_val").attr('checked', true);
				
			}
			
		}
		
	},
	
	page:1,
	
	browse:function(bool) {
		
		$(".search_browse_back").show();
		$(".search_browse_forward").show();
		
		if (bool) {
			
			$("#search_result_"+searching.page).hide();
			
			searching.page += 1;
			
			if (!$("#search_result_"+(searching.page+1))[0])
				$(".search_browse_forward").hide();
				
			$("#search_result_"+searching.page).show();
			
		} else {
			
			$("#search_result_"+searching.page).hide();
			
			searching.page -= 1;
			
			if (!$("#search_result_"+(searching.page-1))[0])
				$(".search_browse_back").hide();
				
			$("#search_result_"+searching.page).show();
			$("#search_result_"+(searching.page+1)).hide();
			
		}
		
	}
	
};
