From 00eb0511f6a8117d7ee7e4d2936548f2de6c0665 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 13 Apr 2019 12:41:50 +0200 Subject: [PATCH] Make code simpler to sort list of files. --- htdocs/core/ajax/ajaxdirpreview.php | 6 +++--- htdocs/core/lib/files.lib.php | 10 ++-------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/htdocs/core/ajax/ajaxdirpreview.php b/htdocs/core/ajax/ajaxdirpreview.php index 7848257073a..4490d7bff3c 100644 --- a/htdocs/core/ajax/ajaxdirpreview.php +++ b/htdocs/core/ajax/ajaxdirpreview.php @@ -164,9 +164,9 @@ if (! dol_is_dir($upload_dir)) print ''."\n"; //print ''."\n"; -$param=($sortfield?'&sortfield='.$sortfield:'').($sortorder?'&sortorder='.$sortorder:''); -if (! empty($websitekey)) $param.='&website='.$websitekey; -if (! empty($pageid)) $param.='&pageid='.$pageid; +$param=($sortfield?'&sortfield='.urlencode($sortfield):'').($sortorder?'&sortorder='.urlencode($sortorder):''); +if (! empty($websitekey)) $param.='&website='.urlencode($websitekey); +if (! empty($pageid)) $param.='&pageid='.urlencode($pageid); // Dir scan diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 8e08c3b8096..dd96cfdb31f 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -195,15 +195,9 @@ function dol_dir_list($path, $types = "all", $recursive = 0, $filter = "", $excl closedir($dir); // Obtain a list of columns - if (! empty($sortcriteria)) + if (! empty($sortcriteria) && $sortorder) { - $myarray=array(); - foreach ($file_list as $key => $row) - { - $myarray[$key] = (isset($row[$sortcriteria])?$row[$sortcriteria]:''); - } - // Sort the data - if ($sortorder) array_multisort($myarray, $sortorder, $file_list); + $file_list = dol_sort_array($file_list, $sortcriteria, ($sortorder == SORT_ASC ? 'asc' : 'desc')); } } }