diff options
Diffstat (limited to 'inc')
-rw-r--r-- | inc/actions.php | 12 | ||||
-rw-r--r-- | inc/config_cascade.php | 9 | ||||
-rw-r--r-- | inc/html.php | 3 | ||||
-rw-r--r-- | inc/lang/ar/lang.php | 2 | ||||
-rw-r--r-- | inc/plugin.php | 10 | ||||
-rw-r--r-- | inc/template.php | 11 |
6 files changed, 30 insertions, 17 deletions
diff --git a/inc/actions.php b/inc/actions.php index 321d928b3..fa11bb7f1 100644 --- a/inc/actions.php +++ b/inc/actions.php @@ -18,6 +18,7 @@ if(!defined('DOKU_INC')) die('meh.'); function act_dispatch(){ global $ACT; global $ID; + global $INFO; global $QUERY; global $lang; global $conf; @@ -134,8 +135,15 @@ function act_dispatch(){ $pluginlist = plugin_list('admin'); if (in_array($_REQUEST['page'], $pluginlist)) { // attempt to load the plugin - if ($plugin =& plugin_load('admin',$_REQUEST['page']) !== null) - $plugin->handle(); + if ($plugin =& plugin_load('admin',$_REQUEST['page']) !== null){ + if($plugin->forAdminOnly() && !$INFO['isadmin']){ + // a manager tried to load a plugin that's for admins only + unset($_REQUEST['page']); + msg('For admins only',-1); + }else{ + $plugin->handle(); + } + } } } } diff --git a/inc/config_cascade.php b/inc/config_cascade.php index 32001be81..48ed5a000 100644 --- a/inc/config_cascade.php +++ b/inc/config_cascade.php @@ -49,10 +49,11 @@ $config_cascade = array_merge( 'local' => array(DOKU_CONF.'wordblock.local.conf'), ), 'userstyle' => array( - 'default' => DOKU_CONF.'userstyle.css', - 'print' => DOKU_CONF.'printstyle.css', - 'feed' => DOKU_CONF.'feedstyle.css', - 'all' => DOKU_CONF.'allstyle.css', + 'screen' => DOKU_CONF.'userstyle.css', + 'rtl' => DOKU_CONF.'userrtl.css', + 'print' => DOKU_CONF.'userprint.css', + 'feed' => DOKU_CONF.'userfeed.css', + 'all' => DOKU_CONF.'userall.css', ), 'userscript' => array( 'default' => DOKU_CONF.'userscript.js' diff --git a/inc/html.php b/inc/html.php index 080beb01a..fcfa54b6c 100644 --- a/inc/html.php +++ b/inc/html.php @@ -284,7 +284,8 @@ function html_hilight($html,$phrases){ $regex = join('|',array_map('ft_snippet_re_preprocess', array_map('preg_quote_cb',$phrases))); if ($regex === '') return $html; - $html = preg_replace_callback("/((<[^>]*)|$regex)/ui",'html_hilight_callback',$html); + if (!utf8_check($regex)) return $html; + $html = @preg_replace_callback("/((<[^>]*)|$regex)/ui",'html_hilight_callback',$html); return $html; } diff --git a/inc/lang/ar/lang.php b/inc/lang/ar/lang.php index 300ec3b9a..cc2de9e8b 100644 --- a/inc/lang/ar/lang.php +++ b/inc/lang/ar/lang.php @@ -45,7 +45,7 @@ $lang['btn_resendpwd'] = 'ارسل كلمة سر جديدة'; $lang['btn_draft'] = 'حرر المسودة'; $lang['btn_recover'] = 'استرجع المسودة'; $lang['btn_draftdel'] = 'احذف المسوّدة'; -$lang['btn_revert'] = 'استعد +$lang['btn_revert'] = 'استعد'; $lang['btn_register'] = 'سجّل'; $lang['loggedinas'] = 'داخل باسم'; $lang['user'] = 'اسم المستخدم'; diff --git a/inc/plugin.php b/inc/plugin.php index 628ae39b0..ec94433b6 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -33,7 +33,15 @@ class DokuWiki_Plugin { $parts = explode('_',get_class($this)); $info = DOKU_PLUGIN.'/'.$parts[2].'/plugin.info.txt'; if(@file_exists($info)) return confToHash($info); - trigger_error('getInfo() not implemented in '.get_class($this).' and '.$info.' not found', E_USER_WARNING); + + msg('getInfo() not implemented in '.get_class($this). + ' and '.$info.' not found.<br />This is a bug in the '. + $parts[2].' plugin and should be reported to the '. + 'plugin author.',-1); + return array( + 'date' => '0000-00-00', + 'name' => $parts[2].' plugin', + ); } // plugin introspection methods diff --git a/inc/template.php b/inc/template.php index d29e3e779..0f0fb92a0 100644 --- a/inc/template.php +++ b/inc/template.php @@ -209,14 +209,9 @@ function tpl_admin(){ } if ($plugin !== null){ - if($plugin->forAdminOnly() && !$INFO['isadmin']){ - msg('For admins only',-1); - html_admin(); - }else{ - if(!is_array($TOC)) $TOC = $plugin->getTOC(); //if TOC wasn't requested yet - if($INFO['prependTOC']) tpl_toc(); - $plugin->html(); - } + if(!is_array($TOC)) $TOC = $plugin->getTOC(); //if TOC wasn't requested yet + if($INFO['prependTOC']) tpl_toc(); + $plugin->html(); }else{ html_admin(); } |