add icons for sort field and sort order in list of folders/docs

This commit is contained in:
Uwe Steinmann 2019-06-24 11:54:08 +02:00
parent 414f00c5c9
commit 53134c346a
2 changed files with 23 additions and 14 deletions

View File

@ -1584,10 +1584,11 @@ $(document).ready(function() {
*/
function printNewTreeNavigationJs($folderid=0, $accessmode=M_READ, $showdocs=0, $formid='form1', $expandtree=0, $orderby='') { /* {{{ */
function jqtree($path, $folder, $user, $accessmode, $showdocs=1, $expandtree=0, $orderby='', $level=0) {
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
if($path || $expandtree>=$level) {
if($path)
$pathfolder = array_shift($path);
$subfolders = $folder->getSubFolders($orderby);
$subfolders = $folder->getSubFolders($orderby[0], $orderdir);
$subfolders = SeedDMS_Core_DMS::filterAccess($subfolders, $user, $accessmode);
$children = array();
foreach($subfolders as $subfolder) {
@ -1595,7 +1596,7 @@ $(document).ready(function() {
if($expandtree>=$level || $pathfolder->getID() == $subfolder->getID()) {
$node['children'] = jqtree($path, $subfolder, $user, $accessmode, $showdocs, $expandtree, $orderby, $level+1);
if($showdocs) {
$documents = $subfolder->getDocuments($orderby);
$documents = $subfolder->getDocuments($orderby[0], $orderdir);
$documents = SeedDMS_Core_DMS::filterAccess($documents, $user, $accessmode);
foreach($documents as $document) {
$node2 = array('label'=>$document->getName(), 'id'=>$document->getID(), 'load_on_demand'=>false, 'is_folder'=>false);
@ -1607,7 +1608,7 @@ $(document).ready(function() {
}
return $children;
} else {
$subfolders = $folder->getSubFolders($orderby);
$subfolders = $folder->getSubFolders($orderby[0], $orderdir);
$subfolders = SeedDMS_Core_DMS::filterAccess($subfolders, $user, $accessmode);
$children = array();
foreach($subfolders as $subfolder) {
@ -1619,6 +1620,7 @@ $(document).ready(function() {
return array();
}
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
if($folderid) {
$folder = $this->params['dms']->getFolder($folderid);
$path = $folder->getPath();
@ -1631,7 +1633,7 @@ $(document).ready(function() {
} else {
$node['children'] = jqtree($path, $folder, $this->params['user'], $accessmode, $showdocs, $expandtree, $orderby, 0);
if($showdocs) {
$documents = $folder->getDocuments($orderby);
$documents = $folder->getDocuments($orderby[0], $orderdir);
$documents = SeedDMS_Core_DMS::filterAccess($documents, $this->params['user'], $accessmode);
foreach($documents as $document) {
$node2 = array('label'=>$document->getName(), 'id'=>$document->getID(), 'load_on_demand'=>false, 'is_folder'=>false);

View File

@ -87,6 +87,7 @@ class SeedDMS_View_ViewFolder extends SeedDMS_Bootstrap_Style {
$user = $this->params['user'];
$folder = $this->params['folder'];
$orderby = $this->params['orderby'];
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
$expandFolderTree = $this->params['expandFolderTree'];
$enableDropUpload = $this->params['enableDropUpload'];
$maxItemsPerPage = $this->params['maxItemsPerPage'];
@ -155,6 +156,7 @@ $('#loadmore').click(function(e) {
$user = $this->params['user'];
$folder = $this->params['folder'];
$orderby = $this->params['orderby'];
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
$cachedir = $this->params['cachedir'];
$previewwidth = $this->params['previewWidthList'];
$previewconverters = $this->params['previewConverters'];
@ -168,13 +170,13 @@ $('#loadmore').click(function(e) {
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
$previewer->setConverters($previewconverters);
$subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby);
$subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby[0]);
if($subFolders === null)
$subFolders = $folder->getSubFolders($orderby);
$subFolders = $folder->getSubFolders($orderby[0], $orderdir);
$subFolders = SeedDMS_Core_DMS::filterAccess($subFolders, $user, M_READ);
$documents = $this->callHook('folderGetDocuments', $folder, $orderby);
$documents = $this->callHook('folderGetDocuments', $folder, $orderby[0]);
if($documents === null)
$documents = $folder->getDocuments($orderby);
$documents = $folder->getDocuments($orderby[0], $orderdir);
$documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ);
$content = '';
@ -226,6 +228,7 @@ $('#loadmore').click(function(e) {
$user = $this->params['user'];
$folder = $this->params['folder'];
$orderby = $this->params['orderby'];
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
$enableFolderTree = $this->params['enableFolderTree'];
$enableClipboard = $this->params['enableclipboard'];
$enableDropUpload = $this->params['enableDropUpload'];
@ -399,13 +402,13 @@ $('#loadmore').click(function(e) {
else
$this->contentHeading(getMLText("folder_contents"));
$subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby);
$subFolders = $this->callHook('folderGetSubFolders', $folder, $orderby[0], $orderdir);
if($subFolders === null)
$subFolders = $folder->getSubFolders($orderby);
$subFolders = $folder->getSubFolders($orderby[0], $orderdir);
$subFolders = SeedDMS_Core_DMS::filterAccess($subFolders, $user, M_READ);
$documents = $this->callHook('folderGetDocuments', $folder, $orderby);
$documents = $this->callHook('folderGetDocuments', $folder, $orderby[0], $orderdir);
if($documents === null)
$documents = $folder->getDocuments($orderby);
$documents = $folder->getDocuments($orderby[0], $orderdir);
$documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ);
$txt = $this->callHook('folderListPreContent', $folder, $subFolders, $documents);
@ -413,14 +416,18 @@ $('#loadmore').click(function(e) {
echo $txt;
$i = 0;
if ((count($subFolders) > 0)||(count($documents) > 0)){
$txt = $this->callHook('folderListHeader', $folder, $orderby);
$txt = $this->callHook('folderListHeader', $folder, $orderby, $orderdir);
if(is_string($txt))
echo $txt;
else {
print "<table id=\"viewfolder-table\" class=\"table table-condensed table-hover\">";
print "<thead>\n<tr>\n";
print "<th></th>\n";
print "<th><a href=\"../out/out.ViewFolder.php?folderid=". $folderid .($orderby=="n"?"&orderby=s":"&orderby=n")."\">".getMLText("name")."</a></th>\n";
print "<th>".getMLText("name");
print " <a href=\"../out/out.ViewFolder.php?folderid=". $folderid .($orderby=="n"||$orderby=="na"?"&orderby=nd":"&orderby=n")."\" title=\"".getMLText("sort_by_name")."\">".($orderby=="n"||$orderby=="na"?' <i class="icon-sort-by-alphabet selected"></i>':($orderby=="nd"?' <i class="icon-sort-by-alphabet-alt selected"></i>':' <i class="icon-sort-by-alphabet"></i>'))."</a>";
print " <a href=\"../out/out.ViewFolder.php?folderid=". $folderid .($orderby=="s"||$orderby=="sa"?"&orderby=sd":"&orderby=s")."\" title=\"".getMLText("sort_by_sequence")."\">".($orderby=="s"||$orderby=="sa"?' <i class="icon-sort-by-order selected"></i>':($orderby=="sd"?' <i class="icon-sort-by-order-alt selected"></i>':' <i class="icon-sort-by-order"></i>'))."</a>";
print " <a href=\"../out/out.ViewFolder.php?folderid=". $folderid .($orderby=="d"||$orderby=="da"?"&orderby=dd":"&orderby=d")."\" title=\"".getMLText("sort_by_date")."\">".($orderby=="d"||$orderby=="da"?' <i class="icon-sort-by-attributes selected"></i>':($orderby=="dd"?' <i class="icon-sort-by-attributes-alt selected"></i>':' <i class="icon-sort-by-attributes"></i>'))."</a>";
print "</th>\n";
// print "<th>".getMLText("owner")."</th>\n";
print "<th>".getMLText("status")."</th>\n";
// print "<th>".getMLText("version")."</th>\n";