From c7ea75bdfb88c986483dd3bc40be4b73e618fa6b Mon Sep 17 00:00:00 2001 From: jennylee Date: Thu, 14 Nov 2013 17:28:59 -0400 Subject: [PATCH] BUG-13396 Ordenamiento en MessageHistory Se agrego el odenamiento de todo el listado en MessageHistory y no solo porpagina como estaba funcionando. --- workflow/engine/classes/class.case.php | 41 ++++++++++++------- .../templates/cases/caseMessageHistory.js | 1 + 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index da53de364..26608cd76 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -3904,13 +3904,6 @@ class Cases if (AppDelegationPeer::doCount($oCriteria) == 1) { $aFields['APP_STATUS'] = 'CANCELLED'; $oApplication->update($aFields); - - G::LoadClass('reportTables'); - require_once 'classes/model/AdditionalTables.php'; - $oReportTables = new ReportTables(); - $addtionalTables = new additionalTables(); - $oReportTables->updateTables($aFields['PRO_UID'], $aFields['APP_UID'], $aFields['APP_NUMBER'], $aFields['APP_DATA']); - $addtionalTables->updateReportTables($aFields['PRO_UID'], $aFields['APP_UID'], $aFields['APP_NUMBER'], $aFields['APP_DATA'], $aFields['APP_STATUS']); } $this->CloseCurrentDelegation($sApplicationUID, $iIndex); $oAppDel = new AppDelegation(); @@ -5908,12 +5901,7 @@ class Cases $oCriteria->add(AppMessagePeer::APP_MSG_SHOW_MESSAGE, 1); } $oCriteria->addAscendingOrderByColumn(AppMessagePeer::APP_MSG_DATE); - if (!is_null($start)) { - $oCriteria->setOffset($start); - } - if (!is_null($limit)) { - $oCriteria->setLimit($limit); - } + $oDataset = AppMessagePeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next(); @@ -5946,7 +5934,9 @@ class Cases $oCriteria = new Criteria('dbarray'); $oCriteria->setDBArrayTable('messages'); - + + usort( $aMessages, 'ordProcess' ); + $aMessages = array_splice($aMessages, $start, $limit); return $aMessages; } @@ -6761,3 +6751,26 @@ class Cases } } } + +function ordProcess ($a, $b) +{ + if (isset($_POST['sort'])) { + if ($_POST['dir']=='ASC') { + if ($a[$_POST['sort']] > $b[$_POST['sort']]) { + return 1; + } elseif ($a[$_POST['sort']] < $b[$_POST['sort']]) { + return - 1; + } else { + return 0; + } + } else { + if ($a[$_POST['sort']] > $b[$_POST['sort']]) { + return - 1; + } elseif ($a[$_POST['sort']] < $b[$_POST['sort']]) { + return 1; + } else { + return 0; + } + } + } +} diff --git a/workflow/engine/templates/cases/caseMessageHistory.js b/workflow/engine/templates/cases/caseMessageHistory.js index 70c3d929b..365273d2e 100644 --- a/workflow/engine/templates/cases/caseMessageHistory.js +++ b/workflow/engine/templates/cases/caseMessageHistory.js @@ -328,6 +328,7 @@ var ActionTabFrameGlobal = ''; function messageHistoryGridList(){ store = new Ext.data.GroupingStore({ + remoteSort: true, proxy : new Ext.data.HttpProxy ( {