/*!
* Ext JS Library 3.2.1
* Copyright(c) 2006-2010 Ext JS, Inc.
* licensing@extjs.com
* http://www.extjs.com/license
*/
comboStatusStore = new Ext.data.SimpleStore({
fields: ['id','value'],
data: [['- ALL -','- ALL -'],['SUN','SUN'],['MON','MON'],['TUE','TUE'],['WED','WED'],['THU','THU'],['FRI','FRI'],['SAT','SAT']]
});
function workHourCompositeFieldInterfaz(i){
//!dataSystem
var d = new Date();
var idTime = d.getTime();
var workHourComposite = 'workHourComposite'+idTime;
//!
var CompositeField1 = new Ext.form.CompositeField( {
xtype : 'compositefield',
id : workHourComposite,
hideLabel : true,
labelWidth : 100,
items : [
{
xtype : 'displayfield',
width : 10,
value : ''
},
{
xtype: 'displayfield',
style: 'text-align:center;color:#808080;font-size:11px;margin-top:5px;',
value: i-1
},
{
xtype : 'displayfield',
width : 5,
value : ''
},
{
xtype: 'combo',
fieldLabel: _('ID_STATUS'),
hiddenName: 'status',
typeAhead: true,
mode: 'local',
store: comboStatusStore,
displayField: 'value',
width: 100,
valueField:'id',
allowBlank: true,
triggerAction: 'all',
emptyText: _('ID_SELECT_STATUS'),
selectOnFocus:true
},
{
xtype : 'displayfield',
width : 10,
value : ''
},
{
xtype: 'textfield',
width: 70,
fieldLabel: 'Name',
name : 'td1',
allowBlank: true
},
{
xtype : 'displayfield',
width : 10,
value : ''
},
{
xtype: 'textfield',
width: 70,
fieldLabel: 'Name',
name : 'td2',
allowBlank: true
},
{
xtype : 'displayfield',
width : 10,
value : ''
},
{
xtype: 'box',
fieldLabel: 'Filename',
name: 'filename',
autoEl: {
style: 'margin-top:5px',
html:'Delete'
}
}
]
});
return CompositeField1;
}
function fordataWorkDayFieldNew() {
var dynaformCalendar_ = Ext.getCmp('dynaformCalendar');
var idWorkHour_= Ext.getCmp('idWorkHour');
var i = idWorkHour_.items.length;
idWorkHour_.insert( i, workHourCompositeFieldInterfaz(i) );
dynaformCalendar_.doLayout();
}
function fordataWorkDayFieldRemove(workHourComposite,i) {
dynaformCalendar_ = Ext.getCmp('dynaformCalendar');
idWorkHour_= Ext.getCmp('idWorkHour');
var workHourComposite_ = Ext.getCmp(workHourComposite);
var idWorkHour_= Ext.getCmp('idWorkHour');
for( var index = 0 ; index < idWorkHour_.items.length ; index++ ) {
if( index >= i ) {
idWorkHour_.items.items[index].items.items[1].value = index-2;
idWorkHour_.items.items[index].items.items[1].originalValue = index-2;
}
}
var e = workHourComposite_.el.up( '.x-form-item' );
idWorkHour_.remove( workHourComposite_ );
e.remove();
dynaformCalendar_.doLayout();
}
Ext.ux.OrderedFormPanel = Ext.extend( Ext.FormPanel, {
addAfter : function( a, c ){
for( var i = 0 ; i < this.items.items.length ; i++ ){
if( this.items.items[i] == a ){
this.insert( i + 1, c );
return;
}
}
},
addBefore : function( a, c ) {
for( var i = 0 ; i < this.items.items.length ; i++ ){
if( this.items.items[i] == a ){
this.insert( i, c );
return;
}
}
}
});
//[ Global variables
calendarWorkDayArray = [];
calendarWorkDayArray[0] = 'SUN';
calendarWorkDayArray[1] = 'MON';
calendarWorkDayArray[2] = 'TUE';
calendarWorkDayArray[3] = 'WED';
calendarWorkDayArray[4] = 'THU';
calendarWorkDayArray[5] = 'FRI';
calendarWorkDayArray[6] = 'SAT';
calendarWorkDayStatusArray = new Array();
calendarWorkDayStatusArray['SUN'] = 'On';
calendarWorkDayStatusArray['MON'] = 'On';
calendarWorkDayStatusArray['TUE'] = 'On';
calendarWorkDayStatusArray['WED'] = 'On';
calendarWorkDayStatusArray['THU'] = 'On';
calendarWorkDayStatusArray['FRI'] = 'On';
calendarWorkDayStatusArray['SAT'] = 'On';
function calendarWorkDayStatusReset() {
calendarWorkDayStatusArray['SUN'] = 'On';
calendarWorkDayStatusArray['MON'] = 'On';
calendarWorkDayStatusArray['TUE'] = 'On';
calendarWorkDayStatusArray['WED'] = 'On';
calendarWorkDayStatusArray['THU'] = 'On';
calendarWorkDayStatusArray['FRI'] = 'On';
calendarWorkDayStatusArray['SAT'] = 'On';
}
//]
Ext.onReady( function() {
var Employee = Ext.data.Record.create ([
{
name: 'name',
type: 'string'
},
{
name: 'start',
type: 'string'
},
{
name: 'end',
type: 'string'
}
]);
//[ genData
var genData = function() {
var data = [];
bussinesDayArray = fields['BUSINESS_DAY'];
var rowNameDataArray = new Array();
rowNameDataArray['7'] = '- ALL -';
rowNameDataArray['0'] = 'SUN';
rowNameDataArray['1'] = 'MON' ;
rowNameDataArray['2'] = 'TUE' ;
rowNameDataArray['3'] = 'WED' ;
rowNameDataArray['4'] = 'THU' ;
rowNameDataArray['5'] = 'FRI' ;
rowNameDataArray['6'] = 'SAT' ;
for (i=0;i gridEachStartSecond)||(gridEachEndSecond>editorStartSecond))
dataExist = 'Off';
else{
if(editorEndSecond>gridEachStartSecond||gridEachEndSecond>editorEndSecond)
dataExist = 'Off';
}
}
}
});
if(dataExist == 'Off') {
PMExt.notify( _('ID_ERROR') , _('ID_TIME_EXIST_IN_LIST'));
e.name = gridName;
e.start = gridStart;
e.end = gridEnd;
}
}
}
return;
},
beforeedit: function(roweditor, rowIndex) {
}
});
grid = new Ext.grid.GridPanel( {
store: store,
id: "gridCalendar",
width: 470,
height : 120,
region:'center',
margins: '0 5 5 5',
autoExpandColumn: 'name',
plugins: [editor],
view: new Ext.grid.GroupingView({
markDirty: false
}),
tbar: [ {
iconCls: 'icon-user-add',
text: _('ID_ADD'),
handler: function(){
var e = new Employee({
name: '- ALL -',
start: '00:00',
end: '00:00'
});
editor.stopEditing();
store.insert(0, e);
grid.getView().refresh();
grid.getSelectionModel().selectRow(0);
editor.startEditing(0);
}
},
{
ref: '../removeBtn',
iconCls: 'icon-user-delete',
text: _('ID_REMOVE'),
disabled: false,
handler: function(){
editor.stopEditing();
var s = grid.getSelectionModel().getSelections();
for(var i = 0, r; r = s[i]; i++){
store.remove(r);
}
}
}],
columns: [
new Ext.grid.RowNumberer(),
{
header: _('ID_DAY'),
id: 'name',
dataIndex: 'name',
width: 50,
sortable: true,
editor: {
xtype: 'combo',
id: 'calendarColumnDayCombo',
fieldLabel: _('ID_STATUS'),
hiddenName: 'status',
typeAhead: true,
mode: 'local',
forceSelection: true,
store: comboStatusStore,
displayField: 'value',
width: 150,
valueField:'id',
allowBlank: true,
triggerAction: 'all',
emptyText: _('ID_SELECT_STATUS'),
selectOnFocus:true
}
},
{
header: _('ID_START_HH_MM'),
dataIndex: 'start',
width: 150,
sortable: true,
editor: {
xtype: 'timefield',
minValue: '12:00 AM',
maxValue: '23:59 PM',
increment: 1,
forceSelection: true,
format: 'H:i'
},
renderer: horaRender
},
{
header: _('ID_END_HH_MM'),
dataIndex: 'end',
width: 150,
sortable: true,
editor: {
xtype: 'timefield',
minValue: '12:00 AM',
maxValue: '23:59 PM',
increment: 1,
forceSelection: true,
format: 'H:i'
}
}
]
});
var EmployeeHoliday = Ext.data.Record.create ([
{
name: 'name',
type: 'string'
},
{
name: 'email',
type: 'date',
dateFormat: 'n/j/Y'
},
{
name: 'start',
type: 'date',
dateFormat: 'n/j/Y'
}
]);
var genDataHoliday = function(){
var data = [];
var holidayArray = fields['HOLIDAY'];
//console.info(holidayArray);
for (i=0;i