Commit Graph

239 Commits

Author SHA1 Message Date
Lukas Reschke 13e817e901 Throw exception on `getPath` if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

This is especially harmful if used in context with Views where the final result is limited based on the result of `getPath`, if `getPath` returns `NULL` PHP type juggles this to an empty string resulting in all possible kind of bugs.

While one could argue that this is a misusage of the API the fact is that it is very often misused and an exception will trigger an immediate stop of execution as well as log this behaviour and show a pretty error page.

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Robin Appelman 2e8232e803 Fix trashbin handling of unknown/unlimited free space 2015-10-16 21:41:51 +02:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Bjoern Schiessle b940287ffa first copy to owner and then move to current user because the encryption
wrapper always expect to work on the owner storage
2015-10-01 17:09:17 +02:00
Morris Jobke 1051a3c6f5 Change small thumbnails to 32 px
* fixes #16913
* fixes issues in IE8 where the thumbnail is too big
2015-09-30 10:49:48 +02:00
Martin 491250320a Replaces if ($file === '.' || $file === '..') by if(\OC\Files\Filesystem::isIgnoredDir($file)). Eases to find where this operation is used. 2015-09-22 17:53:15 +02:00
Bjoern Schiessle a174ba5a36 make sure to add the correct file size to the file info, otherwise we will not show the preview for every filetype 2015-09-21 12:41:19 +02:00
Victor Dubiniuk b75a1b40a2 Log deleted files 2015-09-16 22:29:54 +03:00
Lukas Reschke 47caac10f5 Add PHPDoc 2015-09-16 17:37:21 +03:00
Victor Dubiniuk 764726ce01 Updates according to review 2015-09-16 17:37:21 +03:00
Victor Dubiniuk 8ac3d5e36c Add expiration cronjob 2015-09-16 17:37:21 +03:00
Victor Dubiniuk 33c29d3da7 Migrate settings 2015-08-10 23:54:44 +03:00
Victor Dubiniuk 4ef2615788 Enhance trashbin expiration settings 2015-08-10 20:40:43 +02:00
Roeland Jago Douma e84cffc063 Moved core apps to the capabilities manager
* Files
* Files_Sharing
* Files_Trashbin
* Files_Versions
2015-08-10 10:45:16 +02:00
Roeland Jago Douma bc91c5c2de Set proper mimetype for directories 2015-08-05 13:54:09 +02:00
Bjoern Schiessle db65eeb580 only move real files to the trash bin 2015-07-08 11:32:06 +02:00
Thomas Müller d3ac73c0c9 Remove OC_Log 2015-07-03 18:00:16 +02:00
Morris Jobke 044d2ece07 Merge pull request #15506 from rullzer/core_apps_oc_log2ocp_util
Move core apps from OC_Log::write to OCP\Util
2015-07-01 08:53:16 +02:00
Morris Jobke f63915d0c8 update license headers and authors 2015-06-25 14:13:49 +02:00
Robin Appelman f02e110aea explain pre-hook scan 2015-06-15 15:43:19 +02:00
Robin Appelman 5efbab4ab8 ensure we dont have to scan a file in the trash wrapper 2015-06-15 14:32:29 +02:00
Vincent Petry 61356b5560 Keep versions when deleting as recipient
The original owner could not be resolved because the original file was
already deleted, so no versions were retained.

This fix passes the owner and path to retainVersions() since it was
already resolved before the file deletion. This reactivates the versions
logic and creates a copy of the versions in each trashbin.
2015-06-02 17:13:00 +02:00
Björn Schießle 9366dde875 Merge pull request #15985 from owncloud/hotfix/fix-encryption-references
[enc2] fix references to legacy encryption app name
2015-05-26 17:28:27 +02:00
Robin Appelman 733784ae41 cleanup move/copy logic in trash 2015-05-19 14:22:09 +02:00
Robin Appelman 89959a856c fix target path for move 2015-05-18 17:16:13 +02:00
Robin Appelman a0854b36f0 update cache after move to trash 2015-05-18 17:16:13 +02:00
Robin Appelman b70e1ffc6d dont go trough the view when moving to trash 2015-05-18 17:16:12 +02:00
Clark Tomlinson 7d2666699b removing encryption preview check 2015-05-18 09:47:46 -04:00
Clark Tomlinson d557519746 removing deletion of encryption keys
this will be handled in the wrapper now
2015-05-18 09:47:46 -04:00
Clark Tomlinson a0c6c01137 fix references to legacy encryption app name 2015-05-18 09:45:41 -04:00
Roeland Jago Douma 7a8072e958 Move core apps from OC_Log::write to OCP\Util 2015-05-18 10:57:52 +02:00
Vincent Petry f86699cd48 Fix restoring files from trash with unique name
When restoring a file, a unique name needs to be generated if a file
with the same name already exists.

Also fixed the restore() method to return false if the file to restore
does not exist.

Added unit tests to cover restore cases.
2015-05-15 12:42:27 +02:00
Vincent Petry beb6a38d85 Added rmdir to trashbin storage wrapper
This makes sure that folders are moved to trash when deleted with
rmdir() instead of unlink().

This happens for example when deleting a folder over WebDAV.
The web UI uses unlink() so it wasn't affected.
2015-05-12 11:09:02 +02:00
Vincent Petry ffc796edcb Do not trash part files, delete directly 2015-04-21 18:28:15 +02:00
Thomas Müller 54a3bdf1c5 fixing unit test execution related to trashbin 2015-04-07 13:30:31 +02:00
Bjoern Schiessle 5ea94b7c45 add priority to trashbin storage wrapper so that he is always on top 2015-04-07 13:30:30 +02:00
Thomas Müller 3458b5ab4c Remove old encryption left overs from trashbin 2015-04-07 13:30:29 +02:00
Thomas Müller 1b42b492dc kill OC_FileProxy 💥 2015-04-07 13:30:28 +02:00
Robin Appelman 3cb53b7756 setup storage wrappers before setting up the filesystem 2015-04-01 17:12:06 +02:00
Roeland Jago Douma 2b81d0f237 Move core apps from private to public functions
Apps still use OC_Helper and OC_Util functions even when public ones are
already available. Sometimes the public one is even used in the same
file.
2015-04-01 12:06:04 +02:00
Morris Jobke e8109f0bc3 Merge pull request #13802 from owncloud/share-partfilepermissions
Fix share permission checks
2015-03-26 22:01:05 +01:00
Jenkins for ownCloud b585d87d9d Update license headers 2015-03-26 11:44:36 +01:00
Vincent Petry f8f543945f Recreate trashbin folder after full deletion 2015-03-24 23:02:14 +01:00
Vincent Petry a9e6eba018 Reenable trashbin after failed rename
After a failed rename, the post_rename hook is not called.
This quickfix makes sure the trashbin storage logic is reenabled
also after a failed rename.
2015-03-18 19:56:31 +01:00
Thomas Müller bbaf97ca43 Merge pull request #14644 from owncloud/trash-expire-command
Expire files from the trash in the background
2015-03-16 10:04:05 +01:00
Thomas Müller 4ffca58bc4 don't rely on \OCP\User::getUser() - it is not set properly in case of async operations 2015-03-10 11:47:52 +01:00
Robin Appelman c80522ed63 Expire files from the trash in the background 2015-03-02 15:25:50 +01:00
Vincent Petry 7432c73f5c Only rescan versions once in trashbin
Whenever versions need to be rescanned, only do it once per PHP request.
Happens whenever multiple files need to be expired.
2015-03-02 12:59:38 +01:00
Morris Jobke 06aef4e8b1 Revert "Updating license headers"
This reverts commit 6a1a4880f0.
2015-02-26 11:37:37 +01:00
Jenkins for ownCloud 6a1a4880f0 Updating license headers 2015-02-23 12:13:59 +01:00