function substitueix(obj,origen,desti)
{
 nou_obj = new String;
    
    for(i=0;i<=obj.value.length;i++)
    {


	 if((obj.value.charAt(i) == origen))
	 {
	  nou_obj = nou_obj + desti; 
	 }
	 else
	 {
	  nou_obj = nou_obj + obj.value.charAt(i);
	 }


    }

obj.value=nou_obj;
}


function desformata_preu(obj)
{
 if(obj.value=="0,00")
 {
  obj.value=0;
 }

 var pos=obj.value.indexOf('.');

 var str = obj.value;

 str = str.replace('.', '');
 str = str.replace(',', '.');

 obj.value = str;
}

function roundNumber(numberField,rlength)
{
   var rnum = numberField.value;  // Field where the number appears

// rlength = 3;
// rlength = 1000;

   if(rlength==0){
	numberField.value = Math.round(numberField.value);
   }
   else{
	if(! rlength){ rlength = 3; } // The number of decimal places to round to

	if (rnum > 8191 && rnum < 10485) {
		rnum = rnum-5000;
		var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
		newnumber = newnumber+5000;
	} else {
		var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
	}
	numberField.value = newnumber;
   }

   purgacamp(numberField);
}

function formata_preu(obj)
{
if(obj.value==0)
{
obj.value="0,00";
}
	obj.value=treu_nan(obj);
	pos_decimal=te_decimals(obj);

 if(pos_decimal>0)
 {
   format_decimal_europeu(obj,pos_decimal);
 }
 else
 {
  obj.value=format_a_milers(obj.value)
 }

}

function te_decimals(obj,num_decimals)
{
var pos=obj.value.indexOf(',');
if(pos<0)
{
    pos=obj.value.length;
    obj.value=obj.value+",00";
}

if( pos > 0 )
{

 return pos;
}

return 0;
}


function format_decimal_europeu(obj,pos_decimal)
{
cap= new String();
cap = obj.value.substring(0,pos_decimal);

cua= new String();
cua = obj.value.substring(pos_decimal+1,obj.value.length);

obj.value=format_a_milers(cap)+","+cua;
}


function treu_nan(obj)
{
   var sortida="";
   var decimal=false;
   var MAXDECIMALS=5;


   if(obj.value.substring(0,1)=='0')
   {

       if(obj.value.substring(1,2)==',' && obj.value.length<=10)
       {

	   obj.value="0," + obj.value.substring(2, obj.value.length )
           MAXDECIMALS=10;

       }
       else
       {

	   for(var i = 0;obj.value.substring(i, i + 1 )=='0';)
	   {
	       obj.value=obj.value.substring(i + 1, obj.value.length )
	   }

       }

   }

   for (var i = 0; i < obj.value.length; i++)
   {
      var car = obj.value.substring(i, i + 1);

//alert(car+":"+i+":"+obj.value.length);

      if ( car < '0' || car > '9' )
      {

	  if( ( 
		      car == ',' 
		      && i > obj.value.length - MAXDECIMALS 
		      && i < obj.value.length 
	      ) 
		  && !decimal  )
	  {
	      decimal=true;
	  }
	  else
	  {
	      car="";
	  }
      }

      sortida = sortida + car;
   }
   return(sortida);
}

function CreaArray(n)
{
        this.lenght = n;
        for (var i=1;i<=n;i++)
        {
                this[i] = null;
        }
        return this;
}


function format_a_milers(Cadena)
{   var i;
    var j;
    var k;
    var ArrayDeCadenas = new CreaArray(10);
        Cadena = "" + Cadena ;
        if (Cadena.length <= 3)
                return Cadena;
        else
        {
    for (j=1,i=Cadena.length - 3;
         i > 0;
         i-=3, j++)
    {
    if (Cadena.substr(i,3) != null)
        {
        ArrayDeCadenas[j] = Cadena.substr(i, 3);
    k = i;
        }
    }
    if (i<=0)
        {
                j++;
                ArrayDeCadenas[j]=Cadena.substring(0,k);
        }
    for (Cadena = "" ; j >= 1 ; j--)
    {
        if (j==1) Cadena += ArrayDeCadenas[j];
        else
        {
                        if (ArrayDeCadenas[j] == null)
                        Cadena+="";
                        else
                        {
                    Cadena+=ArrayDeCadenas[j];
                Cadena+=".";
                        }
        }
        }
    return Cadena;
        }
}

/*funcio per fer un replace */
function replaceSubstring(inputString, fromString, toString) {

   var temp = inputString;
   if (fromString == "") {
      return inputString;
   }
   if (toString.indexOf(fromString) == -1) {
      while (temp.indexOf(fromString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(fromString));
         var toTheRight = temp.substring(temp.indexOf(fromString)+fromString.length, temp.length);
         temp = toTheLeft + toString + toTheRight;
      }
   } else {
      var midStrings = new Array("~", "`", "_", "^", "#");
      var midStringLen = 1;
      var midString = "";
      while (midString == "") {
         for (var i=0; i < midStrings.length; i++) {
            var tempMidString = "";
            for (var j=0; j < midStringLen; j++) { tempMidString += midStrings[i]; }
            if (fromString.indexOf(tempMidString) == -1) {
               midString = tempMidString;
               i = midStrings.length + 1;
            }
         }
      }
     
      while (temp.indexOf(fromString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(fromString));
         var toTheRight = temp.substring(temp.indexOf(fromString)+fromString.length, temp.length);
         temp = toTheLeft + midString + toTheRight;
      }
         while (temp.indexOf(midString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(midString));
         var toTheRight = temp.substring(temp.indexOf(midString)+midString.length, temp.length);
         temp = toTheLeft + toString + toTheRight;
      }
   } 
   return temp; 
} 



function canviar_select(cbList,name) 
{

  for (var i=0; i<cbList.length; i++) 
  {
  if (cbList[i].name==name)
  	{
	 if (cbList[i].disabled!=true)
	 	{
	    cbList[i].checked = !(cbList[i].checked) 
		}
	}

  }
}
function canviar_checkbox(cbList) 
{

  for (var i=0; i<cbList.length; i++) 
  {
	 if (cbList[i].disabled!=true)
	 	{
	    cbList[i].checked = !(cbList[i].checked) 
		}
  }
}



