diff options
Diffstat (limited to 'app/Model')
-rw-r--r-- | app/Model/FileModel.php | 11 | ||||
-rw-r--r-- | app/Model/ProjectFileModel.php | 12 | ||||
-rw-r--r-- | app/Model/TaskFileModel.php | 12 |
3 files changed, 35 insertions, 0 deletions
diff --git a/app/Model/FileModel.php b/app/Model/FileModel.php index d04b03bf..1519cfaf 100644 --- a/app/Model/FileModel.php +++ b/app/Model/FileModel.php @@ -52,6 +52,15 @@ abstract class FileModel extends Base abstract protected function fireCreationEvent($file_id); /** + * Fire file destruction event + * + * @abstract + * @access protected + * @param integer $file_id + */ + abstract protected function fireDestructionEvent($file_id); + + /** * Get PicoDb query to get all files * * @access protected @@ -187,6 +196,8 @@ abstract class FileModel extends Base public function remove($file_id) { try { + $this->fireDestructionEvent($file_id); + $file = $this->getById($file_id); $this->objectStorage->remove($file['path']); diff --git a/app/Model/ProjectFileModel.php b/app/Model/ProjectFileModel.php index 4de4d66d..7da5741c 100644 --- a/app/Model/ProjectFileModel.php +++ b/app/Model/ProjectFileModel.php @@ -23,6 +23,7 @@ class ProjectFileModel extends FileModel * @var string */ const EVENT_CREATE = 'project.file.create'; + const EVENT_DESTROY = 'project.file.destroy'; /** * Get the table @@ -70,4 +71,15 @@ class ProjectFileModel extends FileModel { $this->queueManager->push($this->projectFileEventJob->withParams($file_id, self::EVENT_CREATE)); } + + /** + * Fire file destruction event + * + * @access protected + * @param integer $file_id + */ + protected function fireDestructionEvent($file_id) + { + $this->queueManager->push($this->projectFileEventJob->withParams($file_id, self::EVENT_DESTROY)); + } } diff --git a/app/Model/TaskFileModel.php b/app/Model/TaskFileModel.php index 0163da28..9d446004 100644 --- a/app/Model/TaskFileModel.php +++ b/app/Model/TaskFileModel.php @@ -23,6 +23,7 @@ class TaskFileModel extends FileModel * @var string */ const EVENT_CREATE = 'task.file.create'; + const EVENT_DESTROY = 'task.file.destroy'; /** * Get the table @@ -100,4 +101,15 @@ class TaskFileModel extends FileModel { $this->queueManager->push($this->taskFileEventJob->withParams($file_id, self::EVENT_CREATE)); } + + /** + * Fire file destruction event + * + * @access protected + * @param integer $file_id + */ + protected function fireDestructionEvent($file_id) + { + $this->queueManager->push($this->taskFileEventJob->withParams($file_id, self::EVENT_DESTROY)); + } } |