Commit graph

436 commits

Author SHA1 Message Date
Vincent Petry
4fdf7682c9 Merge pull request #7398 from owncloud/trash_dont_rely_on_db
[trash] fall back if file is not in db
2014-03-10 16:04:47 +01:00
Bjoern Schiessle
4562909a20 get trash size from file cache 2014-03-10 15:13:28 +01:00
Vincent Petry
26513bc17b Merge pull request #7624 from owncloud/enc-encryptedusedspacefix
[master] Fixed used space to be based on unencrypted size
2014-03-10 09:38:24 +01:00
Thomas Tanghus
212699e389 Merge pull request #7628 from owncloud/fileinfo-type
Fix FileInfo->getType errors
2014-03-09 23:34:01 +01:00
Robin Appelman
51165a1a04 Check if value exists before returning 2014-03-07 15:16:35 +01:00
Vincent Petry
48d63a6278 Return unencrypted_size of folder when queried
This fixes the "used space" to be based on the unencrypted size, not
encrypted size, to be consistent with how quota/space is handled when
encryption is enabled
2014-03-07 14:59:09 +01:00
Robin Appelman
65f52fee4f Fix FileInfo->getType errors 2014-03-07 14:52:44 +01:00
Vincent Petry
7f24d42ca5 Propagate unencrypted_size up to the file cache root 2014-03-07 11:00:22 +01:00
Robin Appelman
895fc0fa26 Fix check if fileinfo is valid 2014-03-06 14:23:27 +01:00
Robin Appelman
a8c67dc675 Add caching for getLocalFile on remote storages 2014-03-04 15:44:58 +01:00
Robin Appelman
06c6163265 Check if fields we need are actually set to prevent errors 2014-03-03 16:48:28 +01:00
Robin Appelman
c87658feda Fix updater when getFileInfo fails 2014-03-03 12:56:08 +01:00
Robin Appelman
da386aad59 Allow re-using already known fileinfo when calculating folder sizes 2014-02-28 14:23:07 +01:00
Robin Appelman
3ff12ef4ec Also send explicit cache hooks when calling file_put_contents with a resource 2014-02-28 14:21:33 +01:00
Robin Appelman
7c92e2e3ad Update rawlist to work with new fileinfo object 2014-02-27 14:04:19 +01:00
Robin Appelman
bc49c6be04 Manually triger the filecache update hooks before any other hook 2014-02-26 14:29:13 +01:00
icewind1991
59df3ffdf4 Merge pull request #7279 from owncloud/folderid-reuse
Reuse the folder id in View->getFolderContents
2014-02-26 12:18:34 +01:00
Vincent Petry
7f7d674c2a Merge pull request #7335 from owncloud/fix-7333
Fix code to search for mount.json in custom data folders
2014-02-25 15:27:47 +01:00
Vincent Petry
9b4af31bac Merge pull request #7371 from owncloud/core-storagemovedeleteall
Replace deleteAll call with unlink call on rename
2014-02-25 14:52:21 +01:00
Bjoern Schiessle
ebd73aee8f don't overwrite keys if rename was done by a stream copy 2014-02-24 17:24:43 +01:00
Vincent Petry
a23ef25010 Removed unused deleteAll method on Common storage class
The "deleteAll" method on the Common storage class isn't used anywhere.
Also, it isn't defined on the Storage interface so this fix removes it
completely.
2014-02-24 12:21:48 +01:00
Vincent Petry
c465835e85 Replace deleteAll call with unlink call
The method deleteAll() doesn't officially exist on the Storage class as
it's not defined on the interface, which means it fails on the Quota
storage wrapper and might fail on some external storage classes.
Also, this here is the only use case for that one method.
2014-02-24 12:20:11 +01:00
Robin Appelman
f86dffd56c Merge branch 'master' into recursive-mkdir-local 2014-02-21 15:43:54 +01:00
Robin Appelman
3487a95eab Remove fileid parameter for getFolderContent 2014-02-21 15:36:24 +01:00
Robin Appelman
dd98e6333f Split getFolderContentById 2014-02-21 15:35:12 +01:00
Robin Appelman
3980a7d9c6 Merge branch 'master' into folderid-reuse 2014-02-21 15:33:12 +01:00
Lukas Reschke
f11658698d Fix path to the mount file 2014-02-20 18:53:37 +01:00
Thomas Müller
ec45a3c0e2 Merge pull request #6962 from owncloud/quota-space-root
Allow passing a root folder to get the used space from in the quota wrapper
2014-02-20 16:47:59 +01:00
Robin Appelman
d1c392d9ad Also make "regular" local storage's mkdir recursive 2014-02-20 15:36:30 +01:00
Joshua Medeiros
76aa4714cf Recursive mkdir fixes #7047 2014-02-20 15:35:00 +01:00
Lukas Reschke
c869e0116b Merge pull request #6999 from kofemann/mount-config
mount: make location of mount.json configurable
2014-02-20 15:15:00 +01:00
Luke Policinski
b01492fecd Feature Added : Ability to drag and drop in Chrome 2014-02-19 21:28:32 +00:00
Luke Policinski
79a6d89bcc Feature Added : Ability to drag and drop in Chrome 2014-02-19 21:23:39 +00:00
Morris Jobke
bcad6e641a Merge pull request #7274 from owncloud/scrutinizer-patch-1
Scrutinizer Auto-Fixes
2014-02-19 11:51:04 +01:00
icewind1991
2d5ab1a5c4 Merge pull request #7260 from owncloud/watcher-policy
Allow setting the frequency of which the file watcher checks for updates
2014-02-19 11:17:27 +01:00
Robin Appelman
1331de554c Reuse the folder id in View->getFolderContents 2014-02-19 10:46:02 +01:00
Vincent Petry
e517e642be Merge pull request #7257 from owncloud/filelist-fileinfo
use a FileInfo object of the directory when generting the filelist
2014-02-19 09:40:11 +01:00
Scrutinizer Auto-Fixer
adaee6a5a1 Scrutinizer Auto-Fixes
This patch was automatically generated as part of the following inspection:
https://scrutinizer-ci.com/g/owncloud/core/inspections/cdfecc4e-a37e-4233-8025-f0d7252a8720

Enabled analysis tools:
 - PHP Analyzer
 - JSHint
 - PHP Copy/Paste Detector
 - PHP PDepend
2014-02-19 09:31:54 +01:00
Robin Appelman
2166683e3b Allow setting the frequency of which the file watcher checks for updates 2014-02-18 16:34:25 +01:00
Robin Appelman
d18b9f6ea4 use a FileInfo object of the directory when generting the filelist 2014-02-18 15:39:35 +01:00
Thomas Müller
9fac95c2ab Merge branch 'master' into scrutinizer_documentation_patches
Conflicts:
	lib/private/appconfig.php
2014-02-14 23:03:27 +01:00
Robin Appelman
09502fcb36 remove the JsonSerializable interface from \OC\Files\FileInfo 2014-02-14 19:26:06 +01:00
icewind1991
2a7509ee50 Merge pull request #6748 from owncloud/fileinfo
Add a FileInfo class which holds all info of a file ...
2014-02-14 15:16:39 +01:00
Vincent Petry
c442a03d3a Merge pull request #7075 from owncloud/quota-storagexsendfile
Added isLocal() method to storage, used for xsendfile
2014-02-11 14:49:39 +01:00
Robin Appelman
e6df86f4cb Merge branch 'master' into quota-space-root 2014-02-10 14:03:06 +01:00
Robin Appelman
5ffc43cba0 Merge branch 'master' into remove-user-storage-entry 2014-02-10 13:53:01 +01:00
Joas Schilling
b330d07b51 Fix more documentation failes
Issue #7111
2014-02-08 11:47:55 +01:00
Vincent Petry
788c8540aa Added isLocal() method to storage, used for xsendfile
Added isLocal() method to Storage to find out whether the storage is
local or not.
This method is used for the x-sendfile logic to find out whether to add
the headers.
2014-02-06 20:53:15 +01:00
Jörn Friedrich Dreyer
2a6a9a8cef polish documentation based on scrutinizer patches 2014-02-06 17:02:21 +01:00
Jens-Christian Fischer
11f46e121c close statement in MimeType detection is executed [#7069]
close statement was never executed due to it being after a return
statement.
2014-02-04 17:03:52 +01:00
Robin Appelman
0ae4022fb4 Also clean up the filecache table when deleting a storage entry 2014-02-03 16:36:21 +01:00
Tigran Mkrtchyan
8cc9727520 mount: make location of mount.json configurable
do not share users data with config files

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
2014-01-29 17:14:23 +01:00
Robin Appelman
4e2b52a376 merge master into fileinfo 2014-01-29 16:33:27 +01:00
Robin Appelman
20c2aaab00 Actually rename the variable 2014-01-27 16:26:54 +01:00
Robin Appelman
c8207312c7 Fix phpdoc 2014-01-27 16:00:10 +01:00
Robin Appelman
a521949baf Allow passing a root folder to get the used space from in the quota wrapper 2014-01-27 15:41:56 +01:00
Robin Appelman
fc5f20112e Add isReadable, isUpdateable, isDeletable, isShareable 2014-01-24 15:54:40 +01:00
Robin Appelman
374e3475c9 Also remove the user's home storage from the storage table when deleting a user 2014-01-21 23:58:48 +01:00
Robin Appelman
3d6d8d1bb6 Reuse the data retrieved from the cache in checkUpdate 2014-01-20 15:21:21 +01:00
Vincent Petry
1af7dab535 Fixed quota wrapper to not wrap failed fopen streams
When calling fopen() on some storage types, these return false instead
of throwing an exception.

This fix makes sure that in case the stream wasn't opened (for example
when a file doesn't exist any more) the stream isn't wrapped.

Also added 'rb' as another case that doesn't need to be wrapped.

Fixes #6832
2014-01-19 18:51:36 +01:00
Robin Appelman
5cb08bb9cb Merge branch 'master' into fileinfo
Conflicts:
	tests/lib/files/cache/cache.php
2014-01-17 14:47:29 +01:00
Vincent Petry
34559ef114 Merge pull request #6768 from owncloud/scanner-use-storage-mtime
Use storage_mtime when determining if we can reuse cached data while scanning
2014-01-15 01:31:33 -08:00
Robin Appelman
c01949ec0e Merge branch 'master' into fileinfo 2014-01-14 16:31:08 +01:00
Robin Appelman
203d5d01ca Use storage_mtime when determining if we can reuse cached data while scanning 2014-01-14 13:54:07 +01:00
Robin Appelman
e706cf6c06 add Support for passing a FileInfo instance to View->putFileInfo 2014-01-13 15:57:49 +01:00
Robin Appelman
82762bb462 remove ArrayAccess, JsonSerializable from the public part of FileInfo 2014-01-13 15:13:45 +01:00
Robin Appelman
617acbd6f9 Add a FileInfo class which holds all info of a file and return that from getFileInfo, getDirectoryContent and search 2014-01-13 14:28:49 +01:00
Vincent Petry
4faba49f0a Fix calculated folder size to use unencrypted size
The encrypted size was used when calculating folder sizes.
This fix now also sums up the unencrypted size and shows that one when
available.
2014-01-09 17:47:50 +01:00
Vincent Petry
f642ad3961 Prevent deleting storage root
Storage mount points are not deletable, so make sure that the unlink
operation and its hooks aren't run in such cases.

Note that some storages might recursively delete their contents when
calling unlink on their root. This fix prevents that as well.
2014-01-08 13:17:36 +01:00
Vincent Petry
5be4af9f51 Now also preventing to override "files" dir size with -1
Fixes #6526
2014-01-07 22:34:01 +01:00
Robin Appelman
25370fcb82 Return SPACE_UNKNOWN if disk_free_space is disabled when getting the free space on a local storage 2014-01-02 13:19:10 +01:00
Vincent Petry
123bc9921a Merge pull request #6201 from owncloud/backgroundscan-reuse-etag
reuse etags when doing a background scan
2013-12-06 10:13:14 -08:00
Bart Visscher
6aa9daf4e6 Users of getFolderContent are mostly interested in the unecrypted file size 2013-12-06 15:51:49 +01:00
Robin Appelman
01ab15a2b0 reuse etags when doing a background scan 2013-12-05 15:23:34 +01:00
Frank Karlitschek
8fdbb98899 Merge pull request #6168 from owncloud/extstorage-testtestmethod
Added unit test for the test() method of ext storage
2013-12-03 11:00:49 -08:00
Vincent Petry
6cf9844e9c Added unit test for the test() method
This is to make sure that method isn't broken
2013-12-03 14:35:53 +01:00
Robin Appelman
64bfcbee0a check if a directory exists before we try to remove it 2013-12-02 22:44:28 +01:00
Morris Jobke
41a1a32e5a Merge pull request #6099 from owncloud/fix_source_not_found_warnings
make sure that we don't try to access an already deleted files
2013-11-28 12:59:24 -08:00
Bjoern Schiessle
466ed01e5d correctFolder() already resolves the dirname internally 2013-11-28 19:25:49 +01:00
Bjoern Schiessle
eaedda2116 make sure that we don't try to access an already deleted files, fixes some file source not found warnings 2013-11-28 13:31:08 +01:00
Vincent Petry
43b1cf7988 Redetect mime type whenever extension is renamed 2013-11-27 21:34:51 +01:00
Thomas Müller
a2d4cd87d0 Merge pull request #5874 from owncloud/fix-5845
Fix file uploads on Windows with SQL Server
2013-11-24 14:15:17 -08:00
Vincent Petry
c62cce8269 Moved default isReadable/isUpdatable impl into Common class
Also adjusted all ext storage backends to not override these when the
default behavior is expected.
2013-11-22 18:21:17 +01:00
Vincent Petry
69e8e7dbd5 Now using the "Home" storage detection approach for quota
To find out whether to apply a quota, we now try and detect whether the
storage to wrap is a "Home" storage.
2013-11-21 12:17:47 +01:00
Robin Appelman
a0d570b4cc Change default mimetype detection for storage backends to only use filename 2013-11-20 15:25:29 +01:00
Morris Jobke
4a0d295e4a Merge pull request #5927 from owncloud/quota-excludeextstorage
External storage space is now not counted in total space
2013-11-18 14:42:40 -08:00
Vincent Petry
3e2fd9942b Root size for home storage is now size of "files" subdir
Fixes #4593
2013-11-18 18:17:25 +01:00
Vincent Petry
614e4d485c External storage space is now not counted in total space
Added argument to getFileInfo() to disable adding the size of
mountpoints to a directory's size.

Fixes #5924
2013-11-18 18:09:01 +01:00
ringmaster
bd3ead0d31 Compare dirname() results to DIRECTORY_SEPARATOR, not '/' 2013-11-14 09:42:56 -05:00
ringmaster
ca675d7b08 Alias the aggregate columns so SQL Server doesn't combine them. 2013-11-14 09:41:55 -05:00
Vincent Petry
c06d8bb007 Fixed normalizePath() to strip out single dot dirs
Now removing "/./" and trailing "/." from the paths when normalizing.
2013-11-14 13:15:03 +01:00
Vincent Petry
34c92f6656 Now using HomeStorage for legacy home storage ids
Legacy home storage ids with the format "local://path/to/datadir/user1"
are now also wrapped by the HomeStorage.
2013-11-12 18:01:02 +01:00
Vincent Petry
1a65e3a725 Now calling parent method when path is not root 2013-11-12 16:15:44 +01:00
Robin Appelman
32a703ab36 Do not use -1 as the size for the root folder of the home storage 2013-11-12 16:15:43 +01:00
Morris Jobke
55331479cd Merge pull request #5701 from owncloud/sharing-updateownerfoldersizes
Fixed watcher to also update the owner's folder sizes
2013-11-11 06:16:51 -08:00
Robin Appelman
d6845babd6 Add post hooks for filesystem scanner 2013-11-07 16:22:29 +01:00
Vincent Petry
e3868ba118 Fixed watcher to also update the owner's folder sizes
Note that the root folder size is mandatory for quota calculation.
2013-11-05 13:58:14 +01:00
Thomas Müller
f91fe8d595 Merge pull request #5673 from owncloud/oc6-windows-server-mssql-master
Oc6 windows server mssql master
2013-11-05 00:41:11 -08:00
Thomas Müller
d48ba5a5bf Merge pull request #5540 from owncloud/scanner-enhancments-master
Scanner enhancments master
2013-11-04 23:58:42 -08:00
Thomas Müller
0f266d0f62 set log level to DEBUG 2013-11-04 12:58:30 +01:00
Thomas Mueller
e37047b2a0 WIN: fixing Fatal error: Call to a member function logicToPhysical() on a non-object in C:\jenkins2\workspace\server-stable5-windows\database\mssql\label\WINDOWS\lib\files\storage\mappedlocal.php on line 311 2013-11-02 20:22:12 +01:00
Thomas Müller
261cd87efa Merge branch 'master' into home-storage 2013-10-30 22:11:19 +01:00
Robin Appelman
c9f3f2874f Merge branch 'master' into update-parent-storage-mtime
Conflicts:
	lib/private/files/cache/updater.php
2013-10-30 13:41:10 +01:00
Bjoern Schiessle
e1e4c7c214 Merge branch 'master' into fix_file_cache_updater_master 2013-10-29 17:47:33 +01:00
Bjoern Schiessle
0d7d396d80 make sure that also the storage etag gets changed 2013-10-29 16:30:47 +01:00
Bjoern Schiessle
a80ac9c492 make getUidAndFilename() private 2013-10-29 15:10:02 +01:00
Bjoern Schiessle
fcfac51aa1 backport of https://github.com/owncloud/core/pull/5513 2013-10-29 15:08:12 +01:00
Robin Appelman
b3626f34cd Update the parent folders storage_mtime on write and delete to prevent rescans 2013-10-29 14:18:57 +01:00
Andreas Fischer
b3e39dd3d9 Map empty mimetypes to octet-stream for Oracle DBMS. 2013-10-29 14:18:42 +01:00
Andreas Fischer
fa6ae81149 Return early if fileinfo is there. 2013-10-29 13:48:30 +01:00
Andreas Fischer
68d13210bd Reset mimetype to application/octet-stream on empty reply from file command. 2013-10-29 13:29:35 +01:00
Robin Appelman
0e92a4896d dont use the home storage for non-existing users 2013-10-29 13:12:28 +01:00
Andreas Fischer
a04a01d51f Do not calculate $isWrapped if not needed. 2013-10-29 12:54:30 +01:00
Robin Appelman
e273c14540 use the new home storage backend when no existing local storage backend exists for the user's home 2013-10-29 00:26:35 +01:00
Robin Appelman
f1e6e80eb1 add specialized storage backend for home folders 2013-10-29 00:14:23 +01:00
Vincent Petry
ebcd9ae628 Added comment for clarification about fseek() call in quota.php 2013-10-25 16:15:01 +02:00
Thomas Müller
8253994262 using array_diff_assoc to detect diffs in values as well 2013-10-25 12:40:31 +02:00
Thomas Müller
f619f59f1c cast storage_mtime to int 2013-10-25 12:39:50 +02:00
Vincent Petry
c8df27de73 Fixed quota stream to not wrap read-only fopen calls 2013-10-25 12:33:16 +02:00
Vincent Petry
d8b245490b Fixed quota stream's fseek method
- Added missing return statement
- Added missing support for SEEK_END
- Fixes #5524
2013-10-25 12:09:46 +02:00
Thomas Müller
c5b8963b18 log the data arrays 2013-10-24 18:13:21 +02:00
Thomas Müller
88d1e20d56 some logging added .... 2013-10-24 14:24:56 +02:00
Vincent Petry
a542c57a7b Catch duplicate insertion errors while scanning files
When two scanning processed run at the same time, for example when
scan.php and list.php were called at the same time on an external
storage mountpoint, duplicate insertion errors can occurs.

These errors are now logged and ignored.

Since both scans are running in parallel transactions, they don't see
each other's changes directly in the DB which can cause duplicate
insertion errors for mime types as well, but those mime types can't be
selected yet. The solution to this is to force-reload the mimetypes list
after the transaction is finished.

Fixes #5199
2013-10-23 13:00:46 +02:00
Vincent Petry
5f249e1a54 Prevent renaming/deleting mount points
Fixed permissions returned for mount points to not include update and
delete permissions.

Fixes #5291
2013-10-15 14:58:58 +02:00
VicDeo
26c0007a5f Merge pull request #5263 from owncloud/fixing-5255-master
Proper behavior of resolvePath()
2013-10-10 09:27:45 -07:00
Thomas Müller
bc6e352ccd the path need to be normalized before putting it into resolvePath()
otherwise the returned internalPath will not match followup calls to e.g. Cache::getID()
2013-10-10 16:06:26 +02:00
Robin Appelman
1378af838c merge master into hooks-view-same-start 2013-10-10 11:34:30 +02:00
VicDeo
1cb47bf777 Merge pull request #5221 from owncloud/fixing-5217-master
fixing php 5.3 compatibility
2013-10-10 01:55:18 -07:00
Robin Appelman
7f8eeb0474 ensure the view's root is a subfolder of the the default root, not only starting the same 2013-10-09 20:46:43 +02:00
Robin Appelman
38c563dcdc don't trigger the create hooks when if the file already exists for file_put_contents 2013-10-09 20:34:18 +02:00
Thomas Müller
51b581a84d php 5.3 compatibility for \OC\Files\Storage 2013-10-08 23:00:41 +02:00
Victor Dubiniuk
8da1aac1d0 Check result only once 2013-10-04 23:24:38 +03:00
Victor Dubiniuk
ef65037211 Make mimetypes static. Jenkis will be happy 2013-10-04 18:09:42 +03:00
Victor Dubiniuk
65750cb244 Load all mimetypes in one go 2013-10-04 16:17:19 +03:00
Thomas Müller
78c60c25c8 only perform files upgrade in case there are actually entries in the old fscache table 2013-10-02 13:00:05 +02:00
Thomas Müller
9c9dc276b7 move the private namespace OC into lib/private - OCP will stay in lib/public
Conflicts:
	lib/private/vcategories.php
2013-09-30 16:36:59 +02:00