FSite2.fakeSubmitForm = function ()
{
	var elements;
	var i;
	elements=this.getElementsByTagName('input');
	for (i=0;i<elements.length;i++)
	{
		if (elements[i].onsubmit && (typeof(elements[i].onsubmit)=='function'))
			elements[i].onsubmit();
	}
	elements=this.getElementsByTagName('textarea');
	for (i=0;i<elements.length;i++)
	{
		if (elements[i].onsubmit && (typeof(elements[i].onsubmit)=='function'))
			elements[i].onsubmit();
	}
}

FSite2.fakeUnSubmitForm = function ()
{
	var elements;
	var i;
	elements=this.getElementsByTagName('input');
	for (i=0;i<elements.length;i++)
	{
		if (elements[i]._fakeValue && elements[i].onblur && (typeof(elements[i].onblur)=='function'))
			elements[i].onblur();
	}
	elements=this.getElementsByTagName('textarea');
	for (i=0;i<elements.length;i++)
	{
		if (elements[i]._fakeValue && elements[i].onblur && (typeof(elements[i].onblur)=='function'))
			elements[i].onblur();
	}
}

FSite2.fakeExtendElement = function (element, params)
{
	if (element._fakeValue)
		return;
	if (typeof params == 'object')
	{
		if (element.name && params.fakeParams && params.fakeParams[element.name])
			var fakeValue = params.fakeParams[element.name];
		else if (element.className && params.fakeClasses)
		{
			for (var fakeClass in params.fakeClasses)
			{
				if (FSite2.hasElementClass(element, fakeClass))
				{
					var fakeValue = params.fakeClasses[fakeClass];
					break;
				}
			}
		}
	}
	else
		fakeValue = params;
	if (typeof fakeValue == 'undefined')
		return;
	element._onfocus_fake=element.onfocus;
	element._onblur_fake=element.onblur;
	element.onfocus=FSite2.fakeElementFocus;
	element.onblur=FSite2.fakeElementBlur;
	element.onsubmit=FSite2.fakeElementSubmit;
	element._fakeValue=fakeValue
	if (!element.value || (element.value==''))
		element.value=fakeValue;
	
	if (element.form && !element.form.fakeSubmitForm)
	{
		element.form.fakeSubmitForm=FSite2.fakeSubmitForm;
		if (element.form.onsubmit && (typeof(element.form.onsubmit)=='function'))
			element.form._onsubmit_fake=element.form.onsubmit;
		
		element.form.onsubmit=function(ev)
		{
			if (!ev) ev = window.event;
			this.fakeSubmitForm();
			if (this._onsubmit_fake)
			{
				if (!this._onsubmit_fake(ev))
					return false;
			}
			return true;
		}
	}
	
	if (element.form && !element.form.fakeUnSubmitForm)
		element.form.fakeUnSubmitForm=FSite2.fakeUnSubmitForm;
}

FSite2.fakeElementFocus = function (ev)
{
	if (!ev) ev = window.event;
	if (this.value == this._fakeValue)
		this.value = '';
	if (this._onfocus_fake) this._onfocus_fake(ev);
}

FSite2.fakeElementBlur = function (ev)
{
	if (!ev) ev = window.event;
	if (!this.value || (this.value == ''))
		this.value = this._fakeValue;
	if (this._onblur_fake) this._onblur_fake(ev);
}

FSite2.fakeElementSubmit = function ()
{
	if (this.value == this._fakeValue)
		this.value = '';
}

