diff --git a/lib/db.php b/lib/db.php new file mode 100644 index 00000000..8e5ed5ba --- /dev/null +++ b/lib/db.php @@ -0,0 +1,26 @@ +execute($ids); return $result->fetchAll(); diff --git a/lib/session.php b/lib/session.php index da291ef5..85d9e762 100644 --- a/lib/session.php +++ b/lib/session.php @@ -11,7 +11,7 @@ namespace OCA\Documents; -class Session { +class Session extends Db{ public static function add($genesis, $hash, $fileId){ $query = \OCP\DB::prepare(' @@ -86,9 +86,8 @@ class Session { if (!is_array($fileIds)){ $fileIds = array($fileIds); } - $fileIdCount = count($fileIds); - $placeholders = array_fill(0, $fileIdCount, '?'); - $stmt = implode(', ', $placeholders); + + $stmt = self::buildPlaceholders($fileIds); $query = \OCP\DB::prepare('SELECT * FROM `*PREFIX*documents_session` WHERE `file_id` IN (' . $stmt .')'); $result = $query->execute($fileIds); $sessions = $result->fetchAll(); @@ -99,13 +98,15 @@ class Session { } public static function getInfoByFileid($fileIds){ - $fileIdCount = count($fileIds); - if (!$fileIdCount || !is_array($fileIds)){ + if (!is_array($fileIds)){ + return array(); + } + + $stmt = self::buildPlaceholders($fileIds); + if (!$stmt){ return array(); } - $placeholders = array_fill(0, $fileIdCount, '?'); - $stmt = implode(', ', $placeholders); $query = \OCP\DB::prepare(' SELECT `s`.*, COUNT(`m`.`member_id`) AS `users` FROM `*PREFIX*documents_session` AS `s` @@ -114,8 +115,7 @@ class Session { WHERE `s`.`file_id` IN (' . $stmt .') GROUP BY `m`.`es_id` '); - $result = $query->execute($fileIds - ); + $result = $query->execute($fileIds); $info = $result->fetchAll(); if (!is_array($info)){ diff --git a/lib/storage.php b/lib/storage.php index 59b07096..870d9dd3 100755 --- a/lib/storage.php +++ b/lib/storage.php @@ -40,5 +40,20 @@ class Storage { return $list; } + + /** + * @brief Copy files to trash bin + * @param array + * + * This function is connected to the delete signal of OC_Filesystem + * to copy the file to the trash bin + */ + public static function onDelete($params) { + + if ( \OCP\App::isEnabled('files_trashbin') ) { + $path = $params['path']; + Trashbin::move2trash($path); + } + } }