diff options
| author | David Siegfried <david.siegfried@uni-vechta.de> | 2026-02-27 16:54:19 +0100 |
|---|---|---|
| committer | David Siegfried <david.siegfried@uni-vechta.de> | 2026-02-27 16:54:19 +0100 |
| commit | ab8c6aee0e3df0565a56fc342c5107904935da2d (patch) | |
| tree | 40cea85374999b0ecb0c6f6f75b790340c686f5b /lib/models/FileRef.php | |
| parent | a4a60be9c7e810d1e0d2ce0b7d4c8bba6ac89afc (diff) | |
extend file and folder logging, fixes #6251tic-6251
Diffstat (limited to 'lib/models/FileRef.php')
| -rw-r--r-- | lib/models/FileRef.php | 41 |
1 files changed, 36 insertions, 5 deletions
diff --git a/lib/models/FileRef.php b/lib/models/FileRef.php index 043aec1..0487121 100644 --- a/lib/models/FileRef.php +++ b/lib/models/FileRef.php @@ -74,6 +74,8 @@ class FileRef extends SimpleORMap implements PrivacyObject, FeedbackRange $config['registered_callbacks']['after_delete'][] = 'cbRemoveFeedbackElements'; $config['registered_callbacks']['before_delete'][] = 'cbLogDeleteFileRef'; $config['registered_callbacks']['before_store'][] = 'cbMakeUniqueFilename'; + $config['registered_callbacks']['after_store'][] = 'cbLogUpdateFileRef'; + $config['registered_callbacks']['after_create'][] = 'cbLogCreateFileRef'; parent::configure($config); } @@ -82,18 +84,47 @@ class FileRef extends SimpleORMap implements PrivacyObject, FeedbackRange protected $download_url; public $path_to_blob; + private function getLogComment(): string + { + $comment = sprintf( + 'Kommentar: %s', + $this->name + ); + + $range_fullname = $this->folder->getRangeFullname(); + + if ($range_fullname) { + $comment .= " - $range_fullname"; + } + return $comment; + } + + public function cbLogUpdateFileRef() + { + StudipLog::log('FILE_UPDATE', + User::findCurrent()->id, + $this->folder->range_id, + $this->getLogComment() + ); + } public function cbLogDeleteFileRef() { StudipLog::log('FILE_DELETE', User::findCurrent()->id, - null, - sprintf( - 'Kommentar: %s', - $this->name - ) + $this->folder->range_id, + $this->getLogComment() + ); + } + public function cbLogCreateFileRef() + { + StudipLog::log('FILE_UPLOAD', + User::findCurrent()->id, + $this->folder->range_id, + $this->getLogComment() ); } + /** * This callback is called after deleting a FileRef. * It removes the File object that is associated with the FileRef, |
