Skip to content

Commit 7e51bfc

Browse files
committed
CSP for older ownCloud install and Announcement fix
1 parent c8c2b22 commit 7e51bfc

File tree

3 files changed

+25
-6
lines changed

3 files changed

+25
-6
lines changed

controller/pagecontroller.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
use \OCP\AppFramework\Http\TemplateResponse;
1717
use \OCP\AppFramework\Controller;
1818
use \OCP\AppFramework\Http\ContentSecurityPolicy;
19+
use \OCP\Util;
1920

2021
class PageController extends Controller {
2122

@@ -39,10 +40,13 @@ public function __construct($appName, IRequest $request, $userId){
3940
*/
4041
public function index() {
4142
$params = array('user' => $this->userId);
42-
$csp = new \OCP\AppFramework\Http\ContentSecurityPolicy();
43-
$csp->addAllowedImageDomain('data:');
4443
$response = new TemplateResponse('ownnote', 'main', $params);
45-
$response->setContentSecurityPolicy($csp);
44+
$ocVersion = \OCP\Util::getVersion();
45+
if ($ocVersion[0] > 8 || ($ocVersion[0] == 8 && $ocVersion[1] >= 1)) {
46+
$csp = new \OCP\AppFramework\Http\ContentSecurityPolicy();
47+
$csp->addAllowedImageDomain('data:');
48+
$response->setContentSecurityPolicy($csp);
49+
}
4650
return $response;
4751
}
4852
}

js/script.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -524,8 +524,9 @@
524524
var dismissedAnnouncement = getCookie('dismissedAnnouncement');
525525
if (curAnnouncement != "") {
526526
if (curAnnouncement != dismissedAnnouncement) {
527-
var html = "<div id='app-settings'><div id='app-settings-header'><div id='announcement'>"+curAnnouncement+"</div><div id='announcement-dismiss'><a href='javascript:dismissAnnouncement()'>"+trans("Dismiss")+"</a></div></div><div>";
527+
var html = "<div id='app-settings'><div id='app-settings-header'><div id='announcement'>"+curAnnouncement+"</div><div id='announcement-dismiss'><a id='dismissButton' href='javascript:dismissAnnouncement()'>"+trans("Dismiss")+"</a></div></div><div>";
528528
$('#announcement-container').html(html);
529+
$('#dismissButton').click(dismissAnnouncement);
529530
}
530531
} else {
531532
var url = ocUrl("ajax/v0.2/ownnote/ajaxannouncement");
@@ -535,8 +536,9 @@
535536
if (data != '') {
536537
if (data.replace(/\n/g,'') != 'NONE') {
537538
if (data.replace(/\n/g,'') != dismissedAnnouncement) {
538-
var html = "<div id='app-settings'><div id='app-settings-header'><div id='announcement'>"+data+"</div><div id='announcement-dismiss'><a href='javascript:dismissAnnouncement()'>"+trans("Dismiss")+"</a></div></div><div>";
539+
var html = "<div id='app-settings'><div id='app-settings-header'><div id='announcement'>"+data+"</div><div id='announcement-dismiss'><a id='dismissButton' href='javascript:dismissAnnouncement()'>"+trans("Dismiss")+"</a></div></div><div>";
539540
$('#announcement-container').html(html);
541+
$('#dismissButton').click(dismissAnnouncement);
540542
}
541543
setCookie("curAnnouncement", data.replace(/\n/g,''), 7);
542544
} else {
@@ -569,6 +571,7 @@
569571
}
570572

571573
function dismissAnnouncement() {
574+
alert('here');
572575
setCookie("dismissedAnnouncement", $('#announcement').html().replace(/\n/g,''), 30);
573576
$('#announcement-container').html('');
574577
}

templates/main.php

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,18 @@
55

66
$disableAnnouncement = \OCP\Config::getAppValue('ownnote', 'disableAnnouncement', '');
77
$l = OCP\Util::getL10N('ownnote');
8+
9+
$ocVersionArray = OCP\Util::getVersion();
10+
$ocVersion = "";
11+
$oci = 0;
12+
$ocl = sizeof($ocVersionArray);
13+
foreach ($ocVersionArray as $v) {
14+
$ocVersion .= $v;
15+
$oci++;
16+
if ($oci < $ocl)
17+
$ocVersion .= ".";
18+
}
19+
820
?>
921
<div id="app">
1022
<div id="app-navigation">
@@ -14,7 +26,7 @@
1426
<div id="app-content">
1527
<div id="ownnote"></div>
1628
</div>
17-
<input type=hidden value="<?php echo $disableAnnouncement; ?>">
29+
<input type=hidden name="disableAnnouncement" id="disableAnnouncement" value="<?php echo $disableAnnouncement; ?>">
1830
<div id="ownnote-l10n">
1931
l10n["# day ago"] = "<?php p($l->t("# day ago")); ?>";
2032
l10n["# days ago"] = "<?php p($l->t("# days ago")); ?>";

0 commit comments

Comments
 (0)