mirror of
https://codeberg.org/SeedDMS/paperless
synced 2025-02-06 06:55:28 +00:00
distinguish between rootfolder and startfolder
This commit is contained in:
parent
111e842645
commit
59084a1ddd
|
@ -407,19 +407,19 @@ class SeedDMS_ExtPaperless_RestAPI_Controller { /* {{{ */
|
||||||
$logger->log(var_export($params, true), PEAR_LOG_DEBUG);
|
$logger->log(var_export($params, true), PEAR_LOG_DEBUG);
|
||||||
|
|
||||||
if(!empty($settings->_extensions['paperless']['usehomefolder'])) {
|
if(!empty($settings->_extensions['paperless']['usehomefolder'])) {
|
||||||
if(!($startfolder = $dms->getFolder((int) $userobj->getHomeFolder())))
|
if(!($rootfolder = $dms->getFolder((int) $userobj->getHomeFolder())))
|
||||||
$startfolder = $dms->getFolder($settings->_rootFolderID);
|
$rootfolder = $dms->getFolder($settings->_rootFolderID);
|
||||||
} elseif(!isset($settings->_extensions['paperless']['rootfolder']) || !($startfolder = $dms->getFolder($settings->_extensions['paperless']['rootfolder'])))
|
} elseif(!isset($settings->_extensions['paperless']['rootfolder']) || !($rootfolder = $dms->getFolder($settings->_extensions['paperless']['rootfolder'])))
|
||||||
$startfolder = $dms->getFolder($settings->_rootFolderID);
|
$rootfolder = $dms->getFolder($settings->_rootFolderID);
|
||||||
|
$startfolder = $rootfolder;
|
||||||
|
|
||||||
$logger->log('Searching for documents in folder '.$startfolder->getId(), PEAR_LOG_DEBUG);
|
$logger->log('Searching for documents in folder '.$rootfolder->getId(), PEAR_LOG_DEBUG);
|
||||||
|
|
||||||
$fullsearch = true;
|
$fullsearch = true;
|
||||||
$query = '';
|
$query = '';
|
||||||
$astart = 0;
|
$astart = 0;
|
||||||
$aend = 0;
|
$aend = 0;
|
||||||
if($fullsearch) {
|
if($fullsearch) {
|
||||||
// print_r($params);
|
|
||||||
if (isset($params["query"]) && is_string($params["query"])) {
|
if (isset($params["query"]) && is_string($params["query"])) {
|
||||||
$queryparts = explode(',', $params["query"]);
|
$queryparts = explode(',', $params["query"]);
|
||||||
foreach($queryparts as $querypart) {
|
foreach($queryparts as $querypart) {
|
||||||
|
@ -525,28 +525,29 @@ class SeedDMS_ExtPaperless_RestAPI_Controller { /* {{{ */
|
||||||
$truncate_content = isset($params['truncate_content']) && ($params['truncate_content'] == 'true');
|
$truncate_content = isset($params['truncate_content']) && ($params['truncate_content'] == 'true');
|
||||||
$index = $fulltextservice->Indexer();
|
$index = $fulltextservice->Indexer();
|
||||||
if($index) {
|
if($index) {
|
||||||
$limit = isset($params['page_size']) ? (int) $params['page_size'] : 25;
|
|
||||||
$page = (isset($params['page']) && $params['page'] > 0) ? (int) $params['page'] : 1;
|
|
||||||
$offset = ($page-1)*$limit;
|
$offset = ($page-1)*$limit;
|
||||||
$logger->log('Query is '.$query, PEAR_LOG_DEBUG);
|
$logger->log('Query is '.$query, PEAR_LOG_DEBUG);
|
||||||
$lucenesearch = $fulltextservice->Search();
|
$lucenesearch = $fulltextservice->Search();
|
||||||
$searchresult = $lucenesearch->search($query, array('record_type'=>['document'], 'user'=>[$userobj->getLogin()], 'category'=>$categorynames, 'created_start'=>$astart, 'created_end'=>$aend, 'startFolder'=>$startfolder, 'rootFolder'=>$startfolder), array('limit'=>$limit, 'offset'=>$offset), $order);
|
$searchresult = $lucenesearch->search($query, array('record_type'=>['document'], 'user'=>[$userobj->getLogin()], 'category'=>$categorynames, 'created_start'=>$astart, 'created_end'=>$aend, 'startFolder'=>$startfolder, 'rootFolder'=>$rootfolder), array('limit'=>$limit, 'offset'=>$offset), $order);
|
||||||
if($searchresult) {
|
if($searchresult) {
|
||||||
$recs = array();
|
$recs = array();
|
||||||
$facets = $searchresult['facets'];
|
$facets = $searchresult['facets'];
|
||||||
$dcount = 0;
|
$dcount = 0;
|
||||||
$fcount = 0;
|
$fcount = 0;
|
||||||
if($searchresult['hits']) {
|
if($searchresult['hits']) {
|
||||||
|
$allids = '';
|
||||||
foreach($searchresult['hits'] as $hit) {
|
foreach($searchresult['hits'] as $hit) {
|
||||||
if($hit['document_id'][0] == 'D') {
|
if($hit['document_id'][0] == 'D') {
|
||||||
if($tmp = $dms->getDocument((int) substr($hit['document_id'], 1))) {
|
if($tmp = $dms->getDocument((int) substr($hit['document_id'], 1))) {
|
||||||
|
$allids .= $hit['document_id'].' ';
|
||||||
// if($tmp->getAccessMode($user) >= M_READ) {
|
// if($tmp->getAccessMode($user) >= M_READ) {
|
||||||
$tmp->verifyLastestContentExpriry();
|
// $tmp->verifyLastestContentExpriry();
|
||||||
$recs[] = $this->__getDocumentData($tmp, $truncate_content);
|
$recs[] = $this->__getDocumentData($tmp, $truncate_content);
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$logger->log('Result is '.$allids, PEAR_LOG_DEBUG);
|
||||||
}
|
}
|
||||||
if($offset + $limit < $searchresult['count']) {
|
if($offset + $limit < $searchresult['count']) {
|
||||||
$params['page'] = $page+1;
|
$params['page'] = $page+1;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user