function getDirInfo($dir) { $iterator = new DirectoryIterator($dir); #先输出文件夹 while ($iterator->valid()) { if ($iterator->isDir() && $iterator->getFilename() != '.' && $iterator->getFilename() != '..' && $iterator->getFilename() != '.git') { echo '<li class="flist filedir"><i class="fa fa-folder-open"></i> ' . $iterator->getFilename(); echo '<ul class="dirlist">'; getDirInfo($iterator->getPathname()); echo '</ul></li>'; } $iterator->next(); } #再输出文件 $iterator->Rewind(); while ($iterator->valid()) { if ($iterator->isFile()) { echo '<li class="flist file"><i class="fa fa-file-text"></i> ' . $iterator->getFilename() . '</li>'; } $iterator->next(); } }
require_once "php/auth.php"; require_once "php/ErrorHandler.php"; $fs = Auth::getFS(); //new NativeFS("../fs"); $json = new Services_JSON(); header("Content-type: text/json"); if (!isset($_POST["base"])) { die("Specify base"); } $base = $_POST["base"]; if (!isset($_POST["data"])) { die("Specify data"); } $data = $json->decode($_POST["data"]); foreach ($data as $path => $cont) { //print "cont $cont"; $fp = PathUtil::rel($base, $path); if (isset($cont["trashed"])) { if ($fs->exists($fp)) { $fs->rm($fp); } } else { $fs->setContent($fp, $cont["text"]); $fs->setMetaInfo($fp, array("lastUpdate" => $cont["lastUpdate"])); } } //header("Content-type: text/plain"); //print "OK"; require_once "php/getDirInfoLib.php"; print $json->encode(getDirInfo($base, $base)); //print $_POST["data"];
<?php require_once "php/json.php"; require_once "php/fs/NativeFS.php"; #TOFS require_once "php/auth.php"; require_once "php/ErrorHandler.php"; $fs = Auth::getFS(); //new NativeFS("../fs"); header("Content-type: text/json"); if (!$fs) { print '{"NOT_LOGGED_IN":1}'; exit; } $json = new Services_JSON(); if (!isset($_GET["base"])) { die("Specify base"); } $base = $_GET["base"]; require_once "php/getDirInfoLib.php"; //try { //print $json->encode( $fs->ls("Tonyu/Projects/") ); $inf = getDirInfo($base, $base); $inf["user"] = Auth::curUser(); $inf["class"] = Auth::curClass(); print $json->encode($inf); /*}catch(Exception $e) { die($e); }*/