﻿var g_Editable_ClickedTag;
function G_Editable_EditProp(o)
{
	event.returnValue=false;
	event.cancelBubble=true;

	if (o.tagName == "A")
	{
		var xml		= document.all("ContextMenus_Xml").XMLDocument.documentElement;
		var xNode	= xml.selectSingleNode("//ContextMenus/Caller[@ref='CustomizeHyperlink']");

		g_Editable_ClickedTag = o;
		
		try
		{
			xNode.selectSingleNode("Item[@guid='EditText']").setAttribute("disabled",	"n");
			xNode.selectSingleNode("Item[@guid='EditURL']").setAttribute("disabled",	"n");

			//...set references to Popup objects
			try{ o._Popup.hide();}catch(e){} 
			o._Popup = window.createPopup();
			o._RootPopup = o._Popup;
			o._path = '';
			
			eval("Menu_ShowContextMenu(0, 19, xml, xNode, o, 'G_Editable_ContextMenuSelected');");
		}
		catch(e)
		{
	alert(e.message);
		}
	}
	else if (o.tagName == "SPAN"){	G_Editable_DoEdit(o,"text");	}
	else if (o.tagName == "IMG"){	G_Editable_DoEdit(o,"image");	}
	return false;
}
//--------------------------------------------------
function G_Editable_ContextMenuSelected(cmd)
{
	var o = g_Editable_ClickedTag;
	
	if		(cmd=="EditText")	G_Editable_DoEdit(o,"text");
	else if (cmd=="EditURL")	G_Editable_DoEdit(o,"url");
}
//--------------------------------------------------
function G_Editable_DoEdit(o,propName)
{
	var args		= new Function();
	args.token		= o.c_Editable_token;
	args.controlID	= o.c_Editable_clientID;
	var ok = false;
	var parEnd = "center:yes; edge:raised; resizable:no; scroll:no; status:no;";
	var params1 = "dialogWidth:650px; dialogHeight:450px; " + parEnd;
	var params2 = "dialogWidth:650px; dialogHeight:500px; " + parEnd;
	var params3 = "dialogWidth:700px; dialogHeight:600px; " + parEnd;

	try{o.runtimeStyle.backgroundColor = 'yellow';}catch(e){}
	if		(propName == "text"){	args.text = o.innerHTML;	ok = window.showModalDialog("/Panels/CustomizeText/default.htm", args, params1);	}
	else if (propName == "url"){	args.url = o.c_url;			ok = window.showModalDialog("/Panels/CustomizeURL/default.htm",  args, params2);	}
	else if (propName == "image"){	args.url = o.c_url;			ok = window.showModalDialog("/Panels/CustomizeImage/default.htm",args, params3);	}
	
	if (ok)
	{
		try
		{
			C_GLOBALBARIABLES.CommandName.value		= "Refresh";
			C_GLOBALBARIABLES.CommandArgument.value	= "";
			eval(C_GLOBALBARIABLES.CommandLinkButton.href);
			//C_GLOBALBARIABLES.CommandLinkButton.click();
		}catch(e){}
	}
	try{o.runtimeStyle.backgroundColor = '';}catch(e){}
}
//--------------------------------------------------
function G_Editable_EditIt(o,ctrlType)
{
	var args		= new Function();
	args.token		= "";
	args.controlID	= o.id;
	args.isBound = "n";
	var ok = false;
	var parEnd = "center:yes; edge:raised; resizable:no; scroll:no; status:no;";
	var params1 = "dialogWidth:785px; dialogHeight:450px; " + parEnd;
	var params2 = "dialogWidth:650px; dialogHeight:500px; " + parEnd;
	var params3 = "dialogWidth:700px; dialogHeight:600px; " + parEnd;

	var doHighlight = false;
	try{
		doHighlight = o.style.backgroundColor!=null && o.style.backgroundColor!="";
		if (doHighlight)
		{
			o.setAttribute("s_backgroundColor", o.style.backgroundColor);
			o.style.backgroundColor = 'yellow';
		}
	}catch(e){}
	
	if		(ctrlType == "text"){	args.text = o.innerHTML;	ok = window.showModalDialog("/Panels/CustomizeText/default.htm", args, params1);	}
	else if (ctrlType == "url"){	args.url = o.c_url;			ok = window.showModalDialog("/Panels/CustomizeURL/default.htm",  args, params2);	}
	else if (ctrlType == "image"){	args.url = o.c_url;			ok = window.showModalDialog("/Panels/CustomizeImage/default.htm",args, params3);	}
	
	try{
		if (doHighlight)
			o.style.backgroundColor = o.getAttribute("s_backgroundColor");
	}catch(e){}
	
	if (ok)
	{
		var cb = o.getAttribute("c_Editable_CallBackFunction");
		if (cb!=null && cb!="")
		{
			try{ eval(cb+"(o,args.mode,args.text);"); }catch(e){}
		}
		return args;
	}
	else
	{
		return null;
	}
}
