1*7935713eSJames Collins<?php 2*7935713eSJames Collins/** 3*7935713eSJames Collins * DokuWiki Mikio Template Icons 4*7935713eSJames Collins * 5*7935713eSJames Collins * @link http://dokuwiki.org/template:mikio 6*7935713eSJames Collins * @author James Collins <james.collins@outlook.com.au> 7*7935713eSJames Collins * @license GPLv2 (http://www.gnu.org/licenses/gpl-2.0.html) 8*7935713eSJames Collins */ 9*7935713eSJames Collinsglobal $MIKIO_ICONS; 10*7935713eSJames Collins 11*7935713eSJames Collins/* 12*7935713eSJames Collins You can add custom icon libraries into this file and use them 13*7935713eSJames Collins with the theme. 14*7935713eSJames Collins 15*7935713eSJames Collins - Copy the CSS and FONT files into its own folder inside the 16*7935713eSJames Collins icons folder 17*7935713eSJames Collins 18*7935713eSJames Collins - Add an array to the $MIKIO_ICONS array with the following keys: 19*7935713eSJames Collins 20*7935713eSJames Collins name this is the name used to identify the icon in the 21*7935713eSJames Collins <icon> tag 22*7935713eSJames Collins css the CSS file to load. If your icon collection has 23*7935713eSJames Collins subtypes (like FontAwesome 5), you can create 24*7935713eSJames Collins multiple entries with the same CSS file. The theme 25*7935713eSJames Collins will prevent duplicate loadings of CSS files. You can 26*7935713eSJames Collins also use CDN paths 27*7935713eSJames Collins insert what to insert in place of the icon tag. Use $1 to 28*7935713eSJames Collins tell the theme where to insert the icon-type specified 29*7935713eSJames Collins by the page content 30*7935713eSJames Collins 31*7935713eSJames Collins The icon tag use can use on the DokuWiki page is: 32*7935713eSJames Collins 33*7935713eSJames Collins <icon name icon-type[ extra]> 34*7935713eSJames Collins 35*7935713eSJames Collins If no name is specified in the tag, the theme will use the first 36*7935713eSJames Collins entry in $MIKIO_ICONS 37*7935713eSJames Collins 38*7935713eSJames Collins If a name is not found in the $MIKIO_ICONS array, the tag is 39*7935713eSJames Collins removed from the output 40*7935713eSJames Collins 41*7935713eSJames Collins If you are using a SVG library, you can also use the extra parameters 42*7935713eSJames Collins of the icon tag. Each parameter (seperated by space) can be put 43*7935713eSJames Collins into the insert key as $2 - $9 44*7935713eSJames Collins 45*7935713eSJames Collins If you include a key named as the parameter, if that parameter is 46*7935713eSJames Collins not defined in the icon tag, then this will be used as the 47*7935713eSJames Collins default value 48*7935713eSJames Collins 49*7935713eSJames Collins An example below is the twbs svg icon library. The extra parameter 50*7935713eSJames Collins is used to define the svg fill color. You can use $0 for the URI 51*7935713eSJames Collins path to the icons folder (defined by the dir key) 52*7935713eSJames Collins*/ 53*7935713eSJames Collins 54*7935713eSJames Collins/* Font Awesome 4 */ 55*7935713eSJames Collins$MIKIO_ICONS[] = ['name' => 'fa', 'css' => 'fontawesome/css/all.min.css', 'insert' => '<i class="fa fa-$1"></i>']; 56*7935713eSJames Collins 57*7935713eSJames Collins/* Font Awesome 4 - CDN */ 58*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fa', 'css' => 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css', 'insert' => '<i class="fa fa-$1"></i>']; */ 59*7935713eSJames Collins 60*7935713eSJames Collins/* Font Awesome 5 */ 61*7935713eSJames Collins/* $fa5 = 'fontawesome5/css/all.min.css'; */ 62*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fas', 'css' => $fa5, 'insert' => '<i class="fas fa-$1"></i>']; */ 63*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'far', 'css' => $fa5, 'insert' => '<i class="far fa-$1"></i>']; */ 64*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fal', 'css' => $fa5, 'insert' => '<i class="fal fa-$1"></i>']; */ 65*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fab', 'css' => $fa5, 'insert' => '<i class="fab fa-$1"></i>']; */ 66*7935713eSJames Collins 67*7935713eSJames Collins/* Font Awesome 5 - CDN */ 68*7935713eSJames Collins/* $fa5 = 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.1/css/all.min.css'; */ 69*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fas', 'css' => $fa5, 'insert' => '<i class="fas fa-$1"></i>']; */ 70*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'far', 'css' => $fa5, 'insert' => '<i class="far fa-$1"></i>']; */ 71*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fal', 'css' => $fa5, 'insert' => '<i class="fal fa-$1"></i>']; */ 72*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'fab', 'css' => $fa5, 'insert' => '<i class="fab fa-$1"></i>']; */ 73*7935713eSJames Collins 74*7935713eSJames Collins/* Elusive 2 */ 75*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'el', 'css' => 'elusive/css/elusive-icons.min.css', 'insert' => '<i class="el el-$1"></i>']; */ 76*7935713eSJames Collins 77*7935713eSJames Collins/* Elusive 2 - CDN */ 78*7935713eSJames Collins/* $MIKIO_ICONS[] = ['name' => 'el', 'css' => '//maxcdn.bootstrapcdn.com/elusive-icons/2.0.0/css/elusive-icons.min.css', 'insert' => '<i class="el el-$1"></i>']; */ 79*7935713eSJames Collins 80*7935713eSJames Collins/* TWBS - https://github.com/twbs/icons/releases */ 81*7935713eSJames Collins/* $MIKIO_ICONS[] = [ 82*7935713eSJames Collins 'name' => 'bi', 83*7935713eSJames Collins 'dir' => 'bootstrap-icons', 84*7935713eSJames Collins 'css' => 'bootstrap-icons/bi.css', 85*7935713eSJames Collins 'insert' => '<span class="bi-icon" style="background-color:$2; mask-image:url($0svg/$1.svg); -webkit-mask-image:url($0svg/$1.svg);"></span>', 86*7935713eSJames Collins '$2' => 'black', 87*7935713eSJames Collins]; */ 88*7935713eSJames Collins 89*7935713eSJames Collins?>