layout.base.php 1.5 KB

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. /**
  3. * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
  4. * SPDX-FileCopyrightText: 2012-2016 ownCloud, Inc.
  5. * SPDX-License-Identifier: AGPL-3.0-only
  6. */
  7. ?>
  8. <!DOCTYPE html>
  9. <html class="ng-csp" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" data-locale="<?php p($_['locale']); ?>" translate="no" >
  10. <head data-requesttoken="<?php p($_['requesttoken']); ?>">
  11. <meta charset="utf-8">
  12. <title>
  13. <?php p($theme->getTitle()); ?>
  14. </title>
  15. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
  16. <meta name="theme-color" content="<?php p($theme->getColorPrimary()); ?>">
  17. <meta name="csp-nonce" nonce="<?php p($_['cspNonce']); /* Do not pass into "content" to prevent exfiltration */ ?>">
  18. <link rel="icon" href="<?php print_unescaped(image_path('core', 'favicon.ico')); /* IE11+ supports png */ ?>">
  19. <link rel="apple-touch-icon" href="<?php print_unescaped(image_path('core', 'favicon-touch.png')); ?>">
  20. <link rel="mask-icon" sizes="any" href="<?php print_unescaped(image_path('core', 'favicon-mask.svg')); ?>" color="<?php p($theme->getColorPrimary()); ?>">
  21. <?php emit_css_loading_tags($_); ?>
  22. <?php emit_script_loading_tags($_); ?>
  23. <?php print_unescaped($_['headers']); ?>
  24. </head>
  25. <body id="body-public" class="layout-base">
  26. <?php include 'layout.noscript.warning.php'; ?>
  27. <?php include 'layout.initial-state.php'; ?>
  28. <div id="content" class="app-public" role="main">
  29. <?php print_unescaped($_['content']); ?>
  30. </div>
  31. </body>
  32. </html>