// JavaScript Document
$(document).ready(function(){
	$(".datePicker").live('focus', function(){
		$(this).datepicker({
			changeMonth: true,
			changeYear: true,
			minDate:0,
			maxDate:"+12M"	
		});
	});
	
	//ajax call to get the region for country selected. 
	$(".ajax-country").live('change', function(){
		var refcountry = $(this);
		var countryid = $(this).find("option:selected").val();
		if(!countryid){countryid=$(this).val();}
		$.ajax({
			url: "/ajax/get_region",
			type: "POST",
			dataType: "text",
			data:"countryid="+countryid,
			success: function(data,status)
			{				
				if(data=="FALSE")
				{
					$(refcountry).parents(".marked").find(".ajax-region").attr('disabled', 'disabled');
					$(refcountry).parents(".marked").find(".ajax-region").html("<option value='0'>----------------------</option>");
				}
				else
				{
					$(refcountry).parents(".marked").find(".ajax-region").html("");
					$(refcountry).parents(".marked").find(".ajax-region").removeAttr('disabled');
					var myJson = $.parseJSON(data);
					for(var i=0; i<myJson.length; i++)
					{	
						if(myJson[i]['name'] !== "---")
						{
							var regionname = myJson[i]['name'];
							$(refcountry).parents(".marked").find(".ajax-region").append("<option value='"+myJson[i]['id']+"'>"+regionname.substring(0, 25)+"</option>");
						}
					}
				}							
			},
			error: function(xhr, textStatus, errorThrown)
			{
				alert(xhr+"---"+textStatus+"---"+errorThrown);
			}
		});
	});
	
	//
	$(".ajax-update-info-list").live('click', function(){
		var ref = $(this);
		var rkey = $(this).attr('rkey');
		$.ajax({
			url: "/ajax/add_info_list_rkey",
			type: "POST",
			dataType: "text",
			data:"rkey="+rkey,
			success: function(data,status)
			{				
				$(ref).parents("span").html(data);					
			},
			error: function(xhr, textStatus, errorThrown)
			{
				$(ref).parents("span").append('<br/>List service unavailable.');
			}
		});
	});
	
	//
	$(".ajax-remove-rkey").live('click', function(){
		var ref = $(this);
		var rkey = $(this).attr('rkey');
		$.ajax({
			url: "/ajax/remove_info_list_rkey",
			type: "POST",
			dataType: "text",
			data:"rkey="+rkey,
			success: function(data,status)
			{				
				$(ref).parents("li").remove();					
			},
			error: function(xhr, textStatus, errorThrown)
			{
				$(ref).parents("span").html('unable to remove');
			}
		});
	});
	
	$(".camMB").click(function(){
		var mto = $(this).attr("mto");
		var mtype = $(this).attr("mtype");
		var rkey = $(this).attr("rkey"); //this should be the member rkey
		var base_url = $(this).attr("base_url");
		mto = (mto==undefined)?'':mto;
		mtype = (mtype==undefined)?'':mtype;
		rkey = (rkey==undefined)?'':rkey;	
		if(base_url)
		{
			window.open(base_url+'show_cam.php?mtype='+mtype+'&mto='+mto+'&rkey='+rkey+'&base_url='+base_url,'camerawindow','width=610,height=380').focus();
		}
		else
		{
			alert('unable to open video recorder.');	
		}
		
	});
	
	
	$(".playVid").click(function(){
		var file_loc = $(this).attr("file_loc");
		var base_url = $(this).attr("base_url");
		window.open(base_url+'showmovie.php?file_loc='+file_loc,'camerawindow','width=335,height=270').focus();
	});
	
	
	
	/**************************************************
	// START service state selection widget*/
	$("#add-service-state").click(function(){
		var value = $("#available_states option:selected").val();
		
		if(value==999)
		{
			var all_text = new Array();
			var all_ids = new Array();
			$("#available_states > option").each(function(){
				if($(this).val() > 0 && $(this).val()!=999)
				{
					var current_text = $(this).text();
					var current_id = $(this).val();
					all_text.push(current_text);
					all_ids.push(current_id);
				}
			});
			var unformatted_text = all_text.toString();
			var formatted_text = unformatted_text.replace(/\,/g, ', ');
			$("#show_service_states").text(formatted_text);
			$("input[name='service_states_list']").val(formatted_text);
			$("input[name='service_states']").val(all_ids.toString());
		}
		else if(value > 0 && value < 999)
		{
			var current_text =  $("#available_states option:selected").text();
			var str_text = $("#show_service_states").text();
			if(str_text)
			{
				var text = str_text.split(',');
				text.push(current_text);
				var unformatted_text = text.toString();
				var formatted_text = unformatted_text.replace(/\,/g, ', ');
				$("#show_service_states").text(formatted_text);
				$("input[name='service_states_list']").val(formatted_text);
			}
			else
			{
				$("#show_service_states").text(current_text);
				$("input[name='service_states_list']").val(current_text);
			}
			
			var str_states = $("input[name='service_states']").val();
			if(str_states)
			{
				var states = str_states.split(',');
				states.push(value);
				$("input[name='service_states']").val(states.toString());
			}
			else
			{
				$("input[name='service_states']").val(value);
			}
		}
	});

	$("#clear-service-states").click(function(){
		$("#show_service_states").text('');	
		$("input[name='service_states']").val('');
		$("input[name='service_states_list']").val('');
	});
	//END
	
	
	/*****************************************************
	// START Category Selection widget */
	$("select[name='main_category']").change(function(){
		var id = $(this).val();
		$.ajax({
			url: "/ajax/get_subcats",
			type: "POST",
			dataType: "text",
			data:"maincat_id="+id,
			success: function(data,status)
			{				
				if(data=="FALSE")	
				{
					$("#subcats").html(
						'<select name="subcats" disabled="disabled">'+
							'<option value="">No Sub Categories</option>'+
						'</select>'
					);
					
					$("#show_subcats").html('');
					$("input[name='sub_categories']").val('');
					$("input[name='sub_categories_list']").val('');
				}
				else
				{
					$("#show_subcats").html('');
					$("input[name='sub_categories']").val('');
					$("input[name='sub_categories_list']").val('');
					var myJson = $.parseJSON(data);
					$("#subcats").html('');
					$("#subcats").append("<select name='subcats'>");
					for(var i=0; i<myJson.length; i++)
					{	
						if(myJson[i]['maincatid'] == id)
						{
							var name = myJson[i]['name'];
							var subcat_id = myJson[i]['id'];
							$("select[name='subcats']").append("<option value='"+subcat_id+"'>"+name.substring(0, 25)+"</option>");
						}
					}
					$("#subcats").append("</select>");
					$("#subcats").append('<img src="http://serviceworkcenter.com/images/add.png" style="position:relative; top:4px; " id="add-subcat">'); 
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				$("#subcats").html(
					'<select name="subcats" disabled="disabled">'+
						'<option value="">No Sub Categories</option>'+
					'</select>'
				);
			}
		});
	});
	
	$("#add-subcat").live('click', function(){
		var current_subcat_id = $("select[name='subcats']").val();
		var current_subcat_name = $("select[name='subcats'] option:selected").text();
		var str_all_subcat_names = $("#show_subcats").text();
		
		if(str_all_subcat_names)
		{
			var text = str_all_subcat_names.split(',');
			text.push(current_subcat_name);
			var unformatted_text = text.toString();
			var formatted_text = unformatted_text.replace(/\,/g, ', ');
			$("#show_subcats").text(formatted_text);
			$("input[name='sub_categories_list']").val(formatted_text);
		}
		else
		{
			$("#show_subcats").text(current_subcat_name);
			$("input[name='sub_categories_list']").val(current_subcat_name);
		}
		
		var str_subcat_id = $("input[name='sub_categories']").val();
		if(str_subcat_id)
		{
			var subcat_id = str_subcat_id.split(',');
			subcat_id.push(current_subcat_id);
			$("input[name='sub_categories']").val(subcat_id.toString());
		}
		else
		{
			$("input[name='sub_categories']").val(current_subcat_id);
		}
		
	});
	
	$("#clear-subcats").click(function(){
		$("#show_subcats").html('');
		$("input[name='sub_categories']").val('');
		$("input[name='sub_categories_list']").val('');
	});
	
	//END
	
	
	
	
	$("select[name='maincat']").change(function(){
		var id = $(this).val();
		
		$.ajax({
			url: "/ajax/get_subcats",
			type: "POST",
			dataType: "text",
			data:"maincat_id="+id,
			success: function(data,status)
			{				
				if(data=="FALSE")	
				{
					$("#subcat").html(
						'<select name="subcat" disabled="disabled">'+
							'<option value="">No Sub Categories</option>'+
						'</select>'
					);
				}
				else
				{
					var myJson = $.parseJSON(data);
					$("#subcat").html('');
					$("#subcat").append("<select name='subcat'>");
					for(var i=0; i<myJson.length; i++)
					{	
						if(myJson[i]['maincatid'] == id)
						{
							var name = myJson[i]['name'];
							var subcat_id = myJson[i]['id'];
							$("select[name='subcat']").append("<option value='"+subcat_id+"'>"+name.substring(0, 25)+"</option>");
						}
					}
					$("#subcat").append("</select>");
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				$("#subcat").html(
					'<select name="subcat" disabled="disabled">'+
						'<option value="">No Sub Categories</option>'+
					'</select>'
				);
			}
		});
		
	});
	
	
	$(".ref-remove").live('click', function(){
		$(this).parents("tr").remove();
	});
	
	$(".ref-add-more").click(function(){
		$(this).parents('.marked').find('.tbl-ref-invites').append(
			'<tr>'+
				'<td><input type="text" name="first_name[]" maxlength="50"></td>'+
				'<td><input type="text" name="last_name[]" maxlength="50"></td>'+
				'<td><input type="text" name="company_name[]" maxlength="100"></td>'+
				'<td><input type="text" name="email_address[]" maxlength="100"></td>'+
				'<td><img src="http://serviceworkcenter.com/images/remove.png" class="ref-remove" style="cursor:pointer;"></td>'+
			'</tr>'
		);	
	});
	
	
	
	$(".btn-cat-search").click(function(){
		$(".cat-selector").html(
			'<div class="cat-search-box">'+
				'Enter category keyword: <input type="text" name="cat-keyword" style="border:1px solid #00F; width:200px; padding:2px; margin:0px 2px;  ">'+
				'<span class="button submit-cat-search">Search</span>'+
				'<div class="pad5"></div>'+
				'<span class="bold">Category</span><span class="red bold t10"> &nbsp;(Double Click Category to Add)</span>'+
				'<div class="cat-sector3" style="width:600px;">'+
		
				'</div>'+
			'</div>'
			);	
	});
	
	$(".btn-cat-browse").click(function(){	
		
		$(".cat-selector").html(
			'Please select the Sector, Sub Sector and Category relevant to your business'+
			'<div class="pad5"></div>'+
			'<table class="cat-browse">'+
				'<tr>'+
					'<td>'+
						'<span class="bold">Sector</span>'+
						'<div class="cat-sector1">'+
						'</div>'+
					'</td>'+
					'<td>'+
						'<span class="bold">Sub Sector</span>'+
						'<div class="cat-sector2">'+
						'</div>'+
					'</td>'+
					'<td>'+
						'<span class="bold">Category</span>'+
						'<div class="cat-sector3">'+
						'</div>'+
						'<span class="red bold t10"> &nbsp; Double Click Category to Add</span>'+
					'</td>'+
				'</tr>'+
			'</table>'
		);
		$(".cat-sector2").html('');
		$(".cat-sector3").html('');
		$(".cat-sector1").css({'background':'url(http://sellabiz.org/images/loading.gif) no-repeat center'});
		$.ajax({
			url: "/ajax/get_category1",
			type: "POST",
			dataType: "text",
			success: function(data,status)
			{
				$(".cat-sector1").css({'background':'none'});			
				if(data=="FALSE")	
				{
					$(".cat-sector1").html(
						'Unable to load up categories. Try clicking the "Browse categories" button again.'
					);
				}
				else
				{
					var myJson = $.parseJSON(data);
					$(".cat-sector1").html("<ul id='cat1-list'></ul>");

					for(var i=0; i<myJson.length; i++)
					{	
						var name = myJson[i]['name'];
						var id = myJson[i]['id'];
						$("#cat1-list").append("<li value='"+id+"'>"+name.substring(0, 35)+"</li>");
					}
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				$(".cat-sector1").css({'background':'none'});
				alert('Unable to load up categories. Try clicking the "Browse categories" button again.');
			}
		});
	});
	
	$("#cat1-list li").live('click', function(){
		$(".cat-sector3").html('');
		var cat1_id=$(this).attr('value');
		$(".cat-sector2").css({'background':'url(http://sellabiz.org/images/loading.gif) no-repeat center'});
		$.ajax({
			url: "/ajax/get_category2",
			type: "POST",
			dataType: "text",
			data:"cat1_id="+cat1_id,
			success: function(data,status)
			{
				$(".cat-sector2").css({'background':'none'});			
				if(data=="FALSE")	
				{
					$(".cat-sector2").html(
						'no results found'
					);
				}
				else
				{
					$(".cat-sector2").css({'background':'none'});	
					var myJson = $.parseJSON(data);
					$(".cat-sector2").html("<ul id='cat2-list'></ul>");

					for(var i=0; i<myJson.length; i++)
					{	
						var name = myJson[i]['name'];
						var id = myJson[i]['id'];
						$("#cat2-list").append("<li value='"+id+"'>"+name.substring(0, 35)+"</li>");
					}
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				alert('Unable to submit search. Please try again.');
			}
		});
		
	});
	
	$("#cat2-list li").live('click', function(){
		var cat2_id=$(this).attr('value');
		$(".cat-sector3").css({'background':'url(http://sellabiz.org/images/loading.gif) no-repeat center'});
		$.ajax({
			url: "/ajax/get_category3",
			type: "POST",
			dataType: "text",
			data:"cat2_id="+cat2_id,
			success: function(data,status)
			{
				$(".cat-sector3").css({'background':'none'});			
				if(data=="FALSE")	
				{
					$(".cat-sector3").html(
						'no results found'
					);
				}
				else
				{
					$(".cat-sector3").css({'background':'none'});	
					var myJson = $.parseJSON(data);
					$(".cat-sector3").html("<ul id='cat3-list'></ul>");

					for(var i=0; i<myJson.length; i++)
					{	
						var name = myJson[i]['name'];
						var id = myJson[i]['id'];
						$("#cat3-list").append("<li value='"+id+"'>"+name.substring(0, 35)+"</li>");
					}
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				alert('Unable to submit search. Please try again.');
			}
		});
		
	});
	
	$(".submit-cat-search").live('click', function(){
		$(".cat-sector3").css({'background':'url(http://sellabiz.org/images/loading.gif) no-repeat center'});
		var keyword=$('input[name="cat-keyword"]').val();
		$.ajax({
			url: "/ajax/search_category3",
			type: "POST",
			dataType: "text",
			data:"keyword="+keyword,
			success: function(data,status)
			{
				$(".cat-sector3").css({'background':'none'});			
				if(data=="FALSE")	
				{
					$(".cat-sector3").html(
						'no results found'
					);
				}
				else
				{
					var myJson = $.parseJSON(data);
					$(".cat-sector3").html("<ul id='cat3-list'></ul>");

					for(var i=0; i<myJson.length; i++)
					{	
						var name = myJson[i]['name'];
						var subcat_id = myJson[i]['id'];
						$("#cat3-list").append("<li value='"+subcat_id+"'>"+name+"</li>");
					}
				}
			},
			error: function(xhr, textStatus, errorThrown)
			{
				alert('Unable to submit search. Please try again.');
			}
		});
	});
	
	$("#cat3-list li").live('dblclick', function(){
		var allowed=8;
		var count=0;
		$(".cat-list li").each(function(){
			count++;
		});
		if(count >=allowed)
		{
			alert('We only allow a maximum of 8 categories for each business listing.');
		}
		else
		{
			var id=$(this).attr('value');
			var name=$(this).text();
			$(".hidden-categories").append('<input type="hidden" name="categories[]" value="'+id+'|'+name+'" class="'+id+'">');
			$(".cat-list").append("<li value='"+id+"|"+name+"' class='"+id+"'>"+name+"</li>");
			var leftover=allowed-(count+1); //must add 1 because count starts at zero
			$(".cat-left-over").html(' You may choose '+leftover+' more categories.');
		}
	});
	
	
	$(".cat-list li").live('dblclick', function(){
		var id=$(this).attr('class');
		$("."+id).remove();
		//$(this).remove();
		var allowed=8;
		var count=0;
		$(".cat-list li").each(function(){
			count++;
		});
		var leftover=allowed-(count); //must add 1 because count starts at zero
		$(".cat-left-over").html(' You may choose '+leftover+' more categories.');
	});
	
	$(".show-hidden-list").live('click', function(){
		$(this).parent().find(".hidden-list").show();
		$(this).removeClass('show-hidden-list');
		if($(this).text()=='SHOW MORE')
		{
			$(this).text('HIDE');
		}
		$(this).addClass('hide-hidden-list');
		
	});
	
	$(".hide-hidden-list").live('click', function(){
		$(this).parent().find(".hidden-list").hide();
		$(this).removeClass('hide-hidden-list');
		if($(this).text()=='HIDE')
		{
			$(this).text('SHOW MORE');
		}
		$(this).addClass('show-hidden-list');
	});
	
});


