@@ -23,10 +23,10 @@ |
||
23 | 23 | namespace OCA\Encryption\Hooks\Contracts; |
24 | 24 | |
25 | 25 | interface IHook { |
26 | - /** |
|
27 | - * Connects Hooks |
|
28 | - * |
|
29 | - * @return null |
|
30 | - */ |
|
31 | - public function addHooks(); |
|
26 | + /** |
|
27 | + * Connects Hooks |
|
28 | + * |
|
29 | + * @return null |
|
30 | + */ |
|
31 | + public function addHooks(); |
|
32 | 32 | } |
@@ -6,5 +6,5 @@ |
||
6 | 6 | ?> |
7 | 7 | |
8 | 8 | -- |
9 | -<?php p($theme->getName() . ' - ' . $theme->getSlogan()); ?> |
|
9 | +<?php p($theme->getName().' - '.$theme->getSlogan()); ?> |
|
10 | 10 | <?php print_unescaped("\n".$theme->getBaseUrl()); |
@@ -4,8 +4,8 @@ |
||
4 | 4 | |
5 | 5 | print_unescaped($l->t("Hey there,\n\nThe administration enabled server-side-encryption. Your files were encrypted using the password \"%s\".\n\nPlease login to the web interface, go to the section \"Basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"Old log-in password\" field and your current login-password.\n\n", [$_['password']])); |
6 | 6 | if (isset($_['expiration'])) { |
7 | - print_unescaped($l->t("The share will expire on %s.", [$_['expiration']])); |
|
8 | - print_unescaped("\n\n"); |
|
7 | + print_unescaped($l->t("The share will expire on %s.", [$_['expiration']])); |
|
8 | + print_unescaped("\n\n"); |
|
9 | 9 | } |
10 | 10 | // TRANSLATORS term at the end of a mail |
11 | 11 | p($l->t("Cheers!")); |
@@ -13,7 +13,7 @@ discard block |
||
13 | 13 | <p id="encryptHomeStorageSetting"> |
14 | 14 | <input type="checkbox" class="checkbox" name="encrypt_home_storage" id="encryptHomeStorage" |
15 | 15 | value="1" <?php if ($_['encryptHomeStorage']) { |
16 | - print_unescaped('checked="checked"'); |
|
16 | + print_unescaped('checked="checked"'); |
|
17 | 17 | } ?> /> |
18 | 18 | <label for="encryptHomeStorage"><?php p($l->t('Encrypt the home storage'));?></label></br> |
19 | 19 | <em><?php p($l->t("Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted")); ?></em> |
@@ -45,7 +45,7 @@ discard block |
||
45 | 45 | <br/><br/> |
46 | 46 | |
47 | 47 | <p name="changeRecoveryPasswordBlock" id="encryptionChangeRecoveryKey" <?php if ($_['recoveryEnabled'] === '0') { |
48 | - print_unescaped('class="hidden"'); |
|
48 | + print_unescaped('class="hidden"'); |
|
49 | 49 | }?>> |
50 | 50 | <?php p($l->t("Change recovery key password:")); ?> |
51 | 51 | <span class="msg"></span> |
@@ -9,11 +9,13 @@ |
||
9 | 9 | <h3><?php p($l->t("Default encryption module")); ?></h3> |
10 | 10 | <?php if (!$_["initStatus"] && $_['masterKeyEnabled'] === false): ?> |
11 | 11 | <?php p($l->t("Encryption app is enabled but your keys are not initialized, please log-out and log-in again")); ?> |
12 | - <?php else: ?> |
|
12 | + <?php else { |
|
13 | + : ?> |
|
13 | 14 | <p id="encryptHomeStorageSetting"> |
14 | 15 | <input type="checkbox" class="checkbox" name="encrypt_home_storage" id="encryptHomeStorage" |
15 | 16 | value="1" <?php if ($_['encryptHomeStorage']) { |
16 | 17 | print_unescaped('checked="checked"'); |
18 | +} |
|
17 | 19 | } ?> /> |
18 | 20 | <label for="encryptHomeStorage"><?php p($l->t('Encrypt the home storage'));?></label></br> |
19 | 21 | <em><?php p($l->t("Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted")); ?></em> |
@@ -14,7 +14,7 @@ |
||
14 | 14 | value="1" <?php if ($_['encryptHomeStorage']) { |
15 | 15 | print_unescaped('checked="checked"'); |
16 | 16 | } ?> /> |
17 | - <label for="encryptHomeStorage"><?php p($l->t('Encrypt the home storage'));?></label></br> |
|
17 | + <label for="encryptHomeStorage"><?php p($l->t('Encrypt the home storage')); ?></label></br> |
|
18 | 18 | <em><?php p($l->t("Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted")); ?></em> |
19 | 19 | </p> |
20 | 20 | <br /> |
@@ -69,10 +69,10 @@ |
||
69 | 69 | return $this->url; |
70 | 70 | } |
71 | 71 | |
72 | - $this->url = $this->request->getServerProtocol() . '://';// E.g. http(s) + :// |
|
73 | - $this->url .= $this->request->getServerHost();// E.g. localhost |
|
74 | - $this->url .= $this->request->getScriptName();// E.g. /nextcloud/index.php |
|
75 | - $this->url .= $this->request->getPathInfo();// E.g. /apps/files_texteditor/ajax/loadfile |
|
72 | + $this->url = $this->request->getServerProtocol().'://'; // E.g. http(s) + :// |
|
73 | + $this->url .= $this->request->getServerHost(); // E.g. localhost |
|
74 | + $this->url .= $this->request->getScriptName(); // E.g. /nextcloud/index.php |
|
75 | + $this->url .= $this->request->getPathInfo(); // E.g. /apps/files_texteditor/ajax/loadfile |
|
76 | 76 | |
77 | 77 | return $this->url; // E.g. https://localhost/nextcloud/index.php/apps/files_texteditor/ajax/loadfile |
78 | 78 | } |
@@ -27,72 +27,72 @@ |
||
27 | 27 | use OCP\IRequest; |
28 | 28 | |
29 | 29 | class RequestURL extends AbstractStringCheck { |
30 | - public const CLI = 'cli'; |
|
30 | + public const CLI = 'cli'; |
|
31 | 31 | |
32 | - /** @var ?string */ |
|
33 | - protected $url; |
|
32 | + /** @var ?string */ |
|
33 | + protected $url; |
|
34 | 34 | |
35 | - /** @var IRequest */ |
|
36 | - protected $request; |
|
35 | + /** @var IRequest */ |
|
36 | + protected $request; |
|
37 | 37 | |
38 | - /** |
|
39 | - * @param IL10N $l |
|
40 | - * @param IRequest $request |
|
41 | - */ |
|
42 | - public function __construct(IL10N $l, IRequest $request) { |
|
43 | - parent::__construct($l); |
|
44 | - $this->request = $request; |
|
45 | - } |
|
38 | + /** |
|
39 | + * @param IL10N $l |
|
40 | + * @param IRequest $request |
|
41 | + */ |
|
42 | + public function __construct(IL10N $l, IRequest $request) { |
|
43 | + parent::__construct($l); |
|
44 | + $this->request = $request; |
|
45 | + } |
|
46 | 46 | |
47 | - /** |
|
48 | - * @param string $operator |
|
49 | - * @param string $value |
|
50 | - * @return bool |
|
51 | - */ |
|
52 | - public function executeCheck($operator, $value) { |
|
53 | - if (\OC::$CLI) { |
|
54 | - $actualValue = $this->url = RequestURL::CLI; |
|
55 | - } else { |
|
56 | - $actualValue = $this->getActualValue(); |
|
57 | - } |
|
58 | - if (in_array($operator, ['is', '!is'])) { |
|
59 | - switch ($value) { |
|
60 | - case 'webdav': |
|
61 | - if ($operator === 'is') { |
|
62 | - return $this->isWebDAVRequest(); |
|
63 | - } else { |
|
64 | - return !$this->isWebDAVRequest(); |
|
65 | - } |
|
66 | - } |
|
67 | - } |
|
68 | - return $this->executeStringCheck($operator, $value, $actualValue); |
|
69 | - } |
|
47 | + /** |
|
48 | + * @param string $operator |
|
49 | + * @param string $value |
|
50 | + * @return bool |
|
51 | + */ |
|
52 | + public function executeCheck($operator, $value) { |
|
53 | + if (\OC::$CLI) { |
|
54 | + $actualValue = $this->url = RequestURL::CLI; |
|
55 | + } else { |
|
56 | + $actualValue = $this->getActualValue(); |
|
57 | + } |
|
58 | + if (in_array($operator, ['is', '!is'])) { |
|
59 | + switch ($value) { |
|
60 | + case 'webdav': |
|
61 | + if ($operator === 'is') { |
|
62 | + return $this->isWebDAVRequest(); |
|
63 | + } else { |
|
64 | + return !$this->isWebDAVRequest(); |
|
65 | + } |
|
66 | + } |
|
67 | + } |
|
68 | + return $this->executeStringCheck($operator, $value, $actualValue); |
|
69 | + } |
|
70 | 70 | |
71 | - /** |
|
72 | - * @return string |
|
73 | - */ |
|
74 | - protected function getActualValue() { |
|
75 | - if ($this->url !== null) { |
|
76 | - return $this->url; |
|
77 | - } |
|
71 | + /** |
|
72 | + * @return string |
|
73 | + */ |
|
74 | + protected function getActualValue() { |
|
75 | + if ($this->url !== null) { |
|
76 | + return $this->url; |
|
77 | + } |
|
78 | 78 | |
79 | - $this->url = $this->request->getServerProtocol() . '://';// E.g. http(s) + :// |
|
80 | - $this->url .= $this->request->getServerHost();// E.g. localhost |
|
81 | - $this->url .= $this->request->getScriptName();// E.g. /nextcloud/index.php |
|
82 | - $this->url .= $this->request->getPathInfo();// E.g. /apps/files_texteditor/ajax/loadfile |
|
79 | + $this->url = $this->request->getServerProtocol() . '://';// E.g. http(s) + :// |
|
80 | + $this->url .= $this->request->getServerHost();// E.g. localhost |
|
81 | + $this->url .= $this->request->getScriptName();// E.g. /nextcloud/index.php |
|
82 | + $this->url .= $this->request->getPathInfo();// E.g. /apps/files_texteditor/ajax/loadfile |
|
83 | 83 | |
84 | - return $this->url; // E.g. https://localhost/nextcloud/index.php/apps/files_texteditor/ajax/loadfile |
|
85 | - } |
|
84 | + return $this->url; // E.g. https://localhost/nextcloud/index.php/apps/files_texteditor/ajax/loadfile |
|
85 | + } |
|
86 | 86 | |
87 | - protected function isWebDAVRequest(): bool { |
|
88 | - if ($this->url === RequestURL::CLI) { |
|
89 | - return false; |
|
90 | - } |
|
91 | - return substr($this->request->getScriptName(), 0 - strlen('/remote.php')) === '/remote.php' && ( |
|
92 | - $this->request->getPathInfo() === '/webdav' || |
|
93 | - strpos($this->request->getPathInfo(), '/webdav/') === 0 || |
|
94 | - $this->request->getPathInfo() === '/dav/files' || |
|
95 | - strpos($this->request->getPathInfo(), '/dav/files/') === 0 |
|
96 | - ); |
|
97 | - } |
|
87 | + protected function isWebDAVRequest(): bool { |
|
88 | + if ($this->url === RequestURL::CLI) { |
|
89 | + return false; |
|
90 | + } |
|
91 | + return substr($this->request->getScriptName(), 0 - strlen('/remote.php')) === '/remote.php' && ( |
|
92 | + $this->request->getPathInfo() === '/webdav' || |
|
93 | + strpos($this->request->getPathInfo(), '/webdav/') === 0 || |
|
94 | + $this->request->getPathInfo() === '/dav/files' || |
|
95 | + strpos($this->request->getPathInfo(), '/dav/files/') === 0 |
|
96 | + ); |
|
97 | + } |
|
98 | 98 | } |
@@ -5,7 +5,7 @@ |
||
5 | 5 | use OCP\AppFramework\Http; |
6 | 6 | |
7 | 7 | class NotSubAdminException extends \Exception { |
8 | - public function __construct() { |
|
9 | - parent::__construct('Logged in user must be at least a sub admin', Http::STATUS_FORBIDDEN); |
|
10 | - } |
|
8 | + public function __construct() { |
|
9 | + parent::__construct('Logged in user must be at least a sub admin', Http::STATUS_FORBIDDEN); |
|
10 | + } |
|
11 | 11 | } |
@@ -89,7 +89,7 @@ discard block |
||
89 | 89 | } else { |
90 | 90 | $p = new ProgressBar($output); |
91 | 91 | $p->start(); |
92 | - $this->userManager->callForSeenUsers(function (IUser $user) use ($p) { |
|
92 | + $this->userManager->callForSeenUsers(function(IUser $user) use ($p) { |
|
93 | 93 | $p->advance(); |
94 | 94 | $this->expireVersionsForUser($user); |
95 | 95 | }); |
@@ -116,7 +116,7 @@ discard block |
||
116 | 116 | \OC_Util::setupFS($user); |
117 | 117 | |
118 | 118 | // Check if this user has a version directory |
119 | - $view = new \OC\Files\View('/' . $user); |
|
119 | + $view = new \OC\Files\View('/'.$user); |
|
120 | 120 | if (!$view->is_dir('/files_versions')) { |
121 | 121 | return false; |
122 | 122 | } |
@@ -37,94 +37,94 @@ |
||
37 | 37 | |
38 | 38 | class ExpireVersions extends Command { |
39 | 39 | |
40 | - /** |
|
41 | - * @var Expiration |
|
42 | - */ |
|
43 | - private $expiration; |
|
40 | + /** |
|
41 | + * @var Expiration |
|
42 | + */ |
|
43 | + private $expiration; |
|
44 | 44 | |
45 | - /** |
|
46 | - * @var IUserManager |
|
47 | - */ |
|
48 | - private $userManager; |
|
45 | + /** |
|
46 | + * @var IUserManager |
|
47 | + */ |
|
48 | + private $userManager; |
|
49 | 49 | |
50 | - /** |
|
51 | - * @param IUserManager $userManager |
|
52 | - * @param Expiration $expiration |
|
53 | - */ |
|
54 | - public function __construct(IUserManager $userManager, |
|
55 | - Expiration $expiration) { |
|
56 | - parent::__construct(); |
|
50 | + /** |
|
51 | + * @param IUserManager $userManager |
|
52 | + * @param Expiration $expiration |
|
53 | + */ |
|
54 | + public function __construct(IUserManager $userManager, |
|
55 | + Expiration $expiration) { |
|
56 | + parent::__construct(); |
|
57 | 57 | |
58 | - $this->userManager = $userManager; |
|
59 | - $this->expiration = $expiration; |
|
60 | - } |
|
58 | + $this->userManager = $userManager; |
|
59 | + $this->expiration = $expiration; |
|
60 | + } |
|
61 | 61 | |
62 | - protected function configure() { |
|
63 | - $this |
|
64 | - ->setName('versions:expire') |
|
65 | - ->setDescription('Expires the users file versions') |
|
66 | - ->addArgument( |
|
67 | - 'user_id', |
|
68 | - InputArgument::OPTIONAL | InputArgument::IS_ARRAY, |
|
69 | - 'expire file versions of the given user(s), if no user is given file versions for all users will be expired.' |
|
70 | - ); |
|
71 | - } |
|
62 | + protected function configure() { |
|
63 | + $this |
|
64 | + ->setName('versions:expire') |
|
65 | + ->setDescription('Expires the users file versions') |
|
66 | + ->addArgument( |
|
67 | + 'user_id', |
|
68 | + InputArgument::OPTIONAL | InputArgument::IS_ARRAY, |
|
69 | + 'expire file versions of the given user(s), if no user is given file versions for all users will be expired.' |
|
70 | + ); |
|
71 | + } |
|
72 | 72 | |
73 | - protected function execute(InputInterface $input, OutputInterface $output): int { |
|
74 | - $maxAge = $this->expiration->getMaxAgeAsTimestamp(); |
|
75 | - if (!$maxAge) { |
|
76 | - $output->writeln("Auto expiration is configured - expiration will be handled automatically according to the expiration patterns detailed at the following link https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/file_versioning.html."); |
|
77 | - return 1; |
|
78 | - } |
|
73 | + protected function execute(InputInterface $input, OutputInterface $output): int { |
|
74 | + $maxAge = $this->expiration->getMaxAgeAsTimestamp(); |
|
75 | + if (!$maxAge) { |
|
76 | + $output->writeln("Auto expiration is configured - expiration will be handled automatically according to the expiration patterns detailed at the following link https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/file_versioning.html."); |
|
77 | + return 1; |
|
78 | + } |
|
79 | 79 | |
80 | - $users = $input->getArgument('user_id'); |
|
81 | - if (!empty($users)) { |
|
82 | - foreach ($users as $user) { |
|
83 | - if ($this->userManager->userExists($user)) { |
|
84 | - $output->writeln("Remove deleted files of <info>$user</info>"); |
|
85 | - $userObject = $this->userManager->get($user); |
|
86 | - $this->expireVersionsForUser($userObject); |
|
87 | - } else { |
|
88 | - $output->writeln("<error>Unknown user $user</error>"); |
|
89 | - return 1; |
|
90 | - } |
|
91 | - } |
|
92 | - } else { |
|
93 | - $p = new ProgressBar($output); |
|
94 | - $p->start(); |
|
95 | - $this->userManager->callForSeenUsers(function (IUser $user) use ($p) { |
|
96 | - $p->advance(); |
|
97 | - $this->expireVersionsForUser($user); |
|
98 | - }); |
|
99 | - $p->finish(); |
|
100 | - $output->writeln(''); |
|
101 | - } |
|
102 | - return 0; |
|
103 | - } |
|
80 | + $users = $input->getArgument('user_id'); |
|
81 | + if (!empty($users)) { |
|
82 | + foreach ($users as $user) { |
|
83 | + if ($this->userManager->userExists($user)) { |
|
84 | + $output->writeln("Remove deleted files of <info>$user</info>"); |
|
85 | + $userObject = $this->userManager->get($user); |
|
86 | + $this->expireVersionsForUser($userObject); |
|
87 | + } else { |
|
88 | + $output->writeln("<error>Unknown user $user</error>"); |
|
89 | + return 1; |
|
90 | + } |
|
91 | + } |
|
92 | + } else { |
|
93 | + $p = new ProgressBar($output); |
|
94 | + $p->start(); |
|
95 | + $this->userManager->callForSeenUsers(function (IUser $user) use ($p) { |
|
96 | + $p->advance(); |
|
97 | + $this->expireVersionsForUser($user); |
|
98 | + }); |
|
99 | + $p->finish(); |
|
100 | + $output->writeln(''); |
|
101 | + } |
|
102 | + return 0; |
|
103 | + } |
|
104 | 104 | |
105 | - public function expireVersionsForUser(IUser $user) { |
|
106 | - $uid = $user->getUID(); |
|
107 | - if (!$this->setupFS($uid)) { |
|
108 | - return; |
|
109 | - } |
|
110 | - Storage::expireOlderThanMaxForUser($uid); |
|
111 | - } |
|
105 | + public function expireVersionsForUser(IUser $user) { |
|
106 | + $uid = $user->getUID(); |
|
107 | + if (!$this->setupFS($uid)) { |
|
108 | + return; |
|
109 | + } |
|
110 | + Storage::expireOlderThanMaxForUser($uid); |
|
111 | + } |
|
112 | 112 | |
113 | - /** |
|
114 | - * Act on behalf on versions item owner |
|
115 | - * @param string $user |
|
116 | - * @return boolean |
|
117 | - */ |
|
118 | - protected function setupFS($user) { |
|
119 | - \OC_Util::tearDownFS(); |
|
120 | - \OC_Util::setupFS($user); |
|
113 | + /** |
|
114 | + * Act on behalf on versions item owner |
|
115 | + * @param string $user |
|
116 | + * @return boolean |
|
117 | + */ |
|
118 | + protected function setupFS($user) { |
|
119 | + \OC_Util::tearDownFS(); |
|
120 | + \OC_Util::setupFS($user); |
|
121 | 121 | |
122 | - // Check if this user has a version directory |
|
123 | - $view = new \OC\Files\View('/' . $user); |
|
124 | - if (!$view->is_dir('/files_versions')) { |
|
125 | - return false; |
|
126 | - } |
|
122 | + // Check if this user has a version directory |
|
123 | + $view = new \OC\Files\View('/' . $user); |
|
124 | + if (!$view->is_dir('/files_versions')) { |
|
125 | + return false; |
|
126 | + } |
|
127 | 127 | |
128 | - return true; |
|
129 | - } |
|
128 | + return true; |
|
129 | + } |
|
130 | 130 | } |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | return; |
67 | 67 | } |
68 | 68 | |
69 | - $this->userManager->callForSeenUsers(function (IUser $user) { |
|
69 | + $this->userManager->callForSeenUsers(function(IUser $user) { |
|
70 | 70 | $uid = $user->getUID(); |
71 | 71 | if (!$this->setupFS($uid)) { |
72 | 72 | return; |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | \OC_Util::setupFS($user); |
86 | 86 | |
87 | 87 | // Check if this user has a versions directory |
88 | - $view = new \OC\Files\View('/' . $user); |
|
88 | + $view = new \OC\Files\View('/'.$user); |
|
89 | 89 | if (!$view->is_dir('/files_versions')) { |
90 | 90 | return false; |
91 | 91 | } |
@@ -34,55 +34,55 @@ |
||
34 | 34 | use OCP\IUserManager; |
35 | 35 | |
36 | 36 | class ExpireVersions extends TimedJob { |
37 | - public const ITEMS_PER_SESSION = 1000; |
|
37 | + public const ITEMS_PER_SESSION = 1000; |
|
38 | 38 | |
39 | - private IConfig $config; |
|
40 | - private Expiration $expiration; |
|
41 | - private IUserManager $userManager; |
|
39 | + private IConfig $config; |
|
40 | + private Expiration $expiration; |
|
41 | + private IUserManager $userManager; |
|
42 | 42 | |
43 | - public function __construct(IConfig $config, IUserManager $userManager, Expiration $expiration, ITimeFactory $time) { |
|
44 | - parent::__construct($time); |
|
45 | - // Run once per 30 minutes |
|
46 | - $this->setInterval(60 * 30); |
|
43 | + public function __construct(IConfig $config, IUserManager $userManager, Expiration $expiration, ITimeFactory $time) { |
|
44 | + parent::__construct($time); |
|
45 | + // Run once per 30 minutes |
|
46 | + $this->setInterval(60 * 30); |
|
47 | 47 | |
48 | - $this->config = $config; |
|
49 | - $this->expiration = $expiration; |
|
50 | - $this->userManager = $userManager; |
|
51 | - } |
|
48 | + $this->config = $config; |
|
49 | + $this->expiration = $expiration; |
|
50 | + $this->userManager = $userManager; |
|
51 | + } |
|
52 | 52 | |
53 | - public function run($argument) { |
|
54 | - $backgroundJob = $this->config->getAppValue('files_versions', 'background_job_expire_versions', 'yes'); |
|
55 | - if ($backgroundJob === 'no') { |
|
56 | - return; |
|
57 | - } |
|
53 | + public function run($argument) { |
|
54 | + $backgroundJob = $this->config->getAppValue('files_versions', 'background_job_expire_versions', 'yes'); |
|
55 | + if ($backgroundJob === 'no') { |
|
56 | + return; |
|
57 | + } |
|
58 | 58 | |
59 | - $maxAge = $this->expiration->getMaxAgeAsTimestamp(); |
|
60 | - if (!$maxAge) { |
|
61 | - return; |
|
62 | - } |
|
59 | + $maxAge = $this->expiration->getMaxAgeAsTimestamp(); |
|
60 | + if (!$maxAge) { |
|
61 | + return; |
|
62 | + } |
|
63 | 63 | |
64 | - $this->userManager->callForSeenUsers(function (IUser $user) { |
|
65 | - $uid = $user->getUID(); |
|
66 | - if (!$this->setupFS($uid)) { |
|
67 | - return; |
|
68 | - } |
|
69 | - Storage::expireOlderThanMaxForUser($uid); |
|
70 | - }); |
|
71 | - } |
|
64 | + $this->userManager->callForSeenUsers(function (IUser $user) { |
|
65 | + $uid = $user->getUID(); |
|
66 | + if (!$this->setupFS($uid)) { |
|
67 | + return; |
|
68 | + } |
|
69 | + Storage::expireOlderThanMaxForUser($uid); |
|
70 | + }); |
|
71 | + } |
|
72 | 72 | |
73 | - /** |
|
74 | - * Act on behalf on trash item owner |
|
75 | - */ |
|
76 | - protected function setupFS(string $user): bool { |
|
77 | - \OC_Util::tearDownFS(); |
|
78 | - \OC_Util::setupFS($user); |
|
73 | + /** |
|
74 | + * Act on behalf on trash item owner |
|
75 | + */ |
|
76 | + protected function setupFS(string $user): bool { |
|
77 | + \OC_Util::tearDownFS(); |
|
78 | + \OC_Util::setupFS($user); |
|
79 | 79 | |
80 | - // Check if this user has a versions directory |
|
81 | - $view = new \OC\Files\View('/' . $user); |
|
82 | - if (!$view->is_dir('/files_versions')) { |
|
83 | - return false; |
|
84 | - } |
|
80 | + // Check if this user has a versions directory |
|
81 | + $view = new \OC\Files\View('/' . $user); |
|
82 | + if (!$view->is_dir('/files_versions')) { |
|
83 | + return false; |
|
84 | + } |
|
85 | 85 | |
86 | - return true; |
|
87 | - } |
|
86 | + return true; |
|
87 | + } |
|
88 | 88 | } |
@@ -99,7 +99,7 @@ |
||
99 | 99 | $this->checker->writeCoreSignature($x509, $rsa, $path); |
100 | 100 | $output->writeln('Successfully signed "core"'); |
101 | 101 | } catch (\Exception $e) { |
102 | - $output->writeln('Error: ' . $e->getMessage()); |
|
102 | + $output->writeln('Error: '.$e->getMessage()); |
|
103 | 103 | return 1; |
104 | 104 | } |
105 | 105 | return 0; |
@@ -39,63 +39,63 @@ |
||
39 | 39 | * @package OC\Core\Command\Integrity |
40 | 40 | */ |
41 | 41 | class SignCore extends Command { |
42 | - private Checker $checker; |
|
43 | - private FileAccessHelper $fileAccessHelper; |
|
42 | + private Checker $checker; |
|
43 | + private FileAccessHelper $fileAccessHelper; |
|
44 | 44 | |
45 | - public function __construct(Checker $checker, |
|
46 | - FileAccessHelper $fileAccessHelper) { |
|
47 | - parent::__construct(null); |
|
48 | - $this->checker = $checker; |
|
49 | - $this->fileAccessHelper = $fileAccessHelper; |
|
50 | - } |
|
45 | + public function __construct(Checker $checker, |
|
46 | + FileAccessHelper $fileAccessHelper) { |
|
47 | + parent::__construct(null); |
|
48 | + $this->checker = $checker; |
|
49 | + $this->fileAccessHelper = $fileAccessHelper; |
|
50 | + } |
|
51 | 51 | |
52 | - protected function configure() { |
|
53 | - $this |
|
54 | - ->setName('integrity:sign-core') |
|
55 | - ->setDescription('Sign core using a private key.') |
|
56 | - ->addOption('privateKey', null, InputOption::VALUE_REQUIRED, 'Path to private key to use for signing') |
|
57 | - ->addOption('certificate', null, InputOption::VALUE_REQUIRED, 'Path to certificate to use for signing') |
|
58 | - ->addOption('path', null, InputOption::VALUE_REQUIRED, 'Path of core to sign'); |
|
59 | - } |
|
52 | + protected function configure() { |
|
53 | + $this |
|
54 | + ->setName('integrity:sign-core') |
|
55 | + ->setDescription('Sign core using a private key.') |
|
56 | + ->addOption('privateKey', null, InputOption::VALUE_REQUIRED, 'Path to private key to use for signing') |
|
57 | + ->addOption('certificate', null, InputOption::VALUE_REQUIRED, 'Path to certificate to use for signing') |
|
58 | + ->addOption('path', null, InputOption::VALUE_REQUIRED, 'Path of core to sign'); |
|
59 | + } |
|
60 | 60 | |
61 | - /** |
|
62 | - * {@inheritdoc } |
|
63 | - */ |
|
64 | - protected function execute(InputInterface $input, OutputInterface $output): int { |
|
65 | - $privateKeyPath = $input->getOption('privateKey'); |
|
66 | - $keyBundlePath = $input->getOption('certificate'); |
|
67 | - $path = $input->getOption('path'); |
|
68 | - if (is_null($privateKeyPath) || is_null($keyBundlePath) || is_null($path)) { |
|
69 | - $output->writeln('--privateKey, --certificate and --path are required.'); |
|
70 | - return 1; |
|
71 | - } |
|
61 | + /** |
|
62 | + * {@inheritdoc } |
|
63 | + */ |
|
64 | + protected function execute(InputInterface $input, OutputInterface $output): int { |
|
65 | + $privateKeyPath = $input->getOption('privateKey'); |
|
66 | + $keyBundlePath = $input->getOption('certificate'); |
|
67 | + $path = $input->getOption('path'); |
|
68 | + if (is_null($privateKeyPath) || is_null($keyBundlePath) || is_null($path)) { |
|
69 | + $output->writeln('--privateKey, --certificate and --path are required.'); |
|
70 | + return 1; |
|
71 | + } |
|
72 | 72 | |
73 | - $privateKey = $this->fileAccessHelper->file_get_contents($privateKeyPath); |
|
74 | - $keyBundle = $this->fileAccessHelper->file_get_contents($keyBundlePath); |
|
73 | + $privateKey = $this->fileAccessHelper->file_get_contents($privateKeyPath); |
|
74 | + $keyBundle = $this->fileAccessHelper->file_get_contents($keyBundlePath); |
|
75 | 75 | |
76 | - if ($privateKey === false) { |
|
77 | - $output->writeln(sprintf('Private key "%s" does not exists.', $privateKeyPath)); |
|
78 | - return 1; |
|
79 | - } |
|
76 | + if ($privateKey === false) { |
|
77 | + $output->writeln(sprintf('Private key "%s" does not exists.', $privateKeyPath)); |
|
78 | + return 1; |
|
79 | + } |
|
80 | 80 | |
81 | - if ($keyBundle === false) { |
|
82 | - $output->writeln(sprintf('Certificate "%s" does not exists.', $keyBundlePath)); |
|
83 | - return 1; |
|
84 | - } |
|
81 | + if ($keyBundle === false) { |
|
82 | + $output->writeln(sprintf('Certificate "%s" does not exists.', $keyBundlePath)); |
|
83 | + return 1; |
|
84 | + } |
|
85 | 85 | |
86 | - $rsa = new RSA(); |
|
87 | - $rsa->loadKey($privateKey); |
|
88 | - $x509 = new X509(); |
|
89 | - $x509->loadX509($keyBundle); |
|
90 | - $x509->setPrivateKey($rsa); |
|
86 | + $rsa = new RSA(); |
|
87 | + $rsa->loadKey($privateKey); |
|
88 | + $x509 = new X509(); |
|
89 | + $x509->loadX509($keyBundle); |
|
90 | + $x509->setPrivateKey($rsa); |
|
91 | 91 | |
92 | - try { |
|
93 | - $this->checker->writeCoreSignature($x509, $rsa, $path); |
|
94 | - $output->writeln('Successfully signed "core"'); |
|
95 | - } catch (\Exception $e) { |
|
96 | - $output->writeln('Error: ' . $e->getMessage()); |
|
97 | - return 1; |
|
98 | - } |
|
99 | - return 0; |
|
100 | - } |
|
92 | + try { |
|
93 | + $this->checker->writeCoreSignature($x509, $rsa, $path); |
|
94 | + $output->writeln('Successfully signed "core"'); |
|
95 | + } catch (\Exception $e) { |
|
96 | + $output->writeln('Error: ' . $e->getMessage()); |
|
97 | + return 1; |
|
98 | + } |
|
99 | + return 0; |
|
100 | + } |
|
101 | 101 | } |
@@ -51,7 +51,7 @@ |
||
51 | 51 | */ |
52 | 52 | public function completeArgumentValues($argumentName, CompletionContext $context) { |
53 | 53 | if ($argumentName === 'uid') { |
54 | - return array_map(function (IUser $user) { |
|
54 | + return array_map(function(IUser $user) { |
|
55 | 55 | return $user->getUID(); |
56 | 56 | }, $this->userManager->search($context->getCurrentWord(), 100)); |
57 | 57 | } |
@@ -30,32 +30,32 @@ |
||
30 | 30 | use Stecman\Component\Symfony\Console\BashCompletion\CompletionContext; |
31 | 31 | |
32 | 32 | class Base extends \OC\Core\Command\Base { |
33 | - protected IUserManager $userManager; |
|
33 | + protected IUserManager $userManager; |
|
34 | 34 | |
35 | - /** |
|
36 | - * Return possible values for the named option |
|
37 | - * |
|
38 | - * @param string $optionName |
|
39 | - * @param CompletionContext $context |
|
40 | - * @return string[] |
|
41 | - */ |
|
42 | - public function completeOptionValues($optionName, CompletionContext $context) { |
|
43 | - return []; |
|
44 | - } |
|
35 | + /** |
|
36 | + * Return possible values for the named option |
|
37 | + * |
|
38 | + * @param string $optionName |
|
39 | + * @param CompletionContext $context |
|
40 | + * @return string[] |
|
41 | + */ |
|
42 | + public function completeOptionValues($optionName, CompletionContext $context) { |
|
43 | + return []; |
|
44 | + } |
|
45 | 45 | |
46 | - /** |
|
47 | - * Return possible values for the named argument |
|
48 | - * |
|
49 | - * @param string $argumentName |
|
50 | - * @param CompletionContext $context |
|
51 | - * @return string[] |
|
52 | - */ |
|
53 | - public function completeArgumentValues($argumentName, CompletionContext $context) { |
|
54 | - if ($argumentName === 'uid') { |
|
55 | - return array_map(function (IUser $user) { |
|
56 | - return $user->getUID(); |
|
57 | - }, $this->userManager->search($context->getCurrentWord(), 100)); |
|
58 | - } |
|
59 | - return []; |
|
60 | - } |
|
46 | + /** |
|
47 | + * Return possible values for the named argument |
|
48 | + * |
|
49 | + * @param string $argumentName |
|
50 | + * @param CompletionContext $context |
|
51 | + * @return string[] |
|
52 | + */ |
|
53 | + public function completeArgumentValues($argumentName, CompletionContext $context) { |
|
54 | + if ($argumentName === 'uid') { |
|
55 | + return array_map(function (IUser $user) { |
|
56 | + return $user->getUID(); |
|
57 | + }, $this->userManager->search($context->getCurrentWord(), 100)); |
|
58 | + } |
|
59 | + return []; |
|
60 | + } |
|
61 | 61 | } |