wiki:plugin:icons
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| wiki:plugin:icons [2025/01/07 01:02] – создано vladpolskiy | wiki:plugin:icons [2025/01/19 12:18] (текущий) – [Ошибка вида Error: Call to undefined function trigger_event()] vladpolskiy | ||
|---|---|---|---|
| Строка 10: | Строка 10: | ||
| =====Совместимость===== | =====Совместимость===== | ||
| - | * 2024-02-06 " | + | * 2024-02-06 " |
| * 2023-04-04 "Jack Jackrum" | * 2023-04-04 "Jack Jackrum" | ||
| * 2022-07-31 " | * 2022-07-31 " | ||
| * 2020-07-29 " | * 2020-07-29 " | ||
| + | :!: **Примечание: | ||
| =====Монтаж===== | =====Монтаж===== | ||
| Используйте менеджер плагинов для установки или… | Используйте менеджер плагинов для установки или… | ||
| Строка 90: | Строка 91: | ||
| =====Конфигурация и настройки===== | =====Конфигурация и настройки===== | ||
| - | {{tablelayout? | + | ^ Вариант конфигурации ^ Значение по умолчанию ^ Описание ^ |
| - | ^ | + | ^ '' |
| - | | | + | ^ '' |
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | **ПРИМЕЧАНИЕ для пакета значков флагов**: | ||
| + | ===== Флаги ===== | ||
| + | ^ Флаг | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | ==== Флаги Font Awesome ==== | ||
| + | ^ Флаг | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | ===== Демо ===== | ||
| + | |||
| + | Демонстрация и примеры доступны по адресу [[http:// | ||
| + | |||
| + | ===== Часто задаваемые вопросы ===== | ||
| + | ====Как установить Font Awesome и Glyphicon в портативную версию Dokuwiki? | ||
| + | Первый шаг, скачайте пакет Font Awesome и создайте в вашей установке DokuWiki каталог (например, | ||
| + | ====Не работает ли плагин-помощник? | ||
| + | Это происходит потому, | ||
| + | Весь jQuery встроен с тегом defer, поэтому и возникает эта ошибка. | ||
| + | |||
| + | **безопасное решение**: | ||
| + | |||
| + | - сделайте резервную копию popup.php | ||
| + | - скопируйте скрипт, | ||
| + | - создайте файл **popup_script.js** в том же каталоге и вставьте в него этот скопированный скрипт | ||
| + | - удалите этот скрипт из **popup.php**. | ||
| + | - на место удаленного скрипта вставте скрипт следующего вида **< | ||
| + | - и сохраните. | ||
| + | примечание: | ||
| + | Скрипт для вставки в **popup.php**: | ||
| + | <code php> | ||
| + | <script src="/ | ||
| + | </ | ||
| + | перезагрузите страницу, | ||
| + | |||
| + | Скрипт для справки: | ||
| + | <code php popup_script.js> | ||
| + | jQuery(document).ready(function() { | ||
| + | |||
| + | var is_bootstrap = (typeof jQuery.fn.modal !== " | ||
| + | |||
| + | var $icon_pack | ||
| + | $icon_name | ||
| + | $icon_size | ||
| + | $icon_align | ||
| + | $output | ||
| + | $preview | ||
| + | |||
| + | if (! is_bootstrap) { | ||
| + | jQuery(' | ||
| + | } | ||
| + | |||
| + | jQuery(' | ||
| + | |||
| + | jQuery(' | ||
| + | jQuery(this).addClass(' | ||
| + | |||
| + | $icon_size.val(jQuery(this).data(' | ||
| + | jQuery(document).trigger(' | ||
| + | |||
| + | }); | ||
| + | |||
| + | jQuery(' | ||
| + | |||
| + | jQuery(' | ||
| + | jQuery(this).addClass(' | ||
| + | |||
| + | $icon_align.val(jQuery(this).data(' | ||
| + | jQuery(document).trigger(' | ||
| + | |||
| + | }); | ||
| + | |||
| + | jQuery(' | ||
| + | |||
| + | if (! is_bootstrap) { | ||
| + | jQuery(' | ||
| + | jQuery(' | ||
| + | jQuery(jQuery(this).attr(' | ||
| + | jQuery(this).parent().addClass(' | ||
| + | } | ||
| + | |||
| + | $icon_pack.val(jQuery(this).data(' | ||
| + | jQuery(' | ||
| + | |||
| + | jQuery(document).trigger(' | ||
| + | |||
| + | }); | ||
| + | |||
| + | jQuery(' | ||
| + | $icon_name.val(jQuery(this).data(' | ||
| + | jQuery(document).trigger(' | ||
| + | }); | ||
| + | |||
| + | jQuery(document).on(' | ||
| + | |||
| + | var icon_pack | ||
| + | icon_size | ||
| + | icon_align = $icon_align.val(), | ||
| + | icon_name | ||
| + | |||
| + | if (! icon_name) { | ||
| + | return false; | ||
| + | } | ||
| + | |||
| + | var syntax = [ ' | ||
| + | |||
| + | syntax.push(icon_pack); | ||
| + | syntax.push('>' | ||
| + | |||
| + | var icon_size_pixel = 0; | ||
| + | |||
| + | switch (icon_size) { | ||
| + | case ' | ||
| + | icon_size_pixel = 24; | ||
| + | break; | ||
| + | case ' | ||
| + | icon_size_pixel = 32; | ||
| + | break; | ||
| + | case ' | ||
| + | icon_size_pixel = 48; | ||
| + | break; | ||
| + | } | ||
| + | |||
| + | if (icon_size_pixel) { | ||
| + | syntax.push('?' | ||
| + | } | ||
| + | |||
| + | if (icon_align) { | ||
| + | syntax.push('& | ||
| + | } | ||
| + | |||
| + | syntax.push(' | ||
| + | |||
| + | $output.val(syntax.join('' | ||
| + | $preview.text(syntax.join('' | ||
| + | |||
| + | }); | ||
| + | |||
| + | jQuery('# | ||
| + | jQuery(document).trigger(' | ||
| + | }); | ||
| + | |||
| + | jQuery(document).on(' | ||
| + | jQuery(' | ||
| + | jQuery(this)[0].reset(); | ||
| + | }); | ||
| + | $output.val('' | ||
| + | $preview.text('' | ||
| + | }); | ||
| + | |||
| + | jQuery('# | ||
| + | |||
| + | if (jQuery(this).attr(' | ||
| + | opener.insertAtCarret(' | ||
| + | opener.focus(); | ||
| + | } | ||
| + | |||
| + | }); | ||
| + | |||
| + | }); | ||
| + | </ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | ===Альтернативный способ=== | ||
| + | * {{ : | ||
| + | * распакуйте в папку ''/ | ||
| + | ===Настройка и поддержка Fontawesome 6.71=== | ||
| + | [[https:// | ||
| + | |||
| + | P.S. Этот ZIP-архив содержит ТОЛЬКО измененные/ | ||
| + | {{ : | ||
| + | |||
| + | Что изменено в модифицированной версии: | ||
| + | |||
| + | * заменен набор иконок на Fontawesome 6.71. Поскольку 6.71 отделил иконки брендов, | ||
| + | * | ||
| + | * (должно быть) совместимым с уже добавленными значками FA из предыдущей версии, | ||
| + | * | ||
| + | * добавить дополнительную вкладку руководства во всплывающем окне для более удобного использования тегов | ||
| + | * | ||
| + | * В сочетании с исправлением js defer, оригинальный скрипт расширения должен отключить defer JS со страницы конфигурации для работы. Из [[https:// | ||
| + | |||
| + | Техническое примечание: | ||
| + | |||
| + | - Я использовал Node.js для извлечения нового имени значка в виде списка для замены оригинального list-font-awesome.php ( https:// | ||
| + | |||
| + | - добавлены строки комментариев в измененных файлах, | ||
| + | [[https:// | ||
| + | {{ : | ||
| + | ==== Ошибка вида Error: Call to undefined function trigger_event() ==== | ||
| + | {{: | ||
| + | Данная ошибка может возникнуть при обновлении dokuwiki с 2023-04-04 «Jack Jackrum» на 2024-02-06 «Kaos» и означает '' | ||
| + | * Имя класса '' | ||
| + | * Публичный метод '' | ||
| + | <code php popur.php [enable_line_numbers=" | ||
| + | $tmp = array(); | ||
| + | trigger_event(' | ||
| + | session_write_close(); | ||
| + | </ | ||
| + | **безопасное решение**: | ||
| + | в начале добавляем класс Event '' | ||
| + | <code php popur.php [enable_line_numbers=" | ||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | use dokuwiki\Extension\Event; | ||
| + | |||
| + | </ | ||
| + | Меняем код вызова функции '' | ||
| + | <code php popur.php [enable_line_numbers=" | ||
| + | $tmp = array(); | ||
| + | Event:: | ||
| + | session_write_close(); | ||
| + | |||
| + | </ | ||
| + | Сохраняем, | ||
| + | {{: | ||
| + | в раскрывшемся окне выбираем понравившуюся иконку и вставляем в тело страницы | ||
| + | {{: | ||
| + | < | ||
| + | <code php popur.php [enable_line_numbers=" | ||
| + | <?php | ||
| + | /** | ||
| + | * Plugin Icons: Popup helper | ||
| + | | ||
| + | * @license | ||
| + | * @author | ||
| + | * @copyright | ||
| + | */ | ||
| + | |||
| + | if (!defined(' | ||
| + | define(' | ||
| + | |||
| + | global $lang; | ||
| + | global $conf; | ||
| + | global $JSINFO; | ||
| + | |||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | require_once(DOKU_INC.' | ||
| + | use dokuwiki\Extension\Event; | ||
| + | $JSINFO[' | ||
| + | $JSINFO[' | ||
| + | |||
| + | $tmp = array(); | ||
| + | Event:: | ||
| + | session_write_close(); | ||
| + | |||
| + | |||
| + | $icons_plugin = plugin_load(' | ||
| + | |||
| + | $use_font_awesome | ||
| + | $use_material_design_icons = $icons_plugin-> | ||
| + | $use_typicons | ||
| + | $use_font_linux | ||
| + | $use_rpg_awesome | ||
| + | $use_glyphicons | ||
| + | |||
| + | # Load Bootstrap3 Template assets | ||
| + | if ($conf[' | ||
| + | |||
| + | include_once(DOKU_INC.' | ||
| + | include_once(DOKU_INC.' | ||
| + | |||
| + | # Glyphicons is bundled into Bootstrap 3.x | ||
| + | $use_glyphicons = true; | ||
| + | |||
| + | } | ||
| + | |||
| + | $list_material_design_icons = include(dirname(__FILE__) . '/ | ||
| + | $list_font_awesome | ||
| + | # add V6 brand icons | ||
| + | $list_font_awesome_br | ||
| + | # add V6 brand icons | ||
| + | $list_glyphicon | ||
| + | $list_typicons | ||
| + | $list_font_linux | ||
| + | $list_rpg_awesome | ||
| + | |||
| + | header(' | ||
| + | header(' | ||
| + | |||
| + | ?>< | ||
| + | <html xmlns=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | <meta http-equiv=" | ||
| + | < | ||
| + | < | ||
| + | <meta name=" | ||
| + | <?php echo tpl_favicon(array(' | ||
| + | <?php tpl_metaheaders() ?> | ||
| + | <style type=" | ||
| + | body { padding: 20px; } | ||
| + | .btn-icon { margin: 4px; padding: 4px; } | ||
| + | .tab-icons { overflow-y: auto; height: 300px; } | ||
| + | .icon { font-size: 2em; width: 1.28571429em; | ||
| + | | ||
| + | <?php if (! $use_glyphicons): | ||
| + | footer { bottom: 20px; position: fixed; } | ||
| + | .col-sm-6 { width:50%; float: left; } | ||
| + | .col-sm-4 { width: | ||
| + | .tab-pane, .hide { display: none; } | ||
| + | button.active { border-style: | ||
| + | <?php endif; ?> | ||
| + | </ | ||
| + | <!-- <script type=" | ||
| + | |||
| + | <script src=" | ||
| + | < | ||
| + | </ | ||
| + | <body class=" | ||
| + | |||
| + | <ul class=" | ||
| + | |||
| + | <?php if ($use_font_awesome): | ||
| + | <!-- add FA6 brand icons + modify naming --> | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <!-- add FA6 brand icons --> | ||
| + | <?php endif; ?> | ||
| + | <?php if ($use_glyphicons): | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <?php endif; ?> | ||
| + | <?php if ($use_material_design_icons): | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <?php endif; ?> | ||
| + | <?php if ($use_typicons): | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <?php endif; ?> | ||
| + | <?php if ($use_font_linux): | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <?php endif; ?> | ||
| + | <?php if ($use_rpg_awesome): | ||
| + | <li> | ||
| + | <!-- bug fix for wrong tag of RPG-Awesome | ||
| + | <a data-toggle=" | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <?php endif; ?> | ||
| + | |||
| + | <!-- add guideling page --> | ||
| + | <li> | ||
| + | <a data-toggle=" | ||
| + | </li> | ||
| + | <!-- add guideling page --> | ||
| + | </ul> | ||
| + | |||
| + | <main class=" | ||
| + | |||
| + | <!-- add guideling page --> | ||
| + | <div id=" | ||
| + | <p> | ||
| + | < | ||
| + | < | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | </ | ||
| + | < | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td> | ||
| + | </td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <td> | ||
| + | </td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | <tr> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </tr> | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| + | </ | ||
| + | <!-- add guideling page --> | ||
| + | |||
| + | |||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_font_awesome as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <!-- modify FA6 new coding | ||
| + | <i class=" | ||
| + | --> | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | <!-- add FA6 brand icons --> | ||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_font_awesome_br as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | </ | ||
| + | <!-- add FA6 brand icons --> | ||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_rpg_awesome as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_material_design_icons as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_glyphicon as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_typicons as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | <div id=" | ||
| + | |||
| + | <div class=" | ||
| + | <?php foreach($list_font_linux as $icon): ?> | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <i class=" | ||
| + | </ | ||
| + | < | ||
| + | </ | ||
| + | <?php endforeach ?> | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | <div class=" | ||
| + | |||
| + | <hr/> | ||
| + | |||
| + | <div class=" | ||
| + | |||
| + | <div class=" | ||
| + | < | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <div class=" | ||
| + | < | ||
| + | <div class=" | ||
| + | <button class=" | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | <img src=" | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | < | ||
| + | <pre id=" | ||
| + | |||
| + | <input type=" | ||
| + | <input type=" | ||
| + | <input type=" | ||
| + | <input type=" | ||
| + | <input type=" | ||
| + | |||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | <nav class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <button type=" | ||
| + | <button type=" | ||
| + | <button type=" | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | * Скачайте мод {{ : | ||
| + | * Установите плагин icons.zip через менеджер плагинов | ||
| =====Обновление===== | =====Обновление===== | ||
| - | Для обновления удалите исходную папку lib/ | + | Для обновления удалите исходную папку lib/ |
| =====Файл для загрузки===== | =====Файл для загрузки===== | ||
| - | {{ : | + | * {{ : |
| + | FortAwesome/ | ||
| + | * {{ : | ||
| + | * {{ : | ||
| + | * {{ : | ||
| + | * {{ : | ||
| + | * https:// | ||
| =====Лицензия===== | =====Лицензия===== | ||
| - | * **Author:** [[dokuwiki@cosmocode.de|Andreas Gohr]] | + | * **Author:** [[giuseppe.diterlizzi@gmail.com|Giuseppe Di Terlizzi]] |
| * **License: | * **License: | ||
wiki/plugin/icons.1736200945.txt.gz · Последнее изменение: — vladpolskiy
