Force approval in GDrive oauth to get refresh_token
Forcing the approval of app permissions makes sure that the GDrive API
will always return a refresh_token.
In the case of apps that were already authorized for the current user/domain,
the API doesn't return the refresh_token which causes expiration issues.
Use storage id + appframework for ext storage CRUD
- 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
This enforces proper types on POST and GET arguments where I considered it sensible. I didn't update some as I don't know what kind of values they would support :see_no_evil:
Fixes https://github.com/owncloud/core/issues/14196 for core
google drive: set access type to 'offline' when requesting token
We need to do this in order to be able to refresh the access token without
prompting the user for their credentials every hour. This was the default
in 0.6 of the Google library, but needs to be explicitly specified in 1.0.
replace chosen with select2 to provide ajaxified user and group selection for files_external, fixes #7499
remove minified select2 js
show avatars for users, simpler results
remove unneeded users and groups from settings template
fix css, escape user and group names