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## Features 10 11- [bootstrap styling](http://getbootstrap.com/) 12- Navbar with dropdown support 13- Subnavbar support (using a page named submenu) 14- Right sidebar 15- Hero element 16- Icon support 17- Customizable breadcrumbs 18- Theming support 19- Tags plugin support 20- Mobile friendly 21 22## Changes 23 24- 2020-09-27 25 - Sidebars now collapse by default on mobile. This can be overridden with the `sidebarMobileDefaultCollapse` option 26 - The mikio LESS stylesheet is now disabled by default, with a precompilied CSS used. This can be reverted using the `useLESS` option 27 28## Configuration 29 30The configuration can be change with the [Configuration Manager Plugin](https://www.dokuwiki.org/plugin:config) 31 32- `iconTag` : icon tag to use to engage the icon engine. Default to `icon` 33- `customTheme` : the mikio theme to use, located in the `mikio/themes` directory 34- `showNotifications` : where to show site notifications for admin staff 35- `useLESS` : use the LESS compilier or direct CSS for the mikio stylesheet. Requires the ctype PHP extension installed 36 37- `navbarUseTitleIcon` : show the site logo in the navbar 38- `navbarUseTitleText` : show the site title in the navbar 39- `navbarUseTaglineText` : show the site tagline in the navbar. Requires the `navbarUseTitleText` to be enabled 40- `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` 41 42- `navbarDWMenuType` : how to show the DokuWiki menu items in the navbar. Can be either icons, text or both 43- `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 44 45- `navbarPosLeft` : what menu to show on the left of the navbar 46- `navbarPosMiddle` : what menu to show in the middle of the navbar 47- `navbarPosRight` : what menu to show on the right of the navbar 48- `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 49 50- `searchButton` : show the search button as a icon or text 51 52- `heroTitle` : show the hero block on pages 53- `heroImagePropagation` : search for hero images in parent namespaces if none is found in the current namespace 54 55- `tagsConsolidate` : Consolidate tags found in the current page and display it in the hero, content header or sidebar 56 57- `breadcrumbHideHome` : hide breadcrumbs in the root namespace 58- `breadcrumbPosition` : where to display the breadcrumbs, either under the navbar, in the hero element or above the page content 59- `breadcrumbPrefix` : enable changing the breadcrumb prefix 60- `breadcrumbPrefixText` : text to set the breadcrumb prefix. Requires `breadcrumbPrefix` to be enabled 61- `breadcrumbSep` : enable changing the breadcrumb seperator 62- `breadcrumbSepText` : text to set the breadcrumb seperator. Requires `breadcrumbSep` to be enabled 63- `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 64- `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 65 66- `sidebarShowLeft` : show the left sidebar if content is found 67- `sidebarLeftRow1` : content to show in the first row of the left sidebar 68- `sidebarLeftRow2` : content to show in the second row of the left sidebar 69- `sidebarLeftRow3` : content to show in the third row of the left sidebar 70- `sidebarLeftRow4` : content to show in the forth row of the left sidebar 71- `sidebarMobileDefaultCollapse` : collapse the sidebars by default when viewed on mobile 72- `sidebarShowRight` : show the right sidebar if content is found 73 74- `tocFull` : show the table of contents as a full height item 75 76- `pageToolsFloating` : when and if to show the floating page tools 77- `pageToolsFooter` : when and if to show page tools in the footer 78 79- `footerCustomMenuText` : custom menu to use in the footer. Menu items are in the format of url|title with each item seperated by a semicolon 80- `footerSearch` : show the search bar in the footer 81 82- `licenseType` : how to show the license in the footer 83- `licenseImageOnly` : show the license in the footer as an image only. Requires `licenseType` to at least be enabled 84 85- `includePageUseACL` : respect ACL when including pages 86- `includePagePropagate` : search parent namespaces when including pages 87 88## Include Pages 89 90The following pages can be either html files in the root of the template or a page in the namespace. Namespace pages take priority. 91 92- `topheader` : content to include above the navbar 93- `header` : content include below the navbar but above the page content 94- `contentheader` : content to include above the page content 95- `contentfooter` : content to include below the page content 96- `sidebarheader` : content to include above the left sidebar content 97- `sidebarfooter` : content to include below the left sidebar content 98- `rightsidebarheader` : content to include above the right sidebar content 99- `rightsidebarfooter` : content to include below the right sidebar content 100- `footer` : content to include in the footer 101- `bottomfooter` : content to include below the footer 102 103## Include Images 104 105The 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. 106 107- `logo` : site logo in the navbar 108- `breadcrumb-prefix` breadcrumb prefix 109- `breadcrumb-sep` breadcrumb seperator 110- `hero` hero image for hero element 111 112## Hero Element 113 114- `title` : The hero title is sourced from the page title. The page title is removed from the page content 115- `subtitle` : Pages can set the subtitle by inserting `~~hero-subtitle TEXT~~` in the page content 116- `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 117- `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 118 119Namespaces can also apply the above hero settings in child pages by including the above settings in a page named `theme`. 120 121## Hiding Elements 122 123Mikio now supports hiding elements using the `~~hide-parts (parts)~~` macro. Each element within the hide-parts macro is required to be seperated by spaces. Currently the following parts are supported: 124 125- `topheader` : content above the navbar 126- `navbar` : the main navigation bar 127- `header` : content below the navbar but above the page content 128- `hero` : the page hero bar 129- `contentheader` : content above the page content 130- `contentfooter` : content below the page content 131- `sidebarheader` : content above the left sidebar content 132- `sidebarfooter` : content below the left sidebar content 133- `rightsidebarheader` : content above the right sidebar content 134- `rightsidebarfooter` : content below the right sidebar content 135- `footer` : content in the footer 136- `bottomfooter` : content below the footer 137 138To hide the topheader, navbar and hero, you would use the macro `~~hide-parts topheader navbar hero~~` 139 140## Icon Engine 141 142- Mikio includes an icon engine that allows you to include icons in your pages by using <icon OPTIONS> in your content 143- If the icon tag conflicts with another plugin, you can change the tag from `icon` to a user set value in the settings 144- 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` 145 146Users 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. 147 148## Themes 149 150Themes should be placed in the themes directory, in its own directory. LESS files are supported. 151 152## Mikio Plugin 153 154The [Mikio Plugin](https://github.com/nomadjimbob/mikioplugin/) is also available to add bootstrap 4 style + more elements to DokuWiki pages. 155 156## Languages 157 158- `sidebar-title` : Text for the collapsable block in the sidebar 159- `tools-menu` : Text for the combined tools DokuWiki menu title 160- `home` : Text for the breadcrumb home title 161 162## Issues 163 164- There is currently an issue when using the BookCreator Plugin. A fix is being investigated [#26](https://github.com/nomadjimbob/mikio/issues/26) 165 166## Releases 167 168- **_2021-06-17_** 169 170 - Added support for navbar title link to use showpageafterlogin setting if installed [#27](https://github.com/nomadjimbob/mikio/issues/27) 171 172- **_2021-06-09_** 173 174 - TOC is now full width on mobile [#25](https://github.com/nomadjimbob/mikio/issues/25) 175 - Hamburger and sidebar icons are now displayed correctly [#23](https://github.com/nomadjimbob/mikio/issues/23), [#24](https://github.com/nomadjimbob/mikio/issues/24) 176 - Site width is now available under Template Style Settings [#22](https://github.com/nomadjimbob/mikio/issues/22) 177 - TOC is now sticky when set to full height [#21](https://github.com/nomadjimbob/mikio/issues/21) 178 - Added support to the theme being linked by a symbolic link [#20](https://github.com/nomadjimbob/mikio/issues/20) 179 - Mikio will now fallback to using CSS when there is the LESS engine is not detected [#20](https://github.com/nomadjimbob/mikio/issues/20) 180 181- **_2021-03-10_** 182 183 - Fixed bad breadcrumb URL formatting on sites using userewrite [#19](https://github.com/nomadjimbob/mikio/issues/19) 184 185- **_2021-03-04_** 186 187 - Added support to hide page elements [#18](https://github.com/nomadjimbob/mikio/issues/18) 188 189- **_2021-01-22_** 190 191 - Fixed a syntax error with the core css 192 193- **_2020-11-12_** 194 195 - Corrected terminology in readme to match Dokuwiki [#17](https://github.com/nomadjimbob/mikio/issues/17) 196 - Fix showing part of the sidebar when it should be hidden in certain conditions [#16](https://github.com/nomadjimbob/mikio/issues/16) 197 - Added option to always show the sidebar, even when there is no content [#16](https://github.com/nomadjimbob/mikio/issues/16) 198 199- **_2020-10-07_** 200 201 - Fixed hero header parsing on some servers 202 - Fixed safari color picker issue [#14](https://github.com/nomadjimbob/mikio/issues/14) 203 - LESS now defaults to enabled with fallback to ctype functions built into mikio for docker apps [#13](https://github.com/nomadjimbob/mikio/issues/13) 204 - Fix for Template Style Settings being ignored [#12](https://github.com/nomadjimbob/mikio/issues/12) 205 206- **_2020-10-01_** 207 208 - 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. 209 210- **_2020-09-27_** 211 212 - Sidebars hidden by default in mobile view [#10](https://github.com/nomadjimbob/mikio/issues/10) 213 - Fixed errors with the LESS compilier on some nginx configurations 214 - Fixed styling and image display thumb size in media manager popup 215 - Fixed text field placeholders not disappearing with text entry 216 - Added support for Hogfather 217 - Added option to use LESS or direct CSS. Some configurations (docker linuxserver/dokuwiki) do not have the required PHP extensions installed 218 - Supports Docker linuxserver/dokuwiki container file structures 219 220- **_2020-09-10_** 221 222 - 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) 223 - Template.info.txt now shows correct release dates [#8](https://github.com/nomadjimbob/mikio/issues/8) 224 - Fixed rightsidebar php warnings 225 - Code/Pre blocks no longer have padding applied on the admin pages 226 227- **_2020-08-26_** 228 229 - Footer is no longer shown outside of page view 230 - Public messages are now displayed on the page 231 - Fixed icon rendering in hero bar 232 - Fixed TOC rendering bug 233 234- **_2020-07-27_** 235 236 - Added option to show wiki footer in page content 237 238- **_2020-07-24_** 239 240 - Fixed image detail bug 241 242- **_2020-07-20_** 243 244 - Fixed prewrap and sidebar search bar margins 245 246- **_2020-07-16_** 247 248 - Merged code block styling with pre 249 - Fixed mediamanager failures on 2018-04-22a "Greebo" [#5](https://github.com/nomadjimbob/mikio/issues/5) 250 - Icon tag is rendered correctly in preview [#4](https://github.com/nomadjimbob/mikio/issues/4) 251 252- **_2020-07-15_** 253 254 - 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) 255 256- **_2020-07-14_** 257 258 - Added id=dokuwiki\_\_content identifier for the page content element 259 - Added styling and fixed overflow issues with pre elements 260 - Fixed page width overflow issues 261 262- **_2020-07-09_** 263 264 - Fixed cosmetic display issues when `input[type=file]` is hidden by plugins [#2](https://github.com/nomadjimbob/mikio/issues/2) 265 266- **_2020-07-07_** 267 - Initial release 268 269## Third Party Libraries 270 271This template uses a [modified version](https://github.com/nomadjimbob/simple_html_dom) of [simple_html_dom](https://sourceforge.net/projects/simplehtmldom/) 272 273## Support 274 275- 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) 276- If you are a coder, feel free to create a pull request, but please be detailed about your changes! 277