BUG-15020 Pagination toolbar is not refreshing when when... SOLVED
- The search was done locally. - the criteria was added in order to make the search by filename and user.
This commit is contained in:
@@ -185,7 +185,7 @@ class AppFolder extends BaseAppFolder
|
|||||||
* @param string(32) $folderID
|
* @param string(32) $folderID
|
||||||
* @return multitype:
|
* @return multitype:
|
||||||
*/
|
*/
|
||||||
public function getFolderList ($folderID, $limit = 0, $start = 0)
|
public function getFolderList ($folderID, $limit = 0, $start = 0, $direction = 'ASC', $sort = "appDocCreateDate", $search = null)
|
||||||
{
|
{
|
||||||
$Criteria = new Criteria( 'workflow' );
|
$Criteria = new Criteria( 'workflow' );
|
||||||
$Criteria->clearSelectColumns()->clearOrderByColumns();
|
$Criteria->clearSelectColumns()->clearOrderByColumns();
|
||||||
@@ -195,7 +195,29 @@ class AppFolder extends BaseAppFolder
|
|||||||
$Criteria->addSelectColumn( AppFolderPeer::FOLDER_CREATE_DATE );
|
$Criteria->addSelectColumn( AppFolderPeer::FOLDER_CREATE_DATE );
|
||||||
$Criteria->addSelectColumn( AppFolderPeer::FOLDER_UPDATE_DATE );
|
$Criteria->addSelectColumn( AppFolderPeer::FOLDER_UPDATE_DATE );
|
||||||
$Criteria->add( appFolderPeer::FOLDER_PARENT_UID, $folderID, CRITERIA::EQUAL );
|
$Criteria->add( appFolderPeer::FOLDER_PARENT_UID, $folderID, CRITERIA::EQUAL );
|
||||||
$Criteria->addAscendingOrderByColumn( AppFolderPeer::FOLDER_NAME );
|
|
||||||
|
if ($search) {
|
||||||
|
$Criteria->add(
|
||||||
|
$Criteria->getNewCriterion( AppFolderPeer::FOLDER_NAME, '%' . $search . '%', Criteria::LIKE )
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
switch($sort) {
|
||||||
|
case 'appDocCreateDate' :
|
||||||
|
$ColumnSort = AppFolderPeer::FOLDER_CREATE_DATE;
|
||||||
|
break;
|
||||||
|
case 'name' :
|
||||||
|
$ColumnSort = AppFolderPeer::FOLDER_NAME;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if($direction == 'ASC') {
|
||||||
|
$Criteria->addAscendingOrderByColumn( $ColumnSort );
|
||||||
|
} else {
|
||||||
|
$Criteria->addDescendingOrderByColumn( $ColumnSort );
|
||||||
|
}
|
||||||
|
|
||||||
$response['folders'] = array ();
|
$response['folders'] = array ();
|
||||||
|
|
||||||
@@ -264,7 +286,7 @@ class AppFolder extends BaseAppFolder
|
|||||||
return $folderArray;
|
return $folderArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getFolderContent ($folderID, $docIdFilter = array(), $keyword = null, $searchType = null, $limit = 0, $start = 0, $user = '', $onlyActive = false)
|
public function getFolderContent ($folderID, $docIdFilter = array(), $keyword = null, $searchType = null, $limit = 0, $start = 0, $user = '', $onlyActive = false, $search = null)
|
||||||
{
|
{
|
||||||
//require_once ("classes/model/AppDocument.php");
|
//require_once ("classes/model/AppDocument.php");
|
||||||
//require_once ("classes/model/InputDocument.php");
|
//require_once ("classes/model/InputDocument.php");
|
||||||
@@ -278,6 +300,21 @@ class AppFolder extends BaseAppFolder
|
|||||||
|
|
||||||
$oAppDocument = new AppDocument();
|
$oAppDocument = new AppDocument();
|
||||||
$oCriteria = new Criteria();
|
$oCriteria = new Criteria();
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_UID);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::DOC_VERSION);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_UID);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::DEL_INDEX);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::DOC_UID);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::USR_UID);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_TYPE);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_CREATE_DATE);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_INDEX);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::FOLDER_UID);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_PLUGIN);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_TAGS);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_STATUS);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_STATUS_DATE);
|
||||||
|
$oCriteria->addSelectColumn( AppDocumentPeer::APP_DOC_FIELDNAME);
|
||||||
|
|
||||||
if ((is_array( $docIdFilter )) && (count( $docIdFilter ) > 0)) {
|
if ((is_array( $docIdFilter )) && (count( $docIdFilter ) > 0)) {
|
||||||
//Search by App Doc UID no matter what Folder it is
|
//Search by App Doc UID no matter what Folder it is
|
||||||
@@ -321,6 +358,24 @@ class AppFolder extends BaseAppFolder
|
|||||||
$oCriteria->add( AppDocumentPeer::APP_DOC_STATUS, 'ACTIVE' );
|
$oCriteria->add( AppDocumentPeer::APP_DOC_STATUS, 'ACTIVE' );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$oCriteria->addSelectColumn( ContentPeer::CON_VALUE . ' AS NAME');
|
||||||
|
$oCriteria->add( ContentPeer::CON_CATEGORY, "APP_DOC_FILENAME");
|
||||||
|
$oCriteria->add( ContentPeer::CON_LANG, SYS_LANG);
|
||||||
|
$oCriteria->addJoin( AppDocumentPeer::APP_DOC_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN );
|
||||||
|
|
||||||
|
$oCriteria->addSelectColumn( UsersPeer::USR_FIRSTNAME);
|
||||||
|
$oCriteria->addSelectColumn( UsersPeer::USR_LASTNAME);
|
||||||
|
$oCriteria->addJoin( AppDocumentPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN );
|
||||||
|
|
||||||
|
if ($search) {
|
||||||
|
$oCriteria->add(
|
||||||
|
$oCriteria->getNewCriterion( ContentPeer::CON_VALUE, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( AppDocumentPeer::APP_DOC_CREATE_DATE, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( UsersPeer::USR_FIRSTNAME, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( UsersPeer::USR_LASTNAME, '%' . $search . '%', Criteria::LIKE ))))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
$numRecTotal = AppDocumentPeer::doCount($oCriteria);
|
$numRecTotal = AppDocumentPeer::doCount($oCriteria);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -388,7 +443,7 @@ class AppFolder extends BaseAppFolder
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDirectoryContentSortedBy ($folderID, $docIdFilter = array(), $keyword = null, $searchType = null, $limit = 0, $start = 0, $user = '', $onlyActive = false, $direction = 'ASC', $ColumnSort = 'appDocCreateDate')
|
public function getDirectoryContentSortedBy ($folderID, $docIdFilter = array(), $keyword = null, $searchType = null, $limit = 0, $start = 0, $user = '', $onlyActive = false, $direction = 'ASC', $ColumnSort = 'appDocCreateDate', $search = null)
|
||||||
{
|
{
|
||||||
G::LoadClass( 'case' );
|
G::LoadClass( 'case' );
|
||||||
$oCase = new Cases();
|
$oCase = new Cases();
|
||||||
@@ -461,6 +516,19 @@ class AppFolder extends BaseAppFolder
|
|||||||
$oCriteria->add( ContentPeer::CON_LANG, SYS_LANG);
|
$oCriteria->add( ContentPeer::CON_LANG, SYS_LANG);
|
||||||
$oCriteria->addJoin( AppDocumentPeer::APP_DOC_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN );
|
$oCriteria->addJoin( AppDocumentPeer::APP_DOC_UID, ContentPeer::CON_ID, Criteria::LEFT_JOIN );
|
||||||
|
|
||||||
|
$oCriteria->addSelectColumn( UsersPeer::USR_FIRSTNAME);
|
||||||
|
$oCriteria->addSelectColumn( UsersPeer::USR_LASTNAME);
|
||||||
|
$oCriteria->addJoin( AppDocumentPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN );
|
||||||
|
|
||||||
|
if ($search) {
|
||||||
|
$oCriteria->add(
|
||||||
|
$oCriteria->getNewCriterion( ContentPeer::CON_VALUE, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( AppDocumentPeer::APP_DOC_CREATE_DATE, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( UsersPeer::USR_FIRSTNAME, '%' . $search . '%', Criteria::LIKE )->
|
||||||
|
addOr( $oCriteria->getNewCriterion( UsersPeer::USR_LASTNAME, '%' . $search . '%', Criteria::LIKE ))))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
$numRecTotal = AppDocumentPeer::doCount($oCriteria);
|
$numRecTotal = AppDocumentPeer::doCount($oCriteria);
|
||||||
|
|
||||||
$oCase->verifyTable();
|
$oCase->verifyTable();
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ if (! isset ($_SESSION ['USER_LOGGED'])) {
|
|||||||
die ();
|
die ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$search = isset($_REQUEST ['search']) ? $_REQUEST ['search'] : null;
|
||||||
|
|
||||||
if (isset ($_REQUEST ['action']) && isset($_REQUEST['sort']) && isset($_REQUEST['dir'])) {
|
if (isset ($_REQUEST ['action']) && isset($_REQUEST['sort']) && isset($_REQUEST['dir'])) {
|
||||||
sortContent();
|
sortContent();
|
||||||
}
|
}
|
||||||
@@ -198,7 +200,8 @@ function expandNode()
|
|||||||
$limit,
|
$limit,
|
||||||
$start,
|
$start,
|
||||||
$user,
|
$user,
|
||||||
true
|
true,
|
||||||
|
$search
|
||||||
);
|
);
|
||||||
|
|
||||||
$folderContent=$folderContentObj['documents'];
|
$folderContent=$folderContentObj['documents'];
|
||||||
@@ -499,7 +502,10 @@ function sortContent()
|
|||||||
$folderListObj = $oPMFolder->getFolderList(
|
$folderListObj = $oPMFolder->getFolderList(
|
||||||
($_POST["node"] != "root")? (($_POST["node"] == "NA")? "" : $_POST["node"]) : $rootFolder,
|
($_POST["node"] != "root")? (($_POST["node"] == "NA")? "" : $_POST["node"]) : $rootFolder,
|
||||||
$limit,
|
$limit,
|
||||||
$start
|
$start,
|
||||||
|
$direction,
|
||||||
|
(isset($_POST["sort"]))? $_POST["sort"]:"appDocCreateDate",
|
||||||
|
$search
|
||||||
);
|
);
|
||||||
|
|
||||||
$folderList=$folderListObj['folders'];
|
$folderList=$folderListObj['folders'];
|
||||||
@@ -522,7 +528,8 @@ function sortContent()
|
|||||||
$user,
|
$user,
|
||||||
true,
|
true,
|
||||||
$direction,
|
$direction,
|
||||||
(isset($_POST["sort"]))? $_POST["sort"]:"appDocCreateDate"
|
(isset($_POST["sort"]))? $_POST["sort"]:"appDocCreateDate",
|
||||||
|
$search
|
||||||
);
|
);
|
||||||
|
|
||||||
$folderContent = $folderContentObj['documents'];
|
$folderContent = $folderContentObj['documents'];
|
||||||
|
|||||||
@@ -1153,17 +1153,16 @@ var gridtb = new Ext.Toolbar(
|
|||||||
handler : function() {
|
handler : function() {
|
||||||
datastore.clearFilter();
|
datastore.clearFilter();
|
||||||
Ext.getCmp("filterField").setValue("");
|
Ext.getCmp("filterField").setValue("");
|
||||||
|
datastore.setBaseParam( 'search', '');
|
||||||
|
datastore.load({params:{ start : 0 , limit : 100 }});
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
]);
|
]);
|
||||||
function filterDataStore(btn, e) {
|
function filterDataStore(btn, e) {
|
||||||
var filterVal = Ext.getCmp("filterField").getValue();
|
var filterVal = Ext.getCmp("filterField").getValue();
|
||||||
if (filterVal.length > 1) {
|
datastore.setBaseParam( 'search', filterVal);
|
||||||
datastore.filter('name', eval('/' + filterVal + '/gi'));
|
datastore.load({params:{ start : 0 , limit : 100 }});
|
||||||
} else {
|
|
||||||
datastore.clearFilter();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// add a paging toolbar to the grid's footer
|
// add a paging toolbar to the grid's footer
|
||||||
var gridbb = new Ext.PagingToolbar({
|
var gridbb = new Ext.PagingToolbar({
|
||||||
|
|||||||
Reference in New Issue
Block a user