blob: eeffecb8778193db9054cf455035b6e9fa637e8a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<?php
$url = \OC::$server->getConfig()->getAppValue('piwik', 'url');
if (!empty($url)) {
\OCP\Util::addHeader(
'script',
[
'src' => \OC::$server->getURLGenerator()->linkToRoute('piwik.JavaScript.tracking'),
'nonce' => \OC::$server->getContentSecurityPolicyNonceManager()->getNonce(),
], ''
);
$parseurl = parse_url($url);
$url = $parseurl['host'];
if (isset($parseurl['port'])) {
$url .= ':' . (string) $parseurl['port'];
}
$policy = new OCP\AppFramework\Http\ContentSecurityPolicy();
if ($url !== false && array_key_exists('HTTP_HOST', $_SERVER)
&& $_SERVER['HTTP_HOST'] !== $url && !empty($url)) {
$policy->addAllowedScriptDomain($url);
$policy->addAllowedImageDomain($url);
\OC::$server->getContentSecurityPolicyManager()->addDefaultPolicy($policy);
}
}
|