diff options
Diffstat (limited to 'app/class/controllermedia.php')
-rw-r--r-- | app/class/controllermedia.php | 35 |
1 files changed, 9 insertions, 26 deletions
diff --git a/app/class/controllermedia.php b/app/class/controllermedia.php index 26b58ff..f156b35 100644 --- a/app/class/controllermedia.php +++ b/app/class/controllermedia.php @@ -14,7 +14,7 @@ class Controllermedia extends Controller public function desktop() { if($this->user->iseditor()) { - $dir = $_GET['path'] ?? Model::MEDIA_DIR; + $dir = rtrim($_GET['path'] ?? Model::MEDIA_DIR, DIRECTORY_SEPARATOR); $medialist = $this->mediamanager->getlistermedia($dir . DIRECTORY_SEPARATOR); $faviconlist = $this->mediamanager->getlistermedia(Model::FAVICON_DIR); @@ -22,38 +22,21 @@ class Controllermedia extends Controller $dirlist = $this->mediamanager->listdir(Model::MEDIA_DIR); $this->showtemplate('media', ['medialist' => $medialist, 'faviconlist' => $faviconlist, 'dirlist' => $dirlist, 'dir' => $dir]); + } else { + $this->routedirect('home'); } } - public function addmedia() - { - echo $this->templates->render('media', ['interface' => 'addmedia']); - - //$message = $this->mediamanager->addmedia($_FILES, 2 ** 24, $_POST['id']); - - } - public function upload() { + if($this->user->iseditor()) { $target = $_POST['dir'] ?? Model::MEDIA_DIR; - if($target[strlen($target)-1]!='/') - $target=$target.'/'; - $count=0; - foreach ($_FILES['file']['name'] as $filename) - { - $fileinfo = pathinfo($filename); - $extension = idclean($fileinfo['extension']); - $id = idclean($fileinfo['filename']); - - $temp=$target; - $tmp=$_FILES['file']['tmp_name'][$count]; - $count=$count + 1; - $temp .= $id .'.' .$extension; - move_uploaded_file($tmp,$temp); - $temp=''; - $tmp=''; - } + + $this->mediamanager->upload($target); $this->redirect($this->router->generate('media').'?path='.$target); + } else { + $this->routedirect('home'); + } } |