
		//****************************\\
		// COPYRIGHT GOLFBOX A/S 2003 \\
		//	   ALL RIGHTS RESERVED    \\
		//----------------------------\\
		//	 NOT TO BE USED WITHOUT   \\
		//   PRIOR WRITTEN APPROVAL   \\
		//----------------------------\\
		//         VERSION 0.0        \\
		//       WRITTEN BY: KB       \\
		//----------------------------\\

function clientConverter(){
}

clientConverter.prototype.toBit = function(value) {
	if (value) {
		return '1'
	} else {
		return '0'
	}
}


clientConverter.prototype.toArray = function(theVal,strDelimiter){
	del = (arguments[1]) ? arguments[1] : ',' // SET "," TO DEFAULT
	return theVal.split(del)
}

clientConverter.prototype.toTime = function(strTime){
	var tmpDate = new Date()
	timeArray = strTime.split(':')
	
	if(timeArray[0]) tmpDate.setHours(timeArray[0]);
	if(timeArray[1]) tmpDate.setMinutes(timeArray[1]);
	if(timeArray[2]) tmpDate.setSeconds(timeArray[2]);
	if(timeArray[3]) tmpDate.setMilliseconds(timeArray[3]);

	return tmpDate
}

clientConverter.prototype.getDateParts = function(strDate){
	switch (page.LCID){
		case 3081 :
			x = ( !isNaN( strDate.substring(2,3) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,x+3)
			yearMatrix = new Array(x+4,x+8)
			break;
		case 1033 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			monthMatrix = new Array(0,x)
			dayMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1053 :
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,7)
			dayMatrix = new Array(8,10)
			break;
		case 1035 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1061 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1063 :
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,7)
			dayMatrix = new Array(8,10)
			break;
		case 2052 :
			x = ( !isNaN( strDate.substring(6,7) ) ) ? 2 : 1
			y = ( strDate.length==8+x ) ? 2 : 1
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,5+x)
			dayMatrix = new Array(5+x+1,strDate.length)
			break;
        case 2057:
            x = (!isNaN(strDate.substring(1, 2))) ? 2 : 1
            y = (!isNaN(strDate.substring(2 + x, 3 + x))) ? 2 : 1
            dayMatrix = new Array(0, x)
            monthMatrix = new Array(x + 1, (y + x + 1))
            yearMatrix = new Array(x + y + 2, (x + y + 6))
            break;
		default :
			dayMatrix = new Array(0,2)
			monthMatrix = new Array(3,5)
			yearMatrix = new Array(6,10)
	}
	d = parseFloat( strDate.substring( dayMatrix[0], dayMatrix[1] ) )
	m = parseFloat( strDate.substring( monthMatrix[0], monthMatrix[1] ) )
	y = parseFloat( strDate.substring( yearMatrix[0], yearMatrix[1] ) )

	return new Array(y,m,d)
}

clientConverter.prototype.toDate = function(strDate){ 
	var tmpDate = new Date(2000,1,1)
	switch (page.LCID){
		case 3081 :
			x = ( !isNaN( strDate.substring(2,3) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,x+3)
			yearMatrix = new Array(x+4,x+8)
			break;
		case 1033 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			monthMatrix = new Array(0,x)
			dayMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1053 :
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,7)
			dayMatrix = new Array(8,10)
			break;
		case 1035 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1061 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		case 1063 :
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,7)
			dayMatrix = new Array(8,10)
			break;
		case 2052 :
			x = ( !isNaN( strDate.substring(6,7) ) ) ? 2 : 1
			y = ( strDate.length==8+x ) ? 2 : 1
			yearMatrix = new Array(0,4)
			monthMatrix = new Array(5,5+x)
			dayMatrix = new Array(5+x+1,strDate.length)
			break;
		case 2057 :
			x = ( !isNaN( strDate.substring(1,2) ) ) ? 2 : 1
			y = ( !isNaN( strDate.substring(2+x,3+x) ) ) ? 2 : 1
			dayMatrix = new Array(0,x)
			monthMatrix = new Array(x+1,(y+x+1))
			yearMatrix = new Array(x+y+2,(x+y+6))
			break;
		default :
			dayMatrix = new Array(0,2)
			monthMatrix = new Array(3,5)
			yearMatrix = new Array(6,10)
	}


	d = parseFloat( strDate.substring( dayMatrix[0], dayMatrix[1] ) )
	m = parseFloat( strDate.substring( monthMatrix[0], monthMatrix[1] ) )
	y = parseFloat( strDate.substring( yearMatrix[0], yearMatrix[1] ) )

	//alert(d + '.' + m + '.'+ y)

	tmpDate.setYear(y);
	tmpDate.setMonth(m-1);
	tmpDate.setDate(d);
	return tmpDate
}

clientConverter.prototype.toDateString = function(datDate){
	del = page.getDateDelimiter()

	d = datDate.getDate()
	m = datDate.getMonth()+1
	//alert(datDate)
	y = datDate.getFullYear()

	switch (page.LCID){
		case 1033 : 
			return m + '' + del + '' + d + '' + del + '' + y
			break;
		case 1053 :
			d = (d < 10) ? '0' + d : d // prefix
			m = (m < 10) ? '0' + m : m  // prefix
			return y + del + m + del + d
			break;
		case 1035 :
			return d + '' + del + '' + m + '' + del + '' + y
			break;
		case 1061 :
			m = (m < 10) ? '0' + m : m  // prefix
			return d + '' + del + '' + m + '' + del + '' + y
			break;
		case 1063 :
			d = (d < 10) ? '0' + d : d // prefix
			m = (m < 10) ? '0' + m : m  // prefix
			return y + del + m + del + d
			break;
		case 2052 :
			return y + '' + del + '' + m + '' + del + '' + d
			break;
		case 2057 :
			return d + '' + del + '' + m + '' + del + '' + y
			break;
		default :
			d = (d < 10) ? '0' + d : d // prefix
			m = (m < 10) ? '0' + m : m
			
			return d + '' + del + '' + m + '' + del + '' + y
			break;
	}
}

clientConverter.prototype.toDateTime = function(strDateTime){ 
	var tmpDate = new Date()

	var strDateTimeArray = strDateTime.split(' ')
	var timeArray = strDateTimeArray[1].split(':')

	tmpDate = this.toDate(strDateTimeArray[0])

	if(timeArray[0]) tmpDate.setHours(timeArray[0]);
	if(timeArray[1]) tmpDate.setMinutes(timeArray[1]);
	if(timeArray[2]) tmpDate.setSeconds(timeArray[2]);
	if(timeArray[3]) tmpDate.setMilliseconds(timeArray[3]);
	
	return tmpDate
}

clientConverter.prototype.dateTimeToText = function(tmpDate){ 

	var dateString = dateString = tmpDate.getFullYear();

	var tmpString;
	tmpString = (tmpDate.getMonth()+1).toString();
	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	tmpString = tmpDate.getDate().toString();
	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	dateString = dateString + 'T';

	tmpString = tmpDate.getHours().toString();
	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	tmpString = tmpDate.getMinutes().toString();
	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	tmpString = tmpDate.getSeconds().toString();
	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	return dateString
}

clientConverter.prototype.dateToText = function(tmpDate){ 

	var dateString = dateString = tmpDate.getFullYear();

	var tmpString;
	tmpString = (tmpDate.getMonth()+1).toString();

	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	tmpString = tmpDate.getDate().toString();

	if(tmpString.length==1){tmpString='0'+tmpString;}
	dateString = dateString + tmpString;

	dateString = dateString + 'T000000';

	return dateString
}

clientConverter.prototype.textToDateTime = function(tmpString){ 
	//var tmpDate = new Date;
	//alert(tmpString)
	
	//alert(parseInt(tmpString.substr(5,1))-1)
	
	//var y, m, d, h, m, s

	y = parseInt(tmpString.substr(0,4));
	m = (tmpString.substr(4,1)=='0') ? parseInt(tmpString.substr(5,1))-1 : parseInt(tmpString.substr(4,2))-1
	d = (tmpString.substr(6,1)=='0') ? parseInt(tmpString.substr(7,1)) : parseInt(tmpString.substr(6,2));
	h = (tmpString.substr(9,1)=='0') ? parseInt(tmpString.substr(10,1)) : parseInt(tmpString.substr(9,2));
	n = (tmpString.substr(11,1)=='0') ? parseInt(tmpString.substr(12,1)) : parseInt(tmpString.substr(11,2));
	s = (tmpString.substr(13,1)=='0') ? parseInt(tmpString.substr(14,1)) : parseInt(tmpString.substr(13,2));
	
//	alert('----' + d)
	
//	alert(y + '.' + m + '.' + d  + '.' + h  + '.' + n + '.' + s)
	var tmpDate = new Date(y, m, d, h, n, s)
	/*
	tmpDate.setFullYear(y)
	tmpDate.setMonth(m)
	tmpDate.setDate(d)
	tmpDate.setHours(h)
	tmpDate.setMinutes(n)
	tmpDate.setSeconds(s)
	*/
//	alert(y)
//	alert(y + '-' + m + '-' + d  + '-' + h  + '-' + n + '-' + s)
//	alert(tmpDate)
	return tmpDate;
}

clientConverter.prototype.dateToJSNewDateString = function(dateVal){
	return 'new Date('+dateVal.getFullYear()+','+dateVal.getMonth()+','+dateVal.getDate()+','+dateVal.getHours()+','+dateVal.getMinutes()+','+dateVal.getSeconds()+')'
}

clientConverter.prototype.toNumeric = function(theVal,valIfNaN){
	if(isNaN(theVal) || theVal == ''){
		return parseInt(valIfNaN)
	}
	else{
		return parseInt(theVal)
	}
}

clientConverter.prototype.toDecimal = function(theVal){
	return parseFloat(theVal.replace(',','.'))
}

clientConverter.prototype.toHandicap = function(theVal){
	var tempVal = parseFloat(theVal.replace(',','.'))
	if(theVal.indexOf('+')==0){
		tempVal=-tempVal;
	}
	return tempVal;
}

clientConverter.prototype.handicapToText = function(theVal){
	decimalSeperator='.';
	if(page.LCID==1030||page.LCID==1044||page.LCID==1053||page.LCID==1035||page.LCID==1061||page.LCID==1063){
		decimalSeperator=',';
	}
	
	var numDec = 1;
	if(page.countryISOCode=='ZA'){
		var numDec = 0;
	}
	if(theVal>36&&page.countryISOCode=='NO'){
		var numDec = 0;
	}
	if(theVal<0){
		var tempVal = '+'+Math.abs(theVal).toFixed(numDec).toString();
	}
	else{
		var tempVal = theVal.toFixed(numDec).toString();
	}
	return tempVal.replace(/\./g,decimalSeperator);
}

clientConverter.prototype.timeUnitToMinutes = function(val,valUnit){
	switch (valUnit){
		case 0 : return val; break; // JUST MINUTES
		case 1 : return val * 60; break; // HOURS -> MINUTES
		case 2 : return (val * 24) * 60; break; // DAYS -> MINUTES
	}
}

clientConverter.prototype.toDblDigit = function (val){
	if(val < 10){
		return '0' + val
	} else {
		return val
	}
}

var cc = new clientConverter()




/*  TIME FORMATTER  */
var changeInputTime_FormatErrorText
function changeInputTime(obj){

	if (obj.value==''){return}

	  // external values
	var _timeValue = obj.value
	var _delimiter = ':'
	var _formatErrorText = (changeInputTime_FormatErrorText) ? changeInputTime_FormatErrorText : 'The value: #DateValue#, could not be re-formatted!'

	// create LCID specific regexp patterns
	var pattern_regexp_d, pattern_regexp_dd, pattern_regexp_ddd, pattern_regexp_dddd, pattern_regexp_generic
	var pattern_returnValue

	// these are global
	pattern_regexp_d = /^\d{1}$/
	pattern_regexp_dd = /^\d{2}$/
	pattern_regexp_ddd = /^\d{3}$/
	pattern_regexp_dddd = /^\d{4}$/
	pattern_regexp_generic = /^\d{1,2}(-|\.|\/|,|:)\d{1,2}$/
    
    pattern_returnValue = 'hh:mm'
	
	var _patterns = []
	_patterns.add(['d',pattern_regexp_d])
	_patterns.add(['dd',pattern_regexp_dd])
	_patterns.add(['ddd',pattern_regexp_ddd])
	_patterns.add(['dddd',pattern_regexp_dddd])
	_patterns.add(['generic',pattern_regexp_generic])

	var _returnVal
	var _transformOK = false
	var _patternFound = false
	var _validForTransformation = false
	var _parts
    
	for (var i = 0; i < _patterns.length; i++){
		//alert('testing: '+ _patterns[i][1])
		if (_timeValue.match(_patterns[i][1])){
			_parts = changeInputTime_getParts(_timeValue, _patterns[i][0]);
			_patternFound = true;
			break;
		}
	}

	if (!_patternFound&&_timeValue!=''){alert(_formatErrorText.replace('#DateValue#',_timeValue)); return}

	if (changeInputTime_isValidHour(_parts[0]) && changeInputTime_isValidMinute(_parts[1])){
		_returnVal = pattern_returnValue.replace('hh',changeInputDate_padZeros(_parts[0]))
		_returnVal = _returnVal.replace('mm',changeInputDate_padZeros(_parts[1]))
		obj.value =  _returnVal
		return true
	}

	if (!_transformOK){alert(_formatErrorText.replace('#DateValue#',_timeValue))}
	return _transformOK
}

function changeInputTime_isValidHour(iHour){
    if(iHour <= 23) return true
}

function changeInputTime_isValidMinute(iMinute){
    if(iMinute <= 59) return true
}

function changeInputTime_getParts(value, format){
    switch (format){
        case 'd' :
            var _p = []
            _p[0] = parseInt(value, 10)
            _p[1] = 0
            return _p; break;
        case 'dd' :
            var _p = []
            _p[0] = parseInt(value, 10)
            _p[1] = 0
            return _p; break;
        case 'ddd' :
            var _p = []
			_p[0] = parseInt(value.substring(0,1), 10)
            _p[1] = parseInt(value.substring(1,3), 10)
            return _p; break;
        case 'dddd' :
            var _p = []
            _p[0] = parseInt(value.substring(0,2), 10)
            _p[1] = parseInt(value.substring(2,4), 10)
            return _p; break;
        case 'generic' :
            var _p = []
			ptrn = /^(\d+)(-|\.|\/|,|:)(\d+)$/
			m = value.match(ptrn);
			if (m==null) {
				_p[0] = 0; _p[1] = 0; return
			}
			_p[0] = parseInt(m[1], 10)
            if(m[3].length==1){
                m[3] = m[3]+'0';
            }
			_p[1] = (m[3] < 10) ? parseInt('0'+m[3], 10) : parseInt(m[3], 10)
            return _p; break;
    }
}


/*  DATE FORMATTER  */
var changeInputDate_LCID, changeInputDate_Delimiter, changeInputDate_FormatErrorText
function changeInputDate(obj){
    
    // external values
    var _lcid = (page.LCID) ? page.LCID : 1030;
    var _dateValue = obj.value
    if (_dateValue.trim() == '') {
        return true;
    }

    var _delimiter = page.getDateDelimiter();
    
    var _formatErrorText = (changeInputDate_FormatErrorText) ? changeInputDate_FormatErrorText : 'The value: #DateValue#, could not be re-formatted!'

    // create LCID specific regexp patterns
    var pattern_regexp_yymmdd, pattern_regexp_yyyymmdd, pattern_regexp_yy_mm_dd, pattern_regexp_yyyy_mm_dd
    var pattern_returnValue

    // these are global
    pattern_regexp_mmdd = /^\d{4}$/
    pattern_regexp_yymmdd = /^\d{6}$/
    pattern_regexp_yyyymmdd = /^\d{8}$/
    pattern_regexp_yy_mm_dd = /^\d{2}(-|\.|\/)\d{2}(-|\.|\/)\d{2}$/
    pattern_regexp_mm_dd = /^\d{2}(-|\.|\/)\d{2}$/
    // english patterns
    pattern_regexp_mm_dd_yyyy = /^\d{2}(-|\.|\/)\d{2}(-|\.|\/)\d{4}$/
    //nye halve formater
    pattern_regexp_m_d_yyyy = /^\d{1}(-|\.|\/)\d{1}(-|\.|\/)\d{4}$/
    pattern_regexp_m_dd_yyyy = /^\d{1}(-|\.|\/)\d{2}(-|\.|\/)\d{4}$/
    pattern_regexp_mm_d_yyyy = /^\d{2}(-|\.|\/)\d{1}(-|\.|\/)\d{4}$/
    pattern_regexp_m_d_yy = /^\d{1}(-|\.|\/)\d{1}(-|\.|\/)\d{2}$/
    pattern_regexp_m_dd_yy = /^\d{1}(-|\.|\/)\d{2}(-|\.|\/)\d{2}$/
    pattern_regexp_mm_d_yy = /^\d{2}(-|\.|\/)\d{1}(-|\.|\/)\d{2}$/
    pattern_regexp_m_d = /^\d{1}(-|\.|\/)\d{1}$/
    pattern_regexp_mm_d = /^\d{2}(-|\.|\/)\d{1}$/
    pattern_regexp_m_dd = /^\d{1}(-|\.|\/)\d{2}$/

    switch (_lcid) {
        case 1053:
            pattern_regexp_yyyy_mm_dd = /^\d{4}(-|\.|\/)\d{2}(-|\.|\/)\d{2}$/
            pattern_returnValue = 'yyyy#mm#dd'
            break;
        case 1033:
            pattern_regexp_yyyy_mm_dd = /^\d{4}(-|\.|\/)\d{2}(-|\.|\/)\d{2}$/
            pattern_returnValue = 'mm#dd#yyyy'
            break;
        case 1030: default:
            pattern_regexp_yyyy_mm_dd = /^\d{2}(-|\.|\/)\d{2}(-|\.|\/)\d{4}$/
            pattern_returnValue = 'dd#mm#yyyy'
            break;
    }

    var _patterns = []
    
        _patterns.add(['mmdd', pattern_regexp_mmdd]) //nr 1
        _patterns.add(['mm#dd', pattern_regexp_mm_dd]) //nr 2
        _patterns.add(['yymmdd', pattern_regexp_yymmdd]) //nr 3
        _patterns.add(['yyyymmdd', pattern_regexp_yyyymmdd]) //nr 4
        _patterns.add(['yy#mm#dd', pattern_regexp_yy_mm_dd]) //nr 5
        _patterns.add(['yyyy#mm#dd', pattern_regexp_yyyy_mm_dd]) //nr 6
        _patterns.add(['mm#dd#yyyy', pattern_regexp_mm_dd_yyyy]) //nr 7
        //nye halve formater
        _patterns.add(['m#d#yyyy', pattern_regexp_m_d_yyyy]) //nr 8
        _patterns.add(['m#dd#yyyy', pattern_regexp_m_dd_yyyy]) //nr 9
        _patterns.add(['mm#d#yyyy', pattern_regexp_mm_d_yyyy]) //nr 10
        _patterns.add(['m#d#yy', pattern_regexp_m_d_yy]) //nr 11
        _patterns.add(['m#dd#yy', pattern_regexp_m_dd_yy]) //nr 12
        _patterns.add(['mm#d#yy', pattern_regexp_mm_d_yy]) //nr 13
        _patterns.add(['m#d', pattern_regexp_m_d]) //nr 14
        _patterns.add(['mm#d', pattern_regexp_mm_d]) //nr 15
        _patterns.add(['m#dd', pattern_regexp_m_dd]) //nr 16
        
    
    var _returnVal
    var _transformOK = false
    var _patternFound = false
    var _validForTransformation = false
    var _parts
    
    for (var i = 0; i < _patterns.length; i++){
        //alert('testing: '+ _patterns[i][1])
        if (_dateValue.match(_patterns[i][1])){
            _parts = changeInputDate_getParts(_lcid, _dateValue, _patterns[i][0]);
            _patternFound = true;
            break;
        }
    }

    if (!_patternFound){alert(_formatErrorText.replace('#DateValue#',_dateValue)); return}

    if (changeInputDate_isValidMonth(_parts[1]) && changeInputDate_isValidDay(_parts[2])){
    
        _returnVal = pattern_returnValue.replace('yyyy',changeInputDate_getFullYear(_parts[0]))
        _returnVal = _returnVal.replace('mm',_parts[1])
        _returnVal = _returnVal.replace('dd',_parts[2])
        while(_returnVal.indexOf('#') >= 0){_returnVal = _returnVal.replace('#',_delimiter)}
        obj.value =  _returnVal
        return true
    }

    if (!_transformOK){alert(_formatErrorText.replace('#DateValue#',_dateValue))}
    return _transformOK
}

function changeInputDate_isValidMonth(iMonth){
    if(iMonth <= 12) return true
}

function changeInputDate_isValidDay(iDay){
    if(iDay <= 31) return true
}

function changeInputDate_getFullYear(iYear){
    if (parseInt(iYear, 10) > 1000) return iYear
    if (parseInt(iYear, 10) < 20){
        return '20' + changeInputDate_padZeros(iYear)
    } else {
        return '19' + changeInputDate_padZeros(iYear)
    }
}

function changeInputDate_padZeros(val){
    if (parseInt(val, 10) < 10){
        return '0'+ parseInt(val, 10)
    }
    return parseInt(val, 10)
}

function changeInputDate_getParts(lcid, value, format){
    switch (format){
        case 'mmdd':  //nr  1
            switch (lcid){
                case 1053: case 1033:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = value.substring(2, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'mm#dd': //nr  2
            switch (lcid){
                case 1053: case 1033:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = value.substring(3, 5) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(3, 5) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'yymmdd': //nr  3
            switch (lcid){
                case 1053:
                    var _p = []
                    _p[0] = value.substring(0, 2) //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = value.substring(4, 6) //day
                    return _p; break;
                case 1033:
                    var _p = []
                    _p[0] = value.substring(4,6) //year
                    _p[1] = value.substring(0,2) //month
                    _p[2] = value.substring(2,4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(4, 6) //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'yyyymmdd': //nr  4
            switch (lcid){
                case 1053:
                    var _p = []
                    _p[0] = value.substring(0, 4) //year
                    _p[1] = value.substring(4, 6) //month
                    _p[2] = value.substring(6, 8) //day
                    return _p; break;
                case 1033:
                    var _p = []
                    _p[0] = value.substring(4, 8) //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = value.substring(2, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(4, 8) //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            } 
            break;
        case 'yy#mm#dd': //nr  5
            switch (lcid){
                case 1053:
                    var _p = []
                    _p[0] = value.substring(0, 2) //year
                    _p[1] = value.substring(3, 5) //month
                    _p[2] = value.substring(6, 8) //day
                    return _p; break;
                case 1033:
                    var _p = []
                    _p[0] = value.substring(6, 8) //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = value.substring(3, 5) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(6, 8) //year
                    _p[1] = value.substring(3, 5) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            } 
            break;
        case 'yyyy#mm#dd': //nr 6
            switch (lcid){
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(0, 4) //year
                    _p[1] = value.substring(5, 7) //month
                    _p[2] = value.substring(8, 10) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(6, 10) //year
                    _p[1] = value.substring(3, 5) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'mm#dd#yyyy': //nr 7 
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(6, 10) //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = value.substring(3, 5) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(6, 10) //year
                    _p[1] = value.substring(3, 5) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'm#d#yyyy': //nr  8
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(4, 8) //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = '0' + value.substring(2, 3) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(4, 8) //year
                    _p[1] = '0' + value.substring(2, 3) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
        case 'm#dd#yyyy': //nr  9
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(5, 9) //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = value.substring(2, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(5, 9) //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
        case 'mm#d#yyyy': //nr  10
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(5, 9) //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = '0' + value.substring(3, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(5, 9) //year
                    _p[1] = '0' + value.substring(3, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'm#d#yy': //nr  11
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(4, 6) //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = '0' + value.substring(2, 3) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(4, 6) //year
                    _p[1] = '0' + value.substring(2, 3) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
        case 'm#dd#yy': //nr  12
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(5, 7) //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = value.substring(2, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(5, 7) //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
        case 'mm#d#yyyy': //nr  13
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = value.substring(5, 7) //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = '0' + value.substring(3, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = value.substring(5, 7) //year
                    _p[1] = '0' + value.substring(3, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'm#d': //nr  14
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = '0' + value.substring(2, 3) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = '0' + value.substring(2, 3) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
        case 'mm#d': //nr  15
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(0, 2) //month
                    _p[2] = '0' + value.substring(3, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = '0' + value.substring(3, 4) //month
                    _p[2] = value.substring(0, 2) //day
                    return _p; break;
            }
            break;
        case 'm#dd': //nr  16
            switch (lcid) {
                case 1053: case 1033:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = '0' + value.substring(0, 1) //month
                    _p[2] = value.substring(2, 4) //day
                    return _p; break;
                case 1030: default:
                    var _p = []
                    _p[0] = new Date().getFullYear() //year
                    _p[1] = value.substring(2, 4) //month
                    _p[2] = '0' + value.substring(0, 1) //day
                    return _p; break;
            }
            break;
    }
}

