var g_currentId = 0;
var g_idName    = "";
var g_getResourcesScript  = "";
var g_getResourcesRequest = null;
var g_popupResourcesBlockXOffset = 30;
var g_popupResourcesBlockYOffset = 170;

function InitResourcesPopupBlock(idName, getResourcesScript, xOffset)
{
	g_idName = idName;
	g_getResourcesScript = getResourcesScript;
	
	if (xOffset != undefined)
		g_popupResourcesBlockXOffset = xOffset;
}

function OpenPopupResourcesBlock(id, title, event)
{
	g_currentId = id;

	var y = GetMouseOnEventYPosition(event);
	var x = GetMouseOnEventXPosition(event);
		
	var resourcesForm = GetElement("popupResourcesBlockForm");
	resourcesForm.style.top  = (y - g_popupResourcesBlockYOffset) + "px";
	resourcesForm.style.left = (x + g_popupResourcesBlockXOffset) + "px";

	GetElement("popupResourcesBlockTitle").innerHTML = title;
		
	SetVisibility("pageNavigatorContainer", false);
	CreateFullPageNavigator("fullPageNavigatorContainer", "fullPageNavigator", 1, UpdatePopupResourcesBlock);
	SetFullPageNavigatorCustomSettings("fullPageNavigator", true, true, true, true, true);
	SetFullPageNavigatorCountVisiblePages("fullPageNavigator", 3);
	
	SetVisibility(resourcesForm, true);
	
	UpdatePopupResourcesBlock(1);

	return false;
}

function ClosePopupResourcesBlockForm()
{
	SetVisibility("popupResourcesBlockForm", false);
	g_currentId = 0;
}

function UpdatePopupResourcesBlock(page)
{
	if (g_getResourcesRequest)
	{
		AbortRequest(g_getResourcesRequest);
		g_getResourcesRequest = null;
	}
	
	GetElement("popupResourcesContainer").innerHTML = "";
	GetElement("popupResourcesBlockLoadIcon").style.visibility = "";

	UpdateFullPageNavigator("fullPageNavigator", page);

	var vars = [g_idName, "page"];
	var values = [g_currentId, page];
	
	var queryString = UriSerialize(vars, values);
	g_getResourcesRequest = ajaxpage(g_getResourcesScript, OnLoadPopupResources, queryString);
}

function OnLoadPopupResources(response)
{
	g_getResourcesRequest = null;

	GetElement("popupResourcesBlockLoadIcon").style.visibility = "hidden";

	var result = ParseQueryString(response);
	var countResources = parseInt(GetQueryStringParam(result, "count_all_resources"));
	
	var countPages = Math.ceil(countResources / 8);
	SetFullPageNavigatorCountPages("fullPageNavigator", countPages);
	
	if (countPages > 1)
		GetElement("pageNavigatorContainer").style.display = "";
		
	BuildResourcesList("popupResourcesContainer", result, 4);
}
