xref: /template/writr/main.php (revision 101253af1d0816c507e5717aa374b957ce421d1b)
1dccf9898SAnika Henke<?php
2dccf9898SAnika Henke/**
36fb33d54SAnika Henke * DokuWiki Writr Template
4dccf9898SAnika Henke *
56fb33d54SAnika Henke * @link     http://dokuwiki.org/template:writr
6dccf9898SAnika Henke * @author   Anika Henke <anika@selfthinker.org>
7dccf9898SAnika Henke * @license  GPL 2 (http://www.gnu.org/licenses/gpl.html)
8dccf9898SAnika Henke */
9dccf9898SAnika Henke
10dccf9898SAnika Henkeif (!defined('DOKU_INC')) die();
11dccf9898SAnika Henke@require_once(dirname(__FILE__).'/tpl_functions.php');
12dccf9898SAnika Henkeheader('X-UA-Compatible: IE=edge,chrome=1');
13dccf9898SAnika Henke$showSidebar = page_findnearest($conf['sidebar']);
14a9a96c91SLouis Ouellet?>
15a9a96c91SLouis Ouellet<!DOCTYPE html>
16dccf9898SAnika Henke<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $conf['lang'] ?>"
17dccf9898SAnika Henke  lang="<?php echo $conf['lang'] ?>" dir="<?php echo $lang['direction'] ?>" class="no-js">
18dccf9898SAnika Henke<head>
19dccf9898SAnika Henke    <meta charset="UTF-8" />
20dccf9898SAnika Henke    <title><?php tpl_pagetitle() ?> [<?php echo strip_tags($conf['title']) ?>]</title>
21a752e16cSLouis Ouellet    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" />
22a752e16cSLouis Ouellet    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css" />
23dccf9898SAnika Henke    <script>(function(H){H.className=H.className.replace(/\bno-js\b/,'js')})(document.documentElement)</script>
24dccf9898SAnika Henke    <?php tpl_metaheaders() ?>
25dccf9898SAnika Henke    <meta name="viewport" content="width=device-width,initial-scale=1" />
26dccf9898SAnika Henke    <?php echo tpl_favicon(array('favicon', 'mobile')) ?>
27dccf9898SAnika Henke    <?php tpl_includeFile('meta.html') ?>
2818fba4feSlainme    <link href='https://fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css' />
29e1ff67acSLouis Ouellet    <style>
30e1ff67acSLouis Ouellet        body {
31e1ff67acSLouis Ouellet            font-family: <?= tpl_getConf('font') ?>;
32e1ff67acSLouis Ouellet        }
33e1ff67acSLouis Ouellet    </style>
34dccf9898SAnika Henke</head>
35dccf9898SAnika Henke
366fb33d54SAnika Henke<body id="dokuwiki__top" class="sidebar-closed <?php echo tpl_classes(); ?>">
379e642b38SAnika Henke    <div id="writr__page" class="hfeed <?php echo ($showSidebar) ? 'hasSidebar' : ''; ?>">
38dccf9898SAnika Henke        <?php tpl_includeFile('header.html') ?>
39dccf9898SAnika Henke
409e642b38SAnika Henke        <div class="sidebar-area group" id="writr__sidebar">
419e642b38SAnika Henke            <a id="writr__sidebar-toggle" href="#writr__secondary" title="<?php echo $lang['sidebar'] ?>">
42d828d890SAnika Henke                <span class="genericon genericon-close"></span>
43d28eab28SAnika Henke                <span class="a11y"><?php echo $lang['sidebar'] ?></span>
44d828d890SAnika Henke            </a>
45d828d890SAnika Henke
46dccf9898SAnika Henke            <!-- ********** HEADER ********** -->
479e642b38SAnika Henke            <header id="writr__masthead" class="site-header" role="banner">
486fb33d54SAnika Henke                <?php
496fb33d54SAnika Henke                    $logoSize = array();
50037c3f06SLouis Ouellet                    $logoImages = array();
51037c3f06SLouis Ouellet                    if(tpl_getConf('doLogoChangesByNamespace')){
52037c3f06SLouis Ouellet                        $logoImages[] = getNS($ID).':logo.png';
53037c3f06SLouis Ouellet                    }
54037c3f06SLouis Ouellet                    $logoImages[] = ':logo.png';
55037c3f06SLouis Ouellet                    $logoImages[] = 'images/logo.png';
56037c3f06SLouis Ouellet                    $logo = tpl_getMediaFile($logoImages, false, $logoSize);
576fb33d54SAnika Henke                ?>
58dccf9898SAnika Henke
596fb33d54SAnika Henke                <a class="site-logo"  href="<?php echo wl(); ?>" title="<?php echo $conf['title']; ?>" rel="home" accesskey="h" title="[H]">
606fb33d54SAnika Henke                    <img src="<?php echo $logo; ?>" <?php echo $logoSize[3]; ?> alt="" class="no-grav header-image" />
616fb33d54SAnika Henke                </a>
626fb33d54SAnika Henke
636fb33d54SAnika Henke                <div class="site-branding">
646fb33d54SAnika Henke                    <h1 class="site-title"><a href="<?php echo wl(); ?>" rel="home" accesskey="h" title="[H]"><?php echo $conf['title']; ?></a></h1>
65dccf9898SAnika Henke                    <?php if ($conf['tagline']): ?>
666fb33d54SAnika Henke                        <h2 class="site-description"><?php echo $conf['tagline'] ?></h2>
67dccf9898SAnika Henke                    <?php endif ?>
686fb33d54SAnika Henke                </div>
69dccf9898SAnika Henke
706fb33d54SAnika Henke                <div class="search-form widget">
716fb33d54SAnika Henke                    <?php tpl_searchform() ?>
726fb33d54SAnika Henke                </div>
736fb33d54SAnika Henke
746fb33d54SAnika Henke                <?php if (page_findnearest('topnav')): ?>
759e642b38SAnika Henke                    <nav id="writr__site-navigation" class="main-navigation" role="navigation">
769116ecf3SAnika Henke                        <h3 class="menu-toggle genericon genericon-menu" title="<?php echo tpl_getLang('menu') ?>">
779116ecf3SAnika Henke                            <span class="a11y"><?php echo tpl_getLang('menu') ?></span>
789116ecf3SAnika Henke                        </h3>
79d28eab28SAnika Henke                        <div class="a11y skip-link">
809e642b38SAnika Henke                            <a href="#writr__content"><?php echo $lang['skip_to_content'] ?></a>
816fb33d54SAnika Henke                        </div>
826fb33d54SAnika Henke                        <?php tpl_include_page('topnav', 1, 1) ?>
839e642b38SAnika Henke                    </nav><!-- #writr__site-navigation -->
846fb33d54SAnika Henke                <?php endif; ?>
859e642b38SAnika Henke            </header><!-- #writr__masthead -->
866fb33d54SAnika Henke
879e642b38SAnika Henke            <div id="writr__secondary" class="widget-area" role="complementary">
889116ecf3SAnika Henke                <?php if ($conf['sidebar']): ?>
896fb33d54SAnika Henke                    <div class="widget">
906fb33d54SAnika Henke                        <?php tpl_includeFile('sidebarheader.html') ?>
916fb33d54SAnika Henke                        <?php tpl_include_page($conf['sidebar'], 1, 1) ?>
926fb33d54SAnika Henke                        <?php tpl_includeFile('sidebarfooter.html') ?>
936fb33d54SAnika Henke                    </div>
949116ecf3SAnika Henke                <?php endif ?>
956fb33d54SAnika Henke
966fb33d54SAnika Henke                <div class="tools widget_links widget">
97a9a96c91SLouis Ouellet                    <?php if(!tpl_getConf('doSiteToolsRequireLogin') || (tpl_getConf('doSiteToolsRequireLogin') && $conf['useacl'])){ ?>
986fb33d54SAnika Henke                        <!-- SITE TOOLS -->
99fc45eea6SAnika Henke                        <div class="site-tools">
100a9a96c91SLouis Ouellet                            <?php if(tpl_getConf('showSiteToolsTitle')){ ?>
101fc45eea6SAnika Henke                                <h3><?php echo $lang['site_tools'] ?></h3>
102a9a96c91SLouis Ouellet                            <?php } ?>
103fc45eea6SAnika Henke                            <ul>
104a9a96c91SLouis Ouellet                                <?php $items = (new \dokuwiki\Menu\SiteMenu())->getItems();
105a9a96c91SLouis Ouellet                                foreach($items as $item) {
106a9a96c91SLouis Ouellet                                    echo '<li>'
107a9a96c91SLouis Ouellet                                        .'<a href="'.$item->getLink().'" class="action '.strtolower($item->getType()).'" rel="nofollow" title="'.$item->getTitle().'">'
108a9a96c91SLouis Ouellet                                        .'<span></span> '
109a9a96c91SLouis Ouellet                                        .$item->getLabel()
110a9a96c91SLouis Ouellet                                        .'</a></li>';
111a9a96c91SLouis Ouellet                                } ?>
112fc45eea6SAnika Henke                            </ul>
113fc45eea6SAnika Henke                        </div>
114a9a96c91SLouis Ouellet                    <?php } ?>
1156fb33d54SAnika Henke
1166fb33d54SAnika Henke                    <!-- PAGE TOOLS -->
117fc45eea6SAnika Henke                    <div class="page-tools">
118a12de697SLouis Ouellet                        <?php if(tpl_getConf('showPageToolsTitle')){ ?>
119fc45eea6SAnika Henke                            <h3 class="a11y"><?php echo $lang['page_tools'] ?></h3>
120a12de697SLouis Ouellet                        <?php } ?>
121fc45eea6SAnika Henke                        <ul>
122a9a96c91SLouis Ouellet                            <?php if (!$conf['useacl'] || ($conf['useacl'] && $INFO['perm'] >= 4)): ?>
123a9a96c91SLouis Ouellet                                <?php $instructions = p_get_instructions('{{'.tpl_getConf('defaultAddNewPage').'}}');
124a9a96c91SLouis Ouellet                                if(count($instructions) <= 3) {
125a9a96c91SLouis Ouellet                                    $render = p_render('xhtml',$instructions,$info);
126a9a96c91SLouis Ouellet                                    echo '<li>'
127a9a96c91SLouis Ouellet                                        .'<a href="#" class="action AddNewPage" title="'.tpl_getLang('AddNewPage').'">'
128a9a96c91SLouis Ouellet                                        .'<span class="icon"></span>'
129a9a96c91SLouis Ouellet                                        .'<span class="a11y">'.tpl_getLang('AddNewPage').'</span>'
130a9a96c91SLouis Ouellet                                        .'</a>'
131a9a96c91SLouis Ouellet                                        .$render
132a9a96c91SLouis Ouellet                                        .'</li>';
133a9a96c91SLouis Ouellet                                } ?>
134a9a96c91SLouis Ouellet                                <!-- <li class="plugin_move_page" style="display: list-item;"><a href=""><span>Rename Page</span></a></li> -->
135a9a96c91SLouis Ouellet                            <?php endif ?>
136a9a96c91SLouis Ouellet                            <?php $items = (new \dokuwiki\Menu\PageMenu())->getItems();
137a9a96c91SLouis Ouellet                            foreach($items as $item) {
138a9a96c91SLouis Ouellet                                echo '<li>'
139a9a96c91SLouis Ouellet                                    .'<a href="'.$item->getLink().'" class="action '.strtolower($item->getType()).'" title="'.$item->getTitle().'">'
140a9a96c91SLouis Ouellet                                    .'<span class="icon"></span>'
141a9a96c91SLouis Ouellet                                    .'<span class="a11y">'.$item->getLabel().'</span>'
142a9a96c91SLouis Ouellet                                    .'</a></li>';
143a9a96c91SLouis Ouellet                            } ?>
144a9a96c91SLouis Ouellet                            <?php $translation = plugin_load('helper','translation');
145a9a96c91SLouis Ouellet                            if ($translation){
146*101253afSLouis Ouellet                                $render = $translation->showTranslations(false);
147a9a96c91SLouis Ouellet                                echo '<li>'
148a9a96c91SLouis Ouellet                                    .'<a href="#" class="action Translation" title="'.tpl_getLang('Language').'">'
149a9a96c91SLouis Ouellet                                    .'<span class="icon"></span>'
150a9a96c91SLouis Ouellet                                    .'<span class="a11y">'.tpl_getLang('Language').'</span>'
151a9a96c91SLouis Ouellet                                    .'</a>'
152a9a96c91SLouis Ouellet                                    .$render
153a9a96c91SLouis Ouellet                                    .'</li>';
154a9a96c91SLouis Ouellet                            } ?>
155fc45eea6SAnika Henke                        </ul>
156fc45eea6SAnika Henke                    </div>
1576fb33d54SAnika Henke
1586fb33d54SAnika Henke                    <?php if ($conf['useacl']): ?>
159fc45eea6SAnika Henke                        <!-- USER TOOLS -->
160fc45eea6SAnika Henke                        <div class="user-tools">
161a12de697SLouis Ouellet                            <?php if(tpl_getConf('showUserToolsTitle')){ ?>
162fc45eea6SAnika Henke                                <h3><?php echo $lang['user_tools'] ?></h3>
163a12de697SLouis Ouellet                            <?php } ?>
164fc45eea6SAnika Henke                            <ul>
165a9a96c91SLouis Ouellet                                <?php $items = (new \dokuwiki\Menu\UserMenu())->getItems();
166a9a96c91SLouis Ouellet                                foreach($items as $item) {
167a9a96c91SLouis Ouellet                                    echo '<li>'
168a9a96c91SLouis Ouellet                                        .'<a href="'.$item->getLink().'" class="action '.strtolower($item->getType()).'" rel="nofollow" title="'.$item->getTitle().'">'
169a9a96c91SLouis Ouellet                                        .'<span></span> '
170a9a96c91SLouis Ouellet                                        .$item->getLabel()
171a9a96c91SLouis Ouellet                                        .'</a></li>';
172a9a96c91SLouis Ouellet                                } ?>
1736fb33d54SAnika Henke                            </ul>
1746fb33d54SAnika Henke                            <?php
1756fb33d54SAnika Henke                                if (!empty($_SERVER['REMOTE_USER'])) {
1768d6272f1SLouis Ouellet                                    echo '<p class="user">'.$INFO['userinfo']['name'].'</p>';
1776fb33d54SAnika Henke                                }
1786fb33d54SAnika Henke                            ?>
1798d6272f1SLouis Ouellet                        </div>
180fc45eea6SAnika Henke                    <?php endif ?>
1816fb33d54SAnika Henke                </div>
182d828d890SAnika Henke
1839e642b38SAnika Henke                <footer id="writr__colophon" class="site-footer" role="contentinfo">
184d828d890SAnika Henke                    <div class="site-info">
185d828d890SAnika Henke                        <?php tpl_license('button') ?>
186d828d890SAnika Henke                        <?php tpl_includeFile('footer.html') ?>
187d828d890SAnika Henke                    </div><!-- .site-info -->
1889e642b38SAnika Henke                </footer><!-- #writr__colophon -->
189d828d890SAnika Henke
1906fb33d54SAnika Henke            </div>
1916fb33d54SAnika Henke        </div>
1926fb33d54SAnika Henke
1939e642b38SAnika Henke        <div id="writr__content" class="site-content">
1949e642b38SAnika Henke            <div id="writr__primary" class="content-area">
195dccf9898SAnika Henke
196*101253afSLouis Ouellet                <!-- Translation Notication -->
197*101253afSLouis Ouellet                <div class="translation-notification">
198*101253afSLouis Ouellet                    <?php $translation->checkage(); ?>
199*101253afSLouis Ouellet                </div>
200*101253afSLouis Ouellet
201dccf9898SAnika Henke                <!-- BREADCRUMBS -->
202dccf9898SAnika Henke                <?php if($conf['breadcrumbs']){ ?>
203dccf9898SAnika Henke                    <div class="breadcrumbs"><?php tpl_breadcrumbs() ?></div>
204dccf9898SAnika Henke                <?php } ?>
205dccf9898SAnika Henke                <?php if($conf['youarehere']){ ?>
206dccf9898SAnika Henke                    <div class="breadcrumbs"><?php tpl_youarehere() ?></div>
207dccf9898SAnika Henke                <?php } ?>
208dccf9898SAnika Henke
209100db85dSAnika Henke                <main id="writr__main" class="site-main group" role="main">
210d28eab28SAnika Henke
211dccf9898SAnika Henke                    <?php tpl_flush() ?>
212dccf9898SAnika Henke                    <?php tpl_includeFile('pageheader.html') ?>
213dccf9898SAnika Henke
2146fb33d54SAnika Henke                    <?php html_msgarea() ?>
215dccf9898SAnika Henke                    <!-- wikipage start -->
216dccf9898SAnika Henke                    <?php tpl_content() ?>
217dccf9898SAnika Henke                    <!-- wikipage stop -->
218dccf9898SAnika Henke
219dccf9898SAnika Henke                    <?php tpl_flush() ?>
220dccf9898SAnika Henke                    <?php tpl_includeFile('pagefooter.html') ?>
2219e642b38SAnika Henke                </main><!-- #writr__main -->
222d28eab28SAnika Henke
2234e123befSLouis Ouellet		<div class="page-footer">
2244e123befSLouis Ouellet			<?php tpl_pageinfo(); ?>
2254e123befSLouis Ouellet		</div>
2269e642b38SAnika Henke            </div><!-- #writr__primary -->
2279e642b38SAnika Henke        </div><!-- #writr__content -->
2289e642b38SAnika Henke    </div><!-- #writr__page -->
229dccf9898SAnika Henke
230dccf9898SAnika Henke    <div class="no"><?php tpl_indexerWebBug() /* provide DokuWiki housekeeping, required in all templates */ ?></div>
231a752e16cSLouis Ouellet
232a752e16cSLouis Ouellet    <!-- JavaScript Libraries and Scripts -->
233a752e16cSLouis Ouellet    <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.0/dist/jquery.slim.min.js"></script>
234a752e16cSLouis Ouellet    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
235a752e16cSLouis Ouellet    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js" integrity="sha256-BRqBN7dYgABqtY9Hd4ynE+1slnEw+roEPFzQ7TRRfcg=" crossorigin="anonymous"></script>
236dccf9898SAnika Henke</body>
237dccf9898SAnika Henke</html>
238