/////////////////////////////
//SWFADDRESS FUNC
/////////////////////////////

//init function
function initAddressManager()
{
	if(ajax_available)
	{
		addLinkClickListeners();
		if(typeof(SWFAddress) != undefined && !noswf)
    	{
			SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleSWFAddressEvent);
    	}
	}
	else
	{
		page_url = segs.join('/');
		handleSwfAddressMenuUpdate(page_url);
	}
	if(page_url != base_url){}
}

//upates address
function updateAddress(href)
{
	//get uri
	var tmp_page_url = href.replace(base_url, '');
	
	//update address
	if(tmp_page_url != "" && tmp_page_url != page_url)
	{		
    	//set the page url, if not null or not current url
    	page_url = tmp_page_url;
    	if(typeof(SWFAddress) != undefined && !noswf)
    	{
    		SWFAddress.setValue(page_url);
    	}
    	else
    	{
    		window.location = base_url + page_url + '/noswfa';
    	}
	}
	return false;
}

//handles address change
function handleSWFAddressEvent(evt)
{
	gallery_url = '';
	//debug(deeplinkDebug, "handleSWFAddressEvent:"+evt.path);
	if(evt.path == "/")
	{
		evt.path = '/home';
	}
	
	//set page url
	page_url = (evt.path).substr(1);
	
	//handle menu, and check if we need to update content
	var processLink = handleSwfAddressMenuUpdate(page_url);
	if(processLink)
	{
		//if its in the sitemap
		var href = processLink.attr('href');
		var temp_url 	= href.replace(base_url, '');
		
		//process call
		debug(deeplinkDebug, "process call");
		processPageCall();
		
	}
	else if(!isIntialDeepLink())
	{
		debug(deeplinkDebug, "not intial deeplink, not a valid url");
		
		//else if not a valid uri, or if folder
		//and if page is not set
		if(!pageData && !is_mobile)
		{
			//if not mobile then show current page
			//pageData = {"current":{'type':type}};
			updateAddress("/");
			renderRequestData();
		}
	}
	
	
	//intial ddeplink pasted
	intialDeepLink = false;
}

/////////////////////////////
//LISTENERS FUNC
/////////////////////////////

//add link listener
function addLinkClickListeners()
{
	$('body').delegate("a[href*='"+base_url+"'][target!=_blank]", 'click', function(){onLinkClicked($(this)); return false;});
}

//content link listener function
function onLinkClicked(link) 
{    
	if(typeof(link.attr) == "function" && typeof(link.attr('href')) == "string")
	{
		var href = link.attr('href');
		//remove focus if there
		if(href.indexOf('#focus') >= 0)
		{
			href = popSegs(href, 1, '#');
		}
		debug(deeplinkDebug, "update address");
		updateAddress(href);
	}
	return false;
}











