summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Migrate Local external storage to new APIRobin McCorkell2015-08-193-14/+53
|
* Revert "Fix mounting wrapped storages resulting in many-layered wrapping"Robin McCorkell2015-08-192-27/+1
| | | | This reverts commit 75a5e6e12b18a9f5b7b113cd7e2c9c56c204084d.
* Allow builtin auth mechanism to be overriddenRobin McCorkell2015-08-191-1/+1
| | | | | | The builtin mechanism is used exclusively for legacy external storages, which when upgraded to the new registration need to fallback to the defined legacy authentication mechanism instead.
* Implement password authentication mechanismsRobin McCorkell2015-08-195-0/+180
| | | | | | | | | | | Introduces the basic password authentication mechanism, along with a mechanism based on ownCloud credentials stored in the user session. Change to lib/private is an extension of PermissionsMask, as isSharable() override was missing. Session credentials auth mechanism now disables sharing on applied storages, as credentials will not be available.
* Merge pull request #18378 from owncloud/files-delete-spinnerVincent Petry2015-08-191-2/+2
|\ | | | | Fix spinner when deleting all files in a folder
| * Fix spinner when deleting all files in a folderVincent Petry2015-08-181-2/+2
| |
* | Merge pull request #18354 from owncloud/files-fixdndVincent Petry2015-08-192-2/+7
|\ \ | | | | | | Fix file drag and drop JS error
| * | Fix file drag and drop JS errorVincent Petry2015-08-172-2/+7
| | |
* | | Merge pull request #15914 from owncloud/ext-backend-registerMorris Jobke2015-08-1955-2193/+4245
|\ \ \ | | | | | | | | Introduce BackendService for managing external storage backends
| * | | Restrict Local backend to admin-onlyRobin McCorkell2015-08-191-0/+4
| | | |
| * | | Load custom JS for all backends/auth mechanismsRobin McCorkell2015-08-194-16/+30
| | | | | | | | | | | | | | | | | | | | | | | | Loading custom JS on a per-backend basis added needless complexity and made dealing with async required. Now all backends/auth mechanisms load custom JS in PHP
| * | | Propagate auth mechanism/backend failures to filesystem layerRobin McCorkell2015-08-198-28/+298
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Failure to prepare the storage during backend or auth mechanism manipulation will throw an InsufficientDataForMeaningfulAnswerException, which is propagated to StorageNotAvailableException in the filesystem layer via the FailedStorage helper class. When a storage is unavailable not due to failure, but due to insufficient data being available, a special 'indeterminate' status is returned to the configuration UI.
| * | | Make Application a singletonRobin McCorkell2015-08-196-32/+25
| | | | | | | | | | | | | | | | | | | | The same Application must be used in the settings templates and in routes, so that any registered backends are correctly seen
| * | | Compatibility shims for OC_Mount_ConfigRobin McCorkell2015-08-198-1603/+232
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following functions have been removed: - addMountPoint() - removeMountPoint() - movePersonalMountPoint() registerBackend() has been rewritten as a shim around BackendService, allowing legacy code to interact with the new API seamlessly addMountPoint() was already disconnected from all production code, so this commit completes the job and removes the function itself, along with disconnecting and removing related functions. Unit tests have likewise been removed. getAbsoluteMountPoints(), getSystemMountPoints() and getPersonalMountPoints() have been rewritten to use the StoragesServices
| * | | Unit tests for new backend APIRobin McCorkell2015-08-1911-0/+977
| | | |
| * | | Split backend identifiers from the class nameRobin McCorkell2015-08-1918-172/+327
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this, the storage class name was stored in mount.json under the "class" parameter, and the auth mechanism class name under the "authMechanism" parameter. This decouples the class name from the identifier used to retrieve the backend or auth mechanism. Now, backends/auth mechanisms have a unique identifier, which is saved in the "backend" or "authMechanism" parameter in mount.json respectively. An identifier is considered unique for the object it references, but the underlying class may change (e.g. files_external gets pulled into core and namespaces are modified).
| * | | Authentication mechanisms for external storage backendsRobin McCorkell2015-08-1925-86/+740
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A backend can now specify generic authentication schemes that it supports, instead of specifying the parameters for its authentication method directly. This allows multiple authentication mechanisms to be implemented for a single scheme, providing altered functionality. This commit introduces the backend framework for this feature, and so at this point the UI will be broken as the frontend does not specify the required information. Terminology: - authentication scheme Parameter interface for the authentication method. A backend supporting the 'password' scheme accepts two parameters, 'user' and 'password'. - authentication mechanism Specific mechanism implementing a scheme. Basic mechanisms may forward configuration options directly to the backend, more advanced ones may lookup parameters or retrieve them from the session New dropdown selector for external storage configurations to select the authentication mechanism to be used. Authentication mechanisms can have visibilities, just like backends. The API was extended too to make it easier to add/remove visibilities. In addition, the concept of 'allowed visibility' has been introduced, so a backend/auth mechanism can force a maximum visibility level (e.g. Local storage type) that cannot be overridden by configuration in the web UI. An authentication mechanism is a fully instantiated implementation. This allows an implementation to have dependencies injected into it, e.g. an \OCP\IDB for database operations. When a StorageConfig is being prepared for mounting, the authentication mechanism implementation has manipulateStorage() called, which inserts the relevant authentication method options into the storage ready for mounting.
| * | | Introduce UserGlobalStoragesServiceRobin McCorkell2015-08-196-36/+312
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UserGlobalStoragesService reads the global storage configuration, cherry-picking storages applicable to a user. Writing storages through this service is forbidden, on punishment of throwing an exception. Storage IDs may also be config hashes when retrieved from this service, as it is unable to update the storages with real IDs. As UserGlobalStoragesService and UserStoragesService share a bit of code relating to users, that has been split into UserTrait. UserTrait also allows for the user set to be overridden, rather than using the user from IUserSession. Config\ConfigAdapter has been reworked to use UserStoragesService and UserGlobalStoragesService instead of OC_Mount_Config::getAbsoluteMountPoints(), further reducing dependance on that horrible static class.
| * | | Introduce BackendService for managing external storage backendsRobin McCorkell2015-08-1931-558/+1638
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backends are registered to the BackendService through new data structures: Backends are concrete classes, deriving from \OCA\Files_External\Lib\Backend\Backend. During construction, the various configuration parameters of the Backend can be set, in a design similar to Symfony Console. DefinitionParameter stores a parameter configuration for an external storage: name of parameter, human-readable name, type of parameter (text, password, hidden, checkbox), flags (optional or not). Storages in the StoragesController now get their parameters validated server-side (fixes a TODO).
* | | Merge pull request #18415 from ↵Thomas Müller2015-08-192-2/+0
|\ \ \ | | | | | | | | | | | | | | | | owncloud/apps-command-returncode-successifalreadyenabled No error code when app already enabled/disabled
| * | | No error code when app already enabled/disabledVincent Petry2015-08-192-2/+0
|/ / /
* | | Merge pull request #18076 from owncloud/fix-thumbnail-api-masterThomas Müller2015-08-191-1/+1
|\ \ \ | | | | | | | | No need to url decode the file
| * | | No need to url decode the fileThomas Müller2015-08-051-1/+1
| | | |
* | | | Merge pull request #18339 from owncloud/update-jquery-visibilityThomas Müller2015-08-192-24/+81
|\ \ \ \ | | | | | | | | | | update jquery-visibility in files app
| * | | | update jquery-visibility in files appMorris Jobke2015-08-172-24/+81
| | | | | | | | | | | | | | | | | | | | * ref #12877
* | | | | Merge pull request #18374 from owncloud/router-appsMorris Jobke2015-08-192-0/+16
|\ \ \ \ \ | | | | | | | | | | | | Only load app routes if the app has already been loaded [re-merge]
| * | | | | Only load app routes if the app has already been loadedRobin McCorkell2015-08-182-0/+16
| | |_|_|/ | |/| | |
* | | | | Merge pull request #18384 from owncloud/apps-command-returncodeThomas Müller2015-08-192-0/+4
|\ \ \ \ \ | | | | | | | | | | | | Return error code on failure with occ app:enable/disable
| * | | | | Return error code on failure with occ app:enable/disableVincent Petry2015-08-182-0/+4
| |/ / / /
* | | | | Merge pull request #14401 from owncloud/ux-s2s-ldapThomas Müller2015-08-195-13/+106
|\ \ \ \ \ | | | | | | | | | | | | allow login names to be used for s2s with LDAP users
| * | | | | adjust to current masterArthur Schiwon2015-04-131-3/+2
| | | | | |
| * | | | | fix and more robustness thx to scrutinizerArthur Schiwon2015-04-131-1/+4
| | | | | |
| * | | | | allow login names to be used for s2s with LDAP usersArthur Schiwon2015-04-135-12/+103
| | | | | |
* | | | | | Merge pull request #18390 from rullzer/fix_setupchecksBernhard Posselt2015-08-182-8/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | Move remaining setupchecks to new fomat
| * | | | | | Move remaining setupchecks to new fomatRoeland Jago Douma2015-08-182-8/+16
| | | | | | |
* | | | | | | Merge pull request #14314 from owncloud/clean-up-ocs-codeBernhard Posselt2015-08-183-64/+6
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Cleanup OCS code
| * | | | | | | Cleanup OCS codeLukas Reschke2015-08-143-64/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes unused code from `OC_OCS` which nobody understood what it really was for anyways.
* | | | | | | | Merge pull request #18287 from owncloud/smb-1.0.3Thomas Müller2015-08-1822-1017/+136
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | update icewind/smb to 1.0.4
| * | | | | | | | update icewind/smb to 1.0.4Robin Appelman2015-08-1711-43/+99
| | | | | | | | |
| * | | | | | | | remove travis filesRobin Appelman2015-08-143-66/+2
| | | | | | | | |
| * | | | | | | | update icewind/smb to 1.0.3Robin Appelman2015-08-1319-954/+81
| | | | | | | | |
* | | | | | | | | Merge pull request #14825 from rullzer/avatarcontroller_nodeVincent Petry2015-08-183-19/+30
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | AvatarController to all OCP functions/Node API
| * | | | | | | | | Move avatarcontroller towards Node ApiRoeland Jago Douma2015-08-183-19/+30
| | | | | | | | | |
* | | | | | | | | | Merge pull request #18389 from owncloud/fix-17770Morris Jobke2015-08-181-1/+1
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Fix extracting basename from path in sharing
| * | | | | | | | | | Fix extracting basename from path in sharingRobin McCorkell2015-08-181-1/+1
| | |_|_|_|_|/ / / / | |/| | | | | | | |
* | | | | | | | | | Merge pull request #18392 from owncloud/remote-nologThomas Müller2015-08-181-3/+8
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / |/| | | | | | | | | Avoid logging normal exceptions in remote.php
| * | | | | | | | | Avoid logging normal exceptions in remote.phpRobin McCorkell2015-08-181-3/+8
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the instance needs an upgrade, or a file is not found, no logging will occur to avoid filling up log files
* | | | | | | | | Merge pull request #18381 from owncloud/public-share-fixdepsloadingMorris Jobke2015-08-182-1/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix file actions menu in public page
| * | | | | | | | | Only show delete action in menu when delete permission existsVincent Petry2015-08-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts an older decision where we said the delete action must always appear but be grayed out when the permission is missing. The actions menu obsoletes that.
| * | | | | | | | | Load missing JS dep in public link pageVincent Petry2015-08-181-0/+1
| |/ / / / / / / /