1# Mikio DokuWiki Template 2 3 4 5## About 6 7`Mikio` is a Bootstrap 4 style template for [DokuWiki](http://dokuwiki.org) 8 9 10## Features 11 12 13 * [bootstrap styling](http://getbootstrap.com/) 14 * Navbar with dropdown support 15 * Subnavbar support (using a page named submenu) 16 * Right sidebar 17 * Hero element 18 * Icon support 19 * Customizable breadcrumbs 20 * Theming support 21 * Tags plugin support 22 * Mobile friendly 23 24 25## Changes 26 27 * 2020-09-27 28 * Sidebars now collapse by default on mobile. This can be overridden with the `sidebarMobileDefaultCollapse` option 29 * The mikio LESS stylesheet is now disabled by default, with a precompilied CSS used. This can be reverted using the `useLESS` option 30 31## Configuration 32 33The configuration can be change with the [Configuration Manager Plugin](https://www.dokuwiki.org/plugin:config) 34 35 * `iconTag` : icon tag to use to engage the icon engine. Default to `icon` 36 * `customTheme` : the mikio theme to use, located in the `mikio/themes` directory 37 * `showNotifications` : where to show site notifications for admin staff 38 * `useLESS` : use the LESS compilier or direct CSS for the mikio stylesheet. Requires the ctype PHP extension installed 39 40 * `navbarUseTitleIcon` : show the site logo in the navbar 41 * `navbarUseTitleText` : show the site title in the navbar 42 * `navbarUseTaglineText` : show the site tagline in the navbar. Requires the `navbarUseTitleText` to be enabled 43 * `navbarCustomMenuText` : custom menu to use in the navbar. Menu items are in the format of url|title with each item seperated by a semicolon. Requires one of the `navbarPos` to be set to `custom` 44 45 * `navbarDWMenuType` : how to show the DokuWiki menu items in the navbar. Can be either icons, text or both 46 * `navbarDWMenuCombine` : how to show the DokuWiki menu in the navbar. Can be either category dropdowns, single items or a combined dropdown. The combined menu title is pulled from the `tools-menu` language value 47 48 * `navbarPosLeft` : what menu to show on the left of the navbar 49 * `navbarPosMiddle` : what menu to show in the middle of the navbar 50 * `navbarPosRight` : what menu to show on the right of the navbar 51 * `navbarShowSub` : show the sub navbar. This menu is pulled from the `submenu` page in the current or parent namespaces. The menu is also shown on child pages. If no page is found, the sub navbar is automatically hidden 52 53 * `searchButton` : show the search button as a icon or text 54 55 * `heroTitle` : show the hero block on pages 56 * `heroImagePropagation` : search for hero images in parent namespaces if none is found in the current namespace 57 58 * `tagsConsolidate` : Consolidate tags found in the current page and display it in the hero, content header or sidebar 59 60 * `breadcrumbHideHome` : hide breadcrumbs in the root namespace 61 * `breadcrumbPosition` : where to display the breadcrumbs, either under the navbar, in the hero element or above the page content 62 * `breadcrumbPrefix` : enable changing the breadcrumb prefix 63 * `breadcrumbPrefixText` : text to set the breadcrumb prefix. Requires `breadcrumbPrefix` to be enabled 64 * `breadcrumbSep` : enable changing the breadcrumb seperator 65 * `breadcrumbSepText` : text to set the breadcrumb seperator. Requires `breadcrumbSep` to be enabled 66 * `breadcrumbHome` : change the breadcrumb home item to none, page title of root page, 'home' or an icon/image. The 'home' text is pulled from the `home` language value 67 * `breadcrumbShowLast` : only show an amount of breadcrumbs from the last. Will also show the home item in the list if enabled. Set this to `0` to show all items 68 69 * `sidebarShowLeft` : show the left sidebar if content is found 70 * `sidebarLeftRow1` : content to show in the first row of the left sidebar 71 * `sidebarLeftRow2` : content to show in the second row of the left sidebar 72 * `sidebarLeftRow3` : content to show in the third row of the left sidebar 73 * `sidebarLeftRow4` : content to show in the forth row of the left sidebar 74 * `sidebarMobileDefaultCollapse` : collapse the sidebars by default when viewed on mobile 75 * `sidebarShowRight` : show the right sidebar if content is found 76 77 * `tocFull` : show the table of contents as a full height item 78 79 * `pageToolsFloating` : when and if to show the floating page tools 80 * `pageToolsFooter` : when and if to show page tools in the footer 81 82 * `footerCustomMenuText` : custom menu to use in the footer. Menu items are in the format of url|title with each item seperated by a semicolon 83 * `footerSearch` : show the search bar in the footer 84 85 * `licenseType` : how to show the license in the footer 86 * `licenseImageOnly` : show the license in the footer as an image only. Requires `licenseType` to at least be enabled 87 88 * `includePageUseACL` : respect ACL when including pages 89 * `includePagePropagate` : search parent namespaces when including pages 90 91 92## Include Pages 93 94The following pages can be either html files in the root of the template or a page in the namespace. Namespace pages take priority. 95 96 * `topheader` : content to include above the navbar 97 * `header` : content include below the navbar but above the page content 98 * `contentheader` : content to include above the page content 99 * `contentfooter` : content to include below the page content 100 * `sidebarheader` : content to include above the left sidebar content 101 * `sidebarfooter` : content to include below the left sidebar content 102 * `rightsidebarheader` : content to include above the right sidebar content 103 * `rightsidebarfooter` : content to include below the right sidebar content 104 * `footer` : content to include in the footer 105 * `bottomfooter` : content to include below the footer 106 107 108## Include Images 109 110The following images can be used to replace content in the template. Images can be in the root of the template or in the namespace. Images can be either png, jpg, gif or svg. 111 112 * `logo` : site logo in the navbar 113 * `breadcrumb-prefix` breadcrumb prefix 114 * `breadcrumb-sep` breadcrumb seperator 115 * `hero` hero image for hero element 116 117 118## Hero Element 119 120 * `title` : The hero title is sourced from the page title. The page title is removed from the page content 121 * `subtitle` : Pages can set the subtitle by inserting `~~hero-subtitle TEXT~~` in the page content 122 * `image` : The hero image is sourced from an image named hero in the current or parental namespace. Namespace searching can be confined by the `includePagePropagate` setting. Pages can also override the image by inserting `~~hero-image URL~~` in the page content. DokuWiki and external URLs are supported 123 * `colors` : Colors can be overridden by including `~~hero-colors BACKGROUND_COLOR HERO_TITLE_COLOR HERO_SUBTITLE_COLOR BREADCRUMB_TEXT_COLOR BREADCRUMB_HOVER_COLOR~~`. You do not need to include all the color options. Use 'initial' to skip a color override 124 125Namespaces can also apply the above hero settings in child pages by including the above settings in a page named `theme`. 126 127 128## Icon Engine 129 130 * Mikio includes an icon engine that allows you to include icons in your pages by using <icon OPTIONS> in your content 131 * If the icon tag conflicts with another plugin, you can change the tag from `icon` to a user set value in the settings 132 * By default, Mikio enables FontAwesome 4 by also includes FontAwesome 5, Elusive 2 and Bootstrap Icons which can be enabled by uncommenting their inclusions in `/icons/icons.php` 133 134Users can also add their own icon sets into the template. Supported icon sets can either be webfonts or indivial files (such as a SVG library). Instructions can be found in the `/icons/icons.php` file. 135 136 137## Themes 138 139Themes should be placed in the themes directory, in its own directory. LESS files are supported. 140 141 142## Mikio Plugin 143 144The [Mikio Plugin](https://github.com/nomadjimbob/mikioplugin/) is also available to add bootstrap 4 style + more elements to DokuWiki pages. 145 146 147## Languages 148 149 * `sidebar-title` : Text for the collapsable block in the sidebar 150 * `tools-menu` : Text for the combined tools DokuWiki menu title 151 * `home` : Text for the breadcrumb home title 152 153 154## Releases 155 156 * ***2021-01-22*** 157 * Fixed a syntax error with the core css 158 159 * ***2020-11-12*** 160 * Corrected terminology in readme to match Dokuwiki [#17](https://github.com/nomadjimbob/mikio/issues/17) 161 * Fix showing part of the sidebar when it should be hidden in certain conditions [#16](https://github.com/nomadjimbob/mikio/issues/16) 162 * Added option to always show the sidebar, even when there is no content [#16](https://github.com/nomadjimbob/mikio/issues/16) 163 164 * ***2020-10-07*** 165 * Fixed hero header parsing on some servers 166 * Fixed safari color picker issue [#14](https://github.com/nomadjimbob/mikio/issues/14) 167 * LESS now defaults to enabled with fallback to ctype functions built into mikio for docker apps [#13](https://github.com/nomadjimbob/mikio/issues/13) 168 * Fix for Template Style Settings being ignored [#12](https://github.com/nomadjimbob/mikio/issues/12) 169 170 * ***2020-10-01*** 171 * Fix for `sidebarMobileDefaultCollapse` option being inconsistent in code and not working correctly [#11](https://github.com/nomadjimbob/mikio/issues/11). Thanks to GJRobert for catching that. 172 173 * ***2020-09-27*** 174 * Sidebars hidden by default in mobile view [#10](https://github.com/nomadjimbob/mikio/issues/10) 175 * Fixed errors with the LESS compilier on some nginx configurations 176 * Fixed styling and image display thumb size in media manager popup 177 * Fixed text field placeholders not disappearing with text entry 178 * Added support for Hogfather 179 * Added option to use LESS or direct CSS. Some configurations (docker linuxserver/dokuwiki) do not have the required PHP extensions installed 180 * Supports Docker linuxserver/dokuwiki container file structures 181 182 * ***2020-09-10*** 183 * Floating page tools is now a UL element with classes applied from getType and getLinkAttributes. Fixes popup dialogs initiated from the a page menu [#7](https://github.com/nomadjimbob/mikio/issues/7) 184 * Template.info.txt now shows correct release dates [#8](https://github.com/nomadjimbob/mikio/issues/8) 185 * Fixed rightsidebar php warnings 186 * Code/Pre blocks no longer have padding applied on the admin pages 187 188 * ***2020-08-26*** 189 * Footer is no longer shown outside of page view 190 * Public messages are now displayed on the page 191 * Fixed icon rendering in hero bar 192 * Fixed TOC rendering bug 193 194 * ***2020-07-27*** 195 * Added option to show wiki footer in page content 196 197 * ***2020-07-24*** 198 * Fixed image detail bug 199 200 * ***2020-07-20*** 201 * Fixed prewrap and sidebar search bar margins 202 203 * ***2020-07-16*** 204 * Merged code block styling with pre 205 * Fixed mediamanager failures on 2018-04-22a "Greebo" [#5](https://github.com/nomadjimbob/mikio/issues/5) 206 * Icon tag is rendered correctly in preview [#4](https://github.com/nomadjimbob/mikio/issues/4) 207 208 * ***2020-07-15*** 209 * Fixed an issue with the simple_html_dom library when editing a section of a page caused page corruption [#3](https://github.com/nomadjimbob/mikio/issues/3) 210 211 * ***2020-07-14*** 212 * Added id=dokuwiki__content identifier for the page content element 213 * Added styling and fixed overflow issues with pre elements 214 * Fixed page width overflow issues 215 216 * ***2020-07-09*** 217 * Fixed cosmetic display issues when `input[type=file]` is hidden by plugins [#2](https://github.com/nomadjimbob/mikio/issues/2) 218 219 * ***2020-07-07*** 220 * Initial release 221 222 223## Third Party Libraries 224 225This template uses a [modified version](https://github.com/nomadjimbob/simple_html_dom) of [simple_html_dom](https://sourceforge.net/projects/simplehtmldom/) 226 227## Support 228 229 * If you think you have found a problem, or would like to see a feature, please [open an issue](https://github.com/nomadjimbob/mikio/issues) 230 * If you are a coder, feel free to create a pull request, but please be detailed about your changes! 231