diff options
author | kondou <kondou@ts.unde.re> | 2013-09-12 00:21:01 +0200 |
---|---|---|
committer | kondou <kondou@ts.unde.re> | 2013-09-12 00:21:01 +0200 |
commit | 4d62f747fadaea09c9f8a25cf24c2b6d12f7ee2a (patch) | |
tree | 8806aa2ea2d537bc4b3854c49cd9c095b2424702 | |
parent | 83d3df41117b1886cb728a79cb80f4722cc118c9 (diff) | |
download | nextcloud-server-4d62f747fadaea09c9f8a25cf24c2b6d12f7ee2a.tar.gz nextcloud-server-4d62f747fadaea09c9f8a25cf24c2b6d12f7ee2a.zip |
Clean up rawlist.php and fix non-array request
-rw-r--r-- | apps/files/ajax/rawlist.php | 50 |
1 files changed, 30 insertions, 20 deletions
diff --git a/apps/files/ajax/rawlist.php b/apps/files/ajax/rawlist.php index 23d9926b9fc..e9ae1f5305f 100644 --- a/apps/files/ajax/rawlist.php +++ b/apps/files/ajax/rawlist.php @@ -11,46 +11,56 @@ OCP\JSON::checkLoggedIn(); // Load the files $dir = isset( $_GET['dir'] ) ? $_GET['dir'] : ''; -$mimetypes = isset($_GET['mimetypes']) ? array_unique(json_decode($_GET['mimetypes'], true)) : ''; +$mimetypes = isset($_GET['mimetypes']) ? json_decode($_GET['mimetypes'], true) : ''; + +// Clean up duplicates from array and deal with non-array requests +if (is_array($mimetypes)) { + $mimetypes = array_unique($mimetypes); +} elseif (is_null($mimetypes)) { + $mimetypes = array($_GET['mimetypes']); +} // make filelist $files = array(); // If a type other than directory is requested first load them. if($mimetypes && !in_array('httpd/unix-directory', $mimetypes)) { - foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, 'httpd/unix-directory' ) as $i ) { - $i["date"] = OCP\Util::formatDate($i["mtime"] ); - $i['mimetype_icon'] = \mimetype_icon('dir'); - $files[] = $i; + foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, 'httpd/unix-directory' ) as $file ) { + $file["date"] = OCP\Util::formatDate($file["mtime"]); + $file['mimetype_icon'] = \mimetype_icon('dir'); + $files[] = $file; } } if (is_array($mimetypes) && count($mimetypes)) { foreach ($mimetypes as $mimetype) { - foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, $mimetype ) as $i ) { - $i["date"] = OCP\Util::formatDate($i["mtime"]); - $i['mimetype_icon'] = $i['type'] === 'dir' ? - \mimetype_icon('dir') : - \mimetype_icon($i['mimetype']); - $files[] = $i; + foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, $mimetype ) as $file ) { + $file["date"] = OCP\Util::formatDate($file["mtime"]); + if ($file['type'] === "dir") { + $file['mimetype_icon'] = \mimetype_icon('dir'); + } else { + $file['mimetype_icon'] = \mimetype_icon($file['mimetype']); + } + $files[] = $file; } } } else { - foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) { - $i["date"] = OCP\Util::formatDate($i["mtime"]); - $i['mimetype_icon'] = $i['type'] === 'dir' ? - \mimetype_icon('dir') : - \mimetype_icon($i['mimetype']); - $files[] = $i; + foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $file ) { + $file["date"] = OCP\Util::formatDate($file["mtime"]); + if ($file['type'] === "dir") { + $file['mimetype_icon'] = \mimetype_icon('dir'); + } else { + $file['mimetype_icon'] = \mimetype_icon($file['mimetype']); + } + $files[] = $file; } } // Sort by name -function cmp($a, $b) { +usort($files, function ($a, $b) { if ($a['name'] === $b['name']) { return 0; } return ($a['name'] < $b['name']) ? -1 : 1; -} -usort($files, 'cmp'); +}); OC_JSON::success(array('data' => $files)); |