Add ExtJs Functions to show Date and Full Name fields using environment formats

This commit is contained in:
Enrique Ponce de Leon
2011-02-08 20:10:49 +00:00
parent 1984107958
commit fa701b9b7c
2 changed files with 117 additions and 2 deletions

View File

@@ -153,4 +153,102 @@ var getBrowserInf = function(){
return {name:'unknow', version:'', screen: screen} return {name:'unknow', version:'', screen: screen}
}; };
var _BROWSER = getBrowserInf(); var _BROWSER = getBrowserInf();
/**
* Environment Formats function for full name
*/
function _FNF(USER_NAME, FIRST_NAME, LAST_NAME, FN_FORMAT)
{
if (FN_FORMAT===undefined)
if (typeof FORMATS == 'undefined')
FN_FORMAT = '(@lastName, @firstName) @userName';
else
FN_FORMAT = FORMATS.FullNameFormat;
var aux = FN_FORMAT;
aux = aux.replace('@userName',USER_NAME);
aux = aux.replace('@firstName',FIRST_NAME);
aux = aux.replace('@lastName',LAST_NAME);
return aux;
}
/**
* Environment Formats function for date
*/
function _DF(DATE_TIME, D_FORMAT){
function LZ(x){return(x<0||x>9?"":"0")+x;}
if (D_FORMAT===undefined)
if (typeof FORMATS == 'undefined')
D_FORMAT = 'm/d/Y';
else
D_FORMAT = FORMATS.DateFormat;
if (DATE_TIME!=''){
var arrD = DATE_TIME.split(' ');
var arrF = arrD[0].split('-');
if (arrD.length ==2){
var arrH = arrD[1].split(':');
}else{
var arrH = new Array(0,0,0);
}
var MONTH_NAMES=new Array(_('ID_MONTH_1'),_('ID_MONTH_2'),_('ID_MONTH_3'),_('ID_MONTH_4'),_('ID_MONTH_5'),_('ID_MONTH_6'),_('ID_MONTH_7'),
_('ID_MONTH_8'),_('ID_MONTH_9'),_('ID_MONTH_10'),_('ID_MONTH_11'),_('ID_MONTH_12'),_('ID_MONTH_ABB_1'),_('ID_MONTH_ABB_2'),
_('ID_MONTH_ABB_3'),_('ID_MONTH_ABB_4'),_('ID_MONTH_ABB_5'),_('ID_MONTH_ABB_6'),_('ID_MONTH_ABB_7'),_('ID_MONTH_ABB_8'),
_('ID_MONTH_ABB_9'),_('ID_MONTH_ABB_10'),_('ID_MONTH_ABB_11'),_('ID_MONTH_ABB_12'));
var DAY_NAMES=new Array(_('ID_WEEKDAY_0'),_('ID_WEEKDAY_1'),_('ID_WEEKDAY_2'),_('ID_WEEKDAY_3'),_('ID_WEEKDAY_4'),_('ID_WEEKDAY_5'),
_('ID_WEEKDAY_6'),_('ID_WEEKDAY_ABB_0'),_('ID_WEEKDAY_ABB_1'),_('ID_WEEKDAY_ABB_2'),_('ID_WEEKDAY_ABB_3'),_('ID_WEEKDAY_ABB_4'),
_('ID_WEEKDAY_ABB_5'),_('ID_WEEKDAY_ABB_6'));
var date = new Date(arrF[0],parseInt(arrF[1])-1,arrF[2],arrH[0],arrH[1],arrH[2],0);
var y=date.getFullYear()+'';
var M=date.getMonth()+1;
var d=date.getDate();
var E=date.getDay();
var H=date.getHours();
var m=date.getMinutes();
var s=date.getSeconds();
var values = new Object();
values['Y'] = y;
values['y'] = y.substring(2, 4);
values['F'] = MONTH_NAMES[M-1];
values['M'] = MONTH_NAMES[M+11];
values['m'] = LZ(M);
values['n'] = M;
values['d'] = LZ(d);
values['j'] = d;
values['D'] = DAY_NAMES[E+7];
values['l'] = DAY_NAMES[E];
values['G'] = H;
values['H'] = LZ(H);
if (H==0){ values['g'] = 12;}
else if (H>12){ values['g'] = H-12; }
else { values['g'] = H; }
values['h'] = LZ(values['g']);
values['i'] = LZ(m);
values['s'] = LZ(s);
if (H>11) values['a'] = 'pm'; else values['a'] = 'am';
if (H>11) values['A'] = 'PM'; else values['A'] = 'AM';
if (typeof FORMATS == 'undefined') values['T'] = '**';
else values['T'] = FORMATS.TimeZone;
var aDate = D_FORMAT.split('');
var aux = '';
var xParts = new Array('Y','y','F','M','m','n','d','j','D','l','G','H','g','h','i','s','a','A','T');
for (var i=0; i < aDate.length; i++){
if (xParts.indexOf(aDate[i])==-1){
aux = aux + aDate[i];
}else{
aux = aux + values[aDate[i]];
}
}
return aux;
}else{
if (DATE_TIME=='')
return '';
else
return '**' + DATE_TIME + '**';
}
}

View File

@@ -258,7 +258,7 @@ class Configurations // extends Configuration
/** /**
* usersNameFormat * usersNameFormat
* @author Qennix * @author Enrique Ponce de Leon enrique@colosa.com
* @param string $username * @param string $username
* @param string $firstname * @param string $firstname
* @param string $lastname * @param string $lastname
@@ -282,6 +282,23 @@ class Configurations // extends Configuration
} }
} }
/**
* getFormats
* @author Enrique Ponce de Leon enrique@colosa.com
* @return FORMATS array
*/
function getFormats(){
if (!isset($this->UserConfig)) $this->UserConfig = $this->getConfiguration('ENVIRONMENT_SETTINGS', '');
$formats = Array();
$formats['FullNameFormat'] = isset($this->UserConfig['format']) ? $this->UserConfig['format'] : '@lastName @firstName (@userName)';
$formats['DateFormat'] = isset($this->UserConfig['dateFormat']) ? $this->UserConfig['dateFormat'] : 'm/d/Y';
$formats['CasesListDateFormat'] = isset($this->UserConfig['casesListDateFormat']) ? $this->UserConfig['casesListDateFormat'] : 'm/d/Y';
$formats['CasesListRowNumber'] = isset($this->UserConfig['casesListRowNumber']) ? $this->UserConfig['casesListRowNumber'] : 10;
$formats['TimeZone'] = date('T');
return $formats;
}
/** /**
* setConfig * setConfig