Ejemplo n.º 1
0
Archivo: Api.php Proyecto: rgwybb/tars
 public function updateBlob($product, $name, $route)
 {
     $data = Flight::request()->data;
     $pkg = new Pkg();
     $info = $pkg->getPackageInfo($product, $name);
     if ($info) {
         $base = $info['path'];
     } else {
         $base = '/' . $product . '/' . $name;
     }
     $path = $base . '/' . $this->getSplat($route);
     if ($data->content !== null) {
         $ret = $pkg->saveFileContent($path, $data->content, $data->charset);
     } elseif ($data->name !== null) {
         $ret = $pkg->operateFile($path, 'rename', null, $data->name);
     } elseif ($data->mode !== null) {
         $ret = $pkg->operateFile($path, 'chmod', $data->mode);
     } else {
         Flight::json(null, 400);
     }
     // 控制 Curl 请求错误
     $this->handleCurlError($pkg);
     Flight::json($ret);
 }