initial support for alternative sort orders on the cloud pages. Can be triggered manually but further development is required.

This commit is contained in:
zotlabs
2018-03-21 21:19:18 -07:00
parent dc066d4c9b
commit 1514b0f4e5
3 changed files with 24 additions and 1 deletions

View File

@@ -691,7 +691,23 @@ class Directory extends DAV\Node implements DAV\ICollection, DAV\IQuota, DAV\IMo
}
$prefix = '';
$suffix = ' order by is_dir desc, filename asc ';
if(! array_key_exists('cloud_sort',$_SESSION))
$_SESSION['cloud_sort'] = 'name';
switch($_SESSION['cloud_sort']) {
case 'size':
$suffix = ' order by is_dir desc, filesize asc ';
break;
// The following provides inconsistent results for directories because we re-calculate the date for directories based on the most recent change
case 'date':
$suffix = ' order by is_dir desc, edited asc ';
break;
case 'name':
default:
$suffix = ' order by is_dir desc, filename asc ';
break;
}
$r = q("select $prefix id, uid, hash, filename, filetype, filesize, revision, folder, flags, is_dir, created, edited from attach where folder = '%s' and uid = %d $perms $suffix",
dbesc($folder),