Add some changes for Nextcloud 34+ #2055

This commit is contained in:
the-djmaze 2026-10-29 14:33:17 +01:00
parent b5315e4044
commit 8afb1049f7
5 changed files with 102 additions and 8 deletions

View file

@ -28,7 +28,12 @@
* Custom 'data' folder path
*/
if (class_exists('OC')) {
define('APP_DATA_FOLDER_PATH', \rtrim(\trim(\OC::$server->getSystemConfig()->getValue('datadirectory', '')), '\\/').'/appdata_snappymail/');
define('APP_DATA_FOLDER_PATH', \rtrim(\trim(
\method_exists(\OC::$server, 'getSystemConfig')
? \OC::$server->getSystemConfig()->getValue('datadirectory', '')
// Nextcloud 34+
: \OC::$server->get(\OCP\IConfig::class)->getSystemValue('datadirectory', '')
), '\\/') . '/appdata_snappymail/');
} else {
http_response_code(400);
header($_SERVER['SERVER_PROTOCOL'].' 400 Bad Request', true, 400);

View file

@ -37,7 +37,11 @@ class ContentSecurityPolicy extends \OCP\AppFramework\Http\ContentSecurityPolicy
public function getSnappyMailNonce() {
static $sNonce;
if (!$sNonce) {
$cspManager = \OC::$server->getContentSecurityPolicyNonceManager();
$cspManager = (\method_exists(\OC::$server, 'getContentSecurityPolicyNonceManager')
? \OC::$server->getContentSecurityPolicyNonceManager()
// Nextcloud 34+
: \OC::$server->get(\OC\Security\CSP\ContentSecurityPolicyNonceManager::class)
);
$sNonce = $cspManager->getNonce() ?: \SnappyMail\UUID::generate();
if (\method_exists($cspManager, 'browserSupportsCspV3') && !$cspManager->browserSupportsCspV3()) {
$this->addAllowedScriptDomain("'nonce-{$sNonce}'");