var saisieLoad = true;

function initTextField()
{
	if(document.getElementsByTagName && window.addEvent)
	{
		var dF = document.getElementsByTagName('input');
		var dT = document.getElementsByTagName('textarea');

		for(var i=0; i<dF.length; i++)
		{
			var tF = dF[i].type.toLowerCase();

			if(tF == 'text' || tF == 'password')
			{
				addEvent(dF[i],'focus',clearField);
			}

			if(window.canCopy && (tF == 'checkbox'))
			{
				if(window.copyField)
				{
					addEvent(dF[i],'click',copyField);
				}
			}
		}

		for(var i=0; i<dT.length; i++)
		{
			addEvent(dT[i],'focus',clearField);
		}
	}
}

function clearField()
{
	var fO = getObjectFromEvent(arguments[0]);

	if(fO.value == fO.defaultValue)
	{
		fO.value = '';
	}
}

function CopyFormField()
{
	this._form = null;
	this._pairs = new Array();

	var fO = getObjectFromEvent(arguments[0]);

	if(fO.form)
	{
		this._form = fO.form;
	}

	this.addPair = function(pO)
	{
		if((this._form != null) && (pO instanceof CopyPair))
		{
			var inO = pO.getInput();

			if(this._form.elements[inO])
			{
				var elT;

				if((this._form.elements[inO].length != 'undefined') && (this._form.elements[inO].length > 0) && !this._form.elements[inO].options)
				{
					elT = this._form.elements[inO][0].type;
				}
				else
				{
					elT = this._form.elements[inO].type;
				}

				pO.setType(elT);
			}

			this._pairs[this._pairs.length] = pO;
		}
	}

	this.copyFieldValue = function()
	{
		if(this._form != null)
		{
			for(var i=0; i<this._pairs.length; i++)
			{
				var currentPair = this._pairs[i];

				if((currentPair.getType() == 'text') && this._form.elements[currentPair.getOutput()] && this._form.elements[currentPair.getInput()])
				{
					this._form.elements[currentPair.getOutput()].value = this._form.elements[currentPair.getInput()].value;
				}

				if((currentPair.getType() == 'radio'))
				{
					var outR = this._form.elements[currentPair.getOutput()];
					var inR = this._form.elements[currentPair.getInput()];

					if((inR.length > 0) && (outR.length > 0))
					{
						var inVal = null;

						for(var j=0; j<inR.length; j++)
						{
							if(inR[j].checked)
							{
								inVal = inR[j].value;
								break;
							}
						}

						if(inVal != null)
						{
							for(var k=0; k<outR.length; k++)
							{
								if(outR[k].value == inVal)
								{
									outR[k].checked = true;
								}
							}
						}
					}
				}

				if((currentPair.getType() == 'select-one') || (currentPair.getType() == 'select-multiple'))
				{
					var ind = new Array();

					if(currentPair.getType() == 'select-one')
					{
						ind[ind.length] = this._form.elements[currentPair.getInput()].selectedIndex;
					}
					else if(currentPair.getType() == 'select-multiple')
					{
						var inS = this._form.elements[currentPair.getInput()];

						for(var j=0; j<inS.options.length; j++)
						{
							if(inS.options[j].selected == true)
							{
								ind[ind.length] = j;
							}
						}
					}

					var outS = this._form.elements[currentPair.getOutput()];

					for(var k=0; k<ind.length; k++)
					{
						var inVal = this._form.elements[currentPair.getInput()].options[ind[k]].value;

						for(var j=0; j<outS.options.length; j++)
						{
							if(outS.options[j].value == inVal)
							{
								outS.options[j].selected = true;
								break;
							}
						}
					}
				}
			}
		}
	}
}

function CopyPair(inF,outF)
{
	this._in = inF;
	this._out = outF;
	this._type = 'text';

	this.getInput = function()
	{
		return this._in;
	}

	this.getOutput = function()
	{
		return this._out;
	}

	this.setType = function(tI)
	{
		this._type = tI.toLowerCase();
	}

	this.getType = function()
	{
		return this._type;
	}
}

