diff options
Diffstat (limited to 'app/Api/File.php')
-rw-r--r-- | app/Api/File.php | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/app/Api/File.php b/app/Api/File.php new file mode 100644 index 00000000..65dff729 --- /dev/null +++ b/app/Api/File.php @@ -0,0 +1,48 @@ +<?php + +namespace Api; + +/** + * File API controller + * + * @package api + * @author Frederic Guillot + */ +class File extends Base +{ + public function getFile($file_id) + { + return $this->file->getById($file_id); + } + + public function getAllFiles($task_id) + { + return $this->file->getAll($task_id); + } + + public function downloadFile($file_id) + { + $file = $this->file->getById($file_id); + + if (! empty($file)) { + + $filename = FILES_DIR.$file['path']; + + if (file_exists($filename)) { + return base64_encode(file_get_contents($filename)); + } + } + + return ''; + } + + public function createFile($project_id, $task_id, $filename, $is_image, $blob) + { + return $this->file->uploadContent($project_id, $task_id, $filename, $is_image, $blob); + } + + public function removeFile($file_id) + { + return $this->file->remove($file_id); + } +} |