
function get_cities() {	
	
	var x = $('#states').val();
	
	$.ajax({url:'/feeds/cities/' + x + '.xml', dataType:"xml", cache:false, success: function(xml) {
			$('#cityList').html('<option value="">Select a City</option>');
			$(xml).find('city').each(function(i) {	
				var label = $(this).attr("label");
				var data = $(this).attr("data");
				$("#cityList").append('<option value="' + data + '">' + label + '</option>');
			});
		}
	});
	
}

function change_state (state) {
	// $.ajax({
	//   url: '/portal/change_state',
	//   success: function(data) {
	//     // $('.result').html(data);
	// 	if (data != '') {
	// 		alert('State: '+data);
	// 	}
	// 	else {
	// 		alert('Could not locate, or you are not in the U.S.');
	// 	}
	//   }
	// });	
}

var map = null;

function GetMap(city, state) {
	map = new VEMap('city_map');
   	map.LoadMap();
	map.HideDashboard();
	map.HideScalebar();
	map.Find(null,"'"+encodeURI(city)+","+state+"'",null,null,null,null,null,null,null,true,null);
}

function GetMap2(city,state,lat,lon) {
	map = new VEMap('city_map');
   	map.LoadMap();
	map.HideDashboard();
	map.HideScalebar();
	//map.style.width = "430px";
	//map.style.height = "424px";
	map.LoadMap(new VELatLong(lat,lon),12);
}


function dropPin(id,lon,lat,restID,storeName,address1,address2,city,state,zip,storeURL,photo,walmart,override,hours) {
	//alert(lon, lat, restID, storeName);
	var location= new VELatLong(lat,lon);
	var shape = new VEShape(VEShapeType.Pushpin, location);
	if (walmart == 0) {
		var title = "McDonald's #"+restID;
	} else {
		var title = "<img src='/images/portal/walmart_map_icon_small.png'> McDonald's #"+restID;
	}	
	// alert(override);
	if (override == 'web') {
		var URL = '/' + restID;
	}
	else {
		var URL = 'http://'+storeURL+'/'+restID;
	}
		
	var info = escape(storeName)+"<br/>"+escape(address1)+" "+escape(address2)+"<br/>"+escape(city)+", "+state+" "+zip+escape(hours);
	var url ='<br><a href="'+URL+'"><img src="/bing_portal_map/Restaurant_hp_button.jpg" alt="Restaurant Homepage" title="Visit this McDonald\'s!"></a>';
	shape.SetDescription(photo+" <div class='pininfo'>"+info+"<br/>"+url+"</div>");
	if (walmart == 0) {
		shape.SetCustomIcon('<div class="store_icon '+restID+'" id="r_'+restID+'"><img src="/images/map_logo-off.png"></div>');
	}
	else {
		shape.SetCustomIcon('<div class="store_icon '+restID+'" id="r_'+restID+'"><img src="/images/portal/walmart_map_icon.png"></div>');
	}
	map.AddShape(shape);

	myPins[id][1] = shape.GetID();
	myPins[id][2] = restID;
}

function howInfoBoxByShapeID(id) {	
	
	map.HideInfoBox(); // hide open box

	for (i = 0; i < myPins.length; i++) {
		if (myPins[i][2] == id) {
			map.ShowInfoBox(map.GetShapeByID(myPins[i][1])); // open box from link
		}
	}
}

function showJobLocations(ids) {
	
}



function findStores(search) {	
	
	var vars = $("#cityList").val().split(':');
	var cityState = $("#cityList").val().split('-');
	if (cityState.length ==  0) {
		var name = '';
		var id = '';
		var abbr = '';
	}
	else if ( cityState.length == 1 ) {
		var id = cityState[0];
		var abbr = '';
		var name = '';
	}
	else {		
		var id = cityState[0];
		var name =  cityState[1].replace(/_/gi, " ");
		var abbr = cityState[2].replace(':', ''); 

		$('.search_results_text').html('Restaurants found near <strong class="search_term">'+ name + ', ' + abbr+'</strong>');
		$('.search_term_right').text(name + ', ' + abbr);
		// --> Bing Map
		$.ajax({
			type: "POST",
			url: "/bing_portal_map/city_map.php",
			dataType: "script",
			data: ({cityname: name, stateid: id, statename: vars[1]}),
			beforeSend: function () {
				var prehtml = '<div id="city_map" style="width:515px"></div>';
				$("#portalMap").html(prehtml);
				$("#portalMap").css({background: '#ffe'});
			},
			success: function() {

				//var html = '<div id="city_selector" style="border:1px solid gray;"><select id="cityList" class="cityList" name="cityList"><option>Select a City</option></select></div><div id="city_map" style="border:1px solid gray;"></div>';
				//var html = '<select id="cityList" class="cityList" name="cityList"><option>Select a City</option></select>';
				//$("#portalMap").append(html);
				//$("#portalMap").html(html);
				// cities(id);
				// $("#cityList").css("z-index",99);
				// alert( "Data Saved: " + msg );
				if (search == 1) {
					update_search(name, id);
					set_location(id, abbr, name);

				};
			}
		});

	}
	
	// --> to text results page
	//document.location.href = "/"+name;
}

function set_event (city, stateid) {
	$.ajax({
	  url: "/portal/todays_event/"+encodeURI(city)+"/"+stateid+"/1/",
	  success: function(todaysevent){
		if (todaysevent != '') {
			$('#today_at_this_container').html(todaysevent);
		};
	  }
	});
}

function set_location (stateid, stateabbr, cityname) {
	
	$.ajax({
	  url: "/portal/set_location/"+stateid+"/"+stateabbr+"/"+ encodeURI(cityname) +"/",
	  context: document.body,
	  success: function(){

	  }
	});
	
	
}

function update_search (city, stateid) {
	$('.stores, .jobs').empty();
	$('.stores').html('<ul id="store_list"></ul>');
	$('.jobs').html('<ul id="job_list"></ul>');
	// $('.stores,.jobs').scrollbar();
	$.ajax({
	  url: "/portal/search_restaurants/"+encodeURI(city)+"/"+stateid+"/1",
	  success: function(restaurants){
	    $('#store_list').html(restaurants);
	  }
	});
	$.ajax({
	  url: "/portal/search_jobs/"+encodeURI(city)+"/"+stateid+"/1",
	  success: function(jobs){
		// $('#jobs_list').hide();
		var c = jobs.split('|');
		$('.job_number').html(c[0]);
	    $('#job_list').html(c[1]);
		// $('.scrollbar').scrollbar();
	  }
	});
	$.ajax({
	  url: "/portal/update_banners/"+encodeURI(city)+"/"+stateid+"/1/",
	  success: function(data){
	    $('.promos').html(data);
	  }
	});
	
	$('#locales').val(stateid+':'+city);
	
	set_event(city, stateid);
}

function find_location () {
	// TRY TO FIND LOCATION
	
	$.ajax({
	  url: '/portal/locate',
	  success: function(data) {
	    // $('.result').html(data);
		if (data != '') {
			
			// var location = data.split('-');
			// var state = location[0];
			// var city = location[1];
			
			// $('#states').val(state);
			
			// get_cities(state);
		
			
			// alert('Located: '+data);

			// setTimeout($('#cityList').val(data), 5000);
			
			// alert($("#cityList").text());
			// console.log(data);
			
			// $('#cityList option:selected').text()
			// $('#cityList').find("title:"+data);			
			// $('option:selected', 'select').removeAttr('selected').next('option').attr('selected', 'selected');
			
		}
		else {
			// alert('Could not locate, or you are not in the U.S.');
		}
	  }
	});
	
}


function get_states_xml (argument) {
		// cities(stateid);

		$.ajax({
			type: "GET",
			url: "/feeds/banners_states/"+stateid+".xml",
			dataType: "xml",
			success: function(xml) {
	/*
				$(xml).find('ad').each(function(){
					var filesource = $(this).find('filesource').text();
					var hint = $(this).find('hint').text();
					var url = $(this).find('desturl').text();
					if ($(this).find('desturl').text().length){
				    $('<a href="'+url+'"><img src="'+filesource+'"title="'+hint+' style="cursor:pointer""/></a>').appendTo('#ad_rotater');
			          }else{
				     $('<img src="'+filesource+'"title="'+hint+'" />').appendTo('#ad_rotater');
			          }
					$('#ad_rotater').cycle({
							fx: 'fade',
							speed: 3000 // choose your transition type, ex: fade, scrollUp, shuffle, etc...
						});
				});
	*/
			}
		});
	
}

$(function(){ 
	// $('.scrollbar').scrollbar();
	$(".restaurant_hover").live('mouseenter',function(){
		var hover_id = $(this).attr("id");
		howInfoBoxByShapeID(hover_id);
	});
	
	$(".restaurant_hover").live('mouseenter',function(){
		var hover_id = $(this).attr("id");
		howInfoBoxByShapeID(hover_id);
	});
	$(".find_jobs").live('mouseenter',function(){
		var classes = $(this).attr("class").split(/\s+/);
		$.each( classes, function(index, item){
		    $("#portalMap").find("."+this).html('<img src="/images/map_logo-on.png">');
		});
	});
	$(".find_jobs").live('mouseleave',function(){
		$('#portalMap').find(".store_icon").html('<img src="/images/map_logo-off.png">');
	});
	
	$("#searchform").submit(function(e) {
		e.preventDefault();
		window.location.href="/search/"+ $("#searchbox").val() +"/";
	});
	
	$(".store_info").hide();
	$(".opportunity_contain").hide();
	$(".employment_show").click(function(){
		
		$(".opportunity_contain").show();
		return false;
	});
	$(".jobs_show, .view_jobs").click(function(){
		map.HideInfoBox(); // hide open box
		$(".jobs_show").parent("li").siblings(".active").removeClass("active");
		$(".jobs_show").parent("li").addClass('active');
		$('.stores,.store_info').hide();
		$('.jobs').show(); 
		// $('.scrollbar').scrollbar();
		return false;
	});
	
	$(".stores_show").click(function(){
		$(this).parent("li").siblings(".active").removeClass("active");
		$(this).parent("li").addClass('active');
		$('.stores').show();
		$('.jobs,.store_info').hide();
		
		// $('.scrollbar').scrollbar();
		return false;
	});
	$(".map_icon, .store_link, .store_show").click(function(){
		$('.jobs,.stores').hide();
		$(".store_info").show();
		// $('.scrollbar').scrollbar();
		return false;
	});
	$("#job_list li").mouseenter(function(){
		$(this).css("background","#f0f0f0");
	}).mouseleave(function(){
		$(this).css("background","none");
	});
	
	
	
});


//fade in tool tip for map


function map_tooltip_found(){
	$(function(){
		setTimeout(function() {
		        setfade();
				setTimeout(function() {
				        reversefade();
				    }, 5000);
		    }, 1000);
	});
	function setfade(){
		//$(".tooltip-wrap").fadeIn("slow");
		$('.tooltip-wrap').css('display', 'block');
		$('.tooltip-wrap').animate({ opacity: 0 }, 0);
		$(".tooltip-wrap").animate({
		    opacity: 1,
		    left: '+=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
	function reversefade(){
		//$(".tooltip-wrap").fadeIn("slow");

		$(".tooltip-wrap").animate({
		    opacity: 0,
		    left: '-=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
}
function map_tooltip_error(){
	$(function(){
		setTimeout(function() {
					        setfade();

					    }, 1000);
	});
	function setfade(){
		//$(".tooltip-wrap").fadeIn("slow");
		$('#tooltip-error').css('display', 'block');
		$('.#tooltip-error').animate({ opacity: 0 }, 0);
		$("#tooltip-error").animate({
		    opacity: 1,
		    left: '+=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
	function reversefade(){
		//$(".tooltip-wrap").fadeIn("slow");

		$("#tooltip-error").animate({
		    opacity: 0,
		    left: '-=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
}
// var myAjax = new Ajax.Updater(target, url, { method: 'post',	parameters: pars});



function map_tooltip (type) {
	
	switch(type)
	{
	case 'error':
		$('.tooltip-wrap').addClass('tooltip-error');
	  break;
	case 'success':
		$('.tooltip-wrap').addClass('tooltip-success');
	  break;
	default:
	  // code to be executed if n is different from case 1 and 2
	}
	
	$(function(){
		setTimeout(function() {
		        setfade();
				setTimeout(function() {
				        reversefade();
				    }, 5000);
		    }, 1000);
	});
	function setfade(){
		//$(".tooltip-wrap").fadeIn("slow");
		$('.tooltip-wrap').css('display', 'block');
		$('.tooltip-wrap').animate({ opacity: 0 }, 0);
		$(".tooltip-wrap").animate({
		    opacity: 1,
		    left: '+=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
	function reversefade(){
		//$(".tooltip-wrap").fadeIn("slow");

		$(".tooltip-wrap").animate({
		    opacity: 0,
		    left: '-=30'
		  }, 400, function() {
		    // Animation complete.
		  });
	}
}
