@@ -32,129 +32,129 @@ |
||
| 32 | 32 | |
| 33 | 33 | class Favorites implements IFilter { |
| 34 | 34 | |
| 35 | - /** @var IL10N */ |
|
| 36 | - protected $l; |
|
| 37 | - |
|
| 38 | - /** @var IURLGenerator */ |
|
| 39 | - protected $url; |
|
| 40 | - |
|
| 41 | - /** @var IManager */ |
|
| 42 | - protected $activityManager; |
|
| 43 | - |
|
| 44 | - /** @var Helper */ |
|
| 45 | - protected $helper; |
|
| 46 | - |
|
| 47 | - /** @var IDBConnection */ |
|
| 48 | - protected $db; |
|
| 49 | - |
|
| 50 | - /** |
|
| 51 | - * @param IL10N $l |
|
| 52 | - * @param IURLGenerator $url |
|
| 53 | - * @param IManager $activityManager |
|
| 54 | - * @param Helper $helper |
|
| 55 | - * @param IDBConnection $db |
|
| 56 | - */ |
|
| 57 | - public function __construct(IL10N $l, IURLGenerator $url, IManager $activityManager, Helper $helper, IDBConnection $db) { |
|
| 58 | - $this->l = $l; |
|
| 59 | - $this->url = $url; |
|
| 60 | - $this->activityManager = $activityManager; |
|
| 61 | - $this->helper = $helper; |
|
| 62 | - $this->db = $db; |
|
| 63 | - } |
|
| 64 | - |
|
| 65 | - /** |
|
| 66 | - * @return string Lowercase a-z only identifier |
|
| 67 | - * @since 11.0.0 |
|
| 68 | - */ |
|
| 69 | - public function getIdentifier() { |
|
| 70 | - return 'files_favorites'; |
|
| 71 | - } |
|
| 72 | - |
|
| 73 | - /** |
|
| 74 | - * @return string A translated string |
|
| 75 | - * @since 11.0.0 |
|
| 76 | - */ |
|
| 77 | - public function getName() { |
|
| 78 | - return $this->l->t('Favorites'); |
|
| 79 | - } |
|
| 80 | - |
|
| 81 | - /** |
|
| 82 | - * @return int |
|
| 83 | - * @since 11.0.0 |
|
| 84 | - */ |
|
| 85 | - public function getPriority() { |
|
| 86 | - return 10; |
|
| 87 | - } |
|
| 88 | - |
|
| 89 | - /** |
|
| 90 | - * @return string Full URL to an icon, empty string when none is given |
|
| 91 | - * @since 11.0.0 |
|
| 92 | - */ |
|
| 93 | - public function getIcon() { |
|
| 94 | - return $this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/star-dark.svg')); |
|
| 95 | - } |
|
| 96 | - |
|
| 97 | - /** |
|
| 98 | - * @param string[] $types |
|
| 99 | - * @return string[] An array of allowed apps from which activities should be displayed |
|
| 100 | - * @since 11.0.0 |
|
| 101 | - */ |
|
| 102 | - public function filterTypes(array $types) { |
|
| 103 | - return array_intersect([ |
|
| 104 | - 'file_created', |
|
| 105 | - 'file_changed', |
|
| 106 | - 'file_deleted', |
|
| 107 | - 'file_restored', |
|
| 108 | - ], $types); |
|
| 109 | - } |
|
| 110 | - |
|
| 111 | - /** |
|
| 112 | - * @return string[] An array of allowed apps from which activities should be displayed |
|
| 113 | - * @since 11.0.0 |
|
| 114 | - */ |
|
| 115 | - public function allowedApps() { |
|
| 116 | - return ['files']; |
|
| 117 | - } |
|
| 118 | - |
|
| 119 | - /** |
|
| 120 | - * @param IQueryBuilder $query |
|
| 121 | - */ |
|
| 122 | - public function filterFavorites(IQueryBuilder $query) { |
|
| 123 | - try { |
|
| 124 | - $user = $this->activityManager->getCurrentUserId(); |
|
| 125 | - } catch (\UnexpectedValueException $e) { |
|
| 126 | - return; |
|
| 127 | - } |
|
| 128 | - |
|
| 129 | - try { |
|
| 130 | - $favorites = $this->helper->getFavoriteFilePaths($user); |
|
| 131 | - } catch (\RuntimeException $e) { |
|
| 132 | - return; |
|
| 133 | - } |
|
| 134 | - |
|
| 135 | - $limitations = []; |
|
| 136 | - if (!empty($favorites['items'])) { |
|
| 137 | - $limitations[] = $query->expr()->in('file', $query->createNamedParameter($favorites['items'], IQueryBuilder::PARAM_STR_ARRAY)); |
|
| 138 | - } |
|
| 139 | - foreach ($favorites['folders'] as $favorite) { |
|
| 140 | - $limitations[] = $query->expr()->like('file', $query->createNamedParameter( |
|
| 141 | - $this->db->escapeLikeParameter($favorite . '/') . '%' |
|
| 142 | - )); |
|
| 143 | - } |
|
| 144 | - |
|
| 145 | - if (empty($limitations)) { |
|
| 146 | - return; |
|
| 147 | - } |
|
| 148 | - |
|
| 149 | - $function = $query->createFunction(' |
|
| 35 | + /** @var IL10N */ |
|
| 36 | + protected $l; |
|
| 37 | + |
|
| 38 | + /** @var IURLGenerator */ |
|
| 39 | + protected $url; |
|
| 40 | + |
|
| 41 | + /** @var IManager */ |
|
| 42 | + protected $activityManager; |
|
| 43 | + |
|
| 44 | + /** @var Helper */ |
|
| 45 | + protected $helper; |
|
| 46 | + |
|
| 47 | + /** @var IDBConnection */ |
|
| 48 | + protected $db; |
|
| 49 | + |
|
| 50 | + /** |
|
| 51 | + * @param IL10N $l |
|
| 52 | + * @param IURLGenerator $url |
|
| 53 | + * @param IManager $activityManager |
|
| 54 | + * @param Helper $helper |
|
| 55 | + * @param IDBConnection $db |
|
| 56 | + */ |
|
| 57 | + public function __construct(IL10N $l, IURLGenerator $url, IManager $activityManager, Helper $helper, IDBConnection $db) { |
|
| 58 | + $this->l = $l; |
|
| 59 | + $this->url = $url; |
|
| 60 | + $this->activityManager = $activityManager; |
|
| 61 | + $this->helper = $helper; |
|
| 62 | + $this->db = $db; |
|
| 63 | + } |
|
| 64 | + |
|
| 65 | + /** |
|
| 66 | + * @return string Lowercase a-z only identifier |
|
| 67 | + * @since 11.0.0 |
|
| 68 | + */ |
|
| 69 | + public function getIdentifier() { |
|
| 70 | + return 'files_favorites'; |
|
| 71 | + } |
|
| 72 | + |
|
| 73 | + /** |
|
| 74 | + * @return string A translated string |
|
| 75 | + * @since 11.0.0 |
|
| 76 | + */ |
|
| 77 | + public function getName() { |
|
| 78 | + return $this->l->t('Favorites'); |
|
| 79 | + } |
|
| 80 | + |
|
| 81 | + /** |
|
| 82 | + * @return int |
|
| 83 | + * @since 11.0.0 |
|
| 84 | + */ |
|
| 85 | + public function getPriority() { |
|
| 86 | + return 10; |
|
| 87 | + } |
|
| 88 | + |
|
| 89 | + /** |
|
| 90 | + * @return string Full URL to an icon, empty string when none is given |
|
| 91 | + * @since 11.0.0 |
|
| 92 | + */ |
|
| 93 | + public function getIcon() { |
|
| 94 | + return $this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/star-dark.svg')); |
|
| 95 | + } |
|
| 96 | + |
|
| 97 | + /** |
|
| 98 | + * @param string[] $types |
|
| 99 | + * @return string[] An array of allowed apps from which activities should be displayed |
|
| 100 | + * @since 11.0.0 |
|
| 101 | + */ |
|
| 102 | + public function filterTypes(array $types) { |
|
| 103 | + return array_intersect([ |
|
| 104 | + 'file_created', |
|
| 105 | + 'file_changed', |
|
| 106 | + 'file_deleted', |
|
| 107 | + 'file_restored', |
|
| 108 | + ], $types); |
|
| 109 | + } |
|
| 110 | + |
|
| 111 | + /** |
|
| 112 | + * @return string[] An array of allowed apps from which activities should be displayed |
|
| 113 | + * @since 11.0.0 |
|
| 114 | + */ |
|
| 115 | + public function allowedApps() { |
|
| 116 | + return ['files']; |
|
| 117 | + } |
|
| 118 | + |
|
| 119 | + /** |
|
| 120 | + * @param IQueryBuilder $query |
|
| 121 | + */ |
|
| 122 | + public function filterFavorites(IQueryBuilder $query) { |
|
| 123 | + try { |
|
| 124 | + $user = $this->activityManager->getCurrentUserId(); |
|
| 125 | + } catch (\UnexpectedValueException $e) { |
|
| 126 | + return; |
|
| 127 | + } |
|
| 128 | + |
|
| 129 | + try { |
|
| 130 | + $favorites = $this->helper->getFavoriteFilePaths($user); |
|
| 131 | + } catch (\RuntimeException $e) { |
|
| 132 | + return; |
|
| 133 | + } |
|
| 134 | + |
|
| 135 | + $limitations = []; |
|
| 136 | + if (!empty($favorites['items'])) { |
|
| 137 | + $limitations[] = $query->expr()->in('file', $query->createNamedParameter($favorites['items'], IQueryBuilder::PARAM_STR_ARRAY)); |
|
| 138 | + } |
|
| 139 | + foreach ($favorites['folders'] as $favorite) { |
|
| 140 | + $limitations[] = $query->expr()->like('file', $query->createNamedParameter( |
|
| 141 | + $this->db->escapeLikeParameter($favorite . '/') . '%' |
|
| 142 | + )); |
|
| 143 | + } |
|
| 144 | + |
|
| 145 | + if (empty($limitations)) { |
|
| 146 | + return; |
|
| 147 | + } |
|
| 148 | + |
|
| 149 | + $function = $query->createFunction(' |
|
| 150 | 150 | CASE |
| 151 | 151 | WHEN ' . $query->getColumnName('app') . ' <> ' . $query->createNamedParameter('files') . ' THEN 1 |
| 152 | 152 | WHEN ' . $query->getColumnName('app') . ' = ' . $query->createNamedParameter('files') . ' |
| 153 | 153 | AND (' . implode(' OR ', $limitations) . ') |
| 154 | 154 | THEN 1 |
| 155 | 155 | END = 1' |
| 156 | - ); |
|
| 156 | + ); |
|
| 157 | 157 | |
| 158 | - $query->andWhere($function); |
|
| 159 | - } |
|
| 158 | + $query->andWhere($function); |
|
| 159 | + } |
|
| 160 | 160 | } |
@@ -24,25 +24,25 @@ |
||
| 24 | 24 | namespace OCA\Files_External\Service; |
| 25 | 25 | |
| 26 | 26 | class ImportLegacyStoragesService extends LegacyStoragesService { |
| 27 | - private $data; |
|
| 27 | + private $data; |
|
| 28 | 28 | |
| 29 | - /** |
|
| 30 | - * @param BackendService $backendService |
|
| 31 | - */ |
|
| 32 | - public function __construct(BackendService $backendService) { |
|
| 33 | - $this->backendService = $backendService; |
|
| 34 | - } |
|
| 29 | + /** |
|
| 30 | + * @param BackendService $backendService |
|
| 31 | + */ |
|
| 32 | + public function __construct(BackendService $backendService) { |
|
| 33 | + $this->backendService = $backendService; |
|
| 34 | + } |
|
| 35 | 35 | |
| 36 | - public function setData($data) { |
|
| 37 | - $this->data = $data; |
|
| 38 | - } |
|
| 36 | + public function setData($data) { |
|
| 37 | + $this->data = $data; |
|
| 38 | + } |
|
| 39 | 39 | |
| 40 | - /** |
|
| 41 | - * Read legacy config data |
|
| 42 | - * |
|
| 43 | - * @return array list of mount configs |
|
| 44 | - */ |
|
| 45 | - protected function readLegacyConfig() { |
|
| 46 | - return $this->data; |
|
| 47 | - } |
|
| 40 | + /** |
|
| 41 | + * Read legacy config data |
|
| 42 | + * |
|
| 43 | + * @return array list of mount configs |
|
| 44 | + */ |
|
| 45 | + protected function readLegacyConfig() { |
|
| 46 | + return $this->data; |
|
| 47 | + } |
|
| 48 | 48 | } |
@@ -39,31 +39,31 @@ |
||
| 39 | 39 | */ |
| 40 | 40 | class SessionCredentials extends AuthMechanism { |
| 41 | 41 | |
| 42 | - /** @var CredentialsStore */ |
|
| 43 | - private $credentialsStore; |
|
| 42 | + /** @var CredentialsStore */ |
|
| 43 | + private $credentialsStore; |
|
| 44 | 44 | |
| 45 | - public function __construct(IL10N $l, CredentialsStore $credentialsStore) { |
|
| 46 | - $this->credentialsStore = $credentialsStore; |
|
| 45 | + public function __construct(IL10N $l, CredentialsStore $credentialsStore) { |
|
| 46 | + $this->credentialsStore = $credentialsStore; |
|
| 47 | 47 | |
| 48 | - $this->setIdentifier('password::sessioncredentials') |
|
| 49 | - ->setScheme(self::SCHEME_PASSWORD) |
|
| 50 | - ->setText($l->t('Log-in credentials, save in session')) |
|
| 51 | - ->addParameters([]); |
|
| 52 | - } |
|
| 48 | + $this->setIdentifier('password::sessioncredentials') |
|
| 49 | + ->setScheme(self::SCHEME_PASSWORD) |
|
| 50 | + ->setText($l->t('Log-in credentials, save in session')) |
|
| 51 | + ->addParameters([]); |
|
| 52 | + } |
|
| 53 | 53 | |
| 54 | - public function manipulateStorageConfig(StorageConfig &$storage, IUser $user = null) { |
|
| 55 | - try { |
|
| 56 | - $credentials = $this->credentialsStore->getLoginCredentials(); |
|
| 57 | - } catch (CredentialsUnavailableException $e) { |
|
| 58 | - throw new InsufficientDataForMeaningfulAnswerException('No session credentials saved'); |
|
| 59 | - } |
|
| 54 | + public function manipulateStorageConfig(StorageConfig &$storage, IUser $user = null) { |
|
| 55 | + try { |
|
| 56 | + $credentials = $this->credentialsStore->getLoginCredentials(); |
|
| 57 | + } catch (CredentialsUnavailableException $e) { |
|
| 58 | + throw new InsufficientDataForMeaningfulAnswerException('No session credentials saved'); |
|
| 59 | + } |
|
| 60 | 60 | |
| 61 | - $storage->setBackendOption('user', $credentials->getLoginName()); |
|
| 62 | - $storage->setBackendOption('password', $credentials->getPassword()); |
|
| 63 | - } |
|
| 61 | + $storage->setBackendOption('user', $credentials->getLoginName()); |
|
| 62 | + $storage->setBackendOption('password', $credentials->getPassword()); |
|
| 63 | + } |
|
| 64 | 64 | |
| 65 | - public function wrapStorage(Storage $storage) { |
|
| 66 | - return new SessionStorageWrapper(['storage' => $storage]); |
|
| 67 | - } |
|
| 65 | + public function wrapStorage(Storage $storage) { |
|
| 66 | + return new SessionStorageWrapper(['storage' => $storage]); |
|
| 67 | + } |
|
| 68 | 68 | |
| 69 | 69 | } |
@@ -28,10 +28,10 @@ |
||
| 28 | 28 | * For auth mechanisms where the user needs to provide credentials |
| 29 | 29 | */ |
| 30 | 30 | interface IUserProvided { |
| 31 | - /** |
|
| 32 | - * @param IUser $user the user for which to save the user provided options |
|
| 33 | - * @param int $mountId the mount id to save the options for |
|
| 34 | - * @param array $options the user provided options |
|
| 35 | - */ |
|
| 36 | - public function saveBackendOptions(IUser $user, $mountId, array $options); |
|
| 31 | + /** |
|
| 32 | + * @param IUser $user the user for which to save the user provided options |
|
| 33 | + * @param int $mountId the mount id to save the options for |
|
| 34 | + * @param array $options the user provided options |
|
| 35 | + */ |
|
| 36 | + public function saveBackendOptions(IUser $user, $mountId, array $options); |
|
| 37 | 37 | } |
@@ -30,10 +30,10 @@ |
||
| 30 | 30 | */ |
| 31 | 31 | interface IBackendProvider { |
| 32 | 32 | |
| 33 | - /** |
|
| 34 | - * @since 9.1.0 |
|
| 35 | - * @return Backend[] |
|
| 36 | - */ |
|
| 37 | - public function getBackends(); |
|
| 33 | + /** |
|
| 34 | + * @since 9.1.0 |
|
| 35 | + * @return Backend[] |
|
| 36 | + */ |
|
| 37 | + public function getBackends(); |
|
| 38 | 38 | |
| 39 | 39 | } |
@@ -30,10 +30,10 @@ |
||
| 30 | 30 | */ |
| 31 | 31 | interface IAuthMechanismProvider { |
| 32 | 32 | |
| 33 | - /** |
|
| 34 | - * @since 9.1.0 |
|
| 35 | - * @return AuthMechanism[] |
|
| 36 | - */ |
|
| 37 | - public function getAuthMechanisms(); |
|
| 33 | + /** |
|
| 34 | + * @since 9.1.0 |
|
| 35 | + * @return AuthMechanism[] |
|
| 36 | + */ |
|
| 37 | + public function getAuthMechanisms(); |
|
| 38 | 38 | |
| 39 | 39 | } |
@@ -31,14 +31,14 @@ |
||
| 31 | 31 | */ |
| 32 | 32 | class SessionStorageWrapper extends PermissionsMask { |
| 33 | 33 | |
| 34 | - /** |
|
| 35 | - * @param array $arguments ['storage' => $storage] |
|
| 36 | - */ |
|
| 37 | - public function __construct($arguments) { |
|
| 38 | - // disable sharing permission |
|
| 39 | - $arguments['mask'] = Constants::PERMISSION_ALL & ~Constants::PERMISSION_SHARE; |
|
| 40 | - parent::__construct($arguments); |
|
| 41 | - } |
|
| 34 | + /** |
|
| 35 | + * @param array $arguments ['storage' => $storage] |
|
| 36 | + */ |
|
| 37 | + public function __construct($arguments) { |
|
| 38 | + // disable sharing permission |
|
| 39 | + $arguments['mask'] = Constants::PERMISSION_ALL & ~Constants::PERMISSION_SHARE; |
|
| 40 | + parent::__construct($arguments); |
|
| 41 | + } |
|
| 42 | 42 | |
| 43 | 43 | } |
| 44 | 44 | |
@@ -43,28 +43,28 @@ |
||
| 43 | 43 | */ |
| 44 | 44 | trait StorageModifierTrait { |
| 45 | 45 | |
| 46 | - /** |
|
| 47 | - * Modify a StorageConfig parameters |
|
| 48 | - * |
|
| 49 | - * @param StorageConfig $storage |
|
| 50 | - * @param IUser $user User the storage is being used as |
|
| 51 | - * @throws InsufficientDataForMeaningfulAnswerException |
|
| 52 | - * @throws StorageNotAvailableException |
|
| 53 | - */ |
|
| 54 | - public function manipulateStorageConfig(StorageConfig &$storage, IUser $user = null) { |
|
| 55 | - } |
|
| 46 | + /** |
|
| 47 | + * Modify a StorageConfig parameters |
|
| 48 | + * |
|
| 49 | + * @param StorageConfig $storage |
|
| 50 | + * @param IUser $user User the storage is being used as |
|
| 51 | + * @throws InsufficientDataForMeaningfulAnswerException |
|
| 52 | + * @throws StorageNotAvailableException |
|
| 53 | + */ |
|
| 54 | + public function manipulateStorageConfig(StorageConfig &$storage, IUser $user = null) { |
|
| 55 | + } |
|
| 56 | 56 | |
| 57 | - /** |
|
| 58 | - * Wrap a Storage if necessary |
|
| 59 | - * |
|
| 60 | - * @param Storage $storage |
|
| 61 | - * @return Storage |
|
| 62 | - * @throws InsufficientDataForMeaningfulAnswerException |
|
| 63 | - * @throws StorageNotAvailableException |
|
| 64 | - */ |
|
| 65 | - public function wrapStorage(Storage $storage) { |
|
| 66 | - return $storage; |
|
| 67 | - } |
|
| 57 | + /** |
|
| 58 | + * Wrap a Storage if necessary |
|
| 59 | + * |
|
| 60 | + * @param Storage $storage |
|
| 61 | + * @return Storage |
|
| 62 | + * @throws InsufficientDataForMeaningfulAnswerException |
|
| 63 | + * @throws StorageNotAvailableException |
|
| 64 | + */ |
|
| 65 | + public function wrapStorage(Storage $storage) { |
|
| 66 | + return $storage; |
|
| 67 | + } |
|
| 68 | 68 | |
| 69 | 69 | } |
| 70 | 70 | |
@@ -29,14 +29,14 @@ |
||
| 29 | 29 | */ |
| 30 | 30 | trait DependencyTrait { |
| 31 | 31 | |
| 32 | - /** |
|
| 33 | - * Check if object is valid for use |
|
| 34 | - * |
|
| 35 | - * @return MissingDependency[] Unsatisfied dependencies |
|
| 36 | - */ |
|
| 37 | - public function checkDependencies() { |
|
| 38 | - return []; // no dependencies by default |
|
| 39 | - } |
|
| 32 | + /** |
|
| 33 | + * Check if object is valid for use |
|
| 34 | + * |
|
| 35 | + * @return MissingDependency[] Unsatisfied dependencies |
|
| 36 | + */ |
|
| 37 | + public function checkDependencies() { |
|
| 38 | + return []; // no dependencies by default |
|
| 39 | + } |
|
| 40 | 40 | |
| 41 | 41 | } |
| 42 | 42 | |