website_jukni/dokuwiki/inc/toolbar.php
2017-12-29 15:51:59 +01:00

257 lines
9.9 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* Editing toolbar functions
*
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author Andreas Gohr <andi@splitbrain.org>
*/
if(!defined('DOKU_INC')) die('meh.');
/**
* Prepares and prints an JavaScript array with all toolbar buttons
*
* @emits TOOLBAR_DEFINE
* @param string $varname Name of the JS variable to fill
* @author Andreas Gohr <andi@splitbrain.org>
*/
function toolbar_JSdefines($varname){
global $lang;
$menu = array();
$evt = new Doku_Event('TOOLBAR_DEFINE', $menu);
if ($evt->advise_before()){
// build button array
$menu = array_merge($menu, array(
array(
'type' => 'format',
'title' => $lang['qb_bold'],
'icon' => 'bold.png',
'key' => 'b',
'open' => '**',
'close' => '**',
'block' => false
),
array(
'type' => 'format',
'title' => $lang['qb_italic'],
'icon' => 'italic.png',
'key' => 'i',
'open' => '//',
'close' => '//',
'block' => false
),
array(
'type' => 'format',
'title' => $lang['qb_underl'],
'icon' => 'underline.png',
'key' => 'u',
'open' => '__',
'close' => '__',
'block' => false
),
array(
'type' => 'format',
'title' => $lang['qb_code'],
'icon' => 'mono.png',
'key' => 'm',
'open' => "''",
'close' => "''",
'block' => false
),
array(
'type' => 'format',
'title' => $lang['qb_strike'],
'icon' => 'strike.png',
'key' => 'd',
'open' => '<del>',
'close' => '</del>',
'block' => false
),
array(
'type' => 'autohead',
'title' => $lang['qb_hequal'],
'icon' => 'hequal.png',
'key' => '8',
'text' => $lang['qb_h'],
'mod' => 0,
'block' => true
),
array(
'type' => 'autohead',
'title' => $lang['qb_hminus'],
'icon' => 'hminus.png',
'key' => '9',
'text' => $lang['qb_h'],
'mod' => 1,
'block' => true
),
array(
'type' => 'autohead',
'title' => $lang['qb_hplus'],
'icon' => 'hplus.png',
'key' => '0',
'text' => $lang['qb_h'],
'mod' => -1,
'block' => true
),
array(
'type' => 'picker',
'title' => $lang['qb_hs'],
'icon' => 'h.png',
'class' => 'pk_hl',
'list' => array(
array(
'type' => 'format',
'title' => $lang['qb_h1'],
'icon' => 'h1.png',
'key' => '1',
'open' => '====== ',
'close' => ' ======\n',
),
array(
'type' => 'format',
'title' => $lang['qb_h2'],
'icon' => 'h2.png',
'key' => '2',
'open' => '===== ',
'close' => ' =====\n',
),
array(
'type' => 'format',
'title' => $lang['qb_h3'],
'icon' => 'h3.png',
'key' => '3',
'open' => '==== ',
'close' => ' ====\n',
),
array(
'type' => 'format',
'title' => $lang['qb_h4'],
'icon' => 'h4.png',
'key' => '4',
'open' => '=== ',
'close' => ' ===\n',
),
array(
'type' => 'format',
'title' => $lang['qb_h5'],
'icon' => 'h5.png',
'key' => '5',
'open' => '== ',
'close' => ' ==\n',
),
),
'block' => true
),
array(
'type' => 'linkwiz',
'title' => $lang['qb_link'],
'icon' => 'link.png',
'key' => 'l',
'open' => '[[',
'close' => ']]',
'block' => false
),
array(
'type' => 'format',
'title' => $lang['qb_extlink'],
'icon' => 'linkextern.png',
'open' => '[[',
'close' => ']]',
'sample' => 'http://example.com|'.$lang['qb_extlink'],
'block' => false
),
array(
'type' => 'formatln',
'title' => $lang['qb_ol'],
'icon' => 'ol.png',
'open' => ' - ',
'close' => '',
'key' => '-',
'block' => true
),
array(
'type' => 'formatln',
'title' => $lang['qb_ul'],
'icon' => 'ul.png',
'open' => ' * ',
'close' => '',
'key' => '.',
'block' => true
),
array(
'type' => 'insert',
'title' => $lang['qb_hr'],
'icon' => 'hr.png',
'insert' => '\n----\n',
'block' => true
),
array(
'type' => 'mediapopup',
'title' => $lang['qb_media'],
'icon' => 'image.png',
'url' => 'lib/exe/mediamanager.php?ns=',
'name' => 'mediaselect',
'options'=> 'width=750,height=500,left=20,top=20,scrollbars=yes,resizable=yes',
'block' => false
),
array(
'type' => 'picker',
'title' => $lang['qb_smileys'],
'icon' => 'smiley.png',
'list' => getSmileys(),
'icobase'=> 'smileys',
'block' => false
),
array(
'type' => 'picker',
'title' => $lang['qb_chars'],
'icon' => 'chars.png',
'list' => explode(' ','À à Á á  â à ã Ä ä Ǎ ǎ Ă ă Å å Ā ā Ą ą Æ æ Ć ć Ç ç Č č Ĉ ĉ Ċ ċ Ð đ ð Ď ď È è É é Ê ê Ë ë Ě ě Ē ē Ė ė Ę ę Ģ ģ Ĝ ĝ Ğ ğ Ġ ġ Ĥ ĥ Ì ì Í í Î î Ï ï Ǐ ǐ Ī ī İ ı Į į Ĵ ĵ Ķ ķ Ĺ ĺ Ļ ļ Ľ ľ Ł ł Ŀ ŀ Ń ń Ñ ñ Ņ ņ Ň ň Ò ò Ó ó Ô ô Õ õ Ö ö Ǒ ǒ Ō ō Ő ő Œ œ Ø ø Ŕ ŕ Ŗ ŗ Ř ř Ś ś Ş ş Š š Ŝ ŝ Ţ ţ Ť ť Ù ù Ú ú Û û Ü ü Ǔ ǔ Ŭ ŭ Ū ū Ů ů ǖ ǘ ǚ ǜ Ų ų Ű ű Ŵ ŵ Ý ý Ÿ ÿ Ŷ ŷ Ź ź Ž ž Ż ż Þ þ ß Ħ ħ ¿ ¡ ¢ £ ¤ ¥ € ¦ § ª ¬ ¯ ° ± ÷ ‰ ¼ ½ ¾ ¹ ² ³ µ ¶ † ‡ · • º ∀ ∂ ∃ Ə ə ∅ ∇ ∈ ∉ ∋ ∏ ∑ ‾ × √ ∝ ∞ ∠ ∧ ∫ ∴ ≅ ≈ ≠ ≡ ≤ ≥ ⊂ ⊃ ⊄ ⊆ ⊇ ⊕ ⊗ ⊥ ⋅ ◊ ℘ ℵ ♠ ♣ ♥ ♦ α β Γ γ Δ δ ε ζ η Θ θ ι κ Λ λ μ Ξ ξ Π π ρ Σ σ Τ τ υ Φ φ χ Ψ ψ Ω ω ★ ☆ ☎ ☚ ☛ ☜ ☝ ☞ ☟ ☹ ☺ ✔ ✘ „ “ ” « » … ← ↑ → ↓ ↔ ⇐ ⇑ ⇒ ⇓ ⇔ © ™ ® ″ [ ] { } ~ ( ) % § $ # | @'),
'block' => false
),
array(
'type' => 'signature',
'title' => $lang['qb_sig'],
'icon' => 'sig.png',
'key' => 'y',
'block' => false
),
));
} // end event TOOLBAR_DEFINE default action
$evt->advise_after();
unset($evt);
// use JSON to build the JavaScript array
$json = new JSON();
print "var $varname = ".$json->encode($menu).";\n";
}
/**
* prepares the signature string as configured in the config
*
* @author Andreas Gohr <andi@splitbrain.org>
*/
function toolbar_signature(){
global $conf;
global $INFO;
/** @var Input $INPUT */
global $INPUT;
$sig = $conf['signature'];
$sig = dformat(null,$sig);
$sig = str_replace('@USER@',$INPUT->server->str('REMOTE_USER'),$sig);
$sig = str_replace('@NAME@',$INFO['userinfo']['name'],$sig);
$sig = str_replace('@MAIL@',$INFO['userinfo']['mail'],$sig);
$sig = str_replace('@DATE@',dformat(),$sig);
$sig = str_replace('\\\\n','\\n',addslashes($sig));
return $sig;
}
//Setup VIM: ex: et ts=4 :