<!--
/*
Istruzioni:

-aggiungere i seguenti eventi:
	(textarea)  onBlur=verifyLen() onChange=verifyLen() onFocus=initCheck(msgField,countField,maxValue) 
       (contatore)  onChange=verifyLen() 
       
*/

maxNumber = 500;


messageField = null;
counterField = null;
	

function SetMaxCharNum(value)
{
	maxNumber = value;
	counterField.value = maxNumber;
}

function byVal(val, obj)        
{
  var i = 0;
  while(i<obj.length)
  {
		var tmp = obj.options[i].value;
		if (tmp == val)
				{
				obj.options[i].selected = true;
				return;
				}
		i++;
  }
}

function findPlusChar(field)
{
	var s = field;
	var j = 0;

	   while ( ( s.indexOf( "+" ) != -1 ) && ( j < 160 ) ){
				s = s.replace( "+" , " " );
				j++;
				}
	   j=0;
	   while ( ( s.indexOf( "°" ) != -1 ) && ( j < 160 ) ) {
				s = s.replace( "°" , "+" );
				j++;
				}
	 return s;
}

function getParm(string,parm)
{
  var startPos = string.indexOf(parm + "=");
  if (startPos >-1){
	startPos=startPos + parm.length + 1;
	var endPos = string.indexOf("&",startPos);
	if (endPos == -1) {
	  endPos = string.length;
	  }

	return unescape(string.substring(startPos,endPos));

	}
  return 0;
}
		  
function startTimer()
{
	running = true
	now = new Date()
	now = now.getTime()
	endTime = now + (1000 * 0.1 * 1)
	showCountDown()
}

function isIE5()
{
	// ...MSIE 5.5;...
	var version = navigator.appVersion;
	var pos = version.indexOf("MSIE ");
	
	// Non e' MSIE!
	if(pos == -1)
		return false;

	version = version.substr(pos+5);
	pos = version.indexOf(";");
	
	// Non ha versione!
	if(pos == -1)
		return false;

	version = version.substr(0, pos);
	version = parseFloat(version);
	
	return version >= 5;
}		

function showCountDown()
{
	var now = new Date()
	now = now.getTime()
	if (endTime - now <= 0)
	{
		if (!isIE5())
		{
			counterField.focus()
			messageField.focus()
		}
		
		initCheck(messageField,counterField,maxNumber);
	}
	else
	{
		var delta = new Date(endTime - now)
		var theMin = delta.getMinutes()
		var theSec = delta.getSeconds()
		var theTime = theMin
		theTime += ((theSec < 10) ? ":0" : ":") + theSec
		if (running)
		{
			timerID = setTimeout("showCountDown()",1000)
		}
	}
}

function stopTimer()
{
 clearTimeout(timerID)
 running = false
}

function initCheck(msgField,countField,maxValue)
{

	setFields(msgField,countField);
	SetMaxCharNum(maxValue);
	
	inputStr = messageField.value;
	
	
	strlength= inputStr.length
	if (strlength > maxNumber )
	{
		messageField.value=inputStr.substring(0,maxNumber)
		charleft = 0
	}
	else
	{
		charleft = maxNumber - strlength
	}
	counterField.value=charleft
	startTimer()
}
		
function verifyLen()
{
	
	inputStr = messageField.value
	strlength= inputStr.length
	if (strlength > maxNumber )
	{
		messageField.value=inputStr.substring(0,maxNumber)
		charleft = 0
	}
	else
	{
		charleft = maxNumber - strlength
	}
	counterField.value=charleft
	stopTimer()
}


function setFields(msgField,countField)
{
	messageField = msgField;
	counterField = countField;	
}

		//-->
