"); while (($file=readdir($dirp)) !== false) { if ($file{0} == '.') continue; if (@$matchext && !preg_match(@$matchext, $file)) continue; $stat = stat("$uploaddir/$file"); $namelist[$file] = $file; preg_match('/[^.]+$/', $file, $matches); $typelist[$file] = $matches[0]; $sizelist[$file] = $stat['size']; $datelist[$file] = $stat['mtime']; } closedir($dirp); $A = SORT_ASC; $D = SORT_DESC; foreach ($sortby as $key => $s) { switch ($s) { case 'descendingtime': case 'descendingdate': $sortkey [] = 'date'; $sortlist['date'] = $datelist; $sorthow ['date'] = $D; break; case 'ascendingtime': case 'ascendingdate': case 'time': case 'date': $sortkey [] = 'date'; $sortlist['date'] = $datelist; $sorthow ['date'] = $A; break; case 'descendingsize': $sortkey [] = 'size'; $sortlist['size'] = $sizelist; $sorthow ['size'] = $D; break; case 'ascendingsize': case 'size': $sortkey [] = 'size'; $sortlist['size'] = $sizelist; $sorthow ['size'] = $A; break; case 'descendingtype': case 'descendingext': $sortkey [] = 'type'; $sortlist['type'] = $typelist; $sorthow ['type'] = $D; break; case 'ascendingtype': case 'type': case 'ascendingext': case 'ext': $sortkey [] = 'type'; $sortlist['type'] = $typelist; $sorthow ['type'] = $A; break; case 'descendingname': $sortkey [] = 'name'; $sortlist['name'] = $namelist; $sorthow ['name'] = $D; break; case 'ascendingname': case 'name': default: $sortkey [] = 'name'; $sortlist['name'] = $namelist; $sorthow ['name'] = $A; break; } } if (!isset($sortlist['name'])) { $sortkey[] = 'name'; $sortlist['name'] = $namelist; $sorthow['name'] = $A; } if (!isset($sortlist['type'])) { $sortkey[] = 'type'; $sortlist['type'] = $typelist; $sorthow['type'] = $A; } if (!isset($sortlist['size'])) { $sortkey[] = 'size'; $sortlist['size'] = $sizelist; $sorthow['size'] = $A; } if (!isset($sortlist['date'])) { $sortkey[] = 'date'; $sortlist['date'] = $datelist; $sorthow['date'] = $A; } array_multisort($sortlist[$sortkey[0]], $sorthow[$sortkey[0]], $sortlist[$sortkey[1]], $sorthow[$sortkey[1]], $sortlist[$sortkey[2]], $sorthow[$sortkey[2]], $sortlist[$sortkey[3]], $sorthow[$sortkey[3]]); $filelist = $sortlist[$sortkey[0]]; $overwrite = ''; foreach ($filelist as $key => $s) { $file = $namelist[$key]; $name = PUE("$uploadurl$file"); if ($EnableUploadOverwrite) $overwrite = FmtPageName(" Δ", $pagename); $out[] = "
  • $file$overwrite ... ". number_format($sizelist[$key]) . ' bytes ... ' . strftime($TimeFmt, $datelist[$key]) . '
  • '; } if (count($namelist) == 0) { return Keep(""); } return Keep(""); }