	  //<![CDATA[
var skinChooser = null;
var validationTools = null;
var loadingError = null;
var defaultAnimationTime = 0.333;
var defaultAnimationList = [{effect: YAHOO.widget.ContainerEffect.FADE, duration: defaultAnimationTime}, 
		           {effect: YAHOO.widget.ContainerEffect.SLIDE, duration: defaultAnimationTime}];

function showLoadingError(msg)
{
	if(!loadingError)
	{
		loadingError = new YAHOO.widget.Panel("lderr",
		{ width: "300px",
		  fixedcenter: true,
		  visible: false,
		  draggable: true,
		  close: true,
		  modal: true,
		  constraintoviewport: true,
		  effect: defaultAnimationList
  		} );
		loadingError.setHeader("Loading Error!");
		loadingError.render(document.body);
	}
	loadingError.setBody("<p>There was an error loading a component!</p><p>"+msg
		+"</p><input type='button' onclick='loadingError.hide();' value='Ok'/>");
	loadingError.show();
}

function skinChooserLoaded(response)
{
	if(response.responseText !== undefined && response.status==200)
	{
		skinChooser.setBody(response.responseText);
		skinChooser.loaded = true;
	}
	else
		showLoadingError("Could not load validation tools.");
}

function showSkinChooser()
{
	if(!skinChooser)
	{
		skinChooser = new YAHOO.widget.Panel("sd1",
		{ width: "300px",
		  fixedcenter: true,
		  visible: false,
		  draggable: true,
		  close: true,
		  modal: true,
		  constraintoviewport: true,
		  effect: defaultAnimationList
  		} );
		skinChooser.setHeader("Skin Chooser");
		skinChooser.setBody("<p>Loading please wait...</p>");
		skinChooser.render(document.body);
	}
	skinChooser.show();
	if(!skinChooser.loaded)
	{
		YAHOO.util.Connect.asyncRequest('GET', "/skins/skinchooser.xml", {success: skinChooserLoaded, faliure: function(response)
		  {
			showLoadingError("Could not load validation tools.");
		  }
		});
	}
}

function validationToolsLoaded(response)
{
	if(response.responseText !== undefined && response.status==200)
	{
		validationTools.setBody(response.responseText);
		validationTools.loaded = true;
	}
	else
		showLoadingError("Could not load validation tools.");
}

function showValidationTools()
{
	if(!validationTools)
	{
		validationTools = new YAHOO.widget.Panel("vldtls",
		{ width: "300px",
		  fixedcenter: true,
		  visible: false,
		  draggable: true,
		  close: true,
		  modal: true,
		  constraintoviewport: true,
		  effect: defaultAnimationList
		} );
		validationTools.setHeader("Validations");
		validationTools.setBody("<p>Loading...</p>");
		validationTools.render(document.body);
	}
	validationTools.show();
	if(!validationTools.loaded)
	{
		YAHOO.util.Connect.asyncRequest('GET', "/validations.xml", {success: validationToolsLoaded, faliure: function(response)
		{
			showLoadingError("Could not load validation tools.");
		}
		});
	}
}

function setAlert() {
 if(!window.alert_)
 {
  window.alert_ = window.alert;
  var alertDiv = document.createElement("div");
  document.body.appendChild(alertDiv);
  var alertPanel = new YAHOO.widget.Panel(alertDiv, {width: "auto", fixedcenter: true, visible: false, 
  draggable: true, close: true, modal: true, constraintoviewport: true, effect: defaultAnimationList } );
  alertPanel.render(document.body);
  window.alert = function(msg, title)
  {
    try
    {
      var msg_ = msg.replace(/</g, "&lt;");
      msg_ = msg_.replace(/>/g, "&gt;");
      msg_ = msg_.replace(/&/g, "&amp;");
      if(title)
      {
       var title_ = title.replace(/</g, "&lt;");
       title_ = title_.replace(/>/g, "&gt;");
       title_ = title_.replace(/&/g, "&amp;");
       alertPanel.setHeader(title_);
      }
      else
       alertPanel.setHeader("Javascript Alert");
      alertPanel.setBody(msg);
      alertPanel.show();
    }
    catch(e)
    {
      window.alert_(msg);
    }
  }  
 }

}


	  // ]]>
