// JavaScript Document


//Global Vars
var proxy ="http://www.10thousanddoors.org/site/apps/rss/getpage.aspx?url=";
var causeCount=0;

$(document).ready(function(){
$(".causeTalk").click(function(){displayComment($(this).attr("cause"))}); 
$(".findResult .findResultsTitle a").click(function(){pageTracker._trackPageview("/findResult/")});
$("form#zip").submit(function(){initSubmit(); return false; });
getCauseAndDisplay("#causeWatchResults");

function displayComment(uniqueID){
	$("body").append("<div class='blogOverlay'></div><div id='fullComment'><span class='ui-icon ui-icon-closethick' id='closeBlog'></span><div id='commentTitle' class='talkQuestion'>"+uniqueID+"</div><div id='commentsTest'></div></div>");	
	addComment("commentsTest",uniqueID);
	$(".blogOverlay,#closeBlog").css({"opacity":"0","display":"block"}).fadeTo("slow",0.80,function(){$("#fullComment").fadeIn();}).click(function(){$("#fullComment,.blogOverlay").remove();});
}

function getCauseAndDisplay(locationId){
	var main=this;
	main.locationId=locationId;
	var zone=$(locationId).attr("zone");
	var url="http://tools.10thousanddoors.org/data/pull.aspx?zone="+zone+"&max=20";
	url=encodeURIComponent(url);
	
	$.getJSON(proxy+url,
		  function(data){
			  causeCount++;
			  $("div.loader").remove();
						  
			   $.each(data.value.items, function(i,item){
					createCauseArticles(item.link,item.title,item.description,main.locationId);	
				});		
			   if (causeCount==1){getCauseAndDisplay("#causeReadResults");}
		  });		
}


function createCauseArticles(storyLink,storyTitle,description,causeResultLocation){
var text = description.substring(0,300);
$(causeResultLocation).append('<div class="searchResult"><div><a target="_blank" href="'+storyLink+'" ><span class="readArticleTitle">'+storyTitle+'</span></a></div><div>'+text+'...</div></div>');
}
function addComment(divID,uniqueID){
var skin = {};
skin['BORDER_COLOR'] = '#cccccc';
skin['ENDCAP_BG_COLOR'] = '#000000';
skin['ENDCAP_TEXT_COLOR'] = '#ffffff';
skin['ENDCAP_LINK_COLOR'] = '#ffffff';
skin['ALTERNATE_BG_COLOR'] = '#000000';
skin['CONTENT_BG_COLOR'] = '#2C2C2C';
skin['CONTENT_LINK_COLOR'] = '#cccccc';
skin['CONTENT_TEXT_COLOR'] = '#cccccc';
skin['CONTENT_SECONDARY_LINK_COLOR'] = '#B7BAB6';
skin['CONTENT_SECONDARY_TEXT_COLOR'] = '#666666';
skin['CONTENT_HEADLINE_COLOR'] = '#E1E2E0';
skin['DEFAULT_COMMENT_TEXT'] = '- add your comment here -';
skin['HEADER_TEXT'] = '';
skin['POSTS_PER_PAGE'] = '7';
google.friendconnect.container.setParentUrl('/atf/cf/%7B84649513-0f80-42be-ab73-e2a9135e2bfa%7D/' /* location of rpc_relay.html and canvas.html */);
google.friendconnect.container.renderWallGadget(
 { id: divID,
   site: '10644709243781110121',
   'view-params':{"disableMinMax":"true","scope":"ID","features":"video,comment","docId":uniqueID,"startMaximized":"true"}
 },
  skin);
}

function initSubmit(){


if($("#findDisplay").css("display")=="none")
{
	
	//first time through
	clearResults();
	var zip=getZip();
	if(validateZip(zip)==false){ return false;}
	var ministries=getMinistries();
	var range=getRange();
	var url=makeQueryUrl(zip,range,ministries);
	getAndDisplay(url);
	

	} else{
		if($("body").attr("id")=="home"){
			$("#nowReadResults").remove();
				if($("#findDisplay").length==0){$("#headerCol2").append('<div id="findDisplay"></div>');alert('test2');}
		}
	$("#findDisplay").hide();
	clearResults();
	var zip=getZip();
	if(validateZip(zip)==false){ return false;}
	var ministries=getMinistries();
	var range=getRange();
	var url=makeQueryUrl(zip,range,ministries);
	getAndDisplay(url);
	

		
	}
}

function getMinistries(){
var ministriesString="";
$('#findMinistries input:checkbox').each(function(){
					if(this.checked){
						var str=encode(this.id);						
						ministriesString+=str+"%3A%3A";
					}
								  });
return ministriesString;
}
// take out the \
function encode(id){
id=id.replace(/\//g,"%2F");
return(id);
}
//grab
function getRange(){
var radius=$("#radius").val();
return radius;
}

function validateZip(zip){
var re = /^\d{5}$/;
if(re.test(zip)){return true;}else{
$("div.loader").remove();
$("#content").append('<div id="dialog" title="Zip Code"><p>Please enter a valid 5 digit zip code.</p></div>');
$("#dialog").dialog({bgiframe: true,modal: true,buttons: {Ok: function() {$(this).dialog('destroy');$("#zipInput").focus().select();}	} });
if($("body").attr("id")=="home"){$("#dialog").dialog('option','modal',false)}


return false;}	
}

function getZip(){
var zip=$("#zipInput").val();
var re = /^\d{5}$/;
var validZip=re.test(zip);
return zip;
}
function makeQueryUrl(zip,range,ministries){
var url="http://master.umc.org/FindAChurch/Church/Find/Zip/"+zip+"/?range="+range+"&categories="+ministries;
return url;
}
function getAndDisplay(url){
	$.ajax({
		   type:"GET",
		   dataType:"jsonp",
		   url:url+"&cb=?",
		   success:function(data){
			  $("#findDisplay").append('<div id="results"></div>');
			  $("div.loader").remove();
			  if(data==""){$("#findDisplay").append('<div id="results"></div>');$("#results").append('<div class="findResult">Sorry, no results found. <br />Try using a larger search radius...</div>')}
			  $.each(data, function(i,item){				
				createContent(item.PreferredName,item.AddressLine1,item.Distance,item.FAC,item.SearchRanking,item.MinistryMatchCount,item.IsNewStart);
				if(i==5){return false;}
				});
		
			  $("div.findResult:odd").addClass("zebra");
			  $("#findDisplay").show();
		  },
		  error:function(){$("div.loader").remove();$(ministryCol).append('<div id="results"><div class="findResult>"Our appology.<br />We are aware of the error you\'ve just encountered and should have it resolved shortly. In the meantime, try refreshing your browser. <br />-The 10thousanddoors.org Team</div></div>');}
		  });		
}

function createContent(name,address,distance,fac,searchRanking,ministryMatchCount,isNewStart){
		var urlToUse="http://archives.umc.org/Directory/ChurchDetails.asp?fac="
		if(isNewStart==true){urlToUse="http://archives.umc.org/Directory/ChurchDetailsNC.asp?nsid="}
		var searchMinistriesString="";
		$("input:checked").each(function(){searchMinistriesString+=this.id+"::"});
		searchMinistriesString=encodeURIComponent(searchMinistriesString);
		var tab2="";
		if(ministryMatchCount>0){tab2="#tab2"}
		address = address.replace(new RegExp("\\n","g"),"<br />");
		name = name.replace(/United Methodist Church/g,"UMC");
		var distance = distance.toFixed(1);
		var relevancyText;
		if($('#findMinistries input:checked').length==0||(ministryMatchCount<=0&&searchRanking=="100")){relevancyText="";}else{relevancyText="<br />Relevancy Ranking: "+searchRanking+"% ";}
		$("#results").append('<div class="findResult"><div class="findResultTitle"><a target="_blank" href="'+urlToUse+fac+'&highlight='+searchMinistriesString+tab2+'">'+name+'</a></div>'+address+'<br />Distance: '+distance+' miles'+relevancyText+'</div>');
}

function clearResults(){
	//if there are previous results, remove them
$("#results").remove();
	//append loader image
$("#findDisplay").before('<div class="loader"><img src="../../../../atf/cf/{84649513-0f80-42be-ab73-e2a9135e2bfa}/AJAX-LOADER2.GIF" ></div>');	
if($("body").attr("id")=="home"){$("#related").html("FIND RESULTS");}
}
});


				
				