connection = $connection; $this->config = $config; } /** * Returns the step's name * * @return string * @since 9.1.0 */ public function getName(): string { return 'Set existing shares as accepted'; } /** * @param IOutput $output */ public function run(IOutput $output): void { if (!$this->shouldRun()) { return; } $query = $this->connection->getQueryBuilder(); $query ->update('share') ->set('accepted', $query->createNamedParameter(IShare::STATUS_ACCEPTED)) ->where($query->expr()->in('share_type', $query->createNamedParameter([IShare::TYPE_USER, IShare::TYPE_GROUP, IShare::TYPE_USERGROUP], IQueryBuilder::PARAM_INT_ARRAY))); $query->execute(); } protected function shouldRun() { $appVersion = $this->config->getAppValue('files_sharing', 'installed_version', '0.0.0'); return version_compare($appVersion, '1.10.1', '<'); } }