You are here

action_list.inc in UEditor - 百度编辑器 7.3

Same filename and directory in other branches
  1. 7.2 includes/action_list.inc

File

includes/action_list.inc
View source
<?php

/**
 * 获取已上传的文件列表
 * User: Jinqn
 * Date: 14-04-09
 * Time: 上午10:17
 */
include "Uploader.class.inc";

/* 判断类型 */
switch ($_GET['action']) {

  /* 列出文件 */
  case 'listfile':
    $allowFiles = $CONFIG['fileManagerAllowFiles'];
    $listSize = $CONFIG['fileManagerListSize'];
    $path = $CONFIG['fileManagerListPath'];
    break;

  /* 列出图片 */
  case 'listimage':
  default:
    $allowFiles = $CONFIG['imageManagerAllowFiles'];
    $listSize = $CONFIG['imageManagerListSize'];
    $path = $CONFIG['imageManagerListPath'];
}
$allowFiles = substr(str_replace(".", "|", join("", $allowFiles)), 1);

/* 获取参数 */
$size = isset($_GET['size']) ? htmlspecialchars($_GET['size']) : $listSize;
$start = isset($_GET['start']) ? htmlspecialchars($_GET['start']) : 0;
$end = $start + $size;

/* 获取文件列表 */
$savepath = ueditor_get_savepath($path);
$scanpath = 'public://' . $savepath;
$files = file_scan_directory($scanpath, '/\\.(' . $allowFiles . ')$/i');
if (!empty($files)) {
  $basedir = DRUPAL_ROOT;
  foreach ($files as $file) {
    $url = substr($file->uri, strlen($scanpath));
    $scanfiles[] = array(
      'url' => str_replace('//', '/', $path . $url),
      'mtime' => filemtime($file->uri),
    );
  }
}
if (!count($scanfiles)) {
  return json_encode(array(
    "state" => "no match file",
    "list" => array(),
    "start" => $start,
    "total" => count($scanfiles),
  ));
}

/* 获取指定范围的列表 */
$len = count($scanfiles);
for ($i = min($end, $len) - 1, $list = array(); $i < $len && $i >= 0 && $i >= $start; $i--) {
  $list[] = $scanfiles[$i];
}

//倒序

//for ($i = $end, $list = array(); $i < $len && $i < $end; $i++){

//    $list[] = $scanfiles[$i];

//}

/* 返回数据 */
$result = json_encode(array(
  "state" => "SUCCESS",
  "list" => $list,
  "start" => $start,
  "total" => count($scanfiles),
));
return $result;