/**
 * handles the onclick popup when readmore is clicked
 * @param sandbox
 */
Cobalt.Website.Results.ResultListItemModule = function(sandbox)
{
    var linkElementContainerClassName = "result_item_moreDetailsLink";
	
    var handleResultListItemOnclick = function(e)
    {
    	//update browser history with current user preferences, before doing anything else
    	updateHistoryWithUserPreferences();
    	
        // check to see if there is an original event source and delegate if so
        // else raise detail click event;
        if (!shouldDelegateEvent(e.target))
        {
            var hrefElementSelector = "[class~="+linkElementContainerClassName+"] a";
            var hrefElement = sandbox.dom(e.currentTarget).find(hrefElementSelector);
            var pageUrl = sandbox.dom(hrefElement).attr('href');
            sandbox.openLocation(pageUrl);  	
        	
            return false;
        }
    	
    };

    function shouldDelegateEvent(target)
    {
        if (!target)
        {
            return false;
        }

        try
        {
            if (sandbox.dom(target).parent().is("a"))
            {
                return true;
            }
        }
        catch (e)
        {
            return false;
        }

        return false;
    }
	
    return {  
		init:function()
        {  
			var jquerySelector = sandbox.getUIElementSelectorsForModule(Cobalt.Website.Results.ResultsApplication.Modules.ResultListItemModule); 
			for (var i=0; i<jquerySelector.length; ++i)   
			{ 
				sandbox.dom(jquerySelector[i]).listenLive("click", handleResultListItemOnclick);
			}
        },
        destroy:function()
        {
            //TODO: handle destroy
        }
    };
	
};
