﻿function __formatNumber(val, dec){
   		var nombre = val
   		 nombre += ''
   		if (nombre=='') return '' 
	    if (!nombre){return 'NaN'}
	    nombre = nombre.replace(',', '.')
	    nombre = nombre.replace(' ', '')
		if(isNaN(parseInt(nombre))){return 'NaN'}
		
		if(dec==0){return parseInt(nombre)}
		
		if (dec==0) {
		    nombre = parseInt(nombre) + ''
		}else{
		    var n = parseFloat(nombre)
		    var nn = Math.pow(10, dec)
		    nombre = Math.round(n * nn)/nn + ''
		}
		
		/*Arrondis à X chiffres */
		
		var pos = nombre.indexOf('.')
		if (pos == -1) {nombre = nombre + '.';pos = nombre.indexOf( '.')}
		var nb = nombre.length

		var flag = (nb > pos + dec)?true:false
		
		if (!flag){
		    	for(var i=0;i <= (pos + dec) - nb;i++){nombre = nombre + '0'}
		}
		
		/* séparateur de millier*/
		nb = nombre.indexOf('.')
		entier = nombre.substring(0,nb)
		dec = nombre.substr(nb)
		var sRegExp = new RegExp('(-?[0-9]+)([0-9]{3})');
		while(sRegExp.test(entier)) {entier = entier.replace(sRegExp, '$1 $2');}
		
		//this.setText(entier + dec)      

		return entier + dec
}

function __strChars(str, nb){
    var s = ''
    for (var i=0;i<nb;i++){
        s += str
    }

    return s
}

function __formatDate(val){
        var s = val
        if (val == '') return ''
        if (!s){return 'NaD'}
	    var sepd = '/'
	    var seph = ':'
	    var l = s.length
	    if (s.length < 6) {return 'NaD'}
	    var jour, mois, annee, heure, minute, secondes
	    var h = null
    	
	    var t = s.split(' ')
	    s = t[0]
	    if (t.length > 1){h=t[1]}
    	
    	
	    if(s.length==6 && s.indexOf(sepd)==-1){
		    jour = s.substr(0,2);mois=s.substr(2,2);annee='20' + s.substr(4,2)}
	    else if (s.length==8 && s.indexOf(sepd)==-1){
		    jour = s.substr(0,2);mois=s.substr(2,2);annee=s.substr(4,4)}
	    else if ((s.length==8 || s.length==10) && s.indexOf(sepd) > -1){
			    var t = s.split(sepd)
			    if (t.length !=3){return 'NaD'}
			    jour=t[0]
			    mois=t[1]
			    annee=t[2]
			    if (annee.length ==2){annee = '20' + annee}}
	    else {return 'NaD'}
    	
	    if (isNaN(jour) || isNaN(mois) || isNaN(annee)){return 'NaD'}
	    if (parseFloat(jour)<= 0 || parseFloat(annee)<= 0 || parseFloat(mois)<=0){return 'NaD'}
    	
	    if(parseFloat(mois)<=0 || parseFloat(mois)>12){return 'NaD'}
    	
	    if (mois=='01' || mois=='03' || mois=='05' || mois=='07' || mois=='08' || mois=='10' || mois=='12'){
			    if (parseFloat(jour) > 31){return 'NaD'}
	    }
    	
	    if (mois=='02' && parseFloat(jour) > 28 && (parseFloat(annee) % 4) != 0){return 'NaD'}
	    if (mois=='02' && (parseFloat(annee) % 4) == 0 && parseFloat(jour) > 29){return 'NaD'}
    	
	    if (mois=='04' || mois=='06'  || mois=='09' || mois=='11'){
			    if (parseFloat(jour) > 30){return 'NaD'}
	    }
    	
    	
	    if (!h){return jour + sepd + mois + sepd + annee}
    	
	    if (h.length == 4 && h.indexOf(seph) == -1){
		    heure = h.substr(0,2)
		    minute=h.substr(2,2)}
	    else if (h.length==4 && h.indexOf(seph) > -1){
		    var t = h.split(':')
		    heure=t[0]
		    minute=t[1]}
	    else{return 'NaD'}
    	
	    if((parseFloat(heure) < 0 && parseFloat(heure) > 24) && (parseFloat(minute) <0 && parseFloat(minute)> 59)){return 'NaD'}
    	
	    return jour + sepd + mois + sepd + annee + ' ' + heure + seph + minute
	    return true
   }
   
   
   var AJAXListItems = Class.create({
        initialize:function(items, parent){
            this.parent = parent
            var a = new Array()
            Object.extend(this,$A(a))
            this['push'] = a['push']
            this['length'] = a['length']
            this['indexOf'] = a['indexOf']
            this['splice'] = a['splice']
            this['slice'] = a['slice']
            this['clear'] = a['clear']
            
            for (var i=0; i<items.length; i++){this.push(items[i])}
        },
        
        getItemByValue:function(value){
            for (var i=0; i<this.length;i++){
                var it = this[i]
                if (it.value == value) return it
            }
        },
        
        getItemByText:function(text){
            for (var i=0; i<this.length;i++){
                var it = this[i]
                if (it.text == text) return it
            }
        }
   })
