function taLimit()
{
	var taObj = event.srcElement;
	if (taObj.value.length == taObj.maxlength*1)
		return false;
}

function taCount(visCnt)
{
	var taObj = event.srcElement;
	if (taObj.value.length > taObj.maxlength*1)
		taObj.value = taObj.value.substring(0, taObj.maxlength*1);

	objCnt = document.getElementById(visCnt);
	if (objCnt)
	{
		taRimanenti = taObj.maxlength - taObj.value.length;
		taTotali = taObj.maxlength;
		objCnt.innerText = "(max " + taRimanenti + "/" + taTotali + " car.)";
	}
}

function setStyle(obj, namestyle, value)
{
	obj.style.setAttribute(namestyle, value);
	obj.style.setAttribute('cursor', 'help');
}

function setClass(obj, nameclass)
{
	obj.className = nameclass;
}

function formSubmit(name)
{
	document.forms[name].submit();
}

function formActionSubmit(name, action)
{
	document.forms[name].action = action;
	document.forms[name].submit();
}

function formAction(name, action)
{
	document.forms[name].action = action;
}

function setFieldAct(name, act)
{
	document.forms[name].MM_Act.value=act;
}

function chkFld(inArr, inObjForm)
{
	var strErr = "";
	var strMsg = "";

	for(var i=0; i<inArr.length; i+=3)
	{
		k = i;
		if(inArr[k+2] == "string")
			strErr += chkIfString(inObjForm.elements[inArr[k]].value, inArr[k+1]);
		else if(inArr[k+2] == "integer")
			strErr += chkIfNumber(inObjForm.elements[inArr[k]].value, inArr[k+1]);
		else if(inArr[k+2] == "date")
			strErr += chkIfDate(inObjForm.elements[inArr[k]].value, inArr[k+1]);
		else if(inArr[k+2] == "empty")
			strErr += chkIfEmpty(inObjForm.elements[inArr[k]].value, inArr[k+1]);
	}

	if(strErr != "")
	{
		strMsg += "***************** AVVISO *****************\n\n";
		strMsg += "Attenzione! L\'operazione verra\' annullata poiche\' si sono \n";
		strMsg += "verificati i seguenti errori:\n";
		strMsg += strErr;
		alert(strMsg);
		return false;
	}
	else
		return true;
}

function chkIfString(inVal, inTitle)
{
	if(inVal.Trim() == "")
		return "  - Il campo [" + inTitle + "] è obbligatorio\n";
	else if(typeof inVal != "string")
		return "  - Il campo [" + inTitle + "] non è una stringa corretta\n";
	else
		return "";
}

function chkIfNumber(inVal, inTitle)
{
	if(inVal.Trim() == "")
		return "  - Il campo [" + inTitle + "] è obbligatorio\n";
	else if(!isNumeric(inVal))
		return "  - Il campo [" + inTitle + "] non è un numero corretto\n";
	else
		return "";
}

function chkIfDate(inVal, inTitle)
{
	if(inVal.Trim() == "")
		return "  - Il campo [" + inTitle + "] è obbligatorio\n";
	else
		return "";
}

function chkIfEmpty(inVal, inTitle)
{
	if(inVal.Trim() == "")
		return "  - Il campo [" + inTitle + "] è obbligatorio\n";
	else
		return "";
}

function selectAllCheckBox(obj)
{
	for(var i=0; i<document.forms.length; i++)
	{
		if(document.forms[i].name.substr(0, 13) == "form_listmail")
		{
			document.forms[i].CheckBoxMsg.checked = obj.checked;
		}
	}
}

/**
 *
 * @access public
 * @return void
 **/
function hiddenShow(classExistent, nameObjTag, index)
{
	obj = document.getElementById(nameObjTag + "_" + index);
	arrow = document.getElementById("plusMinus" + "_" + index);


	arrTemp = document.URL.split("/");
	strUrl = "";

	for(i=0; i < arrTemp.length; i++)
	{
		if(arrTemp[i].indexOf(".php?") == -1 && arrTemp[i].indexOf("admin") == -1)
		{
			strUrl += arrTemp[i] + "/";

		}
	}

	if(obj.className.indexOf("blockHidden") != -1)
	{
		obj.className = classExistent + " blockVisible";
		arrow.src = strUrl + "images/wd_minus.jpg";
	}
	else
	{
		obj.className = classExistent + " blockHidden";
		arrow.src = strUrl + "images/wd_plus.jpg";
	}
}

function toSelect(objDestination, options) {
	var n = options.length;
	objDestination.options.length = 0;
	for (i=0; i<n-1; i++) {
		var elOptNew = document.createElement("option");
		elOptNew.text = options[i];
		elOptNew.value = options[i];
		try
		{
			objDestination.add(elOptNew, null); // standards compliant; doesn't work in IE
		}
		catch(ex)
		{
			objDestination.add(elOptNew); // IE only
		}
	}
}

function getSecond(objMain, objSecond) {
	var url = 'sublist.php';
	var myAjax = new Ajax.Request
	(
	    url,
	    {
	    method: "post",
	    parameters : "dir=" + objMain.value,
	    onSuccess: function transResult(response) {
            // split the response text on the delimiter to create an array
            options = response.responseText.split("|;*");
            toSelect(objSecond, options);
	    	},
	    onFailure: function transResult(response) {
	    	alert ('Failure' + response.responseText);
	    	}
	    }
	);
	return false;
}
/**
 *
 * @access public
 * @return void
 **/
function loadImage(objSource, objSourceFolder, objDestination, objPath)
{
	strImage = objSource.options[objSource.selectedIndex].value;
	strPath = objSourceFolder.options[objSourceFolder.selectedIndex].value;
	objDestination.src = objPath + "/" + strPath + "/" + strImage;
}

function isNumeric(sText)
{
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;

	for (var i = 0; i < sText.length && IsNumber == true; i++)
	{
		Char = sText.charAt(i);
		if (ValidChars.indexOf(Char) == -1)
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}


function Trim() {
	return this.replace(/\s+$|^\s+/g,"");
}

function LTrim() {
	return this.replace(/^\s+/,"");
}

function RTrim() {
	return this.replace(/\s+$/,"");
}
String.prototype.Trim=Trim;
String.prototype.RTrim=RTrim;
String.prototype.LTrim=LTrim;

