summaryrefslogtreecommitdiff
path: root/app/Api/File.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Api/File.php')
-rw-r--r--app/Api/File.php48
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);
+ }
+}