aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_external/controller
Commit message (Collapse)AuthorAgeFilesLines
* Move stuff from outside lib/ to PSR-4Joas Schilling2016-05-245-1022/+0
|
* Update author informationLukas Reschke2016-03-015-0/+5
| | | | Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
* remove global credentialsRobin Appelman2016-02-171-10/+1
|
* Add credentials dialog for user provided authJesús Macias2016-02-041-1/+2
|
* Add global auth backend for files externalRobin Appelman2016-02-041-1/+9
|
* Merge pull request #21909 from owncloud/files-external-visibilityThomas Müller2016-02-011-1/+1
|\ | | | | Prevent invalid storages being displayed in the storages view
| * Prevent invalid storages being displayed in the storages viewRobin McCorkell2016-01-261-1/+1
| |
* | inject loggerRobin Appelman2016-01-294-9/+29
| |
* | minor fixesRobin Appelman2016-01-291-3/+2
| |
* | remove custom controler for user provided password authRobin Appelman2016-01-292-100/+49
| |
* | Allow setting user provided credentials from the personal settings pageRobin Appelman2016-01-293-3/+49
| |
* | expose user provided credentials for admin mountsRobin Appelman2016-01-292-1/+10
| |
* | Add user provided credentials mechanismRobin Appelman2016-01-291-0/+57
|/
* fix testRobin Appelman2016-01-182-1/+1
|
* Pass the user when updating external storage statusRobin Appelman2016-01-183-7/+50
|
* Merge pull request #21662 from owncloud/external-list-non-adminThomas Müller2016-01-131-0/+11
|\ | | | | Allow non admins to list their own mounts
| * Allow non admins to list their own mountsRobin Appelman2016-01-121-0/+11
| |
* | Happy new year!Thomas Müller2016-01-125-10/+11
|/
* Fix duplicate use in storage controllerJesús Macias2015-12-031-1/+0
|
* Migrate storate status code to storagenotavailablexceptionJesús Macias2015-12-031-2/+3
|
* Fix code from PR commentsJesús Macias2015-12-031-21/+1
|
* Change exception catch orderJesús Macias2015-12-031-5/+5
|
* Add new external storage exceptions for different errorsJesús Macias2015-12-031-38/+24
|
* Add different storage status codes managed by StoragedNotAvailableExceptionJesús Macias2015-12-031-4/+38
|
* Fix external storage priority logicRobin McCorkell2015-11-211-1/+1
|
* Display applicable global storages in personal mount listRobin McCorkell2015-11-211-0/+121
|
* Render external storages list in JSRobin McCorkell2015-11-211-0/+14
|
* Display storage status as tooltipRobin McCorkell2015-10-231-2/+14
|
* deduplicate @xenopathicMorris Jobke2015-10-064-4/+4
|
* update licence headers via scriptMorris Jobke2015-10-054-0/+4
|
* Perform visibility checks on storagesRobin McCorkell2015-09-233-28/+3
| | | | | | | | StoragesService::getStorages() will check the visibility of the backend and auth mechanism for the storage, and if either are not visible to the user (aka disabled by admin) then the storage will be filtered out. The original method StoragesService::getAllStorages() still exists in case such storages need to be detected, but its use is discouraged.
* Revert "Implement more fine-grained external storage permissions model"Robin McCorkell2015-09-233-19/+18
| | | | | | This reverts commit 0b97a05e7bd631d66de1c2aee115113ada8a5f63. This reverts commit d2e3c17c0000bc0020f1ff641190452f370434de. This reverts commit cc88c5f4b84da57c425cbdb7dc8b391b1942b503.
* Introduce MODIFY permission for external storagesRobin McCorkell2015-08-283-7/+8
|
* Validate permissions for created admin storages, auth mechanismRobin McCorkell2015-08-283-33/+54
| | | | | Backend and auth mechanism permissions are checked on storage creation, both for personal storages and for admin storages
* Implement more fine-grained external storage permissions modelRobin McCorkell2015-08-281-1/+1
| | | | | | | | | | | | | | VisibilityTrait -> PermissionsTrait PermissionsTrait stores two sets of data, $permissions and $allowedPermissions (analogous to $visibility and $allowedVisibility of VisibilityTrait). Each set is a map of user type ('admin' or 'personal') to permissions (mounting permission, create permission). The result is that a backend can now be restricted for creation, while still allowing it to be mounted. This is useful for deprecating backends or auth mechanisms, preventing new storages being created, while still allowing existing storages to be mounted.
* AjaxController uses RSA auth mechanismRobin McCorkell2015-08-281-7/+7
|
* Prevent objectstore being set from client sideRobin McCorkell2015-08-251-0/+10
|
* Propagate auth mechanism/backend failures to filesystem layerRobin McCorkell2015-08-191-15/+23
| | | | | | | | | | | 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.
* Split backend identifiers from the class nameRobin McCorkell2015-08-193-32/+32
| | | | | | | | | | | | | 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-193-1/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 BackendService for managing external storage backendsRobin McCorkell2015-08-193-36/+116
| | | | | | | | | | | | | | | | | 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).
* Update phpseclib to 2.0Andreas Fischer2015-08-031-2/+3
|
* Update license headersJenkins for ownCloud2015-03-264-19/+63
|
* Fix PHPDoc in files_external, add missing tagVincent Petry2015-03-173-8/+27
| | | | | | Fix various PHPDoc issues in external storage app. Added missing NoAdminRequired tag
* Fix PHPDoc for StoragesControllerVincent Petry2015-03-161-6/+9
|
* Generate storage config ids when missingVincent Petry2015-03-162-10/+16
| | | | | | | | When reading in old mount.json files, they do not contain config ids. Since these are needed to be able to use the UI and the new service classes, these will be generated automatically. The config grouping is based on a config hash.
* Mount options for ext storage are now passed aroundVincent Petry2015-03-132-2/+14
| | | | | | The mount options are now passed to the UI and stored in a hidden field. The ext storage controllers and services also know how to load/save them from the legacy config.
* Use storage id + appframework for ext storage CRUDVincent Petry2015-03-123-0/+474
| | | | | | | | | | | | | - Added StorageConfig class to replace ugly arrays - Implemented StorageService and StorageController for Global and User storages - Async status checking for storages (from Xenopathic) - Auto-generate id for external storage configs (not the same as storage_id) - Refactor JS classes for external storage settings, this mostly moves/encapsulated existing global event handlers into the MountConfigListView class. - Added some JS unit tests for the external storage UI
* Revert "Updating license headers"Morris Jobke2015-02-261-17/+5
| | | | This reverts commit 6a1a4880f0d556fb090f19a5019fec31916f5c36.
* Updating license headersJenkins for ownCloud2015-02-231-5/+17
|