// Variables
__siteadmin_cmsAdminMode = true;

var __siteadmin_cmsMessages = null;
var __siteadmin_cmsMessagesCount = 0;
var __siteadmin_cmsShowingMessages = 0;

var tDisable = null;
var __siteadmin_cmsDisableHighlighting = false;

// ControlPanel
function ToggleControlPanel(sID)
{
	var oCtl = GetByID(sID);
	if (oCtl != null)
	{
		if (oCtl.style.display == 'none')
		{
			oCtl.style.display = '';
			SetCookie('HideControlPanel', 'false', 24 * 30, '/');
		}
		else
		{
			oCtl.style.display = 'none';
			SetCookie('HideControlPanel', 'true', 24 * 30, '/');
		}
	}
}

// Messages
function AddMessage(sID, sID2)
{
	if (__siteadmin_cmsMessages == null)
		__siteadmin_cmsMessages = new Array();

	var oCtl = GetByID(sID);
	if (oCtl != null)
	{
		__siteadmin_cmsMessages[__siteadmin_cmsMessagesCount] = oCtl;

		oCtl.iIndex = __siteadmin_cmsMessagesCount;
		oCtl.tShow = null;
		oCtl.tHighlight = null;

		var oCtl2 = GetByID(sID2);
		oCtl.oCtl = oCtl2;
		oCtl.tBlink = null;
		oCtl.colorbak = null;

		//oCtl.onmouseover = function () { HighlightMessage(this.iIndex); }
		//oCtl.onmouseout = function () { BlurMessage(this.iIndex); }
		oCtl.onclick = function () { CloseMessage(this.iIndex); }

		ShowMessage(__siteadmin_cmsMessagesCount);

		__siteadmin_cmsMessagesCount++;
	}
}

function BlinkControl(iIndex, iCurrent, iFirst, iLast, iStep, iDir, iTimeout)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		oCtl2 = oCtl.oCtl;
		if (oCtl2 != null)
		{
			oCtl2.style.filter = 'alpha(opacity = ' + iCurrent + ')';

			if (iDir == 1 && iCurrent >= iLast)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + (iCurrent - iStep) + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 0, ' + iTimeout + ')', iTimeout);
			}
			else if (iDir == 1 && iCurrent < iLast - iStep)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + (iCurrent + iStep) + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 1, ' + iTimeout + ')', iTimeout);
			}
			else if (iDir == 1 && iCurrent < iLast)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + iLast + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 1, ' + iTimeout + ')', iTimeout);
			}

			else if (iDir == 0 && iCurrent <= iFirst)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + (iCurrent + iStep) + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 1, ' + iTimeout + ')', iTimeout);
			}
			else if (iDir == 0 && iCurrent > iFirst + iStep)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + (iCurrent - iStep) + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 0, ' + iTimeout + ')', iTimeout);
			}
			else if (iDir == 0 && iCurrent > iFirst)
			{
				oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', ' + iFirst + ', ' + iFirst + ', ' + iLast + ', ' + iStep + ', 0, ' + iTimeout + ')', iTimeout);
			}
		}
	}
}

function HighlightMessage(iIndex)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		if (oCtl.tHighlight != null)
		{
			window.clearTimeout(oCtl.tHighlight);
			oCtl.tHighlight = null;
		}

		var iCur = oCtl.style.filter.substring(16, oCtl.style.filter.length - 1);

		oCtl.tHighlight = window.setTimeout('HighlightMessageTimer(' + iIndex + ', ' + iCur + ', 100, 10, 1)', 1);

		if (oCtl.oCtl != null)
		{
			if (!__siteadmin_cmsDisableHighlighting)
			{
				if (oCtl.colorbak == null)
				{
					oCtl.colorbak = oCtl.oCtl.style.color;
					oCtl.oCtl.style.color = '#ff0000';
				}

				if (oCtl.oCtl.focus)
					oCtl.oCtl.focus();

				if (oCtl.tBlink == null)
					oCtl.tBlink = window.setTimeout('BlinkControl(' + iIndex + ', 100, 0, 100, 20, 0, 1)', 1);
			}
		}
	}
}

function HighlightMessageTimer(iIndex, iCurrent, iLast, iStep, iTimeout)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		oCtl.style.filter = 'alpha(opacity = ' + iCurrent + ')';

		if (iCurrent < iLast - iStep)
			oCtl.tHighlight = window.setTimeout('HighlightMessageTimer(' + iIndex + ', ' + (iCurrent + iStep) + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else if (iCurrent < iLast)
			oCtl.tHighlight = window.setTimeout('HighlightMessageTimer(' + iIndex + ', ' + iLast + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
	}
}

function BlurMessage(iIndex)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		if (oCtl.tHighlight != null)
		{
			window.clearTimeout(oCtl.tHighlight);
			oCtl.tHighlight = null;
		}

		if (oCtl.tBlink != null)
		{
			window.clearTimeout(oCtl.tBlink);
			oCtl.tBlink = null;
		}

		if (oCtl.oCtl != null)
		{
			oCtl.oCtl.style.filter = 'alpha(opacity = 100)';

			if (oCtl.colorbak != null)
			{
				oCtl.oCtl.style.color = oCtl.colorbak;
				oCtl.colorbak = null;
			}
		}

		var iCur = oCtl.style.filter.substring(16, oCtl.style.filter.length - 1);

		oCtl.tHighlight = window.setTimeout('BlurMessageTimer(' + iIndex + ', ' + iCur + ', 75, 10, 1)', 1);
	}
}

function BlurMessageTimer(iIndex, iCurrent, iLast, iStep, iTimeout)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		oCtl.style.filter = 'alpha(opacity = ' + iCurrent + ')';

		if (iCurrent > iLast + iStep)
			oCtl.tHighlight = window.setTimeout('BlurMessageTimer(' + iIndex + ', ' + (iCurrent - iStep) + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else if (iCurrent > iLast)
			oCtl.tHighlight = window.setTimeout('BlurMessageTimer(' + iIndex + ', ' + iLast + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
	}
}

function ShowMessage(iIndex)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		//oCtl.onmouseoverbak = oCtl.onmouseover;
		//oCtl.onmouseover = null;
		//oCtl.onmouseoutbak = oCtl.onmouseout;
		//oCtl.onmouseout = null;

		oCtl.style.left = 20;
		//oCtl.style.filter = 'alpha(opacity = 25)';
		oCtl.style.display = '';

		var iWidth = ElementWidth(oCtl);
		oCtl.style.left = 0 - iWidth;

		__siteadmin_cmsShowingMessages++;
		oCtl.tShow = window.setTimeout('ShowMessageTimer(' + iIndex + ', ' + (0 - iWidth) + ', 1, 20, 1)', 200 * __siteadmin_cmsShowingMessages);
	}
}

function ShowMessageTimer(iIndex, iCurrent, iLast, iStep, iTimeout)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		oCtl.style.left = iCurrent;

		if (iCurrent < iLast - iStep)
			oCtl.tShow = window.setTimeout('ShowMessageTimer(' + iIndex + ', ' + (iCurrent + iStep) + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else if (iCurrent < iLast)
			oCtl.tShow = window.setTimeout('ShowMessageTimer(' + iIndex + ', ' + iLast + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else
		{
			//oCtl.onmouseover = oCtl.onmouseoverbak;
			//oCtl.onmouseout = oCtl.onmouseoutbak;

			oCtl.tShow = null;

			__siteadmin_cmsShowingMessages--;
		}
	}
}

function CloseMessage(iIndex)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		if (oCtl.tShow != null)
		{
			window.clearTimeout(oCtl.tShow);
			oCtl.tShow = null;

			__siteadmin_cmsShowingMessages--;
		}

		if (oCtl.tHighlight != null)
		{
			window.clearTimeout(oCtl.tHighlight);
			oCtl.tHighlight = null;
		}

		if (oCtl.tBlink != null)
		{
			window.clearTimeout(oCtl.tBlink);
			oCtl.tBlink = null;
		}

		if (oCtl.oCtl != null)
		{
			oCtl.oCtl.style.filter = 'alpha(opacity = 100)';

			if (oCtl.colorbak != null)
			{
				oCtl.oCtl.style.color = oCtl.colorbak;
				oCtl.colorbak = null;
			}

			if (oCtl.oCtl.focus)
				oCtl.oCtl.focus();

			if (oCtl.oCtl.select)
				oCtl.oCtl.select();
		}

		//oCtl.onmouseover = null;
		//oCtl.onmouseout = null;
		oCtl.onclick = null;

		if (tDisable != null)
		{
			window.clearTimeout(tDisable);
			tDisable = null;
		}

		__siteadmin_cmsDisableHighlighting = true;
		tDisable = window.setTimeout('__siteadmin_cmsDisableHighlighting = false; tDisable = null', 2000);

		var iWidth = ElementWidth(oCtl);
		var iLeft = oCtl.style.left.substring(0, oCtl.style.left.length - 2);

		window.setTimeout('CloseMessageTimer(' + iIndex + ', ' + iLeft + ', ' + (0 - iWidth) + ', 20, 1)', 1);
	}
}

function CloseMessageTimer(iIndex, iCurrent, iLast, iStep, iTimeout)
{
	oCtl = __siteadmin_cmsMessages[iIndex];
	if (oCtl != null)
	{
		oCtl.style.left = iCurrent;

		if (iCurrent > iLast + iStep)
			window.setTimeout('CloseMessageTimer(' + iIndex + ', ' + (iCurrent - iStep) + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else if (iCurrent > iLast)
			window.setTimeout('CloseMessageTimer(' + iIndex + ', ' + iLast + ', ' + iLast + ', ' + iStep + ', ' + iTimeout + ')', iTimeout);
		else
		{
			oCtl.style.display = 'none';
			__siteadmin_cmsMessages[iIndex] = null;
			RefreshMessages();
		}
	}
}

function RefreshMessages()
{
	if (__siteadmin_cmsMessages != null)
	{
		var oCtl;
		var iTop = GetBodyScrollTop() + 130;

		for (var i = 0; i < __siteadmin_cmsMessages.length; i++)
		{
			oCtl = __siteadmin_cmsMessages[i];
			if (oCtl != null)
			{
				oCtl.style.top = iTop;
				iTop += ElementHeight(oCtl) + 1;
			}
		}
	}
}

// Show/Hide block
function ShowBlock(block)
{
	block.style.borderColor = "red";
}

function HideBlock(block)
{
	block.style.borderColor = "white";
}
