// JavaScript Document

function changeHat(opt)
{
	var objImg = document.getElementById("imgHat");
	objImg.src = "images/" + opt.value.replace("_Big_", "_Small_");
}

function ismaxlength(obj){
	var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
	if (obj.getAttribute && obj.value.length>mlength)
	obj.value=obj.value.substring(0,mlength)
	var objLabel = document.getElementById(obj.name + "_lbl");
	objLabel.innerHTML = "(max " + obj.value.length + "/" + mlength + " car.)";
}

function toGetObject(obj) {
  var theObj;
  if(document.all) {
    if(typeof obj=="string") {
      return document.all(obj);
    } else {
      return obj.style;
    }
  }
  if(document.getElementById) {
    if(typeof obj=="string") {
      return document.getElementById(obj);
    } else {
      return obj.style;
    }
  }
  return null;
}

function toCount(objEn,exit,text,characters) {
  var entranceObj=objEn;
  var exitObj=toGetObject(exit);
  var length=characters - entranceObj.value.length;
  if(length <= 0) {
    length=0;
    text='<span class="disable"> '+text+' </span>';
    entranceObj.value=entranceObj.value.substr(0,characters);
  }
  exitObj.innerHTML = text.replace("{CHAR}",length);
}

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;
}

/**
 *
 * @access public
 * @return void
 **/
function confirmDelete()
{
	mm_resp = confirm("Stai per cancellare un record. La cancellazione e' immediata e irreversibile.");
	if(mm_resp)
	{
		mm_resp2 = confirm("Confermi la cancellazione?");
		if(mm_resp2)
			return true;
		else
			return false;
	}
	else
	{
		return false;
	}
}

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]);
		else if(inArr[k+2] == "tinymce") {
			var objTemp = tinyMCE.get(inArr[k]);
			strErr += chkIfEmpty(objTemp.getContent(), 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 + "] e\' obbligatorio\n";
	else if(typeof inVal != "string")
		return "  - Il campo [" + inTitle + "] non e\' una stringa corretta\n";
	else
		return "";
}

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

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

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



function isChecked(radioObj) {
	if(!radioObj)
		return false;

	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return true;
		else
			return false;

	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return true;
		}
	}
	return "";
}

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

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;
