// ===========
// Multi-field
// ===========

function copyDates(theStub)
{
	if (theStub!='end') return;

	var i,j,theForm,theElement,v;
	for (i=0;i<document.forms.length;i++)
	{
		theForm=document.forms[i];
		for (j=0;j<theForm.elements.length;j++)
		{
			theElement=theForm.elements[j];
			if (theElement.name.substring(0,6)=='start_')
			{
				v=theElement.value;
				if (theElement.name=='start_hour')
				{
					if (v!=24) v++;
				}
				theForm.elements[theElement.name.replace(/start\_/gi,'end_')].value=v;
			}
		}
	}
}

function changeStubbed(theStub,value)
{
	var i,j,theForm,theElement;
	for (i=0;i<document.forms.length;i++)
	{
		theForm=document.forms[i];
		for (j=0;j<theForm.elements.length;j++)
		{
			theElement=theForm.elements[j];
			if (theElement.name.substring(0,theStub.length+1)==theStub+'_')
			{
				theElement.disabled=!value;
			}
		}
	}
}

function deselectAltURL(form)
{
	if (form.alt_url)
	{
		form.alt_url.value='';
	}
}

function _ensureNextField(event)
{
	if (!event) var event=window.event;
	if (!key_pressed(event,9)) ensureNextField(this);
}

function ensureNextField(thisField)
{
	var mid=thisField.name.lastIndexOf('_');
	var nameStub=thisField.name.substring(0,mid+1);

	var thisNum=thisField.name.substring(mid+1,thisField.name.length)-0;

	var nextNum=thisNum+1;
	var nextField=document.getElementById(nameStub+nextNum);
	var name=nameStub+nextNum;
	var thisId=thisField.id;
	if (!nextField)
	{
		nextNum=thisNum+1;
		thisField=document.getElementById(thisId);
		var nextFieldWrap=document.createElement('div');
		nextFieldWrap.className='constain_field';
		var nextField=document.createElement('input');
		nextField.setAttribute('size',50);
		nextField.className=thisField.className.replace(/\_required/,'');
		if (thisField.form.elements['label_for__'+nameStub+'0'])
		{
			var nextLabel=document.createElement('input');
			nextLabel.setAttribute('type','hidden');
			nextLabel.value=thisField.form.elements['label_for__'+nameStub+'0'].value+' ('+(nextNum+1)+')';
			nextLabel.name='label_for__'+nameStub+nextNum;
			nextFieldWrap.appendChild(nextLabel);
		}
		nextField.setAttribute('tabindex',thisField.getAttribute('tabindex'));
		nextField.setAttribute('id',nameStub+nextNum);
		nextField.style.width='100%';
		nextField.onkeypress=_ensureNextField;
		nextField.setAttribute('type','text');
		nextField.value='';
		nextField.name=nameStub+nextNum;
		nextFieldWrap.appendChild(nextField);
		var br=document.createElement('br');
		nextFieldWrap.appendChild(br);
		thisField.parentNode.appendChild(nextFieldWrap);
	}
}

function _ensureNextFieldUpload(event)
{
	if (!event) var event=window.event;
	if (!key_pressed(event,9)) ensureNextFieldUpload(this);
}

function ensureNextFieldUpload(thisField)
{
	var mid=thisField.name.indexOf('_');
	var nameStub=thisField.name.substring(0,mid+1);
	var thisNum=thisField.name.substring(mid+1,thisField.name.length)-0;

	var nextNum=thisNum+1;
	var nextField=document.getElementById('multi_'+nextNum);
	var name=nameStub+nextNum;
	var thisId=thisField.id;

	if (!nextField)
	{
		nextNum=thisNum+1;
		thisField=document.getElementById(thisId);
		var nextField=document.createElement('input');
		nextField.className=input_upload;
		nextField.setAttribute('id','multi_'+nextNum);
		nextField.onchange=_ensureNextFieldUpload;
		nextField.setAttribute('type','file');
		nextField.name=nameStub+nextNum;
		var br=document.createElement('br');
		thisField.parentNode.appendChild(br);
		thisField.parentNode.appendChild(nextField);
	}
}


