function DFtextareaMaxLength(f,length){
	if(f.value.length>=length)  return false;
}

function SelectItem(queryString)
{
	url = document.getElementById('selectedItem').src;
	
	if (url.indexOf("pass") != -1)
	{
		document.getElementById('selectedItem').src = 'IframeItem_pass.aspx'+ queryString;
	}
	else
	{
		document.getElementById('selectedItem').src = 'IframeItem.aspx'+ queryString;
	}
}

function SelectCompositeItem(compositeItemID)
{
	SelectItem('?ic=' + compositeItemID);
}

function SelectImageItem(ImageItemID)
{
	SelectItem('?ii=' + ImageItemID + '&iPI=false');
}

function SelectTextItem(TextItemID)
{
	SelectItem('?it=' + TextItemID  + '&iPT=false');
}

function SelectAudioItem(AudioItemID)
{
	SelectItem('?ia=' + AudioItemID + '&iPA=false');
}

// Script Tab automatico para formularios//
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) {
	var keyCode = (isNN) ? e.which : e.keyCode; 
	var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
	if(input.value.length >= len && !containsElement(filter,keyCode)) {
		input.value = input.value.slice(0, len);
		input.form[(getIndex(input)+1) % input.form.length].focus();
	}
	function containsElement(arr, ele) {
		var found = false, index = 0;
		while(!found && index < arr.length)
		if(arr[index] == ele)
			found = true;
		else
			index++; 
		return found;
	}
	function getIndex(input) {
		var index = -1, i = 0, found = false;
		while (i < input.form.length && index == -1)
		if (input.form[i] == input)index = i;
		else i++;
		return index;
	}
		return true;
}

//Open POPUP de Preview
function openPreview(idt,idf,id) { //v2.0
  window.open('../flash/popup_tocando.swf?idt=' + idt + '&idf=' + idf + '&id=' + id + '&ext=swf','tocando','width=180,height=220');
}

//localiza objetos em formulários...
function FindObject( objectName, doc )
{ //v4.01
  var p;
  var object;  
	if(!doc)
	{
		doc = document; 
	}
	if( ((p = objectName.indexOf("?")) > 0) && (parent.frames.length) ) 
	{
    doc = parent.frames[objectName.substring(p+1)].document;
		objectName = objectName.substring(0,p);
	}
  if( !(object = doc[objectName]) && (doc.all) )
	{ 
		object = doc.all[objectName];
	} 
	for( var i=0; !object&&i<doc.forms.length; i++ )
	{
		object = doc.forms[i][objectName];
	}
  for( var i=0; !object&&doc.layers&&i<doc.layers.length; i++ )
	{
		object = FindObject(objectName ,doc.layers[i].document);
	}
  if( !object && doc.getElementById )
	{
		object=doc.getElementById(objectName);
	}
	return object;
}


//Valida formulários...
function ValidateForm() 
{ //v4.0

  var errorMessage = '';
  var args = ValidateForm.arguments;

  for( var i=0; i<(args.length-2); i+=3 ) 
	{ 
		var field = FindObject(args[i]);
		var condition  = args[i+2]; 

    if( field ) 
		{ 
			var fieldName  = args[i+1]; 
			var fieldValue = field.value;
	
			if( fieldName == '' )
			{
				fieldName = field.name;
			}

			if( fieldValue != '' ) 
			{
      			if( condition.indexOf('isNumber') != -1 ) 
						{ 
							var phoneNumberReg = '[7-9][0-9]{7}';
							var regex = new RegExp(phoneNumberReg);
							
        			if( !regex.test(fieldValue) ) 
							{
								errorMessage += '- \"'+ fieldName +'\" não contém um número válido.\n';
							}
      			} 
				else if( condition != 'R' ) 
				{ 
        			if( isNaN(fieldValue) ) 
					{
						errorMessage += '- \"'+ fieldName +'\" deve conter apenas números.\n';
					}
        			if( condition.indexOf('inRange') != -1 ) 
					{ 
						var number = parseFloat(fieldValue);
						var p = condition.indexOf(':');
						var minimum = condition.substring(8,p);
						var maximum = condition.substring(p+1);
          				if( (number < minimum) || (maximum < number) )
						{
							errorMessage += '- \"'+ fieldName +'\" deve conter um número entre '+ minimum +' e '+ maximum +'.\n';
						}
					} 
				} 
			} 
			else if( condition.charAt(0) == 'R' )
			{
				errorMessage += '- \"'+ fieldName +'\" é obrigatório.\n';
			}
		}
  } 
	if (errorMessage)
	{
		alert("Encontrado(s) o(s) seguinte(s) erro(s):\n"+ errorMessage);
	}
  document.ValidateFormValue = (errorMessage == '');
}