var m_categoryOid = 0;
var m_column = -1;
var m_row = -1;
var m_layoutOid = -1;
var m_isReadOnly = false;
var m_editAction = "";

function toggleCollapse(oid, collapseButton)
{
	if (collapseButton == null)
		var collapseButton = window.event.srcElement
		
	var style = collapseButton.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.nextSibling.style;

	var stateText = document.getElementById("CollapseState");

	if (style.display == "none")
	{
		collapseButton.src = collapseButton.src.replace("Expand","Collapse");
		style.display = "inline";
		collapseState(stateText, true, oid);
	}
	else
	{
		collapseButton.src = collapseButton.src.replace("Collapse","Expand");
		style.display = "none";
		collapseState(stateText, false, oid);
	}
}

function checkCollapse(oid, collapseButton)
{
	var stateText = document.getElementById("CollapseState");
	if (stateText.value.indexOf("#"+oid+"-") >= 0 && stateText.value != "")
	{
		var s0 = stateText.value.indexOf("#"+oid+"-");
		var len = ("#"+oid+"-").length;
		var sVal = stateText.value.substr(s0 + len, 1)
		
		if (sVal == "1")
			toggleCollapse(oid, document.getElementById(collapseButton).children[0])
	}
}

function collapseState(stateText, isCollapsed, oid)
{
	if (isCollapsed)
		sVal = "0"
	else
		sVal = "1"
	
	if (stateText.value.indexOf("#"+oid+"-") >= 0 && stateText.value != "")
	{
		var s0 = stateText.value.indexOf("#"+oid+"-");
		var len = ("#"+oid+"-").length;
		stateText.value = stateText.value.substr(0,s0) + "#"+oid+"-" + sVal + stateText.value.substr(s0 + len + 1);
		//var s = stateText.value.sqlit("#"+oid+"-")
		//stateText.value = s[0] +"#"+oid+"-"+ sVal + s[1].substr(1)
	}
	else
	{
		stateText.value += "#"+oid+"-"+sVal
	}
}

function portalVisibility(visible, categoryOid, isReadonly, column, row, layoutOid, editAction)
{
	m_column = column;
	m_row = row;
	m_categoryOid = categoryOid;
	m_isReadOnly = isReadonly;
	m_layoutOid = layoutOid;
	
	if (editAction != null)
	
	if (m_isReadOnly)
		document.getElementById("PortalEditRow").style.display = "none";
	else
		document.getElementById("PortalEditRow").style.display = "inline";
		
	var portalTools = document.getElementById("PortalFunctions")
	
	if (portalTools)
	{
		if (visible)
		{
			portalTools.style.display = "inline";
			var sizeY = portalTools.offsetHeight;
			var sizeX = portalTools.offsetWidth;
			
			
			var table = window.event.srcElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
			var x = table.offsetWidth + getOffsetLeft(table);
			var y = table.offsetTop + getOffsetTop(table);
			
	//		if (y >= sizeY)
	//			y = y - sizeY;
			
			portalTools.style.pixelLeft = x - sizeX;
			portalTools.style.pixelTop = y;
		}
		else
		{
			portalTools.style.display = "none";	
		}
	}
}

function getOffsetLeft(table)
{
	var element = table;
	var offset = element.offsetLeft; 
	while ( element.offsetParent != null )
	{
		offset = offset + element.offsetParent.offsetLeft
		element = element.parentElement
	}
	
	return offset;
}

function getOffsetTop(table)
{
	var element = table;
	var offset = element.offsetTop; 
	while ( element.offsetParent != null )
	{
		offset = offset + element.offsetParent.offsetTop
		element = element.parentElement
	}
	
	return offset -6;
}

function portalRemove()
{
	href = document.location.href + getDelim() + "PortalRemove=&CatOid=" + m_categoryOid + "&LayOid=" + m_layoutOid + "&Col=" + m_column + "&Row=" + m_row;
	portalVisibility(false, 0)
	document.location = href;
}

function portalEdit()
{
	openContentEditWindow(m_categoryOid);
	portalVisibility(false, 0)
}

function portalInsert(position)
{
	href = document.location.href + getDelim() + "PortalInsert=" + position + "&CatOid=" + m_categoryOid + "&LayOid=" + m_layoutOid + "&Col=" + m_column + "&Row=" + m_row;
	document.location = href;
}

function portalMove(direction)
{
	href = document.location.href + getDelim() + "PortalMove=" + direction + "&CatOid=" + m_categoryOid + "&LayOid=" + m_layoutOid + "&Col=" + m_column + "&Row=" + m_row;
	portalVisibility(false, 0)
	document.location = href;
}

function getDelim()
{
	if (document.location.href.indexOf("?") > -1)
		return "&"
	else
		return "?"
}
