Add public template

Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
Julius Härtl 2018-01-25 19:15:16 +01:00 committed by Roeland Jago Douma
parent 0655df09d6
commit d07d66e24b
No known key found for this signature in database
GPG key ID: F941078878347C0C
5 changed files with 133 additions and 0 deletions

22
core/css/public.scss Normal file
View file

@ -0,0 +1,22 @@
#body-public {
.header-right {
span:not(.popovermenu) a {
color: $color-primary-text;
}
.menutoggle,
#header-primary-action[class^='icon-'] {
padding: 14px;
padding-right: 40px;
background-position: right 15px center;
color: $color-primary-text;
cursor: pointer;
}
.menutoggle {
padding-right: 10px;
}
}
}

View file

@ -9,3 +9,4 @@
@import 'multiselect.scss';
@import 'mobile.scss';
@import 'tooltip.scss';
@import 'public.scss';

View file

@ -46,6 +46,7 @@
"config.js",
"public/appconfig.js",
"public/comments.js",
"public/publicpage.js",
"multiselect.js",
"oc-requesttoken.js",
"setupchecks.js",

View file

@ -0,0 +1,29 @@
/*
* @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>
*
* @author Julius Härtl <jus@bitgrid.net>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
$(document).ready(function () {
console.log('public');
$('#body-public .header-right .menutoggle').click(function() {
$(this).next('.popovermenu').toggleClass('open');
});
});

View file

@ -0,0 +1,80 @@
<!DOCTYPE html>
<html class="ng-csp" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" >
<head data-user="<?php p($_['user_uid']); ?>" data-user-displayname="<?php p($_['user_displayname']); ?>" data-requesttoken="<?php p($_['requesttoken']); ?>">
<meta charset="utf-8">
<title>
<?php
p(!empty($_['application'])?$_['application'].' - ':'');
p($theme->getTitle());
?>
</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="referrer" content="never">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0">
<meta name="apple-itunes-app" content="app-id=<?php p($theme->getiTunesAppId()); ?>">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="<?php p((!empty($_['application']) && $_['appid']!='files')? $_['application']:$theme->getTitle()); ?>">
<meta name="mobile-web-app-capable" content="yes">
<meta name="theme-color" content="<?php p($theme->getColorPrimary()); ?>">
<link rel="icon" href="<?php print_unescaped(image_path($_['appid'], 'favicon.ico')); /* IE11+ supports png */ ?>">
<link rel="apple-touch-icon-precomposed" href="<?php print_unescaped(image_path($_['appid'], 'favicon-touch.png')); ?>">
<link rel="mask-icon" sizes="any" href="<?php print_unescaped(image_path($_['appid'], 'favicon-mask.svg')); ?>" color="<?php p($theme->getColorPrimary()); ?>">
<link rel="manifest" href="<?php print_unescaped(image_path($_['appid'], 'manifest.json')); ?>">
<?php emit_css_loading_tags($_); ?>
<?php emit_script_loading_tags($_); ?>
<?php print_unescaped($_['headers']); ?>
</head>
<body id="<?php p($_['bodyid']);?>">
<?php include('layout.noscript.warning.php'); ?>
<header>
<div id="header" class="<?php p($_['header-classes']); ?>">
<div class="header-left">
<span id="nextcloud">
<div class="logo logo-icon svg"></div>
<h1 class="header-appname">
Public <?php p($template->getHeaderTitle()); ?>
</h1>
<div class="header-shared-by">
Public <?php p($template->getHeaderDetails()) ?>
</div>
</span>
</div>
<?php
/** @var \OCP\AppFramework\Http\Template\PublicTemplateResponse $template */
if($template->getActionCount() !== 0) {
$primary = $template->getPrimaryAction();
$others = $template->getOtherActions();
?>
<div class="header-right">
<span id="header-primary-action" class="<?php if($template->getActionCount() === 1) { p($primary->getIcon()); } ?>">
<a href="<?php p($primary->getLink()); ?>">
<span class="share-menutoggle-text"><?php p($primary->getLabel()) ?></span>
</a>
</span>
<?php if($template->getActionCount()>1) { ?>
<span class="menutoggle icon-more-white"></span>
<div id="share-menu" class="menu">
<ul>
<?php
/** @var \OCP\AppFramework\Http\Template\IMenuAction $action */
foreach($template->getOtherActions() as $action) {
print_unescaped($action->render());
}
?>
</ul>
</div>
<?php } ?>
</div>
<?php } ?>
</div>
</header>
<div id="content-wrapper">
<div id="content" class="app-<?php p($_['appid']) ?>" role="main">
<?php print_unescaped($_['content']); ?>
</div>
</div>
</body>
</html>