Cases Scheduler Log ExtJs update look n feel
This commit is contained in:
44
workflow/engine/methods/cases/casesSchedulerLog_Ajax.php
Normal file
44
workflow/engine/methods/cases/casesSchedulerLog_Ajax.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
/**
|
||||
* casesSchedulerLog_Ajax.php
|
||||
*
|
||||
* ProcessMaker Open Source Edition
|
||||
* Copyright (C) 2004 - 2008 Colosa Inc.23
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*
|
||||
*/
|
||||
//if (($RBAC_Response=$RBAC->userCanAccess("PM_USERS"))!=1) return $RBAC_Response;
|
||||
G::LoadInclude('ajax');
|
||||
$_POST['action'] = get_ajax_value('action');
|
||||
|
||||
switch ($_POST['action'])
|
||||
{
|
||||
case 'updatePageSize':
|
||||
G::LoadClass('configuration');
|
||||
$c = new Configurations();
|
||||
$arr['pageSize'] = $_REQUEST['size'];
|
||||
$arr['dateSave'] = date('Y-m-d H:i:s');
|
||||
$config = Array();
|
||||
$config[] = $arr;
|
||||
$c->aConfig = $config;
|
||||
$c->saveConfig('casesSchedulerLogList', 'pageSize','',$_SESSION['USER_LOGGED']);
|
||||
echo '{success: true}';
|
||||
break;
|
||||
break;
|
||||
}
|
||||
?>
|
||||
@@ -26,6 +26,10 @@
|
||||
if (($RBAC_Response=$RBAC->userCanAccess("PM_LOGIN"))!=1) return $RBAC_Response;
|
||||
|
||||
$G_PUBLISH = new Publisher;
|
||||
G::LoadClass('configuration');
|
||||
$c = new Configurations();
|
||||
$configPage = $c->getConfiguration('casesSchedulerLogList', 'pageSize','',$_SESSION['USER_LOGGED']);
|
||||
$Config['pageSize'] = isset($configPage['pageSize']) ? $configPage['pageSize'] : 20;
|
||||
|
||||
$oHeadPublisher =& headPublisher::getSingleton();
|
||||
|
||||
@@ -33,11 +37,9 @@ $oHeadPublisher =& headPublisher::getSingleton();
|
||||
$oHeadPublisher->addExtJsScript('cases/casesSchedulerLog', false); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent('cases/casesSchedulerLog'); //adding a html file .html.
|
||||
|
||||
$labels = G::getTranslations(Array('ID_DATE_LABEL','ID_TIME_LABEL','ID_USER','ID_RESULT', 'ID_CREATED_CASE_STATUS',
|
||||
'ID_ROUTED_CASE_STATUS','ID_CLOSE','ID_LOG_CASE_SCHEDULER','ID_VIEW','ID_TITLE_LOG_DETAIL','ID_ENTER_SEARCH_TERM','ID_SEARCH',
|
||||
'ID_SCHEDULER_TASK','ID_TASK_ID','ID_PROCESS_ID','ID_EXECUTION_DATE','ID_EXECUTION_HOUR','ID_EXECUTION_STATUS'));
|
||||
$oHeadPublisher->assign('CONFIG', $Config);
|
||||
|
||||
|
||||
$oHeadPublisher->assign('TRANSLATIONS', $labels);
|
||||
G::RenderPage('publish', 'extJs');
|
||||
|
||||
?>
|
||||
|
||||
@@ -25,10 +25,14 @@
|
||||
|
||||
require_once 'classes/model/LogCasesSchedulerPeer.php';
|
||||
require_once 'classes/model/LogCasesScheduler.php';
|
||||
G::LoadClass('configuration');
|
||||
|
||||
$co = new Configurations();
|
||||
$config = $co->getConfiguration('casesSchedulerLogList', 'pageSize','',$_SESSION['USER_LOGGED']);
|
||||
$limit_size = isset($config['pageSize']) ? $config['pageSize'] : 20;
|
||||
|
||||
$start = isset($_REQUEST['start'])? $_REQUEST['start'] : 0;
|
||||
$limit = isset($_REQUEST['limit'])? $_REQUEST['limit'] : 20;
|
||||
|
||||
$limit = isset($_REQUEST['limit'])? $_REQUEST['limit'] : $limit_size;
|
||||
$filter = (isset($_POST['textFilter'])) ? $_POST['textFilter'] : '';
|
||||
|
||||
$oCriteria = new Criteria('workflow');
|
||||
|
||||
@@ -32,20 +32,23 @@ var w;
|
||||
var viewButton;
|
||||
var searchButton;
|
||||
var contextMenu;
|
||||
var pageSize;
|
||||
|
||||
|
||||
Ext.onReady(function(){
|
||||
Ext.QuickTips.init();
|
||||
|
||||
pageSize = parseInt(CONFIG.pageSize);
|
||||
|
||||
viewButton = new Ext.Action({
|
||||
text: TRANSLATIONS.ID_VIEW,
|
||||
text: _('ID_VIEW'),
|
||||
iconCls: 'button_menu_ext ss_sprite ss_table',
|
||||
handler: ShowSelectedLog,
|
||||
disabled: true
|
||||
});
|
||||
|
||||
searchButton = new Ext.Action({
|
||||
text: TRANSLATIONS.ID_SEARCH,
|
||||
text: _('ID_SEARCH'),
|
||||
handler: DoSearch
|
||||
});
|
||||
|
||||
@@ -58,7 +61,7 @@ Ext.onReady(function(){
|
||||
ctCls:'pm_search_text_field',
|
||||
allowBlank: true,
|
||||
width: 150,
|
||||
emptyText: TRANSLATIONS.ID_ENTER_SEARCH_TERM,//'enter search term',
|
||||
emptyText: _('ID_ENTER_SEARCH_TERM'),//'enter search term',
|
||||
listeners: {
|
||||
specialkey: function(f,e){
|
||||
if (e.getKey() == e.ENTER) {
|
||||
@@ -81,22 +84,22 @@ Ext.onReady(function(){
|
||||
viewForm = new Ext.FormPanel({
|
||||
url: 'data_casesSchedulerLog',
|
||||
frame: true,
|
||||
title: TRANSLATIONS.ID_TITLE_LOG_DETAIL,
|
||||
title: _('ID_TITLE_LOG_DETAIL'),
|
||||
labelWidth: 150,
|
||||
items:[
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_SCHEDULER_TASK, id: 'stask', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_TASK_ID, id: 'task', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_PROCESS_ID, id: 'process', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_USER, id: 'user', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_EXECUTION_DATE, id: 'date', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_EXECUTION_HOUR, id: 'hour', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_EXECUTION_STATUS, id: 'status', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_CREATED_CASE_STATUS, id: 'cstatus', width: 250},
|
||||
{xtype: 'label', fieldLabel: TRANSLATIONS.ID_ROUTED_CASE_STATUS, id: 'rstatus', width: 250}
|
||||
{xtype: 'label', fieldLabel: _('ID_SCHEDULER_TASK'), id: 'stask', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_TASK_ID'), id: 'task', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_PROCESS_ID'), id: 'process', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_USER'), id: 'user', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_EXECUTION_DATE'), id: 'date', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_EXECUTION_HOUR'), id: 'hour', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_EXECUTION_STATUS'), id: 'status', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_CREATED_CASE_STATUS'), id: 'cstatus', width: 250},
|
||||
{xtype: 'label', fieldLabel: _('ID_ROUTED_CASE_STATUS'), id: 'rstatus', width: 250}
|
||||
],
|
||||
|
||||
buttons: [
|
||||
{text: TRANSLATIONS.ID_CLOSE, handler: CloseView}
|
||||
{text: _('ID_CLOSE'), handler: CloseView}
|
||||
]
|
||||
});
|
||||
|
||||
@@ -129,12 +132,12 @@ Ext.onReady(function(){
|
||||
},
|
||||
columns: [
|
||||
{id:'LOG_CASE_UID', dataIndex: 'LOG_CASE_UID', hidden:true, hideable:false},
|
||||
{header: TRANSLATIONS.ID_DATE_LABEL, dataIndex: 'EXEC_DATE', width: 30, align:'left'},
|
||||
{header: TRANSLATIONS.ID_TIME_LABEL, dataIndex: 'EXEC_HOUR', width: 30, hidden:false, align:'left'},
|
||||
{header: TRANSLATIONS.ID_USER, dataIndex: 'USR_NAME', width: 40, hidden:false, align:'left'},
|
||||
{header: TRANSLATIONS.ID_RESULT, dataIndex: 'RESULT', width: 40, hidden:false, align:'left'},
|
||||
{header: TRANSLATIONS.ID_CREATED_CASE_STATUS, dataIndex: 'WS_CREATE_CASE_STATUS', width: 80, hidden:false, align:'left'},
|
||||
{header: TRANSLATIONS.ID_ROUTED_CASE_STATUS, dataIndex: 'WS_ROUTE_CASE_STATUS', width: 80, hidden:false, align:'left'}
|
||||
{header: _('ID_DATE_LABEL'), dataIndex: 'EXEC_DATE', width: 30, align:'left'},
|
||||
{header: _('ID_TIME_LABEL'), dataIndex: 'EXEC_HOUR', width: 30, hidden:false, align:'left'},
|
||||
{header: _('ID_USER'), dataIndex: 'USR_NAME', width: 40, hidden:false, align:'left'},
|
||||
{header: _('ID_RESULT'), dataIndex: 'RESULT', width: 40, hidden:false, align:'left'},
|
||||
{header: _('ID_CREATED_CASE_STATUS'), dataIndex: 'WS_CREATE_CASE_STATUS', width: 80, hidden:false, align:'left'},
|
||||
{header: _('ID_ROUTED_CASE_STATUS'), dataIndex: 'WS_ROUTE_CASE_STATUS', width: 80, hidden:false, align:'left'}
|
||||
]
|
||||
});
|
||||
|
||||
@@ -150,13 +153,43 @@ Ext.onReady(function(){
|
||||
}
|
||||
});
|
||||
|
||||
storePageSize = new Ext.data.SimpleStore({
|
||||
fields: ['size'],
|
||||
data: [['20'],['30'],['40'],['50'],['100']],
|
||||
autoLoad: true
|
||||
});
|
||||
|
||||
comboPageSize = new Ext.form.ComboBox({
|
||||
typeAhead : false,
|
||||
mode : 'local',
|
||||
triggerAction : 'all',
|
||||
store: storePageSize,
|
||||
valueField: 'size',
|
||||
displayField: 'size',
|
||||
width: 50,
|
||||
editable: false,
|
||||
listeners:{
|
||||
select: function(c,d,i){
|
||||
UpdatePageConfig(d.data['size']);
|
||||
bbarpaging.pageSize = parseInt(d.data['size']);
|
||||
bbarpaging.moveFirst();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
comboPageSize.setValue(pageSize);
|
||||
|
||||
bbarpaging = new Ext.PagingToolbar({
|
||||
pageSize: 20,
|
||||
store: store
|
||||
pageSize: pageSize,
|
||||
store: store,
|
||||
displayInfo: true,
|
||||
displayMsg: _('ID_GRID_PAGE_DISPLAYING_ROWS_MESSAGE') + ' ',
|
||||
emptyMsg: _('ID_GRID_PAGE_NO_ROWS_MESSAGE'),
|
||||
items: ['-',_('ID_PAGE_SIZE')+':',comboPageSize]
|
||||
});
|
||||
|
||||
infoGrid = new Ext.grid.GridPanel({
|
||||
title : TRANSLATIONS.ID_LOG_CASE_SCHEDULER,
|
||||
title : _('ID_LOG_CASE_SCHEDULER'),
|
||||
region: 'center',
|
||||
layout: 'fit',
|
||||
id: 'infoGrid',
|
||||
@@ -167,7 +200,6 @@ Ext.onReady(function(){
|
||||
enableColumnResize: true,
|
||||
enableHdMenu: true,
|
||||
frame:false,
|
||||
iconCls:'icon-grid',
|
||||
columnLines: false,
|
||||
viewConfig: {
|
||||
forceFit:true
|
||||
@@ -176,7 +208,7 @@ Ext.onReady(function(){
|
||||
cm: cmodel,
|
||||
sm: smodel,
|
||||
tbar: [viewButton,{xtype: 'tbfill'},searchText,clearTextButton,searchButton],
|
||||
bbar: [{xtype: 'tbfill'}, bbarpaging],
|
||||
bbar: bbarpaging,
|
||||
listeners: {
|
||||
rowdblclick: ShowSelectedLog
|
||||
},
|
||||
@@ -238,10 +270,11 @@ ShowSelectedLog = function(){
|
||||
Ext.getCmp('cstatus').setText(rowSelected.data.WS_CREATE_CASE_STATUS);
|
||||
Ext.getCmp('rstatus').setText(rowSelected.data.WS_ROUTE_CASE_STATUS);
|
||||
w = new Ext.Window({
|
||||
height: 320,
|
||||
autoHeight: true,
|
||||
width: 550,
|
||||
resizable: false,
|
||||
closable: false,
|
||||
modal: true,
|
||||
items: [viewForm]
|
||||
});
|
||||
w.show();
|
||||
@@ -265,4 +298,12 @@ DoSearch = function(){
|
||||
infoGrid.store.load({params: {textFilter: searchText.getValue()}});
|
||||
}
|
||||
|
||||
//Update Page Size Configuration
|
||||
UpdatePageConfig = function(pageSize){
|
||||
Ext.Ajax.request({
|
||||
url: 'casesSchedulerLog_Ajax',
|
||||
params: {action:'updatePageSize', size: pageSize}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user