Commit graph

2851 commits

Author SHA1 Message Date
Roeland Douma
5c9103287f Group fixup (#24621)
* Move used OC_Group_xx to \OC\Group

* Add (deprecated) legacy wrapper in legacy, OC_Group_xx

* Replace deprecated use of OC_Group_xx with \OC\Group\xx
2016-05-17 16:06:44 +02:00
Vincent Petry
e383a9506d Merge pull request #24617 from owncloud/autoloader_no_private
our autoloader should not load classes in \OC
2016-05-13 17:30:10 +02:00
Vincent Petry
9ac763a640 Merge pull request #24594 from owncloud/authtoken-name-column-size
Use CLOB for auth token names to allow long user agent strings
2016-05-13 11:56:52 +02:00
Roeland Jago Douma
d022b6fad4
Fix unit tests 2016-05-13 11:33:21 +02:00
Roeland Jago Douma
eb79b83831
Move functions.php to legacy
This file should really be properly namespaced etc!
2016-05-13 08:54:07 +02:00
Christoph Wurst
c28e462583
Use CLOB for auth token names to allow long user agent strings 2016-05-12 11:19:17 +02:00
Christoph Wurst
69dafd727d
delete the token in case an exception is thrown when decrypting the password 2016-05-11 13:36:46 +02:00
Christoph Wurst
af707fba41
use the query builder instead of raw sql statements 2016-05-11 13:36:46 +02:00
Christoph Wurst
46bdf6ea2b
fix PHPDoc and other minor issues 2016-05-11 13:36:46 +02:00
Christoph Wurst
f0f8bdd495
PHPDoc and other minor fixes 2016-05-11 13:36:46 +02:00
Christoph Wurst
dff108e97b
fix mock builder for old phpunit versions 2016-05-11 13:36:46 +02:00
Christoph Wurst
fbb5768587
add unit tests for all new classes 2016-05-11 13:36:46 +02:00
Christoph Wurst
aa85edd224
increase token column width
add some range to time() assertions
2016-05-11 13:36:46 +02:00
Christoph Wurst
8cc5f6036f
Fix existing tests 2016-05-11 13:36:46 +02:00
Roeland Jago Douma
f6ee738ba8
Add \OC\User\Backend
Since some apps (ldap et al) still depend on OC_User_Backend this seemed
like the cleanest approach.
2016-05-10 19:53:36 +02:00
Roeland Jago Douma
9e1d9871a8
Move OC_User_Database to \OC\User\Database 2016-05-10 19:53:36 +02:00
Lukas Reschke
e8e72aa910 Merge pull request #24434 from owncloud/permalinks
Permalinks
2016-05-10 09:44:50 +02:00
Lukas Reschke
8b428d84c0
Make update server URL configurable
Currently testing the updates is a big problem and not really super easy possible. Since we now have a new updater server we should also make this configurable so that people can properly test updates.
2016-05-09 11:25:58 +02:00
Roeland Jago Douma
108bd26856
Fix unit tests broken after #24457
Timeout was increased but tests were not updated.
2016-05-09 08:54:30 +02:00
Vincent Petry
caefe23bb6
Send permalink in internal share notification emails 2016-05-06 16:46:59 +02:00
Morris Jobke
873849e843 Merge pull request #24432 from owncloud/issue-24270-never-save-app-language-into-request-lang
Do not save the language as request lang for apps when we didn't find…
2016-05-04 13:47:08 +02:00
Joas Schilling
9fbb8ce302
Do not save the language as request lang for apps when we didn't find any 2016-05-04 08:28:13 +02:00
Thomas Müller
4b2544925f Merge pull request #23844 from owncloud/disable-user
Add occ commands to enable and disable a user + a disabled user can n…
2016-05-03 15:22:41 +02:00
Roeland Jago Douma
fc82047e26
Move OC_Log_xx to \OC\Log namespace 2016-05-03 08:57:26 +02:00
Lukas Reschke
adf7e7295e Merge pull request #24375 from owncloud/archive_move
Move OC_Archive to \OC\Archive and PSR-4
2016-05-03 08:37:01 +02:00
Roeland Douma
c87bd0432a Merge pull request #24380 from owncloud/move-activity-manager-to-namespace
Move activity manager to the namespace
2016-05-03 07:40:04 +02:00
Roeland Jago Douma
0cb434686c
Move OC_Archive_XX to PSR-4
* Fix code
* Fix tests
2016-05-02 19:32:51 +02:00
Thomas Müller
05cf552f66 Merge pull request #24322 from owncloud/install-and-uninstall-repair-steps
Adding repair steps for install and uninstall
2016-05-02 17:50:29 +02:00
Roeland Douma
b84825f030 Merge pull request #24229 from owncloud/session-id-wrapper
add ISession::getId() wrapper for session_id
2016-05-02 16:49:38 +02:00
Joas Schilling
7bfc617b03
Move activity manager to the namespace 2016-05-02 11:57:24 +02:00
Joas Schilling
3397e27657
Remove the password from the validateUserPass() method as well 2016-05-02 10:44:09 +02:00
Thomas Müller
9c9fec36dd
Add occ commands to enable and disable a user + a disabled user can no longer login - fixes #23838 2016-05-02 09:31:22 +02:00
Thomas Müller
e049953d1a
OC_Installer -> \OC\Installer 2016-05-02 08:52:06 +02:00
Thomas Müller
e59ccc5fe9 Merge pull request #24299 from owncloud/availability-avoid-concurrency
Prevent concurrent storage availability checks
2016-04-29 17:43:31 +02:00
Thomas Müller
66ebc2ee6f Merge pull request #24337 from owncloud/add-db-group-for-required-tests
Add the DB group for preview tests that require the database
2016-04-29 15:02:27 +02:00
Vincent Petry
6571da1519 Merge pull request #24305 from owncloud/update-show-repair-step-progress
[Update] show repair step progress ...
2016-04-29 13:47:15 +02:00
Joas Schilling
a85be14b62
Add the DB group for tests that require the database 2016-04-29 09:30:47 +02:00
Bernhard Posselt
4c1b55be92 allow app developers to specify the minimum int size
simplify comparison

remove additional null

fix off by 1 error
2016-04-28 22:55:15 +02:00
Thomas Müller
0e774e0fd8 Merge pull request #24274 from owncloud/async-repair-steps
Introduce background repair steps
2016-04-28 14:11:43 +02:00
Thomas Müller
bbd2a07525
Remove emitter from class Repair 2016-04-28 13:52:01 +02:00
Robin McCorkell
77cec29b10 Prevent concurrent availability checks 2016-04-26 22:30:09 +01:00
Lukas Reschke
ddbebe91f0 Merge pull request #24246 from owncloud/local-invalid
error out if a local storage isn't setup correctly
2016-04-26 20:57:56 +02:00
Robin Appelman
2f01c83a01 add tests 2016-04-26 16:08:52 +02:00
Christoph Wurst
e93bf80b29
throw SessionNotAvailableException if session_id returns empty string 2016-04-26 14:51:21 +02:00
Thomas Müller
2ee7d2485c
Introduce background repair steps 2016-04-26 11:56:56 +02:00
Morris Jobke
23e7ad7a78 Merge pull request #24256 from owncloud/scanner-propagate
triger the propagator from the command line scanner
2016-04-26 10:05:39 +02:00
Robin Appelman
61054df36d triger the propagator from the command line scanner 2016-04-25 17:23:48 +02:00
Thomas Müller
c7542c02db
Introduce OCP\Migration\IRepairStep and adopt all repair steps to this new interface - refs #24198 2016-04-25 15:01:13 +02:00
Christoph Wurst
0d53e86421
add ISession::getId() wrapper for session_id 2016-04-25 10:36:24 +02:00
Thomas Müller
8c7c713e86 Merge pull request #24187 from owncloud/fs-initmountpoint-rethrowifusernotfoundagain
Mark $usersSetup only if user was found in initMountPoints
2016-04-22 17:25:40 +02:00
Roeland Jago Douma
4eebccd81f
Fix inconsistent nameing of AppFramework 2016-04-22 16:00:00 +02:00
Thomas Müller
cc4efc4c03 Merge pull request #24085 from owncloud/feedback-on-app-migrations
App migration steps need to push feedback to the user ....
2016-04-22 14:39:11 +02:00
Vincent Petry
13c01e62cf
Mark $usersSetup only if user was found in initMountPoints
initMountPoints is marking a user as successfully initialized too
early. If the user was not found an NoUserException was thrown, the
second time initMountPoints is called would not rethrow the exception
and happily continue.

This fix makes sure that we consistently throw NoUserException when
initMountPoints is called repeatedly with invalid users.
2016-04-22 14:29:41 +02:00
Thomas Müller
43323b0062 Merge pull request #24183 from owncloud/change-background-job-sort-order
Change the sort order of background jobs to be DESC instead of ASC
2016-04-22 13:33:54 +02:00
Vincent Petry
085bcd7da2
Throw NoUserException when attempting to init mount point for null user
In some scenarios initMountPoints is called with an empty user, and
also there is no user in the session.

In such cases, it is unsafe to let the code move on with an empty user.
2016-04-22 11:46:33 +02:00
Joas Schilling
04cee6a7db
Change the sort order of background jobs to be DESC instead of ASC
In theory, if your instance ever creates more jobs then your system cron can
handle, the default background jobs get never executed anymore. Because
everytime when the joblist returns the next job it looks for the next ID,
however there is always a new next ID, so it will never wrap back to execute
the low IDs. But when we change the sort order to be DESC, we make sure that
these low IDs are always executed, before the system jumps back up to
execute the new IDs.
2016-04-22 10:49:55 +02:00
Thomas Müller
d0030aad6c
Remove deprecated HTTPHelper from InfoParser 2016-04-22 08:38:41 +02:00
Lukas Reschke
06a4da43ec
[master] Ignore certificate file if it starts with file:// 2016-04-21 19:02:31 +02:00
Vincent Petry
b50d3255fb Merge pull request #22791 from owncloud/enc_master_key_improvements
Enc master key improvements
2016-04-21 11:48:26 +02:00
Thomas Müller
cd01c440a0 Merge pull request #23919 from owncloud/cyclyc-share-dep-example
SharedStorage to new sharing code + cleanup
2016-04-20 20:37:27 +02:00
Thomas Müller
cdcabbd0b3 Merge pull request #24098 from owncloud/fix_23782
When calling file_put_contents clear the checksum
2016-04-20 20:37:01 +02:00
Thomas Müller
aa33ab0c03 Merge pull request #24094 from owncloud/move_dummy_group_backend_to_test
Move the group dummy backend to test
2016-04-20 11:55:00 +02:00
Roeland Jago Douma
0dbcbc4cae
When the scanner detects a file is changed clear checksum
Fixes #23782 and #23783

If the file scanner detects a changed file we clear the checksum while
we update the cache.

* Unit test added
2016-04-19 20:20:45 +02:00
Thomas Müller
5b2ef92eb2 Merge pull request #24004 from owncloud/dont-transfer-files-to-not-ready-user
Introduce isReadyForUser and verify in file transfer ownership
2016-04-19 15:56:47 +02:00
Roeland Jago Douma
dd7e0d13e5
Move the group dummy backend to test
The dummy backend is only used for testing and should thus reside in
tests.
2016-04-19 15:13:31 +02:00
Roeland Jago Douma
92abb5f23d
Fix tests 2016-04-19 14:04:00 +02:00
Thomas Müller
1773dcbef2 Merge pull request #23973 from owncloud/share_move_post_delete_from_group_hook
Move post_removeFromGroup to shareManager
2016-04-19 06:59:58 +02:00
Thomas Müller
1626850fc9
Remove deprecated HTTPHelper 2016-04-18 17:28:10 +02:00
Thomas Müller
5c3183cedd
Move version check code out of class Updater 2016-04-18 17:12:59 +02:00
Lukas Reschke
331e4efacb
Move login form into controller
First step on getting the authorisation stuff cleaned up. This is only for the login form, all other stuff is still where it is.
2016-04-15 17:36:23 +02:00
Thomas Müller
50e20e531e
Introduce isReadyForUser and verify in file transfer ownership - fixes #23786 2016-04-15 15:07:40 +02:00
Roeland Jago Douma
6144ced7a0
Move post_removeFromGroup to shareManager
The last sharing hook to be moved over.

* Added unit tests
* Removed old tests that relied on old behaviour
* Removed old hooks.php
2016-04-13 15:00:12 +02:00
Lukas Reschke
ef93ec8bc2
Add test 2016-04-12 21:32:40 +02:00
Thomas Müller
fdee771aca Add unit testing capabilities for templates (#23708)
Add unit testing capabilities for templates
2016-04-12 12:49:11 +02:00
Roeland Douma
495a964ca2 Migrate post_groupDelete hook to share manager (#23841)
The hook now calls the share manager that will call the responsible
shareProvider to do the proper cleanup.

* Unit tests added

Again nothing should change it is just to cleanup old code
2016-04-12 09:46:25 +02:00
Joas Schilling
8e16e7bf34 Merge pull request #23856 from owncloud/share_remove_addtogroup_hooks
Remove pre/post_addToGroup hooks for shares
2016-04-11 15:05:20 +02:00
Roeland Jago Douma
2a0244df27
Fix mappertest 2016-04-08 15:23:09 +02:00
Roeland Jago Douma
f9ade49c7e
Fix notification tests 2016-04-08 15:23:06 +02:00
Roeland Jago Douma
e65e7a5ad7
Fix ShareManager tests 2016-04-08 15:22:57 +02:00
Thomas Müller
1d3d43b1e9 Merge pull request #23553 from owncloud/lock-ttl-execution-time
Make lock ttl configurable
2016-04-08 14:53:26 +02:00
Roeland Jago Douma
bd3bde2f3b
Set proper permissions on link share
If we do not allow public upload we should limit the permissions on
links shares upon retrieval.

* Added unit test
* Allow fetching federated shares by token as well
2016-04-08 14:17:05 +02:00
Roeland Jago Douma
3fae4c82d2
Remove pre/post_addToGroup hooks for shares
There is no need to perform the checks for unique targets on add to
group as we have to do this all when mounting the shares anyway.
2016-04-08 11:56:38 +02:00
Joas Schilling
0de15a86f0 Merge pull request #23773 from owncloud/share_move_delete_user_hook
Migrate post_userDelete hook to share manager
2016-04-07 13:01:10 +02:00
Robin Appelman
cdedda99e4 Make lock ttl configurable 2016-04-07 08:24:13 +02:00
Stefan Weil
02e226a6b3 tests: Fix typos (found by codespell)
Fix also a small grammar issue.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-06 15:08:27 +02:00
Roeland Douma
93b1768eb7 Merge pull request #23819 from owncloud/move-core-completely-to-psr4
Move OC/Core completely to PSR-4
2016-04-06 13:31:44 +02:00
Lukas Reschke
5a0c936f99
Remove OC/Settings from old autoloader 2016-04-06 11:34:53 +02:00
Lukas Reschke
c952adabb5
Remove OC/Core autoloading from old autoloader 2016-04-06 11:34:29 +02:00
Jörn Friedrich Dreyer
4445ef82e0 Test locking with strange filename 2016-04-05 16:13:28 +02:00
Roeland Jago Douma
e0cee43cf0 Migrate post_userDelete hook to share manager
This makes the post_userDelete hook call the sharemanager. This will
cleanup to and from this user.

* All shares owned by this user
* All shares with this user (user)
* All custom group shares
* All link share initiated by this user (to avoid invisible link shares)

Unit tests are added for the defaultshare provider as well as the
federated share provider
2016-04-04 14:15:38 +02:00
Frank Karlitschek
2bff34be56 Merge pull request #23707 from owncloud/make-sure-that-encrypted-version-is-set
Make sure that the encrypted version is set
2016-03-31 20:37:17 +02:00
Frank Karlitschek
fdb59079a2 Merge pull request #23675 from owncloud/fix_encryption_versions_on_external_storages
fix creation of versions of encrypted files on external storages
2016-03-31 20:36:03 +02:00
Bjoern Schiessle
93ed965cbb fix creation of versions of encrypted files on external storages
in order to create a 1:1 copy of a file if a version gets created
we need to store this information on copyBetweenStorage(). This
allows us to by-pass the encryption wrapper if we read the source file.
2016-03-31 19:24:47 +02:00
Lukas Reschke
c427bf3b5d Make sure that the encrypted version is set
The code path called when using external storage with WebDAV is using `\OC\Files\Storage\Wrapper\Encryption::getMetaData` which did not contain the actual encrypted version inside the cache entry version. This lead to the following:

1. User uploaded a file
2. File is created and `\OC\Files\Storage\Wrapper\Encryption::getMetaData` is called. It has an empty `encryptedVersion` but sets `encrypted` to either `true` or `false`.
3. The call when updating the file cache will use the old version.
2016-03-31 18:06:37 +02:00
Roeland Jago Douma
8da48a4482 Add unit tests
Add some unit tests for setting the internal id and the provider id
2016-03-30 23:08:35 +02:00
Roeland Jago Douma
2f4294e781 Add setId and setProviderID to the public interface
Fixes #23337

We only allow the id to be set once!
2016-03-30 22:55:03 +02:00
Thomas Müller
66ee9d56fc Merge pull request #23628 from owncloud/avatar-remove
only remove avatars from the folder we store them in
2016-03-30 17:00:09 +02:00
Roeland Jago Douma
9ce5e4b01f Non moveable mount points should always be UPDATE+DELETE shareable
Fixes #23536

The new sharing code is much stricter in checking permissions. However
for non moveable mounts the permissions UPDATE+DELETE are not reported
on the mount point.

This is just a quick fix.

* Updated unit tests
2016-03-30 13:33:16 +02:00
Robin Appelman
c22697e09e only remove avatars from the folder we store them in 2016-03-30 10:24:43 +02:00
Thomas Müller
b8812c8cba Merge pull request #23154 from owncloud/avatar-save-failure
dont die when we cant save the resized avatar, log instead
2016-03-24 22:43:17 +01:00
Thomas Müller
ea07a428f4 Merge pull request #22506 from owncloud/node-get-from-cache
Query the cache when checking if a node exists
2016-03-23 13:08:17 +01:00
Thomas Müller
fc18d33ff8 Merge pull request #22895 from owncloud/cleanup_default_share_provider
Remove support for old shares in the default share provider
2016-03-23 11:02:28 +01:00
Thomas Müller
efd378814c Merge pull request #23362 from owncloud/fix-l10n-for-themes
Read available l10n files also from theme folder
2016-03-23 09:22:21 +01:00
Roeland Jago Douma
b26b8d17eb Remove support for old shares in the default share provider
In 9.0 we converted the old shares to the new shares. So for 9.1 we can
savely remove the fallback code.

This code was required when there was no initiator set.

* Fixed unit tests
2016-03-23 07:58:17 +01:00
Roeland Jago Douma
52826d0e24 Block group sharing in API and in share manager
* Fix tests
2016-03-22 17:13:34 +01:00
Joas Schilling
dcca20a48a Save the query when we get tags for no objects 2016-03-22 11:13:11 +01:00
Robin Appelman
0b0b3253bb properly use fileinfo objects 2016-03-21 14:20:33 +01:00
Robin Appelman
5e6c905a14 pass the fileinfo to the node if available 2016-03-21 13:53:33 +01:00
Morris Jobke
76455204c0 Inject server root - allows proper testing and separation of concerns 2016-03-18 13:59:44 +01:00
Bjoern Schiessle
5e267589d4 only create and update user specific key if no master key is enabled 2016-03-18 11:06:14 +01:00
Morris Jobke
23c0f4ff5f Read available l10n files also from theme folder
The old behaviour was that only languages could be used for an app
that are already present in the apps/$app/l10n folder. If there is
a themed l10n that is not present in the apps default l10n folder
the language could not be used and the texts are not translated.

With this change this is possible and also the l10n files are
loaded even if the default l10n doesn't contain the l10n file.
2016-03-17 16:15:37 +01:00
Lukas Reschke
676041ba7e Ensure that stored version is at least 1 for cross-storage copy
In case of a move operation from an unencrypted to an encrypted
storage the old encrypted version would stay with "0" while the
correct value would be "1". Thus we manually set the value to "1"
for those cases.

See also https://github.com/owncloud/core/issues/23078
2016-03-16 10:36:15 +01:00
Thomas Müller
f7140294f2 Merge pull request #23157 from owncloud/remove-share-prop-entries
remove old share propagation entries from appconfig
2016-03-15 16:04:17 +01:00
Thomas Müller
27760ae54e Merge pull request #23164 from owncloud/db-connection-precondition-fix
Prevent certain DBs throwing exceptions on same-value updates
2016-03-15 16:03:55 +01:00
Thomas Müller
7b06dd485d Merge pull request #23250 from owncloud/fix-support-for-php7-in-htaccess
Fix several .htaccess and .user.ini related problems
2016-03-15 16:03:18 +01:00
Robin McCorkell
1b2f1cc272 Prevent certain DBs throwing exceptions on same-value updates
A PreconditionNotMetException must only be thrown if explicit
preconditions are specified for setValues(), not if the value is merely
the same as was already in the DB.
2016-03-15 13:02:19 +01:00
Robin Appelman
0aa83511a1 remove old share propagation entries from appconfig 2016-03-15 12:50:22 +01:00
Roeland Jago Douma
1db82073a4 Generate a valid URL for link notification
fixes #23197

* Updated unit test
2016-03-15 11:10:24 +01:00
Lukas Reschke
5278bfe0e4 Add support for custom values in integrity checker 2016-03-15 10:41:17 +01:00
Joas Schilling
2f67aa9bc4 Fix errors in memcached implementation 2016-03-14 12:39:34 +01:00
Robin Appelman
54e750ba78 dont die when we cant save the resized avatar, log instead 2016-03-11 13:44:35 +01:00
Lukas Reschke
dc6789fd5b Explicitly check for port
The setup uses `\OCP\IRequest::getInsecureServerHost` which in some cases can also include a port. This makes the trusted domain check fail thus.

I've decided to add this here that way because adjusting the setup would require parsing the host properly. This is not something that can be done very good in PHP. Check the following example for why `parse_url` is not our friend: https://3v4l.org/k501Z
2016-03-10 22:32:29 +01:00
Roeland Jago Douma
7301b43eb6 Added tests
* Unit tests for OC_Filechunking to verify the isComplete function
* Intergration tests to show that shuffling chunks is all fine
2016-03-07 21:20:13 +01:00
Lukas Reschke
72c8187cbb Keep "encryptedVersion" when calling \OC\Files\View::copy
When calling `\OC\Files\View::copy` we should also keep the version to ensure that the file will always have the correct version attached and can be successfully decrypted.

To test this the following steps are necessary (from https://github.com/owncloud/core/issues/22781#issuecomment-191328982):

1. setup a new ownCloud 9.0 beta2
2. enable encryption
2. upload a docx (5.7MB large)
3. upload the same file again and overwrite the existing file
4. I can download the original file and the first version
5. I restore the first version
6. restored version can no longer be downloaded with the error described above

The manual cache operation in `\OCA\Files_Versions\Storage` is unfortunately necessary since `\OCA\Files_Versions\Storage::copyFileContents` is not using `\OCP\Files\Storage::moveFromStorage` in the case when an object storage is used. Due to the workaround added in 54cea05271 the stream is directly copied and thus bypassing the FS.
2016-03-03 14:15:36 +01:00
Joas Schilling
2a0cda74d4 Use IQueryBuilder::PARAM_* instead of \PDO::PARAM_* 2016-02-29 09:44:40 +01:00
Thomas Müller
6526c122af Merge pull request #22683 from owncloud/fix_22682
Relax rootfolder check
2016-02-29 08:53:58 +01:00
Roeland Jago Douma
b116e80c56 Relax rootfolder check
* Updated unit tests
* Added intergration test
2016-02-26 16:05:32 +01:00
Roeland Jago Douma
bfcdf40a64 Expiration date can only be enforced if default is enabled
If the default expiration date is not enebaled it can not be enforced.

* Added unit tests
2016-02-26 11:38:06 +01:00
Thomas Müller
62d7885c3b Merge pull request #22660 from owncloud/fix_22656
Do not allow sharing of the users root folder
2016-02-26 10:49:12 +01:00
Thomas Müller
0795cc373d Merge pull request #22646 from owncloud/fix_22642
Set default expiration date if none given on share creation
2016-02-26 10:48:21 +01:00
Thomas Müller
cbde4bb92f Merge pull request #22650 from owncloud/fix_hook
Fix verifyExpirationDate passwordSet argument
2016-02-26 09:32:41 +01:00
Roeland Jago Douma
8213d5df4f Do not allow sharing of the root folder
Sharing of the users root folder should not be allowed as it is very
weird UX. Also many of our clients have no proper way of displaying
this.

Added unit test

Also added intergration tests to make sure we won't allow it in the
future.
2016-02-25 20:40:30 +01:00
Roeland Jago Douma
9412f69104 Fix verifyExpirationDate passwordSet argument
Password set should be false if the password is null.

Also updated the unit tests to tests this now.
2016-02-25 15:39:02 +01:00
Thomas Müller
efc966698f Merge pull request #22579 from owncloud/fix_broken_unencrypted_size
Heal unencrypted file sizes at download time (second approach)
2016-02-25 14:34:48 +01:00
Roeland Jago Douma
6d4f80d680 Set default expiration date if none given on share creation
When we create a share for the first time we should set the default
expiration date. If none is given.

Fixes #22642
2016-02-25 14:21:46 +01:00
Thomas Müller
2ec1c738d0 Merge pull request #22573 from owncloud/issue-22568-allow-string-object-ids
Make sure we can store strings as per the interface
2016-02-24 12:15:23 +01:00
Bjoern Schiessle
834b51b83b recalculate unencrypted size if we assume that the size stored in the db is not correct 2016-02-23 15:09:46 +01:00
Joas Schilling
fb8b34bdd0 Allow defining a limit and offset for getObjectIdsForTags 2016-02-23 09:04:15 +01:00
Joas Schilling
24c7f38a00 Make sure we can store strings as per the interface 2016-02-22 15:43:20 +01:00
Thomas Müller
f8677628d4 Merge pull request #22503 from owncloud/issue_22500
When (re-)sharing an incomming federated share set the corrent owner
2016-02-19 16:07:43 +01:00
Thomas Müller
b5281b61ed Merge pull request #22410 from owncloud/fix_22119
Do not copy skeleton on avatar access
2016-02-19 16:06:40 +01:00
Roeland Jago Douma
2dcf887cce When (re-)sharing an incomming federated share set the corrent owner
Incomming federated shares are a special kind. We mount them as normal
webdav shares but we do supply owner info with the federated cloud id of
the share owner.

Since we do not yet have the new resharing behaviour on federated shares
we need to set the correct owner. Which will allow sharing and proper
mounting for other users.

fixes #22500
2016-02-19 12:43:03 +01:00
v1r0x
ec6e8c1ab6 fix unit test 2016-02-18 12:39:19 +01:00
Thomas Müller
c6fef52939 Merge pull request #22416 from owncloud/fix_22402
Return proper error string if sharing for this user is disabled
2016-02-16 13:37:22 +01:00
Thomas Müller
d5226c88ac Merge pull request #22338 from owncloud/fix_22247
Allow more characters in filenames
2016-02-16 13:37:07 +01:00
Roeland Jago Douma
ed6843e87b Return proper error string if sharing for this user is disabled
Fixes #22402
2016-02-16 10:22:49 +01:00
Roeland Jago Douma
47d28155a8 Do not copy skeleton on avatar access
Fixes #22119

Just try to get the folder of the user. If it is not there a
NotFoundException will be thrown. Which will be handled by the avatar
endpoint.
2016-02-16 09:18:38 +01:00
Morris Jobke
7048d428b1 Remove unneeded parameter from OC_App::getEnabledApps 2016-02-15 13:33:07 +01:00
Thomas Müller
248c571c56 Merge pull request #22331 from owncloud/dav-nonexisting-part
fix getNodeForPath for non existing part files
2016-02-13 18:24:00 +01:00
Thomas Müller
207c09c511 Merge pull request #22309 from owncloud/infinite-recursion-on-expired-link
Do not getShare in deleteShare, it's already there when deleting
2016-02-12 11:11:26 +01:00
Thomas Müller
e99c4d83dc Merge pull request #22317 from owncloud/fix_invisible_linkshares
Do not allow invisible link shares
2016-02-12 11:10:58 +01:00
Roeland Jago Douma
759b19775d Fix unit tests 2016-02-12 07:49:36 +01:00
Robin Appelman
c3e4ced64a fix getNodeForPath for non existing part files 2016-02-11 17:22:40 +01:00
Roeland Jago Douma
4533cb9c59 Add parent for invisible link shares 2016-02-11 13:29:23 +01:00
Joas Schilling
8cfdc62eae Update info checker requirements 2016-02-11 11:54:13 +01:00
Roeland Jago Douma
2aa206e900 Fix unit tests 2016-02-11 11:21:12 +01:00
Björn Schießle
9bb97c714b fixing unit tests 2016-02-09 23:43:26 +01:00
Thomas Müller
29f6f451a9 Merge pull request #22192 from owncloud/fix_19685
Only set the default expiration date on share creation
2016-02-09 23:38:00 +01:00
Thomas Müller
2982017682 Merge pull request #22228 from owncloud/comments-limit-message
Limit comment message to 1k chars
2016-02-09 16:35:23 +01:00
Roeland Jago Douma
ee65cd0bd8 Only set the default expiration date on share creation
Fixes #19685

The default expiration date should only be set when we create a new
share. So if a share is created and the expiration date is unset. And
after that the password is updated the expiration date should remain
unset.
2016-02-09 11:05:14 +01:00
Arthur Schiwon
347ad3e223 Limit comment message to 1k chars 2016-02-09 03:14:30 +01:00
Arthur Schiwon
cd00751de5 Send events when enabling and disabling of apps 2016-02-09 02:51:12 +01:00
Roeland Jago Douma
fad85ad19f Fix unit tests 2016-02-08 11:30:48 +01:00
Roeland Jago Douma
8486d61764 getSharesBy should also expire link shares 2016-02-06 13:31:54 +01:00
Roeland Jago Douma
3028ec5440 Delete expired share when fetched by id 2016-02-06 13:31:54 +01:00
Roeland Jago Douma
5ed56d9edb Delete a link share if it is expired on access
If we access a link share we should check if it has expired already.
If so we should remove it and throw a ShareNotFound exception
2016-02-06 13:31:54 +01:00
Thomas Müller
5832178f59 Merge pull request #22139 from owncloud/comments-files-cleanup
cleanup jobs for comments and comment read marks
2016-02-06 13:26:00 +01:00
Joas Schilling
065141f6f4 Move casting to IExpressionBuilder 2016-02-05 21:26:30 +01:00
Robin Appelman
fb76d7de69 remove unused Storage->getLocalFolder 2016-02-05 16:48:08 +01:00
Roeland Jago Douma
169874957a Path should be relative 2016-02-04 19:19:10 +01:00
Roeland Jago Douma
b57aac0a89 [Share 2.0] Add missing post_update_permissions hook 2016-02-04 19:18:25 +01:00
Thomas Müller
d8faeab421 Merge pull request #21766 from farukuzun/master
Add some mimetypes
2016-02-04 16:49:31 +01:00
Thomas Müller
1619968a03 Merge pull request #22111 from owncloud/use-intermediate-certificate
Use intermediate root authority + sign other release channels
2016-02-04 16:17:47 +01:00
Roeland Jago Douma
0f22a8db1d Also add type (file/folder) to IShare object
We need this for the hooks :(
2016-02-04 14:28:09 +01:00
Roeland Jago Douma
2c0cb5a00e Unit test for delete lazy shares 2016-02-04 13:30:42 +01:00
Roeland Jago Douma
e0bc128eb5 Add unit tests 2016-02-04 13:05:05 +01:00
Roeland Jago Douma
fc215d0980 Make the share object lazy
Share providers can now just pass in a fileId. And the node will only be
created once needed.
2016-02-04 12:51:23 +01:00
Faruk Uzun
6ffd8f3e0d Introduce some mimetypes for richdocuments
* application/vnd.lotus-wordpro
* application/vnd.visio
* application/vnd.wordperfect
* application/msonenote
2016-02-04 13:48:21 +02:00
Thomas Müller
b594aa18ee Merge pull request #22110 from owncloud/comment-types-always-plural
types shall always be plural
2016-02-04 10:55:49 +01:00
Lukas Reschke
5f300ac275 Allow specifing the signing path 2016-02-03 20:08:40 +01:00
Arthur Schiwon
9370491822 types shall always be plural 2016-02-03 19:28:15 +01:00
Roeland Jago Douma
96662c4d0d [Share 2.0] Fix shareManager 2016-02-03 19:25:29 +01:00
Roeland Jago Douma
eb904c7aa9 [Share 2.0] Fix defaultshare provider 2016-02-03 19:25:29 +01:00
Thomas Müller
74abbbc0d6 Merge pull request #22098 from owncloud/cleanup-core-apps
Cleanup core apps
2016-02-03 14:17:10 +01:00
Joas Schilling
599eb141b4 Make sure tests don't leave a stray directory behind 2016-02-03 12:57:22 +01:00
Roeland Jago Douma
dc32f49c6e [Share 2.0] Use GenericShareException 2016-02-02 14:23:45 +01:00
Roeland Jago Douma
4d7130ad31 [Share 2.0] Add exceptions to OCP 2016-02-02 14:07:11 +01:00
Thomas Müller
ce053b9808 Merge pull request #22013 from owncloud/share2_moveshare
[Share 2.0] Allow moving of shares
2016-02-02 13:34:50 +01:00
Thomas Müller
2d1d89ee29 Merge pull request #22049 from owncloud/issue-22041-activities-for-systemtags
Issue 22041 activities for systemtags
2016-02-02 13:08:01 +01:00
Thomas Müller
eee6f3d406 Merge pull request #22057 from owncloud/share2_update_hash
Update old password hashed for link shares on access
2016-02-02 12:37:31 +01:00
Thomas Müller
c9006d6d56 Merge pull request #21988 from owncloud/allow-search-in-synced-addressbooks
Allow search in synced addressbooks
2016-02-02 12:37:12 +01:00
Roeland Jago Douma
2316cb1f8b [Share 2.0] Allow moving of shares
* Only recipient can move a share
* Unit tests
2016-02-02 11:34:52 +01:00
Thomas Müller
b01d50216e The local address book is replaced now by the system addressbook as part of the dav app 2016-02-02 10:56:33 +01:00
Roeland Jago Douma
403547f0ea [Share 2.0] Allow recipient to be passed in to getShareById
* This allows us to retrieve usergroup shares for a given id.
  If the user deleted a share or moved it this will be a different share
2016-02-02 10:41:57 +01:00
Joas Schilling
d5126b1ad4 Dispatch events when tags are added/updated/deleted 2016-02-02 09:57:42 +01:00
Joas Schilling
591613fce2 Dispatch some events when tags are un-/assigned 2016-02-02 09:57:42 +01:00
Roeland Jago Douma
619a4d2e52 Update old password hashed for link shares on access
Fixes https://github.com/owncloud/core/issues/16594
2016-02-01 21:46:32 +01:00
Thomas Müller
b4853f3fce Merge pull request #21967 from owncloud/comments-webdav
Comments WebDAV adjustements
2016-02-01 16:17:45 +01:00
Thomas Müller
84d9704121 Merge pull request #22028 from owncloud/share_hook_expirationdate
Share hook expirationdate
2016-02-01 14:13:54 +01:00
Thomas Müller
32067ac49b Merge pull request #21989 from owncloud/make-csp-modifiable
Add public API to give developers the possibility to adjust the global CSP defaults
2016-02-01 10:10:40 +01:00
Thomas Müller
a025b2865f Merge pull request #22022 from owncloud/share_ocs_filter_path_sharedwithme
Add path filter to OCS Share API shared_with_me=true
2016-02-01 09:00:31 +01:00
Roeland Jago Douma
d3e79f3bb6 Add Unit tests 2016-01-30 15:40:35 +01:00
Thomas Müller
67bf225fbe Merge pull request #21956 from owncloud/cross-cache-move
Add fallback moveFromCache implementation
2016-01-29 17:03:16 +01:00
Roeland Jago Douma
a24e7f6558 Add path filter to OCS Share API ?shared_with_me=true
This allows all clients to quickly get the share info for a given path.
Instead of returning everything and filtering it then manually on the
client side.
2016-01-29 15:36:23 +01:00
Arthur Schiwon
01cdc70f9c introduce comments read marke tables, comes with user cleanup after deletion 2016-01-29 13:08:02 +01:00
Arthur Schiwon
d2882b9021 Comments WebDAV adjustements 2016-01-29 13:08:02 +01:00
Robin Appelman
ec3f6549f6 Add fallback moveFromCache implementation 2016-01-29 13:06:59 +01:00
Roeland Jago Douma
1ff4ec1cd3 [Share 2.0] When deleting a group share delete children
For group shares we can have children. Those are custom shares when a
user has moved or deleted a group share. Those also have to be deleted
if the group share is removed.
2016-01-28 20:35:46 +01:00
Lukas Reschke
809ff5ac95 Add public API to give developers the possibility to adjust the global CSP defaults
Allows to inject something into the default content policy. This is for
example useful when you're injecting Javascript code into a view belonging
to another controller and cannot modify its Content-Security-Policy itself.
Note that the adjustment is only applied to applications that use AppFramework
controllers.

To use this from your `app.php` use `\OC::$server->getContentSecurityPolicyManager()->addDefaultPolicy($policy)`,
$policy has to be of type `\OCP\AppFramework\Http\ContentSecurityPolicy`.

To test this add something like the following into an `app.php` of any enabled app:
```
$manager = \OC::$server->getContentSecurityPolicyManager();
$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFrameDomain('asdf');
$policy->addAllowedScriptDomain('yolo.com');

$policy->allowInlineScript(false);
$manager->addDefaultPolicy($policy);
$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFontDomain('yolo.com');
$manager->addDefaultPolicy($policy);

$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFrameDomain('banana.com');
$manager->addDefaultPolicy($policy);
```

If you now open the files app the policy should be:

```
Content-Security-Policy:default-src 'none';script-src yolo.com 'self' 'unsafe-eval';style-src 'self' 'unsafe-inline';img-src 'self' data: blob:;font-src yolo.com 'self';connect-src 'self';media-src 'self';frame-src asdf banana.com 'self'
```
2016-01-28 18:36:46 +01:00
Thomas Müller
b7710ab6d7 Merge pull request #21858 from owncloud/getMountsForFileId
add IUserMountCache->getMountsForFileId
2016-01-28 11:20:42 +01:00
Roeland Jago Douma
34e912ab6b [Share 2.0] Fix interfaces and comments
* Made comments more clear
* Removed unneeded methods
* IShares shareTime is now a proper DateTime object
* IShares getPath -> getNode & setPath -> setNode
* Fix unit tests
2016-01-28 07:54:09 +01:00
Roeland Jago Douma
f2e70441e4 [Share 2.0] Add getShareManager to OCP\IServerContainer 2016-01-27 22:04:37 +01:00
Roeland Jago Douma
185b9c6edd [Share 2.0] Move IShare to OCP 2016-01-27 22:04:37 +01:00
Roeland Jago Douma
0832cca54e [Share 2.0] Fix IShare 2016-01-27 22:04:09 +01:00
Lukas Reschke
cb1a64b949 Check whether ownCloud is installed
ownCloud might not yet be setup. This causes an issue as the user config requires a setup ownCloud. Thus this needs a block whether ownCloud is installed or not.

Fixes https://github.com/owncloud/core/issues/21955
2016-01-27 18:30:18 +01:00
Thomas Müller
6973718fb8 Merge pull request #21940 from owncloud/share2_do_not_returned_removed_group_shares
[Share 2.0] Properly handle user deleted group shares
2016-01-27 16:16:06 +01:00
Joas Schilling
2563c3ffaf Fix failing oracle and postgres tests 2016-01-27 12:53:44 +01:00
Robin Appelman
644a8ab797 add IUserMountCache->getMountsForFileId 2016-01-27 12:53:44 +01:00
Thomas Müller
1594371c8c Merge pull request #21741 from owncloud/l10n-improvements
Move methods to the factory that are not related to translating, but to guessing/finding the language
2016-01-27 09:37:00 +01:00
Thomas Müller
5b7a1b13f3 Merge pull request #21887 from owncloud/share2_updateShare
[Sharing 2.0] update share
2016-01-27 09:36:41 +01:00
Thomas Müller
c274f03e12 Merge pull request #21906 from owncloud/querybuilder-clob-comparison
Querybuilder clob comparison
2016-01-27 09:36:21 +01:00
Roeland Jago Douma
a4900d721f [Share 2.0] Properly handle user deleted group shares
If a user deletes a group share we create a special share entry. To the
API this is just a normal group share for that user with permissions 0.
But we should not return this.
2016-01-27 09:02:12 +01:00
Roeland Jago Douma
d11682dcb4 Fix comments from Thomas 2016-01-26 15:31:52 +01:00
Joas Schilling
7514695399 Fix Oracle comparisons 2016-01-26 14:56:07 +01:00
Joas Schilling
bd444ae3c3 Add tests for clob comparisons 2016-01-26 14:56:07 +01:00
Roeland Jago Douma
c090d709e7 We must resolve to the proper usergroup share 2016-01-26 14:14:54 +01:00
Joas Schilling
f413b3ff3a Add tests for findAvailableLanguages 2016-01-26 14:02:32 +01:00
Joas Schilling
70396581eb Add tests for findLanguage() 2016-01-26 14:02:32 +01:00
Joas Schilling
fe411788b7 Remove tests for wrapper 2016-01-26 14:02:31 +01:00
Joas Schilling
b24b198a83 Add tests for the factory 2016-01-26 14:02:31 +01:00
Joas Schilling
8f9cc51559 Add tests for the new l10n class 2016-01-26 14:02:31 +01:00
Joas Schilling
1199619518 Move legacy test file to new location 2016-01-26 14:02:31 +01:00
Joas Schilling
2cb26a9151 Fix the tests 2016-01-26 14:02:31 +01:00
Joas Schilling
043625ee52 Move findLanguage() and setLanguageFromRequest() to factory 2016-01-26 14:02:31 +01:00
Roeland Jago Douma
44c073b1e6 [share 2.0] manager unit tests 2016-01-26 13:59:58 +01:00
Roeland Jago Douma
59c2aae54f [Share 2.0] Fix unit tests 2016-01-26 13:59:58 +01:00
Roeland Jago Douma
7239fea0f0 [Share 2.0] Add unit test for the default share provider 2016-01-26 13:59:58 +01:00
Thomas Müller
5285460669 Merge pull request #21845 from owncloud/sync-system-addressbook-on-avatar-change
Changing the avatar of the user emits the changeUser event which trig…
2016-01-26 11:37:17 +01:00
Thomas Müller
2bafb1c649 Merge pull request #21894 from owncloud/refactor-csrf
Add new CSRF manager for unit testing purposes
2016-01-26 11:36:56 +01:00
Thomas Müller
a1ca9de0f5 Trigger change on avatar delete 2016-01-25 20:56:04 +01:00
Thomas Müller
68ef6e1bdd Assert that User::triggerChange is called upon avatar change 2016-01-25 20:05:11 +01:00
Thomas Müller
f165ad8864 Changing the avatar of the user emits the changeUser event which triggers update of the system addressbook 2016-01-25 20:05:11 +01:00
Lukas Reschke
a977465af5 Add new CSRF manager for unit testing purposes
This adds a new CSRF manager for unit testing purposes, it's interface is based upon https://github.com/symfony/security-csrf. Due to some of our required custom changes it is however not possible to use the Symfony component directly.
2016-01-25 20:03:40 +01:00
Thomas Müller
728caf13f8 Adding support of -1 as size to be passed into get and getFile 2016-01-25 16:54:40 +01:00
Thomas Müller
99e9c81c8b Merge pull request #21841 from owncloud/share2_deletefromself
[Share 2.0] Add deleteFromSelf method
2016-01-22 17:27:17 +01:00
Thomas Müller
7731b29136 Merge pull request #21719 from owncloud/move-notification-api-to-ocp
Move the notification API to public namespace
2016-01-22 16:20:26 +01:00
Roeland Jago Douma
a6600e95dc [Share 2.0] Add deleteFromSelf method
This allows recipient to delete a share. For user shares this is the
same as deleting (at least for now).
But for group shares this means creating a new share with type 2. With
permissions set to 0.
2016-01-22 15:06:50 +01:00
Thomas Müller
9b4c9a0357 Merge pull request #18531 from owncloud/ext-user-credentials
External storage 'Login credentials' auth mechanism
2016-01-22 13:14:14 +01:00
Thomas Müller
0bccdbc959 Merge pull request #21849 from owncloud/add-custom-marker-into-htaccess
Add custom marker into htaccess and execute integrity check after installation
2016-01-22 13:13:59 +01:00
Thomas Müller
e3013a99ef Merge pull request #21816 from owncloud/require-a-specific-path-instead-of-autoguessing
Use path instead of app id for occ app signing
2016-01-22 13:13:41 +01:00