diff options
author | PhieF <phie@phie.ovh> | 2022-01-24 00:59:54 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-24 00:59:54 +0300 |
commit | 5d8a63d1a404c2adc8e340165a20344287bcee74 (patch) | |
tree | bcf03201bcb4aea5780522d63cfc1b90d304aa57 /templates/browser.php | |
parent | c90eacfe1edca6b32fcd33a893cbd721a236ca43 (diff) | |
parent | 4dea0cc834d98bb80a45575e3096b94be08d1341 (diff) |
Merge pull request #176 from CarnetApp/in-a-framev0.24.4v0.24.3stable-0.24.4stable-0.24.3nextcloud-stable-0.24.4master
In a frame
Diffstat (limited to 'templates/browser.php')
-rwxr-xr-x | templates/browser.php | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/templates/browser.php b/templates/browser.php new file mode 100755 index 0000000..19a5770 --- /dev/null +++ b/templates/browser.php @@ -0,0 +1,60 @@ +<?php +global $currentpath; +global $root; +global $fullscreen; +global $appVersion; +$fullscreen = "yes"; +$appVersion = $_['app_version']; +$currentpath = __DIR__."/CarnetElectron/"; +$root = \OCP\Util::linkToAbsolute("carnet","templates"); +$file = file_get_contents($currentpath."index.html"); +$root = parse_url($root, PHP_URL_PATH); + +$file = preg_replace_callback('/<link(.*?)href=\"(.*?\.css(?:\?.*?)?)"/s',function ($matches) { + global $currentpath; + global $appVersion; + return "<link".$matches[1]."href=\"".$matches[2]."?v=".$appVersion."\""; +}, $file); +$file = str_replace("href=\"","href=\"".$root."/CarnetElectron/",$file); + +$file = preg_replace_callback('/<script(.*?)src=\"(.*?\.js(?:\?.*?)?)"/s',function ($matches) { + global $currentpath; + global $fullscreen; + global $appVersion; + + if($matches[2] === "libs/jquery.min.js" AND $fullscreen === "no") + return "<script "; + return "<script".$matches[1]."src=\"".$matches[2]."?v=".$appVersion."\""; +}, $file); +// token is needed to pass the csfr check +$file .= "<script src=\"compatibility/nextcloud/fullscreen.js?v=".$appVersion."\"></script>"; + +$file .= "<span style=\"display:none;\" id=\"token\">".$_['requesttoken']."</span>"; +if($_['carnet_display_fullscreen']==="yes"){ + + $file = str_replace('</head>', " + <link rel=\"apple-touch-icon-precomposed\" href=\"".image_path('', 'favicon-touch.png')."\" /> + <link rel=\"icon\" href=\"".image_path('', 'favicon.ico')."\"> + <link rel=\"mask-icon\" sizes=\"any\" href=\"".image_path('', 'favicon-mask.svg')."\" color=\"".$theme->getColorPrimary()."\"> + <link rel=\"manifest\" href=\"".image_path('', 'manifest.json')."\"> + </head>", $file); + if($_['nc_version']>=16) + style("carnet","../templates/CarnetElectron/compatibility/nextcloud/nc16"); + +} +else { + if($_['nc_version']>=14) + style("carnet","../templates/CarnetElectron/compatibility/nextcloud/nc14-header"); +} +$nonce = ""; +if (method_exists(\OC::$server, "getContentSecurityPolicyNonceManager")){ + $nonce = \OC::$server->getContentSecurityPolicyNonceManager()->getNonce(); +} +else{ + style("carnet","../templates/CarnetElectron/compatibility/nextcloud/owncloud"); +} + +$file = str_replace("src=\"","defer nonce='".$nonce."' src=\"".$root."/CarnetElectron/",$file); +echo $file; +echo "<span style=\"display:none;\" id=\"root-url\">".$root."/CarnetElectron/</span>"; +?>
\ No newline at end of file |