public function indexAction() { $this->view->noRender(); Assert::found($query = $this->dispatcher->getParam('query')); Assert::found($pkg = $this->getPackage($query)); $dst = DOCROOT . '/../public/media/'; @Helper::mkdir($dst . dirname($query), 0777); Assert::found($f = fopen('zip://' . $pkg . '#' . $query, 'r')); Assert::true($d = fopen($dst . $query, 'w')); $content = ''; while (!feof($f)) { $content .= $data = fread($f, 8 * 1024); fwrite($d, $data); } fclose($f); $mime = null; if ($ext = strtolower(pathinfo($query, PATHINFO_EXTENSION))) { $mime = empty(FileInfo::$types[$ext]) ? null : FileInfo::$types[$ext]; } if ($mime) { $this->response->setHeader('Content-Type', $mime); } return $this->response->setContent($content); }
public function crud_edit(Closure $success = null) { Assert::found($this->_crud_model); $this->view->setVar('userData', $this->_crud_model->toArray()); return $this->crud_create($this->_crud_model, $success); }