diff options
Diffstat (limited to 'lib')
383 files changed, 1460 insertions, 299 deletions
diff --git a/lib/exe/css.php b/lib/exe/css.php index 6c1d60751..701cebaed 100644 --- a/lib/exe/css.php +++ b/lib/exe/css.php @@ -32,27 +32,28 @@ function css_out(){ global $config_cascade; global $INPUT; + // decide from where to get the template + $tpl = trim(preg_replace('/[^\w-]+/','',$INPUT->str('t'))); + if(!$tpl) $tpl = $conf['template']; + + // load style.ini + $styleini = css_styleini($tpl); + + // find mediatypes if ($INPUT->str('s') == 'feed') { $mediatypes = array('feed'); $type = 'feed'; } else { - $mediatypes = array('screen', 'all', 'print'); + $mediatypes = array_unique(array_merge(array('screen', 'all', 'print'), array_keys($styleini['stylesheets']))); $type = ''; } - // decide from where to get the template - $tpl = trim(preg_replace('/[^\w-]+/','',$INPUT->str('t'))); - if(!$tpl) $tpl = $conf['template']; - // The generated script depends on some dynamic options $cache = new cache('styles'.$_SERVER['HTTP_HOST'].$_SERVER['SERVER_PORT'].DOKU_BASE.$tpl.$type,'.css'); - // load styl.ini - $styleini = css_styleini($tpl); - // if old 'default' userstyle setting exists, make it 'screen' userstyle for backwards compatibility if (isset($config_cascade['userstyle']['default'])) { - $config_cascade['userstyle']['screen'] = $config_cascade['userstyle']['default']; + $config_cascade['userstyle']['screen'] = array($config_cascade['userstyle']['default']); } // cache influencers @@ -82,8 +83,10 @@ function css_out(){ $files[$mediatype] = array_merge($files[$mediatype], $styleini['stylesheets'][$mediatype]); } // load user styles - if(isset($config_cascade['userstyle'][$mediatype])){ - $files[$mediatype][$config_cascade['userstyle'][$mediatype]] = DOKU_BASE; + if(!empty($config_cascade['userstyle'][$mediatype])) { + foreach($config_cascade['userstyle'][$mediatype] as $userstyle) { + $files[$mediatype][$userstyle] = DOKU_BASE; + } } $cache_files = array_merge($cache_files, array_keys($files[$mediatype])); @@ -162,12 +165,15 @@ function css_out(){ * most of this function is error handling to show a nice useful error when * LESS compilation fails * - * @param $css + * @param string $css * @return string */ function css_parseless($css) { + global $conf; + $less = new lessc(); $less->importDir[] = DOKU_INC; + $less->setPreserveComments(!$conf['compress']); if (defined('DOKU_UNITTEST')){ $less->importDir[] = TMP_DIR; @@ -222,6 +228,10 @@ function css_parseless($css) { * (sans the surrounding __ and with a ini_ prefix) * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $css + * @param array $replacements array(placeholder => value) + * @return string */ function css_applystyle($css, $replacements) { // we convert ini replacements to LESS variable names @@ -250,6 +260,7 @@ function css_applystyle($css, $replacements) { * the stylesheet modes * * @author Andreas Gohr <andi@splitbrain.org> + * * @param string $tpl the used template * @return array with keys 'stylesheets' and 'replacements' */ @@ -320,6 +331,10 @@ function css_styleini($tpl) { * Amend paths used in replacement relative urls, refer FS#2879 * * @author Chris Smith <chris@jalakai.co.uk> + * + * @param array $replacements with key-value pairs + * @param string $location + * @return array */ function css_fixreplacementurls($replacements, $location) { foreach($replacements as $key => $value) { @@ -351,11 +366,11 @@ function css_interwiki(){ $iwlinks = getInterwiki(); foreach(array_keys($iwlinks) as $iw){ $class = preg_replace('/[^_\-a-z0-9]+/i','_',$iw); - if(@file_exists(DOKU_INC.'lib/images/interwiki/'.$iw.'.png')){ + if(file_exists(DOKU_INC.'lib/images/interwiki/'.$iw.'.png')){ echo "a.iw_$class {"; echo ' background-image: url('.DOKU_BASE.'lib/images/interwiki/'.$iw.'.png)'; echo '}'; - }elseif(@file_exists(DOKU_INC.'lib/images/interwiki/'.$iw.'.gif')){ + }elseif(file_exists(DOKU_INC.'lib/images/interwiki/'.$iw.'.gif')){ echo "a.iw_$class {"; echo ' background-image: url('.DOKU_BASE.'lib/images/interwiki/'.$iw.'.gif)'; echo '}'; @@ -403,6 +418,10 @@ function css_filetypes(){ /** * Loads a given file and fixes relative URLs with the * given location prefix + * + * @param string $file file system path + * @param string $location + * @return string */ function css_loadfile($file,$location=''){ $css_file = new DokuCssFile($file); @@ -418,7 +437,7 @@ class DokuCssFile { protected $filepath; // file system path to the CSS/Less file protected $location; // base url location of the CSS/Less file - private $relative_path = null; + protected $relative_path = null; public function __construct($file) { $this->filepath = $file; @@ -433,7 +452,7 @@ class DokuCssFile { * @return string the CSS/Less contents of the file */ public function load($location='') { - if (!@file_exists($this->filepath)) return ''; + if (!file_exists($this->filepath)) return ''; $css = io_readFile($this->filepath); if (!$location) return $css; @@ -451,7 +470,7 @@ class DokuCssFile { * * @return string relative file system path */ - private function getRelativePath(){ + protected function getRelativePath(){ if (is_null($this->relative_path)) { $basedir = array(DOKU_INC); @@ -501,6 +520,9 @@ class DokuCssFile { * Convert local image URLs to data URLs if the filesize is small * * Callback for preg_replace_callback + * + * @param array $match + * @return string */ function css_datauri($match){ global $conf; @@ -528,9 +550,11 @@ function css_datauri($match){ * Returns a list of possible Plugin Styles (no existance check here) * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $mediatype + * @return array */ function css_pluginstyles($mediatype='screen'){ - global $lang; $list = array(); $plugins = plugin_list(); foreach ($plugins as $p){ @@ -549,6 +573,9 @@ function css_pluginstyles($mediatype='screen'){ * Very simple CSS optimizer * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $css + * @return string */ function css_compress($css){ //strip comments through a callback @@ -585,6 +612,9 @@ function css_compress($css){ * Keeps short comments (< 5 chars) to maintain typical browser hacks * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param array $matches + * @return string */ function css_comment_cb($matches){ if(strlen($matches[2]) > 4) return ''; @@ -596,7 +626,7 @@ function css_comment_cb($matches){ * * Strips one line comments but makes sure it will not destroy url() constructs with slashes * - * @param $matches + * @param array $matches * @return string */ function css_onelinecomment_cb($matches) { diff --git a/lib/exe/detail.php b/lib/exe/detail.php index cd3f362ad..ec1a9b874 100644 --- a/lib/exe/detail.php +++ b/lib/exe/detail.php @@ -5,6 +5,7 @@ require_once(DOKU_INC.'inc/init.php'); $IMG = getID('media'); $ID = cleanID($INPUT->str('id')); +$REV = $INPUT->int('rev'); // this makes some general info available as well as the info about the // "parent" page @@ -35,8 +36,8 @@ $ERROR = false; $AUTH = auth_quickaclcheck($IMG); if($AUTH >= AUTH_READ){ // check if image exists - $SRC = mediaFN($IMG); - if(!@file_exists($SRC)){ + $SRC = mediaFN($IMG,$REV); + if(!file_exists($SRC)){ //doesn't exist! http_status(404); $ERROR = 'File not found'; diff --git a/lib/exe/indexer.php b/lib/exe/indexer.php index 3ab117736..330b8498d 100644 --- a/lib/exe/indexer.php +++ b/lib/exe/indexer.php @@ -51,8 +51,9 @@ exit; /** * Trims the recent changes cache (or imports the old changelog) as needed. * - * @param media_changes If the media changelog shall be trimmed instead of - * the page changelog + * @param bool $media_changes If the media changelog shall be trimmed instead of + * the page changelog + * @return bool * * @author Ben Coburn <btcoburn@silicodon.net> */ @@ -67,9 +68,9 @@ function runTrimRecentChanges($media_changes = false) { // Trims the recent changes cache to the last $conf['changes_days'] recent // changes or $conf['recent'] items, which ever is larger. // The trimming is only done once a day. - if (@file_exists($fn) && + if (file_exists($fn) && (@filemtime($fn.'.trimmed')+86400)<time() && - !@file_exists($fn.'_tmp')) { + !file_exists($fn.'_tmp')) { @touch($fn.'.trimmed'); io_lock($fn); $lines = file($fn); @@ -83,7 +84,7 @@ function runTrimRecentChanges($media_changes = false) { io_saveFile($fn.'_tmp', ''); // presave tmp as 2nd lock $trim_time = time() - $conf['recent_days']*86400; $out_lines = array(); - + $old_lines = array(); for ($i=0; $i<count($lines); $i++) { $log = parseChangelogLine($lines[$i]); if ($log === false) continue; // discard junk diff --git a/lib/exe/js.php b/lib/exe/js.php index bec12ef7a..3f9781e34 100644 --- a/lib/exe/js.php +++ b/lib/exe/js.php @@ -72,8 +72,10 @@ function js_out(){ // add possible plugin scripts and userscript $files = array_merge($files,js_pluginscripts()); - if(isset($config_cascade['userscript']['default'])){ - $files[] = $config_cascade['userscript']['default']; + if(!empty($config_cascade['userscript']['default'])) { + foreach($config_cascade['userscript']['default'] as $userscript) { + $files[] = $userscript; + } } $cache_files = array_merge($files, getConfigFiles('main')); @@ -154,9 +156,11 @@ function js_out(){ * Load the given file, handle include calls and print it * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $file filename path to file */ function js_load($file){ - if(!@file_exists($file)) return; + if(!file_exists($file)) return; static $loaded = array(); $data = io_readFile($file); @@ -175,7 +179,7 @@ function js_load($file){ if($ifile{0} != '/') $ifile = dirname($file).'/'.$ifile; - if(@file_exists($ifile)){ + if(file_exists($ifile)){ $idata = io_readFile($ifile); }else{ $idata = ''; @@ -189,6 +193,8 @@ function js_load($file){ * Returns a list of possible Plugin Scripts (no existance check here) * * @author Andreas Gohr <andi@splitbrain.org> + * + * @return array */ function js_pluginscripts(){ $list = array(); @@ -206,6 +212,8 @@ function js_pluginscripts(){ * - Nothing is returned for plugins without an entry for $lang['js'] * * @author Gabriel Birke <birke@d-scribe.de> + * + * @return array */ function js_pluginstrings() { global $conf; @@ -213,10 +221,10 @@ function js_pluginstrings() { $plugins = plugin_list(); foreach ($plugins as $p){ if (isset($lang)) unset($lang); - if (@file_exists(DOKU_PLUGIN."$p/lang/en/lang.php")) { + if (file_exists(DOKU_PLUGIN."$p/lang/en/lang.php")) { include DOKU_PLUGIN."$p/lang/en/lang.php"; } - if (isset($conf['lang']) && $conf['lang']!='en' && @file_exists(DOKU_PLUGIN."$p/lang/".$conf['lang']."/lang.php")) { + if (isset($conf['lang']) && $conf['lang']!='en' && file_exists(DOKU_PLUGIN."$p/lang/".$conf['lang']."/lang.php")) { include DOKU_PLUGIN."$p/lang/".$conf['lang']."/lang.php"; } if (isset($lang['js'])) { @@ -231,14 +239,16 @@ function js_pluginstrings() { * * - $lang['js'] must be an array. * - Nothing is returned for template without an entry for $lang['js'] + * + * @return array */ function js_templatestrings() { global $conf; $templatestrings = array(); - if (@file_exists(tpl_incdir()."lang/en/lang.php")) { + if (file_exists(tpl_incdir()."lang/en/lang.php")) { include tpl_incdir()."lang/en/lang.php"; } - if (isset($conf['lang']) && $conf['lang']!='en' && @file_exists(tpl_incdir()."lang/".$conf['lang']."/lang.php")) { + if (isset($conf['lang']) && $conf['lang']!='en' && file_exists(tpl_incdir()."lang/".$conf['lang']."/lang.php")) { include tpl_incdir()."lang/".$conf['lang']."/lang.php"; } if (isset($lang['js'])) { @@ -252,6 +262,9 @@ function js_templatestrings() { * as newline * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $string + * @return string */ function js_escape($string){ return str_replace('\\\\n','\\n',addslashes($string)); @@ -261,6 +274,8 @@ function js_escape($string){ * Adds the given JavaScript code to the window.onload() event * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $func */ function js_runonstart($func){ echo "jQuery(function(){ $func; });".NL; @@ -275,6 +290,9 @@ function js_runonstart($func){ * @author Nick Galbreath <nickg@modp.com> * @author Andreas Gohr <andi@splitbrain.org> * @link http://code.google.com/p/jsstrip/ + * + * @param string $s + * @return string */ function js_compress($s){ $s = ltrim($s); // strip all initial whitespace @@ -289,7 +307,11 @@ function js_compress($s){ // items that don't need spaces next to them $chars = "^&|!+\-*\/%=\?:;,{}()<>% \t\n\r'\"[]"; - $regex_starters = array("(", "=", "[", "," , ":", "!"); + // items which need a space if the sign before and after whitespace is equal. + // E.g. '+ ++' may not be compressed to '+++' --> syntax error. + $ops = "+-"; + + $regex_starters = array("(", "=", "[", "," , ":", "!", "&", "|"); $whitespaces_chars = array(" ", "\t", "\n", "\r", "\0", "\x0B"); @@ -389,19 +411,27 @@ function js_compress($s){ // whitespaces if( $ch == ' ' || $ch == "\r" || $ch == "\n" || $ch == "\t" ){ - // leading spaces - if($i+1 < $slen && (strpos($chars,$s[$i+1]) !== false)){ - $i = $i + 1; - continue; - } - // trailing spaces - // if this ch is space AND the last char processed - // is special, then skip the space $lch = substr($result,-1); - if($lch && (strpos($chars,$lch) !== false)){ - $i = $i + 1; - continue; + + // Only consider deleting whitespace if the signs before and after + // are not equal and are not an operator which may not follow itself. + if ((!$lch || $s[$i+1] == ' ') + || $lch != $s[$i+1] + || strpos($ops,$s[$i+1]) === false) { + // leading spaces + if($i+1 < $slen && (strpos($chars,$s[$i+1]) !== false)){ + $i = $i + 1; + continue; + } + // trailing spaces + // if this ch is space AND the last char processed + // is special, then skip the space + if($lch && (strpos($chars,$lch) !== false)){ + $i = $i + 1; + continue; + } } + // else after all of this convert the "whitespace" to // a single space. It will get appended below $ch = ' '; diff --git a/lib/exe/xmlrpc.php b/lib/exe/xmlrpc.php index c09daa17c..61a68281f 100644 --- a/lib/exe/xmlrpc.php +++ b/lib/exe/xmlrpc.php @@ -23,6 +23,11 @@ class dokuwiki_xmlrpc_server extends IXR_Server { $this->IXR_Server(); } + /** + * @param string $methodname + * @param array $args + * @return IXR_Error|mixed + */ function call($methodname, $args){ try { $result = $this->remote->call($methodname, $args); @@ -40,10 +45,18 @@ class dokuwiki_xmlrpc_server extends IXR_Server { } } + /** + * @param string|int $data iso date(yyyy[-]mm[-]dd[ hh:mm[:ss]]) or timestamp + * @return IXR_Date + */ function toDate($data) { return new IXR_Date($data); } + /** + * @param string $data + * @return IXR_Base64 + */ function toFile($data) { return new IXR_Base64($data); } diff --git a/lib/images/admin/acl.png b/lib/images/admin/acl.png Binary files differindex c8f610c12..542e10899 100644 --- a/lib/images/admin/acl.png +++ b/lib/images/admin/acl.png diff --git a/lib/images/admin/config.png b/lib/images/admin/config.png Binary files differindex 3ec3923d1..679a67372 100644 --- a/lib/images/admin/config.png +++ b/lib/images/admin/config.png diff --git a/lib/images/admin/plugin.png b/lib/images/admin/plugin.png Binary files differindex f71124e5c..27bd15410 100644 --- a/lib/images/admin/plugin.png +++ b/lib/images/admin/plugin.png diff --git a/lib/images/admin/popularity.png b/lib/images/admin/popularity.png Binary files differindex 19392367a..e18a8cb44 100644 --- a/lib/images/admin/popularity.png +++ b/lib/images/admin/popularity.png diff --git a/lib/images/admin/revert.png b/lib/images/admin/revert.png Binary files differindex 5304f1b76..c74c7928b 100644 --- a/lib/images/admin/revert.png +++ b/lib/images/admin/revert.png diff --git a/lib/images/admin/usermanager.png b/lib/images/admin/usermanager.png Binary files differindex 898544ce9..e6f72e077 100644 --- a/lib/images/admin/usermanager.png +++ b/lib/images/admin/usermanager.png diff --git a/lib/images/bullet.png b/lib/images/bullet.png Binary files differindex 5e557b334..b8ec60c74 100644 --- a/lib/images/bullet.png +++ b/lib/images/bullet.png diff --git a/lib/images/closed-rtl.png b/lib/images/closed-rtl.png Binary files differindex caa027e34..016a3c370 100644 --- a/lib/images/closed-rtl.png +++ b/lib/images/closed-rtl.png diff --git a/lib/images/closed.png b/lib/images/closed.png Binary files differindex e3bd0f9e9..927bfc57f 100644 --- a/lib/images/closed.png +++ b/lib/images/closed.png diff --git a/lib/images/diff.png b/lib/images/diff.png Binary files differindex 657b10999..04fab07b7 100644 --- a/lib/images/diff.png +++ b/lib/images/diff.png diff --git a/lib/images/email.png b/lib/images/email.png Binary files differindex d1d4a5fd5..575b83142 100644 --- a/lib/images/email.png +++ b/lib/images/email.png diff --git a/lib/images/error.png b/lib/images/error.png Binary files differindex 7bd84f7a3..da0692429 100644 --- a/lib/images/error.png +++ b/lib/images/error.png diff --git a/lib/images/external-link.png b/lib/images/external-link.png Binary files differindex a4d5de17c..fecac61c9 100644 --- a/lib/images/external-link.png +++ b/lib/images/external-link.png diff --git a/lib/images/fileicons/32x32/7z.png b/lib/images/fileicons/32x32/7z.png Binary files differindex 9ba7da94a..2537cb96d 100644 --- a/lib/images/fileicons/32x32/7z.png +++ b/lib/images/fileicons/32x32/7z.png diff --git a/lib/images/fileicons/32x32/asm.png b/lib/images/fileicons/32x32/asm.png Binary files differindex f1a1f322b..17e74d0b2 100644 --- a/lib/images/fileicons/32x32/asm.png +++ b/lib/images/fileicons/32x32/asm.png diff --git a/lib/images/fileicons/32x32/bash.png b/lib/images/fileicons/32x32/bash.png Binary files differindex c28404ed1..a31ee688b 100644 --- a/lib/images/fileicons/32x32/bash.png +++ b/lib/images/fileicons/32x32/bash.png diff --git a/lib/images/fileicons/32x32/bz2.png b/lib/images/fileicons/32x32/bz2.png Binary files differindex 7be9b7c06..c78031652 100644 --- a/lib/images/fileicons/32x32/bz2.png +++ b/lib/images/fileicons/32x32/bz2.png diff --git a/lib/images/fileicons/32x32/c.png b/lib/images/fileicons/32x32/c.png Binary files differindex 0a01f8f3a..d8032d075 100644 --- a/lib/images/fileicons/32x32/c.png +++ b/lib/images/fileicons/32x32/c.png diff --git a/lib/images/fileicons/32x32/cc.png b/lib/images/fileicons/32x32/cc.png Binary files differindex b09b3357f..241ebd4e8 100644 --- a/lib/images/fileicons/32x32/cc.png +++ b/lib/images/fileicons/32x32/cc.png diff --git a/lib/images/fileicons/32x32/conf.png b/lib/images/fileicons/32x32/conf.png Binary files differindex 91a8a10de..9797c2ad8 100644 --- a/lib/images/fileicons/32x32/conf.png +++ b/lib/images/fileicons/32x32/conf.png diff --git a/lib/images/fileicons/32x32/cpp.png b/lib/images/fileicons/32x32/cpp.png Binary files differindex 1ce35422c..128906528 100644 --- a/lib/images/fileicons/32x32/cpp.png +++ b/lib/images/fileicons/32x32/cpp.png diff --git a/lib/images/fileicons/32x32/cs.png b/lib/images/fileicons/32x32/cs.png Binary files differindex d300f7551..6c2aae272 100644 --- a/lib/images/fileicons/32x32/cs.png +++ b/lib/images/fileicons/32x32/cs.png diff --git a/lib/images/fileicons/32x32/csh.png b/lib/images/fileicons/32x32/csh.png Binary files differindex 72ecbcc52..e43584c7e 100644 --- a/lib/images/fileicons/32x32/csh.png +++ b/lib/images/fileicons/32x32/csh.png diff --git a/lib/images/fileicons/32x32/css.png b/lib/images/fileicons/32x32/css.png Binary files differindex 638957637..786f30471 100644 --- a/lib/images/fileicons/32x32/css.png +++ b/lib/images/fileicons/32x32/css.png diff --git a/lib/images/fileicons/32x32/csv.png b/lib/images/fileicons/32x32/csv.png Binary files differindex 3ee42f047..e5cdbf940 100644 --- a/lib/images/fileicons/32x32/csv.png +++ b/lib/images/fileicons/32x32/csv.png diff --git a/lib/images/fileicons/32x32/deb.png b/lib/images/fileicons/32x32/deb.png Binary files differindex 8d625ccf2..e2828a347 100644 --- a/lib/images/fileicons/32x32/deb.png +++ b/lib/images/fileicons/32x32/deb.png diff --git a/lib/images/fileicons/32x32/diff.png b/lib/images/fileicons/32x32/diff.png Binary files differindex 4dd98e7cc..9e413cb6e 100644 --- a/lib/images/fileicons/32x32/diff.png +++ b/lib/images/fileicons/32x32/diff.png diff --git a/lib/images/fileicons/32x32/doc.png b/lib/images/fileicons/32x32/doc.png Binary files differindex 8369c1f73..43ec35416 100644 --- a/lib/images/fileicons/32x32/doc.png +++ b/lib/images/fileicons/32x32/doc.png diff --git a/lib/images/fileicons/32x32/docx.png b/lib/images/fileicons/32x32/docx.png Binary files differindex ce5dfb3d3..a25f260c6 100644 --- a/lib/images/fileicons/32x32/docx.png +++ b/lib/images/fileicons/32x32/docx.png diff --git a/lib/images/fileicons/32x32/file.png b/lib/images/fileicons/32x32/file.png Binary files differindex 52318f6e2..7f6d51a09 100644 --- a/lib/images/fileicons/32x32/file.png +++ b/lib/images/fileicons/32x32/file.png diff --git a/lib/images/fileicons/32x32/gif.png b/lib/images/fileicons/32x32/gif.png Binary files differindex e39af08cc..dde2d8414 100644 --- a/lib/images/fileicons/32x32/gif.png +++ b/lib/images/fileicons/32x32/gif.png diff --git a/lib/images/fileicons/32x32/gz.png b/lib/images/fileicons/32x32/gz.png Binary files differindex 573ce7afd..5bddffb6d 100644 --- a/lib/images/fileicons/32x32/gz.png +++ b/lib/images/fileicons/32x32/gz.png diff --git a/lib/images/fileicons/32x32/h.png b/lib/images/fileicons/32x32/h.png Binary files differindex 27c8ceaf3..5c169a33b 100644 --- a/lib/images/fileicons/32x32/h.png +++ b/lib/images/fileicons/32x32/h.png diff --git a/lib/images/fileicons/32x32/hpp.png b/lib/images/fileicons/32x32/hpp.png Binary files differindex 04876a5d5..128110d5b 100644 --- a/lib/images/fileicons/32x32/hpp.png +++ b/lib/images/fileicons/32x32/hpp.png diff --git a/lib/images/fileicons/32x32/htm.png b/lib/images/fileicons/32x32/htm.png Binary files differindex ec4f15ac6..79096dc7e 100644 --- a/lib/images/fileicons/32x32/htm.png +++ b/lib/images/fileicons/32x32/htm.png diff --git a/lib/images/fileicons/32x32/html.png b/lib/images/fileicons/32x32/html.png Binary files differindex ec4f15ac6..79096dc7e 100644 --- a/lib/images/fileicons/32x32/html.png +++ b/lib/images/fileicons/32x32/html.png diff --git a/lib/images/fileicons/32x32/ico.png b/lib/images/fileicons/32x32/ico.png Binary files differindex 0a219e6f2..60f73bd38 100644 --- a/lib/images/fileicons/32x32/ico.png +++ b/lib/images/fileicons/32x32/ico.png diff --git a/lib/images/fileicons/32x32/java.png b/lib/images/fileicons/32x32/java.png Binary files differindex ee9cc4ccb..1d8694996 100644 --- a/lib/images/fileicons/32x32/java.png +++ b/lib/images/fileicons/32x32/java.png diff --git a/lib/images/fileicons/32x32/jpeg.png b/lib/images/fileicons/32x32/jpeg.png Binary files differindex 5fb71dd73..4b5c425ad 100644 --- a/lib/images/fileicons/32x32/jpeg.png +++ b/lib/images/fileicons/32x32/jpeg.png diff --git a/lib/images/fileicons/32x32/jpg.png b/lib/images/fileicons/32x32/jpg.png Binary files differindex 5fb71dd73..4b5c425ad 100644 --- a/lib/images/fileicons/32x32/jpg.png +++ b/lib/images/fileicons/32x32/jpg.png diff --git a/lib/images/fileicons/32x32/js.png b/lib/images/fileicons/32x32/js.png Binary files differindex 9bbbfb709..5a8dabe81 100644 --- a/lib/images/fileicons/32x32/js.png +++ b/lib/images/fileicons/32x32/js.png diff --git a/lib/images/fileicons/32x32/json.png b/lib/images/fileicons/32x32/json.png Binary files differindex 583ece683..e4a55e634 100644 --- a/lib/images/fileicons/32x32/json.png +++ b/lib/images/fileicons/32x32/json.png diff --git a/lib/images/fileicons/32x32/lua.png b/lib/images/fileicons/32x32/lua.png Binary files differindex 9e8fc9517..c8e0bf208 100644 --- a/lib/images/fileicons/32x32/lua.png +++ b/lib/images/fileicons/32x32/lua.png diff --git a/lib/images/fileicons/32x32/mp3.png b/lib/images/fileicons/32x32/mp3.png Binary files differindex 1acd83276..9bf169553 100644 --- a/lib/images/fileicons/32x32/mp3.png +++ b/lib/images/fileicons/32x32/mp3.png diff --git a/lib/images/fileicons/32x32/mp4.png b/lib/images/fileicons/32x32/mp4.png Binary files differindex 03db6f450..071abc324 100644 --- a/lib/images/fileicons/32x32/mp4.png +++ b/lib/images/fileicons/32x32/mp4.png diff --git a/lib/images/fileicons/32x32/odc.png b/lib/images/fileicons/32x32/odc.png Binary files differindex 9a34f2129..3ad6a3c2d 100644 --- a/lib/images/fileicons/32x32/odc.png +++ b/lib/images/fileicons/32x32/odc.png diff --git a/lib/images/fileicons/32x32/odf.png b/lib/images/fileicons/32x32/odf.png Binary files differindex e3b4333ad..8dd89eac6 100644 --- a/lib/images/fileicons/32x32/odf.png +++ b/lib/images/fileicons/32x32/odf.png diff --git a/lib/images/fileicons/32x32/odg.png b/lib/images/fileicons/32x32/odg.png Binary files differindex c3b192b2d..7020d1396 100644 --- a/lib/images/fileicons/32x32/odg.png +++ b/lib/images/fileicons/32x32/odg.png diff --git a/lib/images/fileicons/32x32/odi.png b/lib/images/fileicons/32x32/odi.png Binary files differindex 6baa69407..9a08a426a 100644 --- a/lib/images/fileicons/32x32/odi.png +++ b/lib/images/fileicons/32x32/odi.png diff --git a/lib/images/fileicons/32x32/odp.png b/lib/images/fileicons/32x32/odp.png Binary files differindex 8e09dd6e4..e6b538d27 100644 --- a/lib/images/fileicons/32x32/odp.png +++ b/lib/images/fileicons/32x32/odp.png diff --git a/lib/images/fileicons/32x32/ods.png b/lib/images/fileicons/32x32/ods.png Binary files differindex 90892f3d4..cf4a226ff 100644 --- a/lib/images/fileicons/32x32/ods.png +++ b/lib/images/fileicons/32x32/ods.png diff --git a/lib/images/fileicons/32x32/odt.png b/lib/images/fileicons/32x32/odt.png Binary files differindex 22ec1fffb..1eae19cc7 100644 --- a/lib/images/fileicons/32x32/odt.png +++ b/lib/images/fileicons/32x32/odt.png diff --git a/lib/images/fileicons/32x32/ogg.png b/lib/images/fileicons/32x32/ogg.png Binary files differindex f988fabc3..d7b0553f6 100644 --- a/lib/images/fileicons/32x32/ogg.png +++ b/lib/images/fileicons/32x32/ogg.png diff --git a/lib/images/fileicons/32x32/ogv.png b/lib/images/fileicons/32x32/ogv.png Binary files differindex 1083455fb..4fdedbaee 100644 --- a/lib/images/fileicons/32x32/ogv.png +++ b/lib/images/fileicons/32x32/ogv.png diff --git a/lib/images/fileicons/32x32/pas.png b/lib/images/fileicons/32x32/pas.png Binary files differindex c2c05d2d1..8d2999e98 100644 --- a/lib/images/fileicons/32x32/pas.png +++ b/lib/images/fileicons/32x32/pas.png diff --git a/lib/images/fileicons/32x32/pdf.png b/lib/images/fileicons/32x32/pdf.png Binary files differindex 0efa0dc31..09ae62e6a 100644 --- a/lib/images/fileicons/32x32/pdf.png +++ b/lib/images/fileicons/32x32/pdf.png diff --git a/lib/images/fileicons/32x32/php.png b/lib/images/fileicons/32x32/php.png Binary files differindex 8f3c84e32..1f4cabf6f 100644 --- a/lib/images/fileicons/32x32/php.png +++ b/lib/images/fileicons/32x32/php.png diff --git a/lib/images/fileicons/32x32/pl.png b/lib/images/fileicons/32x32/pl.png Binary files differindex 88aa2723f..038e9f3a7 100644 --- a/lib/images/fileicons/32x32/pl.png +++ b/lib/images/fileicons/32x32/pl.png diff --git a/lib/images/fileicons/32x32/png.png b/lib/images/fileicons/32x32/png.png Binary files differindex 0ecd29691..e3ea1c3a0 100644 --- a/lib/images/fileicons/32x32/png.png +++ b/lib/images/fileicons/32x32/png.png diff --git a/lib/images/fileicons/32x32/ppt.png b/lib/images/fileicons/32x32/ppt.png Binary files differindex 84b523a23..acee94571 100644 --- a/lib/images/fileicons/32x32/ppt.png +++ b/lib/images/fileicons/32x32/ppt.png diff --git a/lib/images/fileicons/32x32/pptx.png b/lib/images/fileicons/32x32/pptx.png Binary files differindex 1446cf4de..b57b09173 100644 --- a/lib/images/fileicons/32x32/pptx.png +++ b/lib/images/fileicons/32x32/pptx.png diff --git a/lib/images/fileicons/32x32/ps.png b/lib/images/fileicons/32x32/ps.png Binary files differindex e1a74988d..523a0be30 100644 --- a/lib/images/fileicons/32x32/ps.png +++ b/lib/images/fileicons/32x32/ps.png diff --git a/lib/images/fileicons/32x32/py.png b/lib/images/fileicons/32x32/py.png Binary files differindex cf6e412f0..ae6e06ad5 100644 --- a/lib/images/fileicons/32x32/py.png +++ b/lib/images/fileicons/32x32/py.png diff --git a/lib/images/fileicons/32x32/rar.png b/lib/images/fileicons/32x32/rar.png Binary files differindex 4af2a4d46..5b1cfcbee 100644 --- a/lib/images/fileicons/32x32/rar.png +++ b/lib/images/fileicons/32x32/rar.png diff --git a/lib/images/fileicons/32x32/rb.png b/lib/images/fileicons/32x32/rb.png Binary files differindex b0dfd8980..398f20802 100644 --- a/lib/images/fileicons/32x32/rb.png +++ b/lib/images/fileicons/32x32/rb.png diff --git a/lib/images/fileicons/32x32/rpm.png b/lib/images/fileicons/32x32/rpm.png Binary files differindex 2ec5f4e1b..c66a90741 100644 --- a/lib/images/fileicons/32x32/rpm.png +++ b/lib/images/fileicons/32x32/rpm.png diff --git a/lib/images/fileicons/32x32/rtf.png b/lib/images/fileicons/32x32/rtf.png Binary files differindex 82add4fd7..43182f349 100644 --- a/lib/images/fileicons/32x32/rtf.png +++ b/lib/images/fileicons/32x32/rtf.png diff --git a/lib/images/fileicons/32x32/sh.png b/lib/images/fileicons/32x32/sh.png Binary files differindex 93c093ea4..52e3f952c 100644 --- a/lib/images/fileicons/32x32/sh.png +++ b/lib/images/fileicons/32x32/sh.png diff --git a/lib/images/fileicons/32x32/sql.png b/lib/images/fileicons/32x32/sql.png Binary files differindex f6436e725..bb23e56b9 100644 --- a/lib/images/fileicons/32x32/sql.png +++ b/lib/images/fileicons/32x32/sql.png diff --git a/lib/images/fileicons/32x32/swf.png b/lib/images/fileicons/32x32/swf.png Binary files differindex b43642905..be8f5460e 100644 --- a/lib/images/fileicons/32x32/swf.png +++ b/lib/images/fileicons/32x32/swf.png diff --git a/lib/images/fileicons/32x32/sxc.png b/lib/images/fileicons/32x32/sxc.png Binary files differindex 50676be6a..cc45ffa8e 100644 --- a/lib/images/fileicons/32x32/sxc.png +++ b/lib/images/fileicons/32x32/sxc.png diff --git a/lib/images/fileicons/32x32/sxd.png b/lib/images/fileicons/32x32/sxd.png Binary files differindex f715a8ff0..26f44c215 100644 --- a/lib/images/fileicons/32x32/sxd.png +++ b/lib/images/fileicons/32x32/sxd.png diff --git a/lib/images/fileicons/32x32/sxi.png b/lib/images/fileicons/32x32/sxi.png Binary files differindex 3d9f31d3b..62e90bc97 100644 --- a/lib/images/fileicons/32x32/sxi.png +++ b/lib/images/fileicons/32x32/sxi.png diff --git a/lib/images/fileicons/32x32/sxw.png b/lib/images/fileicons/32x32/sxw.png Binary files differindex bd8ab1436..5196307df 100644 --- a/lib/images/fileicons/32x32/sxw.png +++ b/lib/images/fileicons/32x32/sxw.png diff --git a/lib/images/fileicons/32x32/tar.png b/lib/images/fileicons/32x32/tar.png Binary files differindex 4a420a22a..8eb0ef489 100644 --- a/lib/images/fileicons/32x32/tar.png +++ b/lib/images/fileicons/32x32/tar.png diff --git a/lib/images/fileicons/32x32/tgz.png b/lib/images/fileicons/32x32/tgz.png Binary files differindex 8cf6af41a..77faacb92 100644 --- a/lib/images/fileicons/32x32/tgz.png +++ b/lib/images/fileicons/32x32/tgz.png diff --git a/lib/images/fileicons/32x32/txt.png b/lib/images/fileicons/32x32/txt.png Binary files differindex d9ff7d595..5d09e3c93 100644 --- a/lib/images/fileicons/32x32/txt.png +++ b/lib/images/fileicons/32x32/txt.png diff --git a/lib/images/fileicons/32x32/wav.png b/lib/images/fileicons/32x32/wav.png Binary files differindex c39a8445f..37b871be4 100644 --- a/lib/images/fileicons/32x32/wav.png +++ b/lib/images/fileicons/32x32/wav.png diff --git a/lib/images/fileicons/32x32/webm.png b/lib/images/fileicons/32x32/webm.png Binary files differindex 99b9c87b2..9044845b9 100644 --- a/lib/images/fileicons/32x32/webm.png +++ b/lib/images/fileicons/32x32/webm.png diff --git a/lib/images/fileicons/32x32/xls.png b/lib/images/fileicons/32x32/xls.png Binary files differindex 7447d9cdf..1c21a6ed3 100644 --- a/lib/images/fileicons/32x32/xls.png +++ b/lib/images/fileicons/32x32/xls.png diff --git a/lib/images/fileicons/32x32/xlsx.png b/lib/images/fileicons/32x32/xlsx.png Binary files differindex 920217267..cba5937ab 100644 --- a/lib/images/fileicons/32x32/xlsx.png +++ b/lib/images/fileicons/32x32/xlsx.png diff --git a/lib/images/fileicons/32x32/xml.png b/lib/images/fileicons/32x32/xml.png Binary files differindex 4ea3b1f6c..8eee58398 100644 --- a/lib/images/fileicons/32x32/xml.png +++ b/lib/images/fileicons/32x32/xml.png diff --git a/lib/images/fileicons/32x32/zip.png b/lib/images/fileicons/32x32/zip.png Binary files differindex f07d18e2c..0ce83b6bc 100644 --- a/lib/images/fileicons/32x32/zip.png +++ b/lib/images/fileicons/32x32/zip.png diff --git a/lib/images/fileicons/7z.png b/lib/images/fileicons/7z.png Binary files differindex 037cd73a0..fa6abe35b 100644 --- a/lib/images/fileicons/7z.png +++ b/lib/images/fileicons/7z.png diff --git a/lib/images/fileicons/asm.png b/lib/images/fileicons/asm.png Binary files differindex 1281e12b8..c22c451a1 100644 --- a/lib/images/fileicons/asm.png +++ b/lib/images/fileicons/asm.png diff --git a/lib/images/fileicons/bash.png b/lib/images/fileicons/bash.png Binary files differindex 257584649..f352cfdb1 100644 --- a/lib/images/fileicons/bash.png +++ b/lib/images/fileicons/bash.png diff --git a/lib/images/fileicons/bz2.png b/lib/images/fileicons/bz2.png Binary files differindex a4bcc70a1..a1b048fc2 100644 --- a/lib/images/fileicons/bz2.png +++ b/lib/images/fileicons/bz2.png diff --git a/lib/images/fileicons/c.png b/lib/images/fileicons/c.png Binary files differindex f0d4e9aa1..51d9c7f15 100644 --- a/lib/images/fileicons/c.png +++ b/lib/images/fileicons/c.png diff --git a/lib/images/fileicons/cc.png b/lib/images/fileicons/cc.png Binary files differindex e6f4c6457..8aeae79eb 100644 --- a/lib/images/fileicons/cc.png +++ b/lib/images/fileicons/cc.png diff --git a/lib/images/fileicons/conf.png b/lib/images/fileicons/conf.png Binary files differindex 94ace02cf..c845d4962 100644 --- a/lib/images/fileicons/conf.png +++ b/lib/images/fileicons/conf.png diff --git a/lib/images/fileicons/cpp.png b/lib/images/fileicons/cpp.png Binary files differindex 4027e4beb..1a04c3291 100644 --- a/lib/images/fileicons/cpp.png +++ b/lib/images/fileicons/cpp.png diff --git a/lib/images/fileicons/cs.png b/lib/images/fileicons/cs.png Binary files differindex 31b7f7661..740725a30 100644 --- a/lib/images/fileicons/cs.png +++ b/lib/images/fileicons/cs.png diff --git a/lib/images/fileicons/csh.png b/lib/images/fileicons/csh.png Binary files differindex cc21e7995..c0131c5f4 100644 --- a/lib/images/fileicons/csh.png +++ b/lib/images/fileicons/csh.png diff --git a/lib/images/fileicons/css.png b/lib/images/fileicons/css.png Binary files differindex abd16fa8e..89ac36470 100644 --- a/lib/images/fileicons/css.png +++ b/lib/images/fileicons/css.png diff --git a/lib/images/fileicons/csv.png b/lib/images/fileicons/csv.png Binary files differindex af37ba577..837ae295f 100644 --- a/lib/images/fileicons/csv.png +++ b/lib/images/fileicons/csv.png diff --git a/lib/images/fileicons/deb.png b/lib/images/fileicons/deb.png Binary files differindex 9eb29019b..1db6fa5b8 100644 --- a/lib/images/fileicons/deb.png +++ b/lib/images/fileicons/deb.png diff --git a/lib/images/fileicons/diff.png b/lib/images/fileicons/diff.png Binary files differindex 1775da014..03e9af94d 100644 --- a/lib/images/fileicons/diff.png +++ b/lib/images/fileicons/diff.png diff --git a/lib/images/fileicons/doc.png b/lib/images/fileicons/doc.png Binary files differindex 925494576..dcc070f49 100644 --- a/lib/images/fileicons/doc.png +++ b/lib/images/fileicons/doc.png diff --git a/lib/images/fileicons/docx.png b/lib/images/fileicons/docx.png Binary files differindex 5bae13f9e..1a98a8d4f 100644 --- a/lib/images/fileicons/docx.png +++ b/lib/images/fileicons/docx.png diff --git a/lib/images/fileicons/file.png b/lib/images/fileicons/file.png Binary files differindex 8f31d38ac..54fe8abda 100644 --- a/lib/images/fileicons/file.png +++ b/lib/images/fileicons/file.png diff --git a/lib/images/fileicons/gif.png b/lib/images/fileicons/gif.png Binary files differindex bcbb8366b..38bdbf2dc 100644 --- a/lib/images/fileicons/gif.png +++ b/lib/images/fileicons/gif.png diff --git a/lib/images/fileicons/gz.png b/lib/images/fileicons/gz.png Binary files differindex 0a0a4b94f..422693a39 100644 --- a/lib/images/fileicons/gz.png +++ b/lib/images/fileicons/gz.png diff --git a/lib/images/fileicons/h.png b/lib/images/fileicons/h.png Binary files differindex 4afe8f84f..d65f2f507 100644 --- a/lib/images/fileicons/h.png +++ b/lib/images/fileicons/h.png diff --git a/lib/images/fileicons/hpp.png b/lib/images/fileicons/hpp.png Binary files differindex 3ee7583d2..6d314f5c9 100644 --- a/lib/images/fileicons/hpp.png +++ b/lib/images/fileicons/hpp.png diff --git a/lib/images/fileicons/htm.png b/lib/images/fileicons/htm.png Binary files differindex 02e81932b..f45847f7e 100644 --- a/lib/images/fileicons/htm.png +++ b/lib/images/fileicons/htm.png diff --git a/lib/images/fileicons/html.png b/lib/images/fileicons/html.png Binary files differindex 02e81932b..f45847f7e 100644 --- a/lib/images/fileicons/html.png +++ b/lib/images/fileicons/html.png diff --git a/lib/images/fileicons/ico.png b/lib/images/fileicons/ico.png Binary files differindex 93343717c..38aa34b2c 100644 --- a/lib/images/fileicons/ico.png +++ b/lib/images/fileicons/ico.png diff --git a/lib/images/fileicons/java.png b/lib/images/fileicons/java.png Binary files differindex cf6f5b4f5..0c62347f5 100644 --- a/lib/images/fileicons/java.png +++ b/lib/images/fileicons/java.png diff --git a/lib/images/fileicons/jpeg.png b/lib/images/fileicons/jpeg.png Binary files differindex 29dea5761..e446dd410 100644 --- a/lib/images/fileicons/jpeg.png +++ b/lib/images/fileicons/jpeg.png diff --git a/lib/images/fileicons/jpg.png b/lib/images/fileicons/jpg.png Binary files differindex 29dea5761..e446dd410 100644 --- a/lib/images/fileicons/jpg.png +++ b/lib/images/fileicons/jpg.png diff --git a/lib/images/fileicons/js.png b/lib/images/fileicons/js.png Binary files differindex 16e3f9538..bee428f20 100644 --- a/lib/images/fileicons/js.png +++ b/lib/images/fileicons/js.png diff --git a/lib/images/fileicons/json.png b/lib/images/fileicons/json.png Binary files differindex 96611cb53..4d0a3cfb5 100644 --- a/lib/images/fileicons/json.png +++ b/lib/images/fileicons/json.png diff --git a/lib/images/fileicons/lua.png b/lib/images/fileicons/lua.png Binary files differindex 81fdeea40..fcebe3d02 100644 --- a/lib/images/fileicons/lua.png +++ b/lib/images/fileicons/lua.png diff --git a/lib/images/fileicons/mp3.png b/lib/images/fileicons/mp3.png Binary files differindex 7c6d37184..2be976f9c 100644 --- a/lib/images/fileicons/mp3.png +++ b/lib/images/fileicons/mp3.png diff --git a/lib/images/fileicons/mp4.png b/lib/images/fileicons/mp4.png Binary files differindex ee5b91150..dc6fd0022 100644 --- a/lib/images/fileicons/mp4.png +++ b/lib/images/fileicons/mp4.png diff --git a/lib/images/fileicons/odc.png b/lib/images/fileicons/odc.png Binary files differindex 331140552..bf3b3a104 100644 --- a/lib/images/fileicons/odc.png +++ b/lib/images/fileicons/odc.png diff --git a/lib/images/fileicons/odf.png b/lib/images/fileicons/odf.png Binary files differindex eccae9e20..fcfc58f76 100644 --- a/lib/images/fileicons/odf.png +++ b/lib/images/fileicons/odf.png diff --git a/lib/images/fileicons/odg.png b/lib/images/fileicons/odg.png Binary files differindex 5224425e6..0a8196cbf 100644 --- a/lib/images/fileicons/odg.png +++ b/lib/images/fileicons/odg.png diff --git a/lib/images/fileicons/odi.png b/lib/images/fileicons/odi.png Binary files differindex b57fd974d..0fc8508ad 100644 --- a/lib/images/fileicons/odi.png +++ b/lib/images/fileicons/odi.png diff --git a/lib/images/fileicons/odp.png b/lib/images/fileicons/odp.png Binary files differindex 81d1023c0..75b1db8e1 100644 --- a/lib/images/fileicons/odp.png +++ b/lib/images/fileicons/odp.png diff --git a/lib/images/fileicons/ods.png b/lib/images/fileicons/ods.png Binary files differindex 77e6d5366..2017426bd 100644 --- a/lib/images/fileicons/ods.png +++ b/lib/images/fileicons/ods.png diff --git a/lib/images/fileicons/odt.png b/lib/images/fileicons/odt.png Binary files differindex 8490eec74..6f8fae438 100644 --- a/lib/images/fileicons/odt.png +++ b/lib/images/fileicons/odt.png diff --git a/lib/images/fileicons/ogg.png b/lib/images/fileicons/ogg.png Binary files differindex 38f615c99..8bb50800e 100644 --- a/lib/images/fileicons/ogg.png +++ b/lib/images/fileicons/ogg.png diff --git a/lib/images/fileicons/ogv.png b/lib/images/fileicons/ogv.png Binary files differindex a937dfc4c..e6b65ac60 100644 --- a/lib/images/fileicons/ogv.png +++ b/lib/images/fileicons/ogv.png diff --git a/lib/images/fileicons/pas.png b/lib/images/fileicons/pas.png Binary files differindex 0c14372d0..19f0a3c6c 100644 --- a/lib/images/fileicons/pas.png +++ b/lib/images/fileicons/pas.png diff --git a/lib/images/fileicons/pdf.png b/lib/images/fileicons/pdf.png Binary files differindex 1bc154641..42fbfd2bb 100644 --- a/lib/images/fileicons/pdf.png +++ b/lib/images/fileicons/pdf.png diff --git a/lib/images/fileicons/php.png b/lib/images/fileicons/php.png Binary files differindex 2deb5d3b1..de0d8eeb9 100644 --- a/lib/images/fileicons/php.png +++ b/lib/images/fileicons/php.png diff --git a/lib/images/fileicons/pl.png b/lib/images/fileicons/pl.png Binary files differindex a4fa92203..d95513d25 100644 --- a/lib/images/fileicons/pl.png +++ b/lib/images/fileicons/pl.png diff --git a/lib/images/fileicons/png.png b/lib/images/fileicons/png.png Binary files differindex 007270532..273476daf 100644 --- a/lib/images/fileicons/png.png +++ b/lib/images/fileicons/png.png diff --git a/lib/images/fileicons/ppt.png b/lib/images/fileicons/ppt.png Binary files differindex 3355c2712..a03d3c0a6 100644 --- a/lib/images/fileicons/ppt.png +++ b/lib/images/fileicons/ppt.png diff --git a/lib/images/fileicons/pptx.png b/lib/images/fileicons/pptx.png Binary files differindex 269cdb8fc..9b5c6332b 100644 --- a/lib/images/fileicons/pptx.png +++ b/lib/images/fileicons/pptx.png diff --git a/lib/images/fileicons/ps.png b/lib/images/fileicons/ps.png Binary files differindex e61d1aa7e..3b7848c8e 100644 --- a/lib/images/fileicons/ps.png +++ b/lib/images/fileicons/ps.png diff --git a/lib/images/fileicons/py.png b/lib/images/fileicons/py.png Binary files differindex f0ed0258c..893019ee6 100644 --- a/lib/images/fileicons/py.png +++ b/lib/images/fileicons/py.png diff --git a/lib/images/fileicons/rar.png b/lib/images/fileicons/rar.png Binary files differindex f15d4ce5b..091a635b7 100644 --- a/lib/images/fileicons/rar.png +++ b/lib/images/fileicons/rar.png diff --git a/lib/images/fileicons/rb.png b/lib/images/fileicons/rb.png Binary files differindex 0e59207fc..9b58db030 100644 --- a/lib/images/fileicons/rb.png +++ b/lib/images/fileicons/rb.png diff --git a/lib/images/fileicons/rpm.png b/lib/images/fileicons/rpm.png Binary files differindex 831424ff5..75da50e0c 100644 --- a/lib/images/fileicons/rpm.png +++ b/lib/images/fileicons/rpm.png diff --git a/lib/images/fileicons/rtf.png b/lib/images/fileicons/rtf.png Binary files differindex bbc425ca3..2e5a6e53e 100644 --- a/lib/images/fileicons/rtf.png +++ b/lib/images/fileicons/rtf.png diff --git a/lib/images/fileicons/sh.png b/lib/images/fileicons/sh.png Binary files differindex 256067106..bc4835414 100644 --- a/lib/images/fileicons/sh.png +++ b/lib/images/fileicons/sh.png diff --git a/lib/images/fileicons/sql.png b/lib/images/fileicons/sql.png Binary files differindex 6697943e2..c36f3a812 100644 --- a/lib/images/fileicons/sql.png +++ b/lib/images/fileicons/sql.png diff --git a/lib/images/fileicons/swf.png b/lib/images/fileicons/swf.png Binary files differindex b45a72cc9..5c8838778 100644 --- a/lib/images/fileicons/swf.png +++ b/lib/images/fileicons/swf.png diff --git a/lib/images/fileicons/sxc.png b/lib/images/fileicons/sxc.png Binary files differindex c96cf303f..3b5c71f59 100644 --- a/lib/images/fileicons/sxc.png +++ b/lib/images/fileicons/sxc.png diff --git a/lib/images/fileicons/sxd.png b/lib/images/fileicons/sxd.png Binary files differindex 124b928e1..15390cd0c 100644 --- a/lib/images/fileicons/sxd.png +++ b/lib/images/fileicons/sxd.png diff --git a/lib/images/fileicons/sxi.png b/lib/images/fileicons/sxi.png Binary files differindex 8a5e23033..a0fb65431 100644 --- a/lib/images/fileicons/sxi.png +++ b/lib/images/fileicons/sxi.png diff --git a/lib/images/fileicons/sxw.png b/lib/images/fileicons/sxw.png Binary files differindex 9a903791c..865dc0c6e 100644 --- a/lib/images/fileicons/sxw.png +++ b/lib/images/fileicons/sxw.png diff --git a/lib/images/fileicons/tar.png b/lib/images/fileicons/tar.png Binary files differindex e57029adc..8f9fd0f08 100644 --- a/lib/images/fileicons/tar.png +++ b/lib/images/fileicons/tar.png diff --git a/lib/images/fileicons/tgz.png b/lib/images/fileicons/tgz.png Binary files differindex 25ef9e15a..8423ef087 100644 --- a/lib/images/fileicons/tgz.png +++ b/lib/images/fileicons/tgz.png diff --git a/lib/images/fileicons/txt.png b/lib/images/fileicons/txt.png Binary files differindex 4fd921655..1619cc497 100644 --- a/lib/images/fileicons/txt.png +++ b/lib/images/fileicons/txt.png diff --git a/lib/images/fileicons/wav.png b/lib/images/fileicons/wav.png Binary files differindex c8880c62e..80eac9783 100644 --- a/lib/images/fileicons/wav.png +++ b/lib/images/fileicons/wav.png diff --git a/lib/images/fileicons/webm.png b/lib/images/fileicons/webm.png Binary files differindex 55db61914..cec3e6d5b 100644 --- a/lib/images/fileicons/webm.png +++ b/lib/images/fileicons/webm.png diff --git a/lib/images/fileicons/xls.png b/lib/images/fileicons/xls.png Binary files differindex 5ac56f20d..be9b42fff 100644 --- a/lib/images/fileicons/xls.png +++ b/lib/images/fileicons/xls.png diff --git a/lib/images/fileicons/xlsx.png b/lib/images/fileicons/xlsx.png Binary files differindex 89c84c522..fd5d4f117 100644 --- a/lib/images/fileicons/xlsx.png +++ b/lib/images/fileicons/xlsx.png diff --git a/lib/images/fileicons/xml.png b/lib/images/fileicons/xml.png Binary files differindex 4480a6385..2a96d8b31 100644 --- a/lib/images/fileicons/xml.png +++ b/lib/images/fileicons/xml.png diff --git a/lib/images/fileicons/zip.png b/lib/images/fileicons/zip.png Binary files differindex 4a36a35ff..4ce08bf7d 100644 --- a/lib/images/fileicons/zip.png +++ b/lib/images/fileicons/zip.png diff --git a/lib/images/history.png b/lib/images/history.png Binary files differindex 82a418d44..f6af0f6f1 100644 --- a/lib/images/history.png +++ b/lib/images/history.png diff --git a/lib/images/icon-list.png b/lib/images/icon-list.png Binary files differindex ecfeed92d..4ae738a07 100644 --- a/lib/images/icon-list.png +++ b/lib/images/icon-list.png diff --git a/lib/images/icon-sort.png b/lib/images/icon-sort.png Binary files differindex c6403dd3c..190397eb6 100644 --- a/lib/images/icon-sort.png +++ b/lib/images/icon-sort.png diff --git a/lib/images/info.png b/lib/images/info.png Binary files differindex 121c7336d..5e2336435 100644 --- a/lib/images/info.png +++ b/lib/images/info.png diff --git a/lib/images/interwiki.png b/lib/images/interwiki.png Binary files differindex f957e71e5..10a2bbe1e 100644 --- a/lib/images/interwiki.png +++ b/lib/images/interwiki.png diff --git a/lib/images/interwiki/user.png b/lib/images/interwiki/user.png Binary files differindex 79f35ccbd..da84e3ddc 100644 --- a/lib/images/interwiki/user.png +++ b/lib/images/interwiki/user.png diff --git a/lib/images/license/badge/cc-by-nc-nd.png b/lib/images/license/badge/cc-by-nc-nd.png Binary files differindex 94aae9e09..c84aff104 100644 --- a/lib/images/license/badge/cc-by-nc-nd.png +++ b/lib/images/license/badge/cc-by-nc-nd.png diff --git a/lib/images/license/badge/cc-by-nc-sa.png b/lib/images/license/badge/cc-by-nc-sa.png Binary files differindex 51141f5ec..e7b57845b 100644 --- a/lib/images/license/badge/cc-by-nc-sa.png +++ b/lib/images/license/badge/cc-by-nc-sa.png diff --git a/lib/images/license/badge/cc-by-nc.png b/lib/images/license/badge/cc-by-nc.png Binary files differindex aeb8cdc8c..b422cdcfd 100644 --- a/lib/images/license/badge/cc-by-nc.png +++ b/lib/images/license/badge/cc-by-nc.png diff --git a/lib/images/license/badge/cc-by-nd.png b/lib/images/license/badge/cc-by-nd.png Binary files differindex 6a2e59a68..18322992c 100644 --- a/lib/images/license/badge/cc-by-nd.png +++ b/lib/images/license/badge/cc-by-nd.png diff --git a/lib/images/license/badge/cc-by-sa.png b/lib/images/license/badge/cc-by-sa.png Binary files differindex f0aa4aaf0..5749f65b8 100644 --- a/lib/images/license/badge/cc-by-sa.png +++ b/lib/images/license/badge/cc-by-sa.png diff --git a/lib/images/license/badge/cc-by.png b/lib/images/license/badge/cc-by.png Binary files differindex c7389b2f6..700679a13 100644 --- a/lib/images/license/badge/cc-by.png +++ b/lib/images/license/badge/cc-by.png diff --git a/lib/images/license/badge/cc-zero.png b/lib/images/license/badge/cc-zero.png Binary files differindex fd3dff422..e6d82bfab 100644 --- a/lib/images/license/badge/cc-zero.png +++ b/lib/images/license/badge/cc-zero.png diff --git a/lib/images/license/badge/cc.png b/lib/images/license/badge/cc.png Binary files differindex 8ac73aa4e..e28f32c79 100644 --- a/lib/images/license/badge/cc.png +++ b/lib/images/license/badge/cc.png diff --git a/lib/images/license/badge/gnufdl.png b/lib/images/license/badge/gnufdl.png Binary files differindex e92910128..635de2bd3 100644 --- a/lib/images/license/badge/gnufdl.png +++ b/lib/images/license/badge/gnufdl.png diff --git a/lib/images/license/badge/publicdomain.png b/lib/images/license/badge/publicdomain.png Binary files differindex 8148d037a..fd742cc9d 100644 --- a/lib/images/license/badge/publicdomain.png +++ b/lib/images/license/badge/publicdomain.png diff --git a/lib/images/license/button/cc-by-nc-nd.png b/lib/images/license/button/cc-by-nc-nd.png Binary files differindex ac58d8627..994025f15 100644 --- a/lib/images/license/button/cc-by-nc-nd.png +++ b/lib/images/license/button/cc-by-nc-nd.png diff --git a/lib/images/license/button/cc-by-nc-sa.png b/lib/images/license/button/cc-by-nc-sa.png Binary files differindex a9d23c0b6..3b896bd52 100644 --- a/lib/images/license/button/cc-by-nc-sa.png +++ b/lib/images/license/button/cc-by-nc-sa.png diff --git a/lib/images/license/button/cc-by-nc.png b/lib/images/license/button/cc-by-nc.png Binary files differindex d936464ad..d5be8f803 100644 --- a/lib/images/license/button/cc-by-nc.png +++ b/lib/images/license/button/cc-by-nc.png diff --git a/lib/images/license/button/cc-by-nd.png b/lib/images/license/button/cc-by-nd.png Binary files differindex 3fc490870..e1918b0cd 100644 --- a/lib/images/license/button/cc-by-nd.png +++ b/lib/images/license/button/cc-by-nd.png diff --git a/lib/images/license/button/cc-by-sa.png b/lib/images/license/button/cc-by-sa.png Binary files differindex 3c6270a0d..9b9b522ab 100644 --- a/lib/images/license/button/cc-by-sa.png +++ b/lib/images/license/button/cc-by-sa.png diff --git a/lib/images/license/button/cc-by.png b/lib/images/license/button/cc-by.png Binary files differindex 867daaee4..53b1dea0f 100644 --- a/lib/images/license/button/cc-by.png +++ b/lib/images/license/button/cc-by.png diff --git a/lib/images/license/button/cc-zero.png b/lib/images/license/button/cc-zero.png Binary files differindex 251efcd1c..e6a1a5bf2 100644 --- a/lib/images/license/button/cc-zero.png +++ b/lib/images/license/button/cc-zero.png diff --git a/lib/images/license/button/cc.png b/lib/images/license/button/cc.png Binary files differindex 9c492950f..e04958a8b 100644 --- a/lib/images/license/button/cc.png +++ b/lib/images/license/button/cc.png diff --git a/lib/images/license/button/gnufdl.png b/lib/images/license/button/gnufdl.png Binary files differindex 0b52ea12e..b0e0793de 100644 --- a/lib/images/license/button/gnufdl.png +++ b/lib/images/license/button/gnufdl.png diff --git a/lib/images/license/button/publicdomain.png b/lib/images/license/button/publicdomain.png Binary files differindex 54ea38b64..b301baf97 100644 --- a/lib/images/license/button/publicdomain.png +++ b/lib/images/license/button/publicdomain.png diff --git a/lib/images/magnifier.png b/lib/images/magnifier.png Binary files differindex 89febff10..014fa921b 100644 --- a/lib/images/magnifier.png +++ b/lib/images/magnifier.png diff --git a/lib/images/media_align_center.png b/lib/images/media_align_center.png Binary files differindex 807f9d9a8..8b30a051b 100644 --- a/lib/images/media_align_center.png +++ b/lib/images/media_align_center.png diff --git a/lib/images/media_align_left.png b/lib/images/media_align_left.png Binary files differindex fa6cf33ca..d32bbc235 100644 --- a/lib/images/media_align_left.png +++ b/lib/images/media_align_left.png diff --git a/lib/images/media_align_noalign.png b/lib/images/media_align_noalign.png Binary files differindex 263e090fe..e6ce85790 100644 --- a/lib/images/media_align_noalign.png +++ b/lib/images/media_align_noalign.png diff --git a/lib/images/media_align_right.png b/lib/images/media_align_right.png Binary files differindex 33539dbdb..32a5cb0a3 100644 --- a/lib/images/media_align_right.png +++ b/lib/images/media_align_right.png diff --git a/lib/images/media_link_direct.png b/lib/images/media_link_direct.png Binary files differindex 4350b803d..13d24ad7c 100644 --- a/lib/images/media_link_direct.png +++ b/lib/images/media_link_direct.png diff --git a/lib/images/media_link_displaylnk.png b/lib/images/media_link_displaylnk.png Binary files differindex 53927566a..102834e7b 100644 --- a/lib/images/media_link_displaylnk.png +++ b/lib/images/media_link_displaylnk.png diff --git a/lib/images/media_link_lnk.png b/lib/images/media_link_lnk.png Binary files differindex 5ff4ee182..5db14ad03 100644 --- a/lib/images/media_link_lnk.png +++ b/lib/images/media_link_lnk.png diff --git a/lib/images/media_link_nolnk.png b/lib/images/media_link_nolnk.png Binary files differindex c9378c7fd..d277ac955 100644 --- a/lib/images/media_link_nolnk.png +++ b/lib/images/media_link_nolnk.png diff --git a/lib/images/media_size_large.png b/lib/images/media_size_large.png Binary files differindex 012a418c3..c4f745e4d 100644 --- a/lib/images/media_size_large.png +++ b/lib/images/media_size_large.png diff --git a/lib/images/media_size_medium.png b/lib/images/media_size_medium.png Binary files differindex 1469f519f..580c63ed5 100644 --- a/lib/images/media_size_medium.png +++ b/lib/images/media_size_medium.png diff --git a/lib/images/media_size_original.png b/lib/images/media_size_original.png Binary files differindex f58d056aa..60d1925f5 100644 --- a/lib/images/media_size_original.png +++ b/lib/images/media_size_original.png diff --git a/lib/images/media_size_small.png b/lib/images/media_size_small.png Binary files differindex a0aafa4a7..8d5a6293b 100644 --- a/lib/images/media_size_small.png +++ b/lib/images/media_size_small.png diff --git a/lib/images/mediamanager.png b/lib/images/mediamanager.png Binary files differindex 822b8458a..5093381b6 100644 --- a/lib/images/mediamanager.png +++ b/lib/images/mediamanager.png diff --git a/lib/images/notify.png b/lib/images/notify.png Binary files differindex c18ef1001..f6c56ee55 100644 --- a/lib/images/notify.png +++ b/lib/images/notify.png diff --git a/lib/images/ns.png b/lib/images/ns.png Binary files differindex c35e832da..77e03b19e 100644 --- a/lib/images/ns.png +++ b/lib/images/ns.png diff --git a/lib/images/open.png b/lib/images/open.png Binary files differindex 5f2d408c5..b9e4fdf97 100644 --- a/lib/images/open.png +++ b/lib/images/open.png diff --git a/lib/images/resizecol.png b/lib/images/resizecol.png Binary files differindex b5aeec004..91ad7d15a 100644 --- a/lib/images/resizecol.png +++ b/lib/images/resizecol.png diff --git a/lib/images/smileys/index.php b/lib/images/smileys/index.php index 9a2905b33..4167eda5b 100644 --- a/lib/images/smileys/index.php +++ b/lib/images/smileys/index.php @@ -1,7 +1,7 @@ <!DOCTYPE html> <html lang="en" dir="ltr"> <head> - <title>simleys</title> + <title>smileys</title> <style type="text/css"> body { diff --git a/lib/images/success.png b/lib/images/success.png Binary files differindex 9241adbb2..200142f94 100644 --- a/lib/images/success.png +++ b/lib/images/success.png diff --git a/lib/images/toolbar/bold.png b/lib/images/toolbar/bold.png Binary files differindex 51ddb8880..8f425e9d0 100644 --- a/lib/images/toolbar/bold.png +++ b/lib/images/toolbar/bold.png diff --git a/lib/images/toolbar/chars.png b/lib/images/toolbar/chars.png Binary files differindex bad37e503..a906bc861 100644 --- a/lib/images/toolbar/chars.png +++ b/lib/images/toolbar/chars.png diff --git a/lib/images/toolbar/h.png b/lib/images/toolbar/h.png Binary files differindex 6a48cbbc0..7e43d6421 100644 --- a/lib/images/toolbar/h.png +++ b/lib/images/toolbar/h.png diff --git a/lib/images/toolbar/h1.png b/lib/images/toolbar/h1.png Binary files differindex 85bd06e6c..9f1970f4e 100644 --- a/lib/images/toolbar/h1.png +++ b/lib/images/toolbar/h1.png diff --git a/lib/images/toolbar/h2.png b/lib/images/toolbar/h2.png Binary files differindex be2c60031..adec9ec01 100644 --- a/lib/images/toolbar/h2.png +++ b/lib/images/toolbar/h2.png diff --git a/lib/images/toolbar/h3.png b/lib/images/toolbar/h3.png Binary files differindex 350da88b6..a758b8914 100644 --- a/lib/images/toolbar/h3.png +++ b/lib/images/toolbar/h3.png diff --git a/lib/images/toolbar/h4.png b/lib/images/toolbar/h4.png Binary files differindex bc1b7038f..9cd606133 100644 --- a/lib/images/toolbar/h4.png +++ b/lib/images/toolbar/h4.png diff --git a/lib/images/toolbar/h5.png b/lib/images/toolbar/h5.png Binary files differindex b6c263dfb..86b725991 100644 --- a/lib/images/toolbar/h5.png +++ b/lib/images/toolbar/h5.png diff --git a/lib/images/toolbar/hequal.png b/lib/images/toolbar/hequal.png Binary files differindex da4e921ff..869a2ddb3 100644 --- a/lib/images/toolbar/hequal.png +++ b/lib/images/toolbar/hequal.png diff --git a/lib/images/toolbar/hminus.png b/lib/images/toolbar/hminus.png Binary files differindex c00f70223..1a99ee4b9 100644 --- a/lib/images/toolbar/hminus.png +++ b/lib/images/toolbar/hminus.png diff --git a/lib/images/toolbar/hplus.png b/lib/images/toolbar/hplus.png Binary files differindex 6124b5c33..92efcdbd1 100644 --- a/lib/images/toolbar/hplus.png +++ b/lib/images/toolbar/hplus.png diff --git a/lib/images/toolbar/hr.png b/lib/images/toolbar/hr.png Binary files differindex de3a8a55b..40ae21026 100644 --- a/lib/images/toolbar/hr.png +++ b/lib/images/toolbar/hr.png diff --git a/lib/images/toolbar/image.png b/lib/images/toolbar/image.png Binary files differindex 70b12fcc2..5cc7afa69 100644 --- a/lib/images/toolbar/image.png +++ b/lib/images/toolbar/image.png diff --git a/lib/images/toolbar/italic.png b/lib/images/toolbar/italic.png Binary files differindex d69e66070..b37dc2d52 100644 --- a/lib/images/toolbar/italic.png +++ b/lib/images/toolbar/italic.png diff --git a/lib/images/toolbar/link.png b/lib/images/toolbar/link.png Binary files differindex 01105b0d3..3d2180a63 100644 --- a/lib/images/toolbar/link.png +++ b/lib/images/toolbar/link.png diff --git a/lib/images/toolbar/linkextern.png b/lib/images/toolbar/linkextern.png Binary files differindex acc0c6fc5..e854572a9 100644 --- a/lib/images/toolbar/linkextern.png +++ b/lib/images/toolbar/linkextern.png diff --git a/lib/images/toolbar/mono.png b/lib/images/toolbar/mono.png Binary files differindex b91ad2e0d..a6f56d6dc 100644 --- a/lib/images/toolbar/mono.png +++ b/lib/images/toolbar/mono.png diff --git a/lib/images/toolbar/ol.png b/lib/images/toolbar/ol.png Binary files differindex 186f1fad4..c12229a97 100644 --- a/lib/images/toolbar/ol.png +++ b/lib/images/toolbar/ol.png diff --git a/lib/images/toolbar/smiley.png b/lib/images/toolbar/smiley.png Binary files differindex 85036c1a8..54f1e6fb4 100644 --- a/lib/images/toolbar/smiley.png +++ b/lib/images/toolbar/smiley.png diff --git a/lib/images/toolbar/strike.png b/lib/images/toolbar/strike.png Binary files differindex e532d1f07..5adbba402 100644 --- a/lib/images/toolbar/strike.png +++ b/lib/images/toolbar/strike.png diff --git a/lib/images/toolbar/ul.png b/lib/images/toolbar/ul.png Binary files differindex 008820722..39e5d342e 100644 --- a/lib/images/toolbar/ul.png +++ b/lib/images/toolbar/ul.png diff --git a/lib/images/toolbar/underline.png b/lib/images/toolbar/underline.png Binary files differindex fa271517c..57bf3e25a 100644 --- a/lib/images/toolbar/underline.png +++ b/lib/images/toolbar/underline.png diff --git a/lib/images/unc.png b/lib/images/unc.png Binary files differindex a552d6e6f..145b728bb 100644 --- a/lib/images/unc.png +++ b/lib/images/unc.png diff --git a/lib/images/up.png b/lib/images/up.png Binary files differindex b1eac912d..dbacf3f23 100644 --- a/lib/images/up.png +++ b/lib/images/up.png diff --git a/lib/plugins/acl/admin.php b/lib/plugins/acl/admin.php index ebb097a04..814bbfe9c 100644 --- a/lib/plugins/acl/admin.php +++ b/lib/plugins/acl/admin.php @@ -762,6 +762,8 @@ class admin_plugin_acl extends DokuWiki_Admin_Plugin { */ function _html_select(){ $inlist = false; + $usel = ''; + $gsel = ''; if($this->who && !in_array($this->who,$this->usersgroups) && @@ -770,11 +772,9 @@ class admin_plugin_acl extends DokuWiki_Admin_Plugin { if($this->who{0} == '@'){ $gsel = ' selected="selected"'; }else{ - $usel = ' selected="selected"'; + $usel = ' selected="selected"'; } }else{ - $usel = ''; - $gsel = ''; $inlist = true; } diff --git a/lib/plugins/acl/lang/cs/help.txt b/lib/plugins/acl/lang/cs/help.txt index 1dbc88ad0..1b6fa1eac 100644 --- a/lib/plugins/acl/lang/cs/help.txt +++ b/lib/plugins/acl/lang/cs/help.txt @@ -1,11 +1,8 @@ === Nápověda: === -Na této stránce můžete přidávat a odebírat oprávnění na jmenné prostory a stránky Vaší wiki. +Na této stránce můžete přidávat a odebírat oprávnění pro jmenné prostory a stránky svojí wiki. +* Levý panel zobrazuje všechny dostupné jmenné prostory a stránky. +* Formulář výše umožňuje vidět a modifikovat oprávnění vybraného uživatele nebo skupiny. +* V tabulce uvedené níže jsou zobrazeny všechna aktuální pravidla pro řízení přístupu (oprávnění). Zde můžete rychle odebírat a měnit více položek (oprávnění) najednou. -Levý panel zobrazuje všechny dostupné jmenné prostory a stránky. - -Formulář výše umožňuje vidět a modifikovat oprávnění vybraného uživatele nebo skupiny. - -V tabulce uvedené níže jsou zobrazeny všechny aktuální pravidla pro řízení přístupu (oprávnění). Zde můžete rychle odebírat a měnit více položek (oprávnění) najednou. - -Pro detailnější nápovědu si přečtěte stránku [[doku>acl|oficiální dokumentaci ACL]], která Vám může pomoci plně pochopit princip, jak řízení přístupu na DokuWiki funguje. +Pro detailnější nápovědu si přečtěte stránku [[doku>acl|oficiální dokumentace ACL]], která Vám může pomoci plně pochopit princip, na kterém řízení přístupu na DokuWiki funguje. diff --git a/lib/plugins/acl/lang/eu/lang.php b/lib/plugins/acl/lang/eu/lang.php index f051523d9..bb6ab964a 100644 --- a/lib/plugins/acl/lang/eu/lang.php +++ b/lib/plugins/acl/lang/eu/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Basque language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Inko Illarramendi <inko.i.a@gmail.com> * @author Zigor Astarbe <astarbe@gmail.com> */ diff --git a/lib/plugins/acl/lang/ro/lang.php b/lib/plugins/acl/lang/ro/lang.php index 0d281f049..418e63ab3 100644 --- a/lib/plugins/acl/lang/ro/lang.php +++ b/lib/plugins/acl/lang/ro/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Romanian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Sergiu Baltariu <s_baltariu@yahoo.com> * @author s_baltariu@yahoo.com * @author Emanuel-Emeric Andrasi <n30@mandrivausers.ro> diff --git a/lib/plugins/acl/pix/group.png b/lib/plugins/acl/pix/group.png Binary files differindex d80eb2606..348d4e55c 100644 --- a/lib/plugins/acl/pix/group.png +++ b/lib/plugins/acl/pix/group.png diff --git a/lib/plugins/acl/pix/ns.png b/lib/plugins/acl/pix/ns.png Binary files differindex c35e832da..77e03b19e 100644 --- a/lib/plugins/acl/pix/ns.png +++ b/lib/plugins/acl/pix/ns.png diff --git a/lib/plugins/acl/pix/user.png b/lib/plugins/acl/pix/user.png Binary files differindex 7b4a507a0..8d5d1c2e9 100644 --- a/lib/plugins/acl/pix/user.png +++ b/lib/plugins/acl/pix/user.png diff --git a/lib/plugins/acl/remote.php b/lib/plugins/acl/remote.php index 6d5201cf6..b10c544ee 100644 --- a/lib/plugins/acl/remote.php +++ b/lib/plugins/acl/remote.php @@ -1,7 +1,16 @@ <?php +/** + * Class remote_plugin_acl + */ class remote_plugin_acl extends DokuWiki_Remote_Plugin { - function _getMethods() { + + /** + * Returns details about the remote plugin methods + * + * @return array + */ + public function _getMethods() { return array( 'addAcl' => array( 'args' => array('string','string','int'), @@ -17,12 +26,29 @@ class remote_plugin_acl extends DokuWiki_Remote_Plugin { ); } - function addAcl($scope, $user, $level){ + /** + * Add a new entry to ACL config + * + * @param string $scope + * @param string $user + * @param int $level see also inc/auth.php + * @return bool + */ + public function addAcl($scope, $user, $level){ + /** @var admin_plugin_acl $apa */ $apa = plugin_load('admin', 'acl'); return $apa->_acl_add($scope, $user, $level); } - function delAcl($scope, $user){ + /** + * Remove an entry from ACL config + * + * @param string $scope + * @param string $user + * @return bool + */ + public function delAcl($scope, $user){ + /** @var admin_plugin_acl $apa */ $apa = plugin_load('admin', 'acl'); return $apa->_acl_del($scope, $user); } diff --git a/lib/plugins/admin.php b/lib/plugins/admin.php index 9a1fb9fdc..39dece453 100644 --- a/lib/plugins/admin.php +++ b/lib/plugins/admin.php @@ -14,7 +14,14 @@ if(!defined('DOKU_INC')) die(); */ class DokuWiki_Admin_Plugin extends DokuWiki_Plugin { - function getMenuText($language) { + /** + * Return the text that is displayed at the main admin menu + * (Default localized language string 'menu' is returned, override this function for setting another name) + * + * @param string $language language code + * @return string menu string + */ + public function getMenuText($language) { $menutext = $this->getLang('menu'); if (!$menutext) { $info = $this->getInfo(); @@ -23,23 +30,48 @@ class DokuWiki_Admin_Plugin extends DokuWiki_Plugin { return $menutext; } - function getMenuSort() { + /** + * Determine position in list in admin window + * Lower values are sorted up + * + * @return int + */ + public function getMenuSort() { return 1000; } - function handle() { + /** + * Carry out required processing + */ + public function handle() { trigger_error('handle() not implemented in '.get_class($this), E_USER_WARNING); } - function html() { + /** + * Output html of the admin page + */ + public function html() { trigger_error('html() not implemented in '.get_class($this), E_USER_WARNING); } - function forAdminOnly() { + /** + * Return true for access only by admins (config:superuser) or false if managers are allowed as well + * + * @return bool + */ + public function forAdminOnly() { return true; } - function getTOC(){ + /** + * Return array with ToC items. Items can be created with the html_mktocitem() + * + * @see html_mktocitem() + * @see tpl_toc() + * + * @return array + */ + public function getTOC(){ return array(); } } diff --git a/lib/plugins/auth.php b/lib/plugins/auth.php index b38b591a3..4799b3a38 100644 --- a/lib/plugins/auth.php +++ b/lib/plugins/auth.php @@ -116,7 +116,7 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * @author Gabriel Birke <birke@d-scribe.de> * @param string $type Modification type ('create', 'modify', 'delete') * @param array $params Parameters for the createUser, modifyUser or deleteUsers method. The content of this array depends on the modification type - * @return mixed Result from the modification function or false if an event handler has canceled the action + * @return bool|null|int Result from the modification function or false if an event handler has canceled the action */ public function triggerUserMod($type, $params) { $validTypes = array( @@ -124,12 +124,15 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { 'modify' => 'modifyUser', 'delete' => 'deleteUsers' ); - if(empty($validTypes[$type])) + if(empty($validTypes[$type])) { return false; + } + + $result = false; $eventdata = array('type' => $type, 'params' => $params, 'modification_result' => null); $evt = new Doku_Event('AUTH_USER_CHANGE', $eventdata); if($evt->advise_before(true)) { - $result = call_user_func_array(array($this, $validTypes[$type]), $params); + $result = call_user_func_array(array($this, $validTypes[$type]), $evt->data['params']); $evt->data['modification_result'] = $result; } $evt->advise_after(); @@ -235,7 +238,7 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * @author Andreas Gohr <andi@splitbrain.org> * @param string $user the user name * @param bool $requireGroups whether or not the returned data must include groups - * @return array containing user data or false + * @return false|array containing user data or false */ public function getUserData($user, $requireGroups=true) { if(!$this->cando['external']) msg("no valid authorisation system in use", -1); diff --git a/lib/plugins/authad/action.php b/lib/plugins/authad/action.php index 97be9897e..bc0f90c7e 100644 --- a/lib/plugins/authad/action.php +++ b/lib/plugins/authad/action.php @@ -17,7 +17,7 @@ class action_plugin_authad extends DokuWiki_Action_Plugin { /** * Registers a callback function for a given event */ - public function register(Doku_Event_Handler &$controller) { + public function register(Doku_Event_Handler $controller) { $controller->register_hook('AUTH_LOGIN_CHECK', 'BEFORE', $this, 'handle_auth_login_check'); $controller->register_hook('HTML_LOGINFORM_OUTPUT', 'BEFORE', $this, 'handle_html_loginform_output'); diff --git a/lib/plugins/authad/adLDAP/adLDAP.php b/lib/plugins/authad/adLDAP/adLDAP.php index c1f92abe2..5563e4fe9 100644 --- a/lib/plugins/authad/adLDAP/adLDAP.php +++ b/lib/plugins/authad/adLDAP/adLDAP.php @@ -947,5 +947,3 @@ class adLDAP { * } */ class adLDAPException extends Exception {} - -?>
\ No newline at end of file diff --git a/lib/plugins/authad/auth.php b/lib/plugins/authad/auth.php index a3119dda6..88b56046c 100644 --- a/lib/plugins/authad/auth.php +++ b/lib/plugins/authad/auth.php @@ -203,6 +203,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { } //general user info + $info = array(); $info['name'] = $result[0]['displayname'][0]; $info['mail'] = $result[0]['mail'][0]; $info['uid'] = $result[0]['samaccountname'][0]; @@ -328,6 +329,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { * Bulk retrieval of user data * * @author Dominik Eckelmann <dokuwiki@cosmocode.de> + * * @param int $start index of first user to be returned * @param int $limit max number of users to be returned * @param array $filter array of field/pattern pairs, null for no filter @@ -446,7 +448,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { /** * Get the domain part from a user * - * @param $user + * @param string $user * @return string */ public function _userDomain($user) { @@ -457,7 +459,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { /** * Get the user part from a user * - * @param $user + * @param string $user * @return string */ public function _userName($user) { @@ -543,6 +545,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { * The patterns are set up with $this->_constructPattern() * * @author Chris Smith <chris@jalakai.co.uk> + * * @param string $user * @param array $info * @return bool @@ -564,6 +567,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { * Create a pattern for $this->_filter() * * @author Chris Smith <chris@jalakai.co.uk> + * * @param array $filter */ protected function _constructPattern($filter) { diff --git a/lib/plugins/authad/lang/cs/settings.php b/lib/plugins/authad/lang/cs/settings.php index 28222d332..92b2d0f13 100644 --- a/lib/plugins/authad/lang/cs/settings.php +++ b/lib/plugins/authad/lang/cs/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author mkucera66@seznam.cz + * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ $lang['account_suffix'] = 'Přípona vašeho účtu, tj. <code>@moje.domena.org</code>'; $lang['base_dn'] = 'Vaše doménové jméno DN. tj. <code>DC=moje,DC=domena,DC=org</code>'; @@ -11,6 +12,7 @@ $lang['domain_controllers'] = 'Čárkou oddělenových kontrol=rů, tj. <code $lang['admin_username'] = 'Privilegovaný uživatel Active Directory s přístupem ke všem datům. Volitelně, ale nutné pro určité akce typu zasílání mailů.'; $lang['admin_password'] = 'Heslo uživatele výše'; $lang['sso'] = 'Chcete přihlašování Single-Sign-On pomocí jádra Kerberos nebo NTLM ( autentizační protokol obvyklý ve Windows)?'; +$lang['sso_charset'] = 'Znaková sada kterou bude webserverem přenášeno uživatelské jméno pro Kerberos nebo NTLM. Prázdné pro UTF-8 nebo latin-1. Vyžaduje rozšíření iconv.'; $lang['real_primarygroup'] = 'Má být zjištěna primární skupina namísto vyhodnocení hodnoty "doménoví uživatelé" (pomalejší)'; $lang['use_ssl'] = 'Použít spojení SSL? Pokud ano, nevyužívejte TLS níže.'; $lang['use_tls'] = 'Použít spojení TLS? Pokud ano, nevyužívejte SSL výše.'; diff --git a/lib/plugins/authad/lang/fa/settings.php b/lib/plugins/authad/lang/fa/settings.php new file mode 100644 index 000000000..161479afb --- /dev/null +++ b/lib/plugins/authad/lang/fa/settings.php @@ -0,0 +1,10 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Omid Hezaveh <hezpublic@gmail.com> + */ +$lang['admin_password'] = 'رمز کاربر بالایی '; +$lang['use_ssl'] = 'از اساسال استفاده میکنید؟ در این صورت تیالاس را در پایین فعال نکنید. '; +$lang['use_tls'] = 'از تیالاس استفاده میکنید؟ در این صورت اساسال را در بالا فعال نکنید. '; diff --git a/lib/plugins/authad/lang/no/lang.php b/lib/plugins/authad/lang/no/lang.php new file mode 100644 index 000000000..a1c9c7e8a --- /dev/null +++ b/lib/plugins/authad/lang/no/lang.php @@ -0,0 +1,8 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Patrick <spill.p@hotmail.com> + */ +$lang['domain'] = 'Loggpå-domene'; diff --git a/lib/plugins/authad/lang/no/settings.php b/lib/plugins/authad/lang/no/settings.php index bab5ce67d..f309ead50 100644 --- a/lib/plugins/authad/lang/no/settings.php +++ b/lib/plugins/authad/lang/no/settings.php @@ -4,6 +4,8 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Christopher Schive <chschive@frisurf.no> + * @author Patrick <spill.p@hotmail.com> */ +$lang['account_suffix'] = 'Ditt konto-suffiks F. Eks. <code>@my.domain.org</code>'; $lang['admin_password'] = 'Passordet til brukeren over.'; $lang['expirywarn'] = 'Antall dager på forhånd brukeren varsles om at passordet utgår. 0 for å deaktivere.'; diff --git a/lib/plugins/authad/lang/pl/settings.php b/lib/plugins/authad/lang/pl/settings.php index 91cadca6f..537bae7ea 100644 --- a/lib/plugins/authad/lang/pl/settings.php +++ b/lib/plugins/authad/lang/pl/settings.php @@ -6,6 +6,7 @@ * @author Tomasz Bosak <bosak.tomasz@gmail.com> * @author Paweł Jan Czochański <czochanski@gmail.com> * @author Mati <mackosa@wp.pl> + * @author Maciej Helt <geraldziu@gmail.com> */ $lang['account_suffix'] = 'Przyrostek twojej nazwy konta np. <code>@my.domain.org</code>'; $lang['base_dn'] = 'Twoje bazowe DN. Na przykład: <code>DC=my,DC=domain,DC=org</code>'; diff --git a/lib/plugins/authad/lang/pt/settings.php b/lib/plugins/authad/lang/pt/settings.php index dc60d7259..6256eb597 100644 --- a/lib/plugins/authad/lang/pt/settings.php +++ b/lib/plugins/authad/lang/pt/settings.php @@ -6,12 +6,18 @@ * @author André Neves <drakferion@gmail.com> * @author Murilo <muriloricci@hotmail.com> * @author Paulo Silva <paulotsilva@yahoo.com> + * @author Guido Salatino <guidorafael23@gmail.com> */ $lang['account_suffix'] = 'O sufixo da sua conta. Por exemplo, <code>@my.domain.org</code>'; +$lang['base_dn'] = 'Sua base DN. Eg. <code> DC=meu, DC=dominio, DC=org </ code>'; $lang['domain_controllers'] = 'Uma lista separada por vírgulas de Controladores de Domínio (AD DC). Ex.: <code>srv1.domain.org,srv2.domain.org</code>'; $lang['admin_username'] = 'Um utilizador com privilégios na Active Directory que tenha acesso aos dados de todos os outros utilizadores. Opcional, mas necessário para certas ações como enviar emails de subscrição.'; $lang['admin_password'] = 'A senha para o utilizador acima.'; $lang['sso'] = 'Deve ser usado o Single-Sign-On via Kerberos ou NTLM?'; +$lang['sso_charset'] = 'O charset do seu servidor web vai passar o nome de usuário Kerberos ou NTLM vazio para UTF-8 ou latin-1. Requer a extensão iconv.'; +$lang['real_primarygroup'] = 'Deveria ser resolvido, de fato, o grupo primário ao invés de assumir "Usuários de Domínio" (mais lento).'; $lang['use_ssl'] = 'Usar ligação SSL? Se usada, não ative TLS abaixo.'; $lang['use_tls'] = 'Usar ligação TLS? Se usada, não ative SSL abaixo.'; +$lang['debug'] = 'Deve-se mostrar saída adicional de depuração de erros?'; $lang['expirywarn'] = 'Número de dias de avanço para avisar o utilizador da expiração da senha. 0 para desativar.'; +$lang['additional'] = 'Uma lista separada por vírgula de atributos adicionais de AD para buscar a partir de dados do usuário. Usado por alguns plugins.'; diff --git a/lib/plugins/authad/lang/ru/settings.php b/lib/plugins/authad/lang/ru/settings.php index c9c6d9f88..c791bd791 100644 --- a/lib/plugins/authad/lang/ru/settings.php +++ b/lib/plugins/authad/lang/ru/settings.php @@ -8,11 +8,20 @@ * @author Artur <ncuxxx@gmail.com> * @author Erli Moen <evseev.jr@gmail.com> * @author Владимир <id37736@yandex.ru> + * @author Aleksandr Selivanov <alexgearbox@yandex.ru> + * @author Type-kun <workwork-1@yandex.ru> + * @author Vitaly Filatenko <kot@hacktest.net> */ -$lang['account_suffix'] = 'Суффикс вашего аккаунта типа <code>@my.domain.org</code>'; +$lang['account_suffix'] = 'Суффикс вашего аккаунта. Например, <code>@my.domain.org</code>'; +$lang['base_dn'] = 'Ваш базовый DN. Например: <code>DC=my,DC=domain,DC=org</code>'; $lang['domain_controllers'] = 'Список DNS-серверов, разделенных запятой. Например:<code>srv1.domain.org,srv2.domain.org</code>'; +$lang['admin_username'] = 'Привилегированный пользователь Active Directory с доступом ко всем остальным пользовательским данным. Необязательно, однако необходимо для определённых действий вроде отправки почтовой подписки.'; $lang['admin_password'] = 'Пароль для указанного пользователя.'; $lang['sso'] = 'Использовать SSO (Single-Sign-On) через Kerberos или NTLM?'; +$lang['sso_charset'] = 'Кодировка, в которой веб-сервер передаёт имя пользователя Kerberos или NTLM. Для UTF-8 или latin-1 остаётся пустым. Требует расширение iconv.'; +$lang['real_primarygroup'] = 'Должна ли использоваться настоящая первичная группа вместо “Domain Users” (медленнее)'; $lang['use_ssl'] = 'Использовать SSL? Если да, то не включайте TLS.'; $lang['use_tls'] = 'Использовать TLS? Если да, то не включайте SSL.'; $lang['debug'] = 'Выводить дополнительную информацию при ошибках?'; +$lang['expirywarn'] = 'За сколько дней нужно предупреждать пользователя о необходимости изменить пароль? Для отключения укажите 0 (ноль).'; +$lang['additional'] = 'Дополнительные AD-атрибуты, разделённые запятой, для выборки из данных пользователя. Используется некоторыми плагинами.'; diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index b22b82ecc..50735882f 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -181,6 +181,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { } } + $info = array(); $info['user'] = $user; $info['server'] = $this->getConf('server'); @@ -515,13 +516,13 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { } } // needs version 3 - if($this->getConf('referrals')) { + if($this->getConf('referrals') > -1) { if(!@ldap_set_option( $this->con, LDAP_OPT_REFERRALS, $this->getConf('referrals') ) ) { - msg('Setting LDAP referrals to off failed', -1); + msg('Setting LDAP referrals failed', -1); $this->_debug('LDAP referal set: '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); } } @@ -564,15 +565,13 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { * Wraps around ldap_search, ldap_list or ldap_read depending on $scope * * @author Andreas Gohr <andi@splitbrain.org> - * @param resource $link_identifier - * @param string $base_dn - * @param string $filter - * @param string $scope can be 'base', 'one' or 'sub' - * @param null $attributes - * @param int $attrsonly - * @param int $sizelimit - * @param int $timelimit - * @param int $deref + * @param resource $link_identifier + * @param string $base_dn + * @param string $filter + * @param string $scope can be 'base', 'one' or 'sub' + * @param null|array $attributes + * @param int $attrsonly + * @param int $sizelimit * @return resource */ protected function _ldapsearch($link_identifier, $base_dn, $filter, $scope = 'sub', $attributes = null, diff --git a/lib/plugins/authldap/conf/default.php b/lib/plugins/authldap/conf/default.php index 2c295eeeb..c2e462c5c 100644 --- a/lib/plugins/authldap/conf/default.php +++ b/lib/plugins/authldap/conf/default.php @@ -8,7 +8,7 @@ $conf['userfilter'] = ''; $conf['groupfilter'] = ''; $conf['version'] = 2; $conf['starttls'] = 0; -$conf['referrals'] = 0; +$conf['referrals'] = -1; $conf['deref'] = 0; $conf['binddn'] = ''; $conf['bindpw'] = ''; diff --git a/lib/plugins/authldap/conf/metadata.php b/lib/plugins/authldap/conf/metadata.php index 6aa53c40d..4649ba5bf 100644 --- a/lib/plugins/authldap/conf/metadata.php +++ b/lib/plugins/authldap/conf/metadata.php @@ -7,7 +7,7 @@ $meta['userfilter'] = array('string','_caution' => 'danger'); $meta['groupfilter'] = array('string','_caution' => 'danger'); $meta['version'] = array('numeric','_caution' => 'danger'); $meta['starttls'] = array('onoff','_caution' => 'danger'); -$meta['referrals'] = array('onoff','_caution' => 'danger'); +$meta['referrals'] = array('multichoice','_choices' => array(-1,0,1),'_caution' => 'danger'); $meta['deref'] = array('multichoice','_choices' => array(0,1,2,3),'_caution' => 'danger'); $meta['binddn'] = array('string','_caution' => 'danger'); $meta['bindpw'] = array('password','_caution' => 'danger'); diff --git a/lib/plugins/authldap/lang/cs/settings.php b/lib/plugins/authldap/lang/cs/settings.php index 20491f1fb..a5aad5981 100644 --- a/lib/plugins/authldap/lang/cs/settings.php +++ b/lib/plugins/authldap/lang/cs/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author mkucera66@seznam.cz + * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ $lang['server'] = 'Váš server LDAP. Buď jméno hosta (<code>localhost</code>) nebo plně kvalifikovaný popis URL (<code>ldap://server.tld:389</code>)'; $lang['port'] = 'Port serveru LDAP. Pokud není, bude využito URL výše'; @@ -14,9 +15,14 @@ $lang['groupfilter'] = 'Filter LDAPu pro vyhledávání uživatelskýc $lang['version'] = 'Verze použitého protokolu. Můžete potřebovat jej nastavit na <code>3</code>'; $lang['starttls'] = 'Využít spojení TLS?'; $lang['referrals'] = 'Přeposílat odkazy?'; +$lang['deref'] = 'Jak rozlišovat aliasy?'; $lang['binddn'] = 'Doménový název DN volitelně připojeného uživatele, pokus anonymní připojení není vyhovující, tj. <code>cn=admin, dc=muj, dc=domov</code>'; $lang['bindpw'] = 'Heslo uživatele výše'; $lang['userscope'] = 'Omezení rozsahu vyhledávání uživatele'; $lang['groupscope'] = 'Omezení rozsahu vyhledávání skupiny'; $lang['groupkey'] = 'Atribut šlenství uživatele ve skupinách (namísto standardních AD skupin), tj. skupina z oddělení nebo telefonní číslo'; $lang['debug'] = 'Zobrazit dodatečné debugovací informace'; +$lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; +$lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; +$lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; +$lang['deref_o_3'] = 'LDAP_DEREF_ALWAYS'; diff --git a/lib/plugins/authldap/lang/en/settings.php b/lib/plugins/authldap/lang/en/settings.php index b73166ab2..951901ccc 100644 --- a/lib/plugins/authldap/lang/en/settings.php +++ b/lib/plugins/authldap/lang/en/settings.php @@ -21,3 +21,7 @@ $lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; $lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; $lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; $lang['deref_o_3'] = 'LDAP_DEREF_ALWAYS'; + +$lang['referrals_o_-1'] = 'use default'; +$lang['referrals_o_0'] = 'don\'t follow referrals'; +$lang['referrals_o_1'] = 'follow referrals';
\ No newline at end of file diff --git a/lib/plugins/authldap/lang/fa/settings.php b/lib/plugins/authldap/lang/fa/settings.php new file mode 100644 index 000000000..49d485afd --- /dev/null +++ b/lib/plugins/authldap/lang/fa/settings.php @@ -0,0 +1,10 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Mohammad Sadegh <msdn2013@gmail.com> + * @author Omid Hezaveh <hezpublic@gmail.com> + */ +$lang['starttls'] = 'از تیالاس (TLS) استفاده میکنید؟'; +$lang['bindpw'] = 'رمزعبور کاربر بالا'; diff --git a/lib/plugins/authldap/lang/no/settings.php b/lib/plugins/authldap/lang/no/settings.php index 6bedb2991..61671ed46 100644 --- a/lib/plugins/authldap/lang/no/settings.php +++ b/lib/plugins/authldap/lang/no/settings.php @@ -4,6 +4,8 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Christopher Schive <chschive@frisurf.no> + * @author Patrick <spill.p@hotmail.com> */ $lang['port'] = 'LDAP serverport dersom ingen full URL var gitt over.'; $lang['starttls'] = 'Bruke TLS-forbindelser?'; +$lang['bindpw'] = 'Passord til brukeren over'; diff --git a/lib/plugins/authldap/lang/pl/settings.php b/lib/plugins/authldap/lang/pl/settings.php index 7010988e6..0f5281b13 100644 --- a/lib/plugins/authldap/lang/pl/settings.php +++ b/lib/plugins/authldap/lang/pl/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Paweł Jan Czochański <czochanski@gmail.com> + * @author Maciej Helt <geraldziu@gmail.com> */ $lang['server'] = 'Twój serwer LDAP. Podaj nazwę hosta (<code>localhost</code>) albo pełen adres URL (<code>ldap://server.tld:389</code>).'; $lang['port'] = 'Port serwera LDAP jeżeli nie podano pełnego adresu URL wyżej.'; @@ -14,3 +15,8 @@ $lang['groupfilter'] = 'Filtr LDAP wykorzystany przy szukaniu grup uż $lang['version'] = 'Wykorzystywana wersja protokołu. Być może konieczne jest ustawienie tego na <code>3</code>.'; $lang['starttls'] = 'Użyć połączeń TLS?'; $lang['bindpw'] = 'Hasło powyższego użytkownika'; +$lang['debug'] = 'Przy błędach wyświetl dodatkowe informacje debugujące.'; +$lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; +$lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; +$lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; +$lang['deref_o_3'] = 'LDAP_DEREF_ALWAYS'; diff --git a/lib/plugins/authldap/lang/pt/settings.php b/lib/plugins/authldap/lang/pt/settings.php index a2ccf87ad..b54f2a1bc 100644 --- a/lib/plugins/authldap/lang/pt/settings.php +++ b/lib/plugins/authldap/lang/pt/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author André Neves <drakferion@gmail.com> + * @author Guido Salatino <guidorafael23@gmail.com> */ $lang['server'] = 'O seu servidor de LDAP. Ou hostname (<code>localhost</code>) ou URL qualificado completo (<code>ldap://servidor.tld:389</code>)'; $lang['port'] = 'Porta de servidor de LDAP se o URL completo não foi fornecido acima'; @@ -14,5 +15,14 @@ $lang['groupfilter'] = 'Filtro LDAP para procurar por grupos. Por exem $lang['version'] = 'A versão do protocolo a utilizar. Pode precisar de alterar isto para <code>3</code>'; $lang['starttls'] = 'Usar ligações TLS?'; $lang['referrals'] = 'Referrals devem ser seguidos?'; +$lang['deref'] = 'Como desreferenciar aliases?'; +$lang['binddn'] = 'DN de um usuário de ligação opcional, quando a ligação é anônima não é suficiente. Eg. <code> cn = admin, dc = my, dc = home </code>'; $lang['bindpw'] = 'Senha do utilizador acima'; +$lang['userscope'] = 'Escopo de pesquisa Limite para pesquisa de usuário'; +$lang['groupscope'] = 'Escopo de pesquisa Limite para pesquisa de grupo'; +$lang['groupkey'] = 'A participação no grupo a partir de qualquer atributo de usuário (em vez de AD padrão de grupos) exemplo: grupo de departamento ou número de telefone'; $lang['debug'] = 'Mostrar informação adicional de debug aquando de erros'; +$lang['deref_o_0'] = 'LDAP_DEREF_NUNCA'; +$lang['deref_o_1'] = 'LDAP_DEREF_PESQUISANDO'; +$lang['deref_o_2'] = 'LDAP_DEREF_BUSCANDO'; +$lang['deref_o_3'] = 'LDAP_DEREF_SEMPRE'; diff --git a/lib/plugins/authldap/lang/ru/settings.php b/lib/plugins/authldap/lang/ru/settings.php index 5677e06a3..1e5391644 100644 --- a/lib/plugins/authldap/lang/ru/settings.php +++ b/lib/plugins/authldap/lang/ru/settings.php @@ -8,10 +8,20 @@ * @author Erli Moen <evseev.jr@gmail.com> * @author Aleksandr Selivanov <alexgearbox@yandex.ru> * @author Владимир <id37736@yandex.ru> + * @author Vitaly Filatenko <kot@hacktest.net> */ -$lang['starttls'] = 'Использовать TLS подключения?'; +$lang['server'] = 'Ваш LDAP-сервер. Либо имя хоста (<code>localhost</code>), либо полный URL (<code>ldap://server.tld:389</code>)'; +$lang['port'] = 'Порт LDAP-сервера, если выше не был указан полный URL'; +$lang['usertree'] = 'Где искать аккаунты пользователей? Например: <code>ou=People, dc=server, dc=tld</code>'; +$lang['grouptree'] = 'Где искать группы пользователей? Например: <code>ou=Group, dc=server, dc=tld</code>'; +$lang['userfilter'] = 'LDAP-фильтр для поиска аккаунтов пользователей. Например: <code>(&(uid=%{user})(objectClass=posixAccount))</code>'; +$lang['groupfilter'] = 'LDAP-фильтр для поиска групп. Например: <code>(&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))</code>'; +$lang['version'] = 'Версия протокола. Возможно, вам нужно указать <code>3</code>'; +$lang['starttls'] = 'Использовать TLS-подключения?'; $lang['deref'] = 'Как расшифровывать псевдонимы?'; -$lang['bindpw'] = 'Пароль для указанного пользователя.'; +$lang['bindpw'] = 'Пароль для указанного пользователя'; +$lang['userscope'] = 'Ограничить область поиска при поиске пользователей'; +$lang['groupscope'] = 'Ограничить область поиска при поиске групп'; $lang['debug'] = 'Показывать дополнительную отладочную информацию при ошибках'; $lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; $lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index 95c62f636..0d423b6c9 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -115,7 +115,8 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * Check if the given config strings are set * * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> - * @param array $keys + * + * @param string[] $keys * @param bool $wop is this a check for a write operation? * @return bool */ @@ -284,7 +285,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $grpdel = array_diff($groups, $changes['grps']); foreach($grpadd as $group) { - if(($this->_addUserToGroup($user, $group, 1)) == false) { + if(($this->_addUserToGroup($user, $group, true)) == false) { $rc = false; } } @@ -366,7 +367,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @param int $first index of first user to be returned * @param int $limit max number of users to be returned - * @param array|string $filter array of field/pattern pairs + * @param array $filter array of field/pattern pairs * @return array userinfo (refer getUserData for internal userinfo details) */ public function retrieveUsers($first = 0, $limit = 0, $filter = array()) { @@ -612,7 +613,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { if($uid) { foreach($grps as $group) { - $gid = $this->_addUserToGroup($user, $group, 1); + $gid = $this->_addUserToGroup($user, $group, true); if($gid === false) break; } @@ -668,7 +669,6 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @param string $user username of the user whose data is to be removed from the cache * if null, empty the whole cache - * @return none */ protected function _flushUserInfoCache($user=null) { if (is_null($user)) { @@ -750,7 +750,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> * * @param string $user user's nick to get data for - * @return bool|array false on error, user info on success + * @return false|array false on error, user info on success */ protected function _retrieveUserInfo($user) { $sql = str_replace('%{user}', $this->_escape($user), $this->getConf('getUserInfo')); @@ -777,7 +777,6 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @param string $user user's nick being updated * @param array $changes array of items to change as pairs of item and value - * @param mixed $uid user id of dataset to change, must be unique in DB * @return bool true on success or false on error * * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> @@ -838,7 +837,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> * * @param string $group group name which id is desired - * @return mixed group id + * @return false|string group id */ protected function _getGroupID($group) { if($this->dbcon) { @@ -911,7 +910,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> * * @param string $query SQL string that contains the query - * @return array with the result table + * @return array|false with the result table */ protected function _queryDB($query) { if($this->getConf('debug') >= 2) { @@ -1002,6 +1001,8 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * abrogated. * * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> + * + * @return bool */ protected function _unlockTables() { if($this->dbcon) { diff --git a/lib/plugins/authmysql/lang/cs/settings.php b/lib/plugins/authmysql/lang/cs/settings.php index 350c3236b..09146a451 100644 --- a/lib/plugins/authmysql/lang/cs/settings.php +++ b/lib/plugins/authmysql/lang/cs/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author mkucera66@seznam.cz + * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ $lang['server'] = 'Váš server MySQL'; $lang['user'] = 'Uživatelské jméno pro MySQL'; @@ -19,7 +20,7 @@ $lang['getGroups'] = 'Příkaz SQL pro získání uživatelovy skupi $lang['getUsers'] = 'Příkaz SQL pro seznam všech uživatelů'; $lang['FilterLogin'] = 'Příkaz SQL pro filtrování uživatelů podle přihlašovacího jména'; $lang['FilterName'] = 'Příkaz SQL pro filtrování uživatelů podle celého jména'; -$lang['FilterEmail'] = 'Příkaz SQL pro filtrování uživatelů podle adres emailů'; +$lang['FilterEmail'] = 'Příkaz SQL pro filtrování uživatelů podle adres e-mailů'; $lang['FilterGroup'] = 'Příkaz SQL pro filtrování uživatelů podle členství ve skupinách'; $lang['SortOrder'] = 'Příkaz SQL pro řazení uživatelů'; $lang['addUser'] = 'Příkaz SQL pro přidání nového uživatele'; @@ -32,7 +33,7 @@ $lang['delUserRefs'] = 'Příkaz SQL pro odstranění členství uživ $lang['updateUser'] = 'Příkaz SQL pro aktualizaci uživatelského profilu'; $lang['UpdateLogin'] = 'Klauzule pro aktualizaci přihlačovacího jména uživatele'; $lang['UpdatePass'] = 'Klauzule pro aktualizaci hesla uživatele'; -$lang['UpdateEmail'] = 'Klauzule pro aktualizaci emailové adresy uživatele'; +$lang['UpdateEmail'] = 'Klauzule pro aktualizaci e-mailové adresy uživatele'; $lang['UpdateName'] = 'Klauzule pro aktualizaci celého jména uživatele'; $lang['UpdateTarget'] = 'Omezující klauzule pro identifikaci uživatele při aktualizaci'; $lang['delUserGroup'] = 'Příkaz SQL pro zrušení členství uživatele v dané skupině'; diff --git a/lib/plugins/authmysql/lang/da/settings.php b/lib/plugins/authmysql/lang/da/settings.php index 1e38cb6b4..ed21201fb 100644 --- a/lib/plugins/authmysql/lang/da/settings.php +++ b/lib/plugins/authmysql/lang/da/settings.php @@ -2,7 +2,7 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author Jens Hyllegaard <jens.hyllegaard@gmail.com> * @author soer9648 <soer9648@eucl.dk> */ @@ -11,6 +11,7 @@ $lang['user'] = 'MySQL brugernavn'; $lang['password'] = 'Kodeord til ovenstående bruger'; $lang['database'] = 'Database der skal benyttes'; $lang['charset'] = 'Tegnsæt benyttet i database'; +$lang['debug'] = 'Vis yderligere debug output'; $lang['checkPass'] = 'SQL-sætning til at kontrollere kodeord'; $lang['getUserInfo'] = 'SQL-sætning til at hente brugerinformation'; $lang['getUsers'] = 'SQL-sætning til at liste alle brugere'; @@ -21,7 +22,6 @@ $lang['delGroup'] = 'SQL-sætning til at fjerne en gruppe'; $lang['delUser'] = 'SQL-sætning til at slette en bruger'; $lang['delUserRefs'] = 'SQL-sætning til at fjerne en bruger fra alle grupper'; $lang['updateUser'] = 'SQL-sætning til at opdatere en brugerprofil'; -$lang['debug'] = 'Vis yderligere debug output'; $lang['debug_o_0'] = 'ingen'; $lang['debug_o_1'] = 'kun ved fejl'; $lang['debug_o_2'] = 'alle SQL forespørgsler'; diff --git a/lib/plugins/authmysql/lang/fi/settings.php b/lib/plugins/authmysql/lang/fi/settings.php new file mode 100644 index 000000000..32517957b --- /dev/null +++ b/lib/plugins/authmysql/lang/fi/settings.php @@ -0,0 +1,11 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Jussi Takala <jussi.takala@live.fi> + */ +$lang['server'] = 'Sinun MySQL-serveri'; +$lang['user'] = 'MySQL-käyttäjänimi'; +$lang['password'] = 'Salasana yläolevalle käyttäjälle'; +$lang['charset'] = 'Käytetty merkistö tietokannassa'; diff --git a/lib/plugins/authmysql/lang/no/settings.php b/lib/plugins/authmysql/lang/no/settings.php new file mode 100644 index 000000000..45ab09819 --- /dev/null +++ b/lib/plugins/authmysql/lang/no/settings.php @@ -0,0 +1,14 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Patrick <spill.p@hotmail.com> + */ +$lang['server'] = 'Din MySQL-server'; +$lang['user'] = 'Ditt MySQL-brukernavn'; +$lang['password'] = 'Passord til brukeren'; +$lang['database'] = 'Database som skal brukes'; +$lang['debug_o_0'] = 'ingen'; +$lang['debug_o_1'] = 'bare ved feil'; +$lang['debug_o_2'] = 'alle SQL-forespørsler'; diff --git a/lib/plugins/authmysql/lang/pl/settings.php b/lib/plugins/authmysql/lang/pl/settings.php index 9dc798ee0..68b5c6c22 100644 --- a/lib/plugins/authmysql/lang/pl/settings.php +++ b/lib/plugins/authmysql/lang/pl/settings.php @@ -5,6 +5,7 @@ * * @author Paweł Jan Czochański <czochanski@gmail.com> * @author Mati <mackosa@wp.pl> + * @author Maciej Helt <geraldziu@gmail.com> */ $lang['server'] = 'Twój server MySQL'; $lang['user'] = 'Nazwa użytkownika MySQL'; @@ -13,4 +14,13 @@ $lang['database'] = 'Używana baza danych'; $lang['charset'] = 'Zestaw znaków uzyty w bazie danych'; $lang['debug'] = 'Wyświetlaj dodatkowe informacje do debugowania.'; $lang['checkPass'] = 'Zapytanie SQL wykorzystywane do sprawdzania haseł.'; +$lang['getUserInfo'] = 'Zapytanie SQL zwracające informacje o użytkowniku'; +$lang['getGroups'] = 'Zapytanie SQL przynależność do grup danego użytkownika'; +$lang['getUsers'] = 'Zapytanie SQL zwracające listę wszystkich użytkowników'; +$lang['FilterLogin'] = 'Klauzula SQL używana do filtrowania użytkowników na podstawie ich loginu'; +$lang['FilterName'] = 'Klauzula SQL używana do filtrowania użytkowników na podstawie ich pełnej nazwy'; +$lang['FilterEmail'] = 'Klauzula SQL używana do filtrowania użytkowników na podstawie ich adresu email'; +$lang['FilterGroup'] = 'Klauzula SQL używana do filtrowania użytkowników na podstawie ich przynależności do grup'; +$lang['SortOrder'] = 'Klauzula SQL używana do sortowania użytkowników'; +$lang['addUser'] = 'Zapytanie SQL dodające nowego użytkownika'; $lang['debug_o_2'] = 'wszystkie zapytania SQL'; diff --git a/lib/plugins/authmysql/lang/pt/settings.php b/lib/plugins/authmysql/lang/pt/settings.php index 0c7f303e7..821dcf802 100644 --- a/lib/plugins/authmysql/lang/pt/settings.php +++ b/lib/plugins/authmysql/lang/pt/settings.php @@ -4,20 +4,40 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author André Neves <drakferion@gmail.com> + * @author Guido Salatino <guidorafael23@gmail.com> */ $lang['server'] = 'O seu servidor de MySQL'; $lang['user'] = 'Utilizador MySQL'; $lang['password'] = 'Senha para o utilizador acima'; $lang['database'] = 'Base de dados a usar'; +$lang['charset'] = 'Conjunto de caracteres usado na base de dados'; $lang['debug'] = 'Mostrar informação adicional de debug'; +$lang['forwardClearPass'] = 'Passe as senhas do usuário como texto puro para as instruções SQL abaixo, em vez de usar a opção passcrypt'; +$lang['TablesToLock'] = 'Lista de tabelas, separadas por virgula, que devem ser bloqueadas em operações de escrita'; +$lang['checkPass'] = 'Instrução SQL para verificar senhas'; +$lang['getUserInfo'] = 'Instrução SQL para recuperar informações do usuário'; +$lang['getGroups'] = 'Instrução SQL para recuperar os usuários participantes de um grupo'; +$lang['getUsers'] = 'Instrução SQL para listar todos usuários'; $lang['FilterLogin'] = 'Cláusula SQL para filtrar utilizadores por tipo de login'; $lang['FilterName'] = 'Cláusula SQL para filtrar utilizadores por nome completo'; $lang['FilterEmail'] = 'Cláusula SQL para filtrar utilizadores por endereço de email'; $lang['FilterGroup'] = 'Cláusula SQL para filtrar utilizadores por pertença a grupo'; $lang['SortOrder'] = 'Cláusula SQL para ordenar utilizadores'; +$lang['addUser'] = 'Instrução SQL para adicionar novo usuário'; +$lang['addGroup'] = 'Instrução SQL para adicionar um novo grupo'; +$lang['addUserGroup'] = 'Instrução SQL para adicionar um usuário a um grupo existente'; +$lang['delGroup'] = 'Instrução SQL para remover um grupo'; +$lang['getUserID'] = 'Instrução SQL para obter a chave principal de um usuário'; +$lang['delUser'] = 'Instrução SQL para excluir um usuário'; +$lang['delUserRefs'] = 'Instrução SQL para excluir um usuário de todos os grupos'; +$lang['updateUser'] = 'Instrução SQL para atualizar um perfil de usuário'; $lang['UpdateLogin'] = 'Cláusula de atualização para atualizar o nome de login do utilizador'; $lang['UpdatePass'] = 'Cláusula de atualização para atualizar a senha do utilizador'; $lang['UpdateEmail'] = 'Cláusula de atualização para atualizar o endereço de email do utilizador'; $lang['UpdateName'] = 'Cláusula de atualização para atualizar o nome completo do utilizador'; +$lang['UpdateTarget'] = 'Cláusula limite para identificar o usuário ao atualizar'; +$lang['delUserGroup'] = 'Instrução SQL para remover um usuário de um determinado grupo'; +$lang['getGroupID'] = 'Instrução SQL para obter a chave principal de um determinado grupo'; $lang['debug_o_0'] = 'nenhum'; $lang['debug_o_1'] = 'só aquando de erros'; +$lang['debug_o_2'] = 'todas as consultas SQL'; diff --git a/lib/plugins/authmysql/lang/ru/settings.php b/lib/plugins/authmysql/lang/ru/settings.php index 2d8f4788e..d9afa14e6 100644 --- a/lib/plugins/authmysql/lang/ru/settings.php +++ b/lib/plugins/authmysql/lang/ru/settings.php @@ -5,6 +5,8 @@ * * @author Ivan I. Udovichenko (sendtome@mymailbox.pp.ua) * @author Aleksandr Selivanov <alexgearbox@gmail.com> + * @author Type-kun <workwork-1@yandex.ru> + * @author Aleksandr Selivanov <alexgearbox@yandex.ru> */ $lang['server'] = 'Ваш MySQL-сервер'; $lang['user'] = 'Имя пользователя MySQL'; @@ -13,7 +15,7 @@ $lang['database'] = 'Имя базы данных'; $lang['charset'] = 'Используемый набор символов в базе данных'; $lang['debug'] = 'Отображение дополнительной отладочной информации'; $lang['forwardClearPass'] = 'Передача пароля пользователя открытым текстом, вместо зашифрованной формы в используемом выражении SQL'; -$lang['TablesToLock'] = 'Имена таблиц (через запятую), которые необходимо ограничение для записи'; +$lang['TablesToLock'] = 'Имена таблиц (через запятую), которым необходимо ограничение для записи'; $lang['checkPass'] = 'Выражение SQL, осуществляющее проверку пароля'; $lang['getUserInfo'] = 'Выражение SQL, осуществляющее извлечение информации о пользователе'; $lang['getGroups'] = 'Выражение SQL, осуществляющее извлечение информации о членстве пользователе в группах'; @@ -35,7 +37,7 @@ $lang['UpdateLogin'] = 'Условие для обновления и $lang['UpdatePass'] = 'Условие для обновления пароля пользователя'; $lang['UpdateEmail'] = 'Условие для обновления адреса электронной почты пользователя'; $lang['UpdateName'] = 'Условие для обновления полного имени пользователя'; -$lang['UpdateTarget'] = 'Условие для идентификации пользователя при обновлении'; +$lang['UpdateTarget'] = 'Выражение \'LIMIT\' для идентификации пользователя при обновлении'; $lang['delUserGroup'] = 'Выражение SQL, осуществляющее удаление пользователя из указанной группы'; $lang['getGroupID'] = 'Выражение SQL, обеспечивающее получение первичного ключа указанной группы'; $lang['debug_o_0'] = 'ни один из вариантов'; diff --git a/lib/plugins/authpgsql/auth.php b/lib/plugins/authpgsql/auth.php index 99f3ed443..4cb280aae 100644 --- a/lib/plugins/authpgsql/auth.php +++ b/lib/plugins/authpgsql/auth.php @@ -104,7 +104,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { * * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> * - * @param array $keys + * @param string[] $keys * @param bool $wop * @return bool */ @@ -159,9 +159,11 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { if($first) $sql .= " OFFSET $first"; $result = $this->_queryDB($sql); - foreach($result as $user) - if(($info = $this->_getCachedUserInfo($user['user']))) + foreach($result as $user) { + if(($info = $this->_getUserInfo($user['user']))) { $out[$user['user']] = $info; + } + } $this->_unlockTables(); $this->_closeDB(); @@ -265,7 +267,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { if($uid) { foreach($grps as $group) { - $gid = $this->_addUserToGroup($user, $group, 1); + $gid = $this->_addUserToGroup($user, $group, true); if($gid === false) break; } @@ -340,7 +342,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> * * @param string $query SQL string that contains the query - * @return array the result table + * @return array|false the result table */ protected function _queryDB($query) { $resultarray = array(); @@ -363,6 +365,9 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { * MySQL one because it does NOT return the last insertID * * @author Andreas Gohr <andi@splitbrain.org> + * + * @param string $query + * @return bool */ protected function _modifyDB($query) { if($this->dbcon) { @@ -396,6 +401,8 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { * Commit a transaction * * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> + * + * @return bool */ protected function _unlockTables() { if($this->dbcon) { diff --git a/lib/plugins/authpgsql/lang/cs/settings.php b/lib/plugins/authpgsql/lang/cs/settings.php index aec7eecf1..ad135e241 100644 --- a/lib/plugins/authpgsql/lang/cs/settings.php +++ b/lib/plugins/authpgsql/lang/cs/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author mkucera66@seznam.cz + * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ $lang['server'] = 'Váš server PostgreSQL'; $lang['port'] = 'Port vašeho serveru PostgreSQL'; @@ -18,7 +19,7 @@ $lang['getGroups'] = 'Příkaz SQL pro získání členství uživat $lang['getUsers'] = 'Příkaz SQL pro seznam všech uživatelů'; $lang['FilterLogin'] = 'Příkaz SQL pro filtrování uživatelů podle přihlašovacího jména'; $lang['FilterName'] = 'Příkaz SQL pro filtrování uživatelů podle celého jména'; -$lang['FilterEmail'] = 'Příkaz SQL pro filtrování uživatelů podle adres emailů'; +$lang['FilterEmail'] = 'Příkaz SQL pro filtrování uživatelů podle adres e-mailů'; $lang['FilterGroup'] = 'Příkaz SQL pro filtrování uživatelů podle členství ve skupinách'; $lang['SortOrder'] = 'Příkaz SQL pro řazení uživatelů'; $lang['addUser'] = 'Příkaz SQL pro řazení uživatelů'; @@ -31,7 +32,7 @@ $lang['delUserRefs'] = 'Příkaz SQL pro odstranění členství uživ $lang['updateUser'] = 'Příkaz SQL pro aktualizaci uživatelského profilu'; $lang['UpdateLogin'] = 'Klauzule pro aktualizaci přihlačovacího jména uživatele'; $lang['UpdatePass'] = 'Klauzule pro aktualizaci hesla uživatele'; -$lang['UpdateEmail'] = 'Klauzule pro aktualizaci emailové adresy uživatele'; +$lang['UpdateEmail'] = 'Klauzule pro aktualizaci e-mailové adresy uživatele'; $lang['UpdateName'] = 'Klauzule pro aktualizaci celého jména uživatele'; $lang['UpdateTarget'] = 'Omezující klauzule pro identifikaci uživatele při aktualizaci'; $lang['delUserGroup'] = 'Příkaz SQL pro zrušení členství uživatele v dané skupině'; diff --git a/lib/plugins/authpgsql/lang/it/settings.php b/lib/plugins/authpgsql/lang/it/settings.php index baf40a468..e8a40dcb2 100644 --- a/lib/plugins/authpgsql/lang/it/settings.php +++ b/lib/plugins/authpgsql/lang/it/settings.php @@ -4,8 +4,10 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Francesco <francesco.cavalli@hotmail.com> + * @author Torpedo <dgtorpedo@gmail.com> */ $lang['server'] = 'Il tuo server PostgreSQL '; $lang['port'] = 'La porta del tuo server PostgreSQL '; $lang['user'] = 'Lo username PostgreSQL'; $lang['database'] = 'Database da usare'; +$lang['getUsers'] = 'Dichiarazione SQL per elencare tutti gli utenti'; diff --git a/lib/plugins/authpgsql/lang/pt/settings.php b/lib/plugins/authpgsql/lang/pt/settings.php index b33b81141..f81ec22dc 100644 --- a/lib/plugins/authpgsql/lang/pt/settings.php +++ b/lib/plugins/authpgsql/lang/pt/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author André Neves <drakferion@gmail.com> + * @author Guido Salatino <guidorafael23@gmail.com> */ $lang['server'] = 'O seu servidor PostgreSQL'; $lang['port'] = 'A porta do seu servidor PostgreSQL'; @@ -11,12 +12,28 @@ $lang['user'] = 'Nome de utilizador PostgreSQL'; $lang['password'] = 'Senha do utilizador acima'; $lang['database'] = 'Base de dados a usar'; $lang['debug'] = 'Mostrar informação adicional de debug'; +$lang['forwardClearPass'] = 'Passe as senhas do usuário como texto puro para as instruções SQL abaixo, em vez de usar a opção passcrypt'; +$lang['checkPass'] = 'Instrução SQL para verificar senhas'; +$lang['getUserInfo'] = 'Instrução SQL para recuperar informações de um usuário'; +$lang['getGroups'] = 'Instrução SQL para recuperar os usuários participantes de um grupo'; +$lang['getUsers'] = 'Instrução SQL para listar todos usuários'; $lang['FilterLogin'] = 'Cláusula SQL para filtrar utilizadores por nome de login'; $lang['FilterName'] = 'Cláusula SQL para filtrar utilizadores por nome completo'; $lang['FilterEmail'] = 'Cláusula SQL para filtrar utilizadores por endereço de email'; $lang['FilterGroup'] = 'Cláusula SQL para filtrar utilizadores por pertença a grupo'; $lang['SortOrder'] = 'Cláusula SQL para ordenar utilizadores'; +$lang['addUser'] = 'Instrução SQL para adicionar um novo usuário'; +$lang['addGroup'] = 'Instrução SQL para adicionar um novo grupo'; +$lang['addUserGroup'] = 'Instrução SQL para adicionar um usuário a um grupo existente'; +$lang['delGroup'] = 'Instrução SQL para remover um grupo'; +$lang['getUserID'] = 'Instrução SQL para obter a chave principal de um usuário'; +$lang['delUser'] = 'Instrução SQL para remover um usuário'; +$lang['delUserRefs'] = 'Instrução SQL para remover um usuário de todos os grupos'; +$lang['updateUser'] = 'Instrução SQL para atualizar um perfil de usuário'; $lang['UpdateLogin'] = 'Cláusula de atualização para atualizar o nome de login do utilizador'; $lang['UpdatePass'] = 'Cláusula de atualização para atualizar a senha do utilizador'; $lang['UpdateEmail'] = 'Cláusula de atualização para atualizar o endereço de email do utilizador'; $lang['UpdateName'] = 'Cláusula de atualização para atualizar o nome completo do utilizador'; +$lang['UpdateTarget'] = 'Cláusula limite para identificar o usuário ao atualizar'; +$lang['delUserGroup'] = 'Instrução SQL para remover um usuário de um determinado grupo'; +$lang['getGroupID'] = 'Instrução SQL para obter a chave principal de um determinado grupo'; diff --git a/lib/plugins/authpgsql/lang/ru/settings.php b/lib/plugins/authpgsql/lang/ru/settings.php index 65cbce8df..2af299172 100644 --- a/lib/plugins/authpgsql/lang/ru/settings.php +++ b/lib/plugins/authpgsql/lang/ru/settings.php @@ -6,11 +6,13 @@ * @author Ivan I. Udovichenko (sendtome@mymailbox.pp.ua) * @author Aleksandr Selivanov <alexgearbox@gmail.com> * @author Aleksandr Selivanov <alexgearbox@yandex.ru> + * @author Vitaly Filatenko <kot@hacktest.net> + * @author Type-kun <workwork-1@yandex.ru> */ $lang['server'] = 'Ваш PostgreSQL-сервер'; $lang['port'] = 'Порт вашего PostgreSQL-сервера'; $lang['user'] = 'Имя пользователя PostgreSQL'; -$lang['password'] = 'Пароль для указанного пользователя.'; +$lang['password'] = 'Пароль для указанного пользователя'; $lang['database'] = 'Имя базы данных'; $lang['debug'] = 'Отображать дополнительную отладочную информацию'; $lang['checkPass'] = 'Выражение SQL, осуществляющее проверку пароля'; @@ -30,5 +32,10 @@ $lang['getUserID'] = 'Выражение SQL, обеспечиваю $lang['delUser'] = 'Выражение SQL, осуществляющее удаление пользователя'; $lang['delUserRefs'] = 'Выражение SQL, осуществляющее удаление пользователя из всех группы'; $lang['updateUser'] = 'Выражение SQL, осуществляющее обновление профиля пользователя'; +$lang['UpdateLogin'] = 'Измените условие для обновления логина'; +$lang['UpdatePass'] = 'Измените условие для обновления пароля'; +$lang['UpdateEmail'] = 'Измените условие для обновления email'; +$lang['UpdateName'] = 'Условие для обновления полного имени пользователя'; +$lang['UpdateTarget'] = 'Выражение \'LIMIT\' для идентификации пользователя при обновлении'; $lang['delUserGroup'] = 'Выражение SQL, осуществляющее удаление пользователя из указанной группы'; $lang['getGroupID'] = 'Выражение SQL, обеспечивающее получение первичного ключа указанной группы'; diff --git a/lib/plugins/authplain/_test/escaping.test.php b/lib/plugins/authplain/_test/escaping.test.php index cd5294157..e1eade8d4 100644 --- a/lib/plugins/authplain/_test/escaping.test.php +++ b/lib/plugins/authplain/_test/escaping.test.php @@ -12,13 +12,14 @@ * @group plugins */ class helper_plugin_authplain_escaping_test extends DokuWikiTest { - - protected $pluginsEnabled = array('authplain'); + + protected $pluginsEnabled = array('authplainharness'); + /** @var auth_plugin_authplain|auth_plugin_authplainharness */ protected $auth; - + protected function reloadUsers() { /* auth caches data loaded from file, but recreated object forces reload */ - $this->auth = new auth_plugin_authplain(); + $this->auth = new auth_plugin_authplainharness(); } function setUp() { @@ -76,7 +77,50 @@ class helper_plugin_authplain_escaping_test extends DokuWikiTest { $this->assertEquals($saved['name'], $user['name']); $this->assertTrue($this->auth->checkPass("testuser", $user['pass'])); } + + // really only required for developers to ensure this plugin will + // work with systems running on PCRE 6.6 and lower. + public function testLineSplit(){ + $this->auth->setPregsplit_safe(false); + + $names = array( + 'plain', + 'ut-fठ8', + 'colon:', + 'backslash\\', + 'alltogether\\ठ:' + ); + $userpass = 'user:password_hash:'; + $other_user_data = ':email@address:group1,group2'; + + foreach ($names as $testname) { + $escaped = str_replace(array('\\',':'),array('\\\\','\\:'),$testname); // escape : & \ + $test_line = $userpass.$escaped.$other_user_data; + $result = $this->auth->splitUserData($test_line); + + $this->assertEquals($escaped, $result[2]); + } + } } -?>
\ No newline at end of file +class auth_plugin_authplainharness extends auth_plugin_authplain { + + /** + * @param boolean $bool + */ + public function setPregsplit_safe($bool) { + $this->_pregsplit_safe = $bool; + } + + public function getPregsplit_safe(){ + return $this->_pregsplit_safe; + } + + /** + * @param string $line + */ + public function splitUserData($line){ + return $this->_splitUserData($line); + } +} diff --git a/lib/plugins/authplain/auth.php b/lib/plugins/authplain/auth.php index b3ca988b9..b31c02fc8 100644 --- a/lib/plugins/authplain/auth.php +++ b/lib/plugins/authplain/auth.php @@ -17,6 +17,9 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { /** @var array filter pattern */ protected $_pattern = array(); + /** @var bool safe version of preg_split */ + protected $_pregsplit_safe = false; + /** * Constructor * @@ -44,6 +47,8 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $this->cando['getUsers'] = true; $this->cando['getUserCount'] = true; } + + $this->_pregsplit_safe = version_compare(PCRE_VERSION,'6.7','>='); } /** @@ -77,7 +82,7 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { * @author Andreas Gohr <andi@splitbrain.org> * @param string $user * @param bool $requireGroups (optional) ignored by this plugin, grps info always supplied - * @return array|bool + * @return array|false */ public function getUserData($user, $requireGroups=true) { if($this->users === null) $this->_loadUserData(); @@ -320,7 +325,7 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $this->users = array(); - if(!@file_exists($config_cascade['plainauth.users']['default'])) return; + if(!file_exists($config_cascade['plainauth.users']['default'])) return; $lines = file($config_cascade['plainauth.users']['default']); foreach($lines as $line) { @@ -329,7 +334,7 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { if(empty($line)) continue; /* NB: preg_split can be deprecated/replaced with str_getcsv once dokuwiki is min php 5.3 */ - $row = preg_split('/(?<![^\\\\]\\\\)\:/', $line, 5); // allow for : escaped as \: + $row = $this->_splitUserData($line); $row = str_replace('\\:', ':', $row); $row = str_replace('\\\\', '\\', $row); @@ -342,6 +347,33 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { } } + protected function _splitUserData($line){ + // due to a bug in PCRE 6.6, preg_split will fail with the regex we use here + // refer github issues 877 & 885 + if ($this->_pregsplit_safe){ + return preg_split('/(?<![^\\\\]\\\\)\:/', $line, 5); // allow for : escaped as \: + } + + $row = array(); + $piece = ''; + $len = strlen($line); + for($i=0; $i<$len; $i++){ + if ($line[$i]=='\\'){ + $piece .= $line[$i]; + $i++; + if ($i>=$len) break; + } else if ($line[$i]==':'){ + $row[] = $piece; + $piece = ''; + continue; + } + $piece .= $line[$i]; + } + $row[] = $piece; + + return $row; + } + /** * return true if $user + $info match $filter criteria, false otherwise * diff --git a/lib/plugins/config/admin.php b/lib/plugins/config/admin.php index 835d27775..2ef570b68 100644 --- a/lib/plugins/config/admin.php +++ b/lib/plugins/config/admin.php @@ -32,6 +32,9 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { var $_session_started = false; var $_localised_prompts = false; + /** + * @return int + */ function getMenuSort() { return 100; } /** @@ -40,14 +43,20 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { function handle() { global $ID, $INPUT; - if (!$this->_restore_session()) return $this->_close_session(); - if ($INPUT->int('save') != 1) return $this->_close_session(); - if (!checkSecurityToken()) return $this->_close_session(); + if(!$this->_restore_session() || $INPUT->int('save') != 1 || !checkSecurityToken()) { + $this->_close_session(); + return; + } - if (is_null($this->_config)) { $this->_config = new configuration($this->_file); } + if(is_null($this->_config)) { + $this->_config = new configuration($this->_file); + } // don't go any further if the configuration is locked - if ($this->_config->_locked) return $this->_close_session(); + if($this->_config->locked) { + $this->_close_session(); + return; + } $this->_input = $INPUT->arr('config'); @@ -104,6 +113,7 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { formSecurityToken(); $this->_print_h1('dokuwiki_settings', $this->getLang('_header_dokuwiki')); + /** @var setting[] $undefined_settings */ $undefined_settings = array(); $in_fieldset = false; $first_plugin_fieldset = true; @@ -162,7 +172,17 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { // show undefined settings list if ($allow_debug && !empty($undefined_settings)) { - function _setting_natural_comparison($a, $b) { return strnatcmp($a->_key, $b->_key); } + /** + * Callback for sorting settings + * + * @param setting $a + * @param setting $b + * @return int if $a is lower/equal/higher than $b + */ + function _setting_natural_comparison($a, $b) { + return strnatcmp($a->_key, $b->_key); + } + usort($undefined_settings, '_setting_natural_comparison'); $this->_print_h1('undefined_settings', $this->getLang('_header_undefined')); ptln('<fieldset>'); @@ -235,6 +255,9 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { if ($this->_session_started) session_write_close(); } + /** + * @param bool $prompts + */ function setupLocale($prompts=false) { parent::setupLocale(); @@ -245,6 +268,9 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { } + /** + * @return bool + */ function _setup_localised_plugin_prompts() { global $conf; @@ -256,7 +282,7 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { if ($plugin == '.' || $plugin == '..' || $plugin == 'tmp' || $plugin == 'config') continue; if (is_file(DOKU_PLUGIN.$plugin)) continue; - if (@file_exists(DOKU_PLUGIN.$plugin.$enlangfile)){ + if (file_exists(DOKU_PLUGIN.$plugin.$enlangfile)){ $lang = array(); @include(DOKU_PLUGIN.$plugin.$enlangfile); if ($conf['lang'] != 'en') @include(DOKU_PLUGIN.$plugin.$langfile); @@ -277,7 +303,7 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { // the same for the active template $tpl = $conf['template']; - if (@file_exists(tpl_incdir().$enlangfile)){ + if (file_exists(tpl_incdir().$enlangfile)){ $lang = array(); @include(tpl_incdir().$enlangfile); if ($conf['lang'] != 'en') @include(tpl_incdir().$langfile); @@ -299,6 +325,8 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { * Generates a two-level table of contents for the config plugin. * * @author Ben Coburn <btcoburn@silicodon.net> + * + * @return array */ function getTOC() { if (is_null($this->_config)) { $this->_config = new configuration($this->_file); } @@ -328,6 +356,7 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { $t[] = html_mktocitem('configuration_manager', $this->getLang('_configuration_manager'), 1); $t[] = html_mktocitem('dokuwiki_settings', $this->getLang('_header_dokuwiki'), 1); + /** @var setting $setting */ foreach($toc['conf'] as $setting) { $name = $setting->prompt($this); $t[] = html_mktocitem($setting->_key, $name, 2); @@ -352,6 +381,10 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin { return $t; } + /** + * @param string $id + * @param string $text + */ function _print_h1($id, $text) { ptln('<h1 id="'.$id.'">'.$text.'</h1>'); } diff --git a/lib/plugins/config/images/danger.png b/lib/plugins/config/images/danger.png Binary files differindex 7bd84f7a3..da0692429 100644 --- a/lib/plugins/config/images/danger.png +++ b/lib/plugins/config/images/danger.png diff --git a/lib/plugins/config/images/security.png b/lib/plugins/config/images/security.png Binary files differindex 1800f8e56..3ee8476ac 100644 --- a/lib/plugins/config/images/security.png +++ b/lib/plugins/config/images/security.png diff --git a/lib/plugins/config/images/warning.png b/lib/plugins/config/images/warning.png Binary files differindex c5e482f84..c1af79f0f 100644 --- a/lib/plugins/config/images/warning.png +++ b/lib/plugins/config/images/warning.png diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php index 8dae23110..316cc2c59 100644 --- a/lib/plugins/config/settings/config.class.php +++ b/lib/plugins/config/settings/config.class.php @@ -10,7 +10,9 @@ if(!defined('CM_KEYMARKER')) define('CM_KEYMARKER','____'); if (!class_exists('configuration')) { - + /** + * Class configuration + */ class configuration { var $_name = 'conf'; // name of the config variable found in the files (overridden by $config['varname']) @@ -38,7 +40,7 @@ if (!class_exists('configuration')) { public function configuration($datafile) { global $conf, $config_cascade; - if (!@file_exists($datafile)) { + if (!file_exists($datafile)) { msg('No configuration metadata found at - '.htmlspecialchars($datafile),-1); return; } @@ -123,8 +125,8 @@ if (!class_exists('configuration')) { $file = end($this->_local_files); // backup current file (remove any existing backup) - if (@file_exists($file) && $backup) { - if (@file_exists($file.'.bak')) @unlink($file.'.bak'); + if (file_exists($file) && $backup) { + if (file_exists($file.'.bak')) @unlink($file.'.bak'); if (!io_rename($file, $file.'.bak')) return false; } @@ -151,6 +153,8 @@ if (!class_exists('configuration')) { /** * Update last modified time stamp of the config file + * + * @return bool */ public function touch_settings(){ if ($this->locked) return false; @@ -187,7 +191,7 @@ if (!class_exists('configuration')) { if ($this->_format == 'php') { - if(@file_exists($file)){ + if(file_exists($file)){ $contents = @php_strip_whitespace($file); }else{ $contents = ''; @@ -277,7 +281,7 @@ if (!class_exists('configuration')) { $local = $this->_local_files[0]; if (!is_writable(dirname($local))) return true; - if (@file_exists($local) && !is_writable($local)) return true; + if (file_exists($local) && !is_writable($local)) return true; return false; } @@ -285,6 +289,10 @@ if (!class_exists('configuration')) { /** * not used ... conf's contents are an array! * reduce any multidimensional settings to one dimension using CM_KEYMARKER + * + * @param $conf + * @param string $prefix + * @return array */ protected function _flatten($conf,$prefix='') { @@ -337,7 +345,7 @@ if (!class_exists('configuration')) { foreach ($this->get_plugin_list() as $plugin) { $plugin_dir = plugin_directory($plugin); - if (@file_exists(DOKU_PLUGIN.$plugin_dir.$file)){ + if (file_exists(DOKU_PLUGIN.$plugin_dir.$file)){ $meta = array(); @include(DOKU_PLUGIN.$plugin_dir.$file); @include(DOKU_PLUGIN.$plugin_dir.$class); @@ -352,7 +360,7 @@ if (!class_exists('configuration')) { } // the same for the active template - if (@file_exists(tpl_incdir().$file)){ + if (file_exists(tpl_incdir().$file)){ $meta = array(); @include(tpl_incdir().$file); @include(tpl_incdir().$class); @@ -380,7 +388,7 @@ if (!class_exists('configuration')) { foreach ($this->get_plugin_list() as $plugin) { $plugin_dir = plugin_directory($plugin); - if (@file_exists(DOKU_PLUGIN.$plugin_dir.$file)){ + if (file_exists(DOKU_PLUGIN.$plugin_dir.$file)){ $conf = $this->_read_config(DOKU_PLUGIN.$plugin_dir.$file); foreach ($conf as $key => $value){ $default['plugin'.CM_KEYMARKER.$plugin.CM_KEYMARKER.$key] = $value; @@ -389,7 +397,7 @@ if (!class_exists('configuration')) { } // the same for the active template - if (@file_exists(tpl_incdir().$file)){ + if (file_exists(tpl_incdir().$file)){ $conf = $this->_read_config(tpl_incdir().$file); foreach ($conf as $key => $value){ $default['tpl'.CM_KEYMARKER.$tpl.CM_KEYMARKER.$key] = $value; @@ -403,6 +411,9 @@ if (!class_exists('configuration')) { } if (!class_exists('setting')) { + /** + * Class setting + */ class setting { var $_key = ''; @@ -452,7 +463,7 @@ if (!class_exists('setting')) { * - if changed value passes error check, set $this->_local to the new value * * @param mixed $input the new value - * @return boolean true if changed, false otherwise (incl. on error) + * @return boolean true if changed, false otherwise (also on error) */ public function update($input) { if (is_null($input)) return false; @@ -476,10 +487,9 @@ if (!class_exists('setting')) { * * @param DokuWiki_Plugin $plugin object of config plugin * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting - * @return array(string $label_html, string $input_html) + * @return string[] with content array(string $label_html, string $input_html) */ public function html(&$plugin, $echo=false) { - $value = ''; $disable = ''; if ($this->is_protected()) { @@ -503,6 +513,10 @@ if (!class_exists('setting')) { /** * Generate string to save setting value to file according to $fmt + * + * @param string $var name of variable + * @param string $fmt save format + * @return string */ public function out($var, $fmt='php') { @@ -556,7 +570,7 @@ if (!class_exists('setting')) { /** * Returns caution * - * @return bool|string caution string, otherwise false for invalid caution + * @return false|string caution string, otherwise false for invalid caution */ public function caution() { if (!empty($this->_caution)) { @@ -603,12 +617,15 @@ if (!class_exists('setting')) { if (!class_exists('setting_array')) { + /** + * Class setting_array + */ class setting_array extends setting { /** * Create an array from a string * - * @param $string + * @param string $string * @return array */ protected function _from_string($string){ @@ -622,7 +639,7 @@ if (!class_exists('setting_array')) { /** * Create a string from an array * - * @param $array + * @param array $array * @return string */ protected function _from_array($array){ @@ -657,13 +674,23 @@ if (!class_exists('setting_array')) { return true; } + /** + * Escaping + * + * @param string $string + * @return string + */ protected function _escape($string) { $tr = array("\\" => '\\\\', "'" => '\\\''); return "'".strtr( cleanText($string), $tr)."'"; } /** - * generate string to save setting value to file according to $fmt + * Generate string to save setting value to file according to $fmt + * + * @param string $var name of variable + * @param string $fmt save format + * @return string */ function out($var, $fmt='php') { @@ -680,8 +707,14 @@ if (!class_exists('setting_array')) { return $out; } + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { - $value = ''; $disable = ''; if ($this->is_protected()) { @@ -706,9 +739,18 @@ if (!class_exists('setting_array')) { } if (!class_exists('setting_string')) { + /** + * Class setting_string + */ class setting_string extends setting { + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { - $value = ''; $disable = ''; if ($this->is_protected()) { @@ -733,10 +775,21 @@ if (!class_exists('setting_string')) { } if (!class_exists('setting_password')) { + /** + * Class setting_password + */ class setting_password extends setting_string { var $_code = 'plain'; // mechanism to be used to obscure passwords + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if ($this->is_protected()) return false; if (!$input) return false; @@ -751,9 +804,15 @@ if (!class_exists('setting_password')) { return true; } + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { - $value = ''; $disable = $this->is_protected() ? 'disabled="disabled"' : ''; $key = htmlspecialchars($this->_key); @@ -766,7 +825,9 @@ if (!class_exists('setting_password')) { } if (!class_exists('setting_email')) { - + /** + * Class setting_email + */ class setting_email extends setting_string { var $_multiple = false; var $_placeholders = false; @@ -775,6 +836,7 @@ if (!class_exists('setting_email')) { * update setting with user provided value $input * if value fails error check, save it * + * @param mixed $input * @return boolean true if changed, false otherwise (incl. on error) */ function update($input) { @@ -829,7 +891,17 @@ if (!class_exists('setting_email')) { * @deprecated 2013-02-16 */ if (!class_exists('setting_richemail')) { + /** + * Class setting_richemail + */ class setting_richemail extends setting_email { + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { $this->_placeholders = true; return parent::update($input); @@ -839,6 +911,9 @@ if (!class_exists('setting_richemail')) { if (!class_exists('setting_numeric')) { + /** + * Class setting_numeric + */ class setting_numeric extends setting_string { // This allows for many PHP syntax errors... // var $_pattern = '/^[-+\/*0-9 ]*$/'; @@ -847,6 +922,14 @@ if (!class_exists('setting_numeric')) { var $_min = null; var $_max = null; + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { $local = $this->_local; $valid = parent::update($input); @@ -863,6 +946,13 @@ if (!class_exists('setting_numeric')) { return $valid; } + /** + * Generate string to save setting value to file according to $fmt + * + * @param string $var name of variable + * @param string $fmt save format + * @return string + */ function out($var, $fmt='php') { if ($this->is_protected()) return ''; @@ -881,6 +971,9 @@ if (!class_exists('setting_numeric')) { } if (!class_exists('setting_numericopt')) { + /** + * Class setting_numericopt + */ class setting_numericopt extends setting_numeric { // just allow an empty config var $_pattern = '/^(|[-]?[0-9]+(?:[-+*][0-9]+)*)$/'; @@ -888,10 +981,18 @@ if (!class_exists('setting_numericopt')) { } if (!class_exists('setting_onoff')) { + /** + * Class setting_onoff + */ class setting_onoff extends setting_numeric { - + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo = false) { - $value = ''; $disable = ''; if ($this->is_protected()) { @@ -909,6 +1010,14 @@ if (!class_exists('setting_onoff')) { return array($label,$input); } + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if ($this->is_protected()) return false; @@ -923,11 +1032,21 @@ if (!class_exists('setting_onoff')) { } if (!class_exists('setting_multichoice')) { + /** + * Class setting_multichoice + */ class setting_multichoice extends setting_string { var $_choices = array(); + var $lang; //some custom language strings are stored in setting + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo = false) { - $value = ''; $disable = ''; $nochoice = ''; @@ -970,6 +1089,14 @@ if (!class_exists('setting_multichoice')) { return array($label,$input); } + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if (is_null($input)) return false; if ($this->is_protected()) return false; @@ -987,10 +1114,20 @@ if (!class_exists('setting_multichoice')) { if (!class_exists('setting_dirchoice')) { + /** + * Class setting_dirchoice + */ class setting_dirchoice extends setting_multichoice { var $_dir = ''; + /** + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value + */ function initialize($default,$local,$protected) { // populate $this->_choices with a list of directories @@ -1016,12 +1153,18 @@ if (!class_exists('setting_dirchoice')) { if (!class_exists('setting_hidden')) { + /** + * Class setting_hidden + */ class setting_hidden extends setting { // Used to explicitly ignore a setting in the configuration manager. } } if (!class_exists('setting_fieldset')) { + /** + * Class setting_fieldset + */ class setting_fieldset extends setting { // A do-nothing class used to detect the 'fieldset' type. // Used to start a new settings "display-group". @@ -1029,6 +1172,9 @@ if (!class_exists('setting_fieldset')) { } if (!class_exists('setting_undefined')) { + /** + * Class setting_undefined + */ class setting_undefined extends setting_hidden { // A do-nothing class used to detect settings with no metadata entry. // Used internaly to hide undefined settings, and generate the undefined settings list. @@ -1036,6 +1182,9 @@ if (!class_exists('setting_undefined')) { } if (!class_exists('setting_no_class')) { + /** + * Class setting_no_class + */ class setting_no_class extends setting_undefined { // A do-nothing class used to detect settings with a missing setting class. // Used internaly to hide undefined settings, and generate the undefined settings list. @@ -1043,6 +1192,9 @@ if (!class_exists('setting_no_class')) { } if (!class_exists('setting_no_default')) { + /** + * Class setting_no_default + */ class setting_no_default extends setting_undefined { // A do-nothing class used to detect settings with no default value. // Used internaly to hide undefined settings, and generate the undefined settings list. @@ -1050,11 +1202,22 @@ if (!class_exists('setting_no_default')) { } if (!class_exists('setting_multicheckbox')) { + /** + * Class setting_multicheckbox + */ class setting_multicheckbox extends setting_string { var $_choices = array(); var $_combine = array(); + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if ($this->is_protected()) return false; @@ -1075,9 +1238,15 @@ if (!class_exists('setting_multicheckbox')) { return true; } + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return string[] with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { - $value = ''; $disable = ''; if ($this->is_protected()) { @@ -1125,7 +1294,7 @@ if (!class_exists('setting_multicheckbox')) { // handle any remaining values $other = join(',',$value); - $class = (count($default == count($value)) && (count($value) == count(array_intersect($value,$default)))) ? + $class = ((count($default) == count($value)) && (count($value) == count(array_intersect($value,$default)))) ? " selectiondefault" : ""; $input .= '<div class="other'.$class.'">'."\n"; @@ -1139,6 +1308,9 @@ if (!class_exists('setting_multicheckbox')) { /** * convert comma separated list to an array and combine any complimentary values + * + * @param string $str + * @return array */ function _str2array($str) { $array = explode(',',$str); @@ -1162,6 +1334,9 @@ if (!class_exists('setting_multicheckbox')) { /** * convert array of values + other back to a comma separated list, incl. splitting any combined values + * + * @param array $input + * @return string */ function _array2str($input) { @@ -1190,6 +1365,9 @@ if (!class_exists('setting_multicheckbox')) { } if (!class_exists('setting_regex')){ + /** + * Class setting_regex + */ class setting_regex extends setting_string { var $_delimiter = '/'; // regex delimiter to be used in testing input @@ -1213,7 +1391,7 @@ if (!class_exists('setting_regex')){ // see if the regex compiles and runs (we don't check for effectiveness) $regex = $this->_delimiter . $input . $this->_delimiter . $this->_pregflags; $lastError = error_get_last(); - $ok = @preg_match($regex,'testdata'); + @preg_match($regex,'testdata'); if (preg_last_error() != PREG_NO_ERROR || error_get_last() != $lastError) { $this->_input = $input; $this->_error = true; diff --git a/lib/plugins/config/settings/extra.class.php b/lib/plugins/config/settings/extra.class.php index 83de802a3..fd3a90e28 100644 --- a/lib/plugins/config/settings/extra.class.php +++ b/lib/plugins/config/settings/extra.class.php @@ -6,8 +6,15 @@ */ if (!class_exists('setting_sepchar')) { + /** + * Class setting_sepchar + */ class setting_sepchar extends setting_multichoice { + /** + * @param string $key + * @param array|null $param array with metadata of setting + */ function setting_sepchar($key,$param=null) { $str = '_-.'; for ($i=0;$i<strlen($str);$i++) $this->_choices[] = $str{$i}; @@ -19,8 +26,19 @@ if (!class_exists('setting_sepchar')) { } if (!class_exists('setting_savedir')) { + /** + * Class setting_savedir + */ class setting_savedir extends setting_string { + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if ($this->is_protected()) return false; @@ -40,9 +58,20 @@ if (!class_exists('setting_savedir')) { } if (!class_exists('setting_authtype')) { + /** + * Class setting_authtype + */ class setting_authtype extends setting_multichoice { + /** + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value + */ function initialize($default,$local,$protected) { + /** @var $plugin_controller Doku_Plugin_Controller */ global $plugin_controller; // retrieve auth types provided by plugins @@ -53,7 +82,16 @@ if (!class_exists('setting_authtype')) { parent::initialize($default,$local,$protected); } + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { + /** @var $plugin_controller Doku_Plugin_Controller */ global $plugin_controller; // is an update possible/requested? @@ -92,8 +130,19 @@ if (!class_exists('setting_authtype')) { } if (!class_exists('setting_im_convert')) { + /** + * Class setting_im_convert + */ class setting_im_convert extends setting_string { + /** + * update changed setting with user provided value $input + * - if changed value fails error check, save it to $this->_input (to allow echoing later) + * - if changed value passes error check, set $this->_local to the new value + * + * @param mixed $input the new value + * @return boolean true if changed, false otherwise (also on error) + */ function update($input) { if ($this->is_protected()) return false; @@ -102,7 +151,7 @@ if (!class_exists('setting_im_convert')) { $value = is_null($this->_local) ? $this->_default : $this->_local; if ($value == $input) return false; - if ($input && !@file_exists($input)) { + if ($input && !file_exists($input)) { $this->_error = true; $this->_input = $input; return false; @@ -115,14 +164,24 @@ if (!class_exists('setting_im_convert')) { } if (!class_exists('setting_disableactions')) { + /** + * Class setting_disableactions + */ class setting_disableactions extends setting_multicheckbox { + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return array with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { global $lang; // make some language adjustments (there must be a better way) // transfer some DokuWiki language strings to the plugin - if (!$plugin->localised) $this->setupLocale(); + if (!$plugin->localised) $plugin->setupLocale(); $plugin->lang[$this->_key.'_revisions'] = $lang['btn_revs']; foreach ($this->_choices as $choice) @@ -134,10 +193,20 @@ if (!class_exists('setting_disableactions')) { } if (!class_exists('setting_compression')) { + /** + * Class setting_compression + */ class setting_compression extends setting_multichoice { var $_choices = array('0'); // 0 = no compression, always supported + /** + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value + */ function initialize($default,$local,$protected) { // populate _choices with the compression methods supported by this php installation @@ -150,16 +219,26 @@ if (!class_exists('setting_compression')) { } if (!class_exists('setting_license')) { + /** + * Class setting_license + */ class setting_license extends setting_multichoice { var $_choices = array(''); // none choosen + /** + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value + */ function initialize($default,$local,$protected) { global $license; foreach($license as $key => $data){ $this->_choices[] = $key; - $this->lang[$this->_key.'_o_'.$key] = $data['name']; + $this->lang[$this->_key.'_o_'.$key] = $data['name']; // stored in setting } parent::initialize($default,$local,$protected); @@ -169,9 +248,20 @@ if (!class_exists('setting_license')) { if (!class_exists('setting_renderer')) { + /** + * Class setting_renderer + */ class setting_renderer extends setting_multichoice { var $_prompts = array(); - + var $_format = null; + + /** + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value + */ function initialize($default,$local,$protected) { $format = $this->_format; @@ -188,11 +278,18 @@ if (!class_exists('setting_renderer')) { parent::initialize($default,$local,$protected); } + /** + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return array with content array(string $label_html, string $input_html) + */ function html(&$plugin, $echo=false) { // make some language adjustments (there must be a better way) // transfer some plugin names to the config plugin - if (!$plugin->localised) $this->setupLocale(); + if (!$plugin->localised) $plugin->setupLocale(); foreach ($this->_choices as $choice) { if (!isset($plugin->lang[$this->_key.'_o_'.$choice])) { diff --git a/lib/plugins/extension/admin.php b/lib/plugins/extension/admin.php index 99c74848b..71257cf43 100644 --- a/lib/plugins/extension/admin.php +++ b/lib/plugins/extension/admin.php @@ -54,6 +54,10 @@ class admin_plugin_extension extends DokuWiki_Admin_Plugin { msg($this->getLang('repo_error').' [<a href="'.$url.'">'.$this->getLang('repo_retry').'</a>]', -1); } + if(!in_array('ssl', stream_get_transports())) { + msg($this->getLang('nossl'), -1); + } + /* @var helper_plugin_extension_extension $extension */ $extension = $this->loadHelper('extension_extension'); @@ -75,10 +79,10 @@ class admin_plugin_extension extends DokuWiki_Admin_Plugin { case 'uninstall': $extension->setExtension($extname); $status = $extension->uninstall(); - if($status !== true) { - msg($status, -1); - } else { + if($status) { msg(sprintf($this->getLang('msg_delete_success'), hsc($extension->getDisplayName())), 1); + } else { + msg(sprintf($this->getLang('msg_delete_failed'), hsc($extension->getDisplayName())), -1); } break; case 'enable'; diff --git a/lib/plugins/extension/helper/extension.php b/lib/plugins/extension/helper/extension.php index 2aca0e218..6c0946b09 100644 --- a/lib/plugins/extension/helper/extension.php +++ b/lib/plugins/extension/helper/extension.php @@ -707,7 +707,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { $plugin = null; foreach($plugin_types as $type) { - if(@file_exists($path.$type.'.php')) { + if(file_exists($path.$type.'.php')) { $plugin = plugin_load($type, $this->base); if ($plugin) break; } @@ -799,7 +799,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { * * The directory is registered for cleanup when the class is destroyed * - * @return bool|string + * @return false|string */ protected function mkTmpDir(){ $dir = io_mktmpdir(); @@ -907,12 +907,12 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { // check to make sure we aren't overwriting anything $target = $target_base_dir.$item['base']; - if(!$overwrite && @file_exists($target)) { + if(!$overwrite && file_exists($target)) { // TODO remember our settings, ask the user to confirm overwrite continue; } - $action = @file_exists($target) ? 'update' : 'install'; + $action = file_exists($target) ? 'update' : 'install'; // copy action if($this->dircopy($item['tmp'], $target)) { @@ -1079,7 +1079,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { * * @author Andreas Gohr <andi@splitbrain.org> * @param string $file The file to analyze - * @return string|bool false if the file can't be read, otherwise an "extension" + * @return string|false false if the file can't be read, otherwise an "extension" */ private function guess_archive($file) { $fh = fopen($file, 'rb'); @@ -1095,6 +1095,10 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { /** * Copy with recursive sub-directory support + * + * @param string $src filename path to file + * @param string $dst filename path to file + * @return bool|int|string */ private function dircopy($src, $dst) { global $conf; @@ -1113,7 +1117,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { return $ok; } else { - $exists = @file_exists($dst); + $exists = file_exists($dst); if(!@copy($src, $dst)) return false; if(!$exists && !empty($conf['fperm'])) chmod($dst, $conf['fperm']); diff --git a/lib/plugins/extension/helper/list.php b/lib/plugins/extension/helper/list.php index 9b1988d84..8bcd00ec6 100644 --- a/lib/plugins/extension/helper/list.php +++ b/lib/plugins/extension/helper/list.php @@ -333,7 +333,6 @@ class helper_plugin_extension_list extends DokuWiki_Plugin { * Shortens the URL for display * * @param string $url - * * @return string HTML link */ function shortlink($url){ @@ -461,6 +460,7 @@ class helper_plugin_extension_list extends DokuWiki_Plugin { * @return string The HTML code */ function make_actions(helper_plugin_extension_extension $extension) { + global $conf; $return = ''; $errors = ''; @@ -492,6 +492,10 @@ class helper_plugin_extension_list extends DokuWiki_Plugin { $errors .= '<p class="permerror">'.$this->getLang('git').'</p>'; } + if ($extension->isEnabled() && in_array('Auth', $extension->getTypes()) && $conf['authtype'] != $extension->getID()) { + $errors .= '<p class="permerror">'.$this->getLang('auth').'</p>'; + } + }else{ if (($canmod = $extension->canModify()) === true) { if ($extension->getDownloadURL()) { diff --git a/lib/plugins/extension/helper/repository.php b/lib/plugins/extension/helper/repository.php index 6ffe89eb7..5dc2707cf 100644 --- a/lib/plugins/extension/helper/repository.php +++ b/lib/plugins/extension/helper/repository.php @@ -32,7 +32,7 @@ class helper_plugin_extension_repository extends DokuWiki_Plugin { $request_needed = false; foreach ($list as $name) { $cache = new cache('##extension_manager##'.$name, '.repo'); - $result = null; + if (!isset($this->loaded_extensions[$name]) && $this->hasAccess() && !$cache->useCache(array('age' => 3600 * 24))) { $this->loaded_extensions[$name] = true; $request_data['ext'][] = $name; @@ -64,7 +64,7 @@ class helper_plugin_extension_repository extends DokuWiki_Plugin { public function hasAccess() { if ($this->has_access === null) { $cache = new cache('##extension_manager###hasAccess', '.repo'); - $result = null; + if (!$cache->useCache(array('age' => 3600 * 24, 'purge'=>1))) { $httpclient = new DokuHTTPClient(); $httpclient->timeout = 5; @@ -91,7 +91,7 @@ class helper_plugin_extension_repository extends DokuWiki_Plugin { */ public function getData($name) { $cache = new cache('##extension_manager##'.$name, '.repo'); - $result = null; + if (!isset($this->loaded_extensions[$name]) && $this->hasAccess() && !$cache->useCache(array('age' => 3600 * 24))) { $this->loaded_extensions[$name] = true; $httpclient = new DokuHTTPClient(); diff --git a/lib/plugins/extension/images/disabled.png b/lib/plugins/extension/images/disabled.png Binary files differindex 93a813642..9c18b0452 100644 --- a/lib/plugins/extension/images/disabled.png +++ b/lib/plugins/extension/images/disabled.png diff --git a/lib/plugins/extension/images/donate.png b/lib/plugins/extension/images/donate.png Binary files differindex 9e234da1c..a76dfaaec 100644 --- a/lib/plugins/extension/images/donate.png +++ b/lib/plugins/extension/images/donate.png diff --git a/lib/plugins/extension/images/down.png b/lib/plugins/extension/images/down.png Binary files differindex df7beda4e..8e399a97d 100644 --- a/lib/plugins/extension/images/down.png +++ b/lib/plugins/extension/images/down.png diff --git a/lib/plugins/extension/images/enabled.png b/lib/plugins/extension/images/enabled.png Binary files differindex 92d958802..edbbb5b3c 100644 --- a/lib/plugins/extension/images/enabled.png +++ b/lib/plugins/extension/images/enabled.png diff --git a/lib/plugins/extension/images/overlay.png b/lib/plugins/extension/images/overlay.png Binary files differindex 8f92c2fe7..5414206c5 100644 --- a/lib/plugins/extension/images/overlay.png +++ b/lib/plugins/extension/images/overlay.png diff --git a/lib/plugins/extension/images/plugin.png b/lib/plugins/extension/images/plugin.png Binary files differindex e4a2d3be6..62424b2c7 100644 --- a/lib/plugins/extension/images/plugin.png +++ b/lib/plugins/extension/images/plugin.png diff --git a/lib/plugins/extension/images/tag.png b/lib/plugins/extension/images/tag.png Binary files differindex 155dbb3dd..1b1dd750c 100644 --- a/lib/plugins/extension/images/tag.png +++ b/lib/plugins/extension/images/tag.png diff --git a/lib/plugins/extension/images/template.png b/lib/plugins/extension/images/template.png Binary files differindex ee74bc1d5..67240d1eb 100644 --- a/lib/plugins/extension/images/template.png +++ b/lib/plugins/extension/images/template.png diff --git a/lib/plugins/extension/images/up.png b/lib/plugins/extension/images/up.png Binary files differindex ec9337715..531b2dd7b 100644 --- a/lib/plugins/extension/images/up.png +++ b/lib/plugins/extension/images/up.png diff --git a/lib/plugins/extension/images/warning.png b/lib/plugins/extension/images/warning.png Binary files differindex c5e482f84..c1af79f0f 100644 --- a/lib/plugins/extension/images/warning.png +++ b/lib/plugins/extension/images/warning.png diff --git a/lib/plugins/extension/lang/cs/intro_plugins.txt b/lib/plugins/extension/lang/cs/intro_plugins.txt new file mode 100644 index 000000000..a6f62746a --- /dev/null +++ b/lib/plugins/extension/lang/cs/intro_plugins.txt @@ -0,0 +1 @@ +Toto je seznam momentálně nainstalovaných zásuvných modulů vaší DokuWiki. V tomto seznamu je lze zapínat, vypínat nebo kompletně odinstalovat. Jsou zde také vidět dostupné aktualizace pro moduly, ale před jejich případným aktualizováním si vždy přečtěte jejich dokumentaci.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/cs/intro_search.txt b/lib/plugins/extension/lang/cs/intro_search.txt new file mode 100644 index 000000000..4258ac4f2 --- /dev/null +++ b/lib/plugins/extension/lang/cs/intro_search.txt @@ -0,0 +1 @@ +Tato záložka poskytuje náhled na všechny dostupné moduly a šablony třetích stran pro DokuWiki. Jejich instalací se múžete vystavit **bezpečnostním rizikům** o kterých se můžete více dočíst v oddíle [[doku>security#plugin_security|plugin security]].
\ No newline at end of file diff --git a/lib/plugins/extension/lang/cs/intro_templates.txt b/lib/plugins/extension/lang/cs/intro_templates.txt new file mode 100644 index 000000000..45abe952c --- /dev/null +++ b/lib/plugins/extension/lang/cs/intro_templates.txt @@ -0,0 +1 @@ +Toto jsou šablony, které jsou momentálně nainstalovány v této DokuWiki. Aktuálně používanu šablonu lze vybrat ve [[?do=admin&page=config|Správci rozšíření]].
\ No newline at end of file diff --git a/lib/plugins/extension/lang/cs/lang.php b/lib/plugins/extension/lang/cs/lang.php index 27b3a94a3..dc38afd52 100644 --- a/lib/plugins/extension/lang/cs/lang.php +++ b/lib/plugins/extension/lang/cs/lang.php @@ -15,6 +15,7 @@ $lang['notimplemented'] = 'Tato vychytávka není dosud implementována'; $lang['notinstalled'] = 'Toto rozšíření není instalováno'; $lang['alreadyenabled'] = 'Toto rozšíření je již povoleno'; $lang['alreadydisabled'] = 'Toto rozšíření je již vypnuto'; +$lang['pluginlistsaveerror'] = 'Došlo k chybě při ukládání seznamu zásuvných modulů'; $lang['unknownauthor'] = 'Neznámý autor'; $lang['unknownversion'] = 'Neznámá verze'; $lang['btn_info'] = 'Zobrazit více informací'; @@ -27,12 +28,15 @@ $lang['btn_reinstall'] = 'Přeinstalovat'; $lang['js']['reallydel'] = 'Opravdu odinstalovat toto rozšíření?'; $lang['search_for'] = 'Hledat rozšíření:'; $lang['search'] = 'Hledat'; +$lang['extensionby'] = '<strong>%s</strong> od %s'; +$lang['screenshot'] = 'Screenshot %s'; $lang['popularity'] = 'Popularita: %s%%'; $lang['homepage_link'] = 'Dokumenty'; $lang['bugs_features'] = 'Chyby'; $lang['tags'] = 'Štítky:'; $lang['author_hint'] = 'Vyhledat rozšíření podle tohoto autora'; $lang['installed'] = 'Nainstalováno:'; +$lang['downloadurl'] = 'URL stahování:'; $lang['repository'] = 'Repozitář:'; $lang['unknown'] = '<em>neznámý</em>'; $lang['installed_version'] = 'Nainstalovaná verze:'; @@ -41,6 +45,7 @@ $lang['available_version'] = 'Dostupná verze:'; $lang['compatible'] = 'Kompatibilní s:'; $lang['depends'] = 'Závisí na:'; $lang['similar'] = 'Podobný jako:'; +$lang['conflicts'] = 'Koliduje s:'; $lang['donate'] = 'Líbí se ti to?'; $lang['donate_action'] = 'Kup autorovi kávu!'; $lang['repo_retry'] = 'Opakovat'; @@ -54,4 +59,34 @@ $lang['status_disabled'] = 'zakázaný'; $lang['status_unmodifiable'] = 'neměnný'; $lang['status_plugin'] = 'zásuvný modul'; $lang['status_template'] = 'šablona'; +$lang['status_bundled'] = 'svázaný'; +$lang['msg_enabled'] = 'Zásuvný modul %s povolen'; +$lang['msg_disabled'] = 'Zásuvný modul %s zakázán'; $lang['msg_delete_success'] = 'Rozšíření odinstalováno'; +$lang['msg_delete_failed'] = 'Odinstalování rozšíření %s selhalo'; +$lang['msg_template_install_success'] = 'Šablona %s úspěšně nainstalována'; +$lang['msg_template_update_success'] = 'Šablona %s úspěšně aktualizována'; +$lang['msg_plugin_install_success'] = 'Zásuvný modul %s úspěšně nainstalován.'; +$lang['msg_plugin_update_success'] = 'Zásuvný modul %s úspěšně aktualizován.'; +$lang['msg_upload_failed'] = 'Nahrávání souboru selhalo'; +$lang['missing_dependency'] = '<strong>Chybějící nebo zakázaná závislost:</strong> %s'; +$lang['security_issue'] = '<strong>Bezpečnostní problém:</strong> %s'; +$lang['security_warning'] = '<strong>Bezpečnostní varování:</strong> %s'; +$lang['update_available'] = '<strong>Aktualizace:</strong> Je dostupná nová verze %s.'; +$lang['wrong_folder'] = '<strong>Zásuvný modul nesprávně nainstalován:</strong> Přejmenujte adresář modulu "%s" na "%s".'; +$lang['url_change'] = '<strong>URL se změnila:</strong> URL pro stahování se změnila od poslední aktualizace. Před další aktualizací tohoto rozšíření ověřte správnost nové URL.<br />Nová: %s<br />Stará: %s'; +$lang['error_badurl'] = 'Adresy URL by měly začínat s http nebo https'; +$lang['error_dircreate'] = 'Nelze vytvořit dočasný adresář pro přijetí stahování'; +$lang['error_download'] = 'Nelze stáhnout soubor: %s'; +$lang['error_decompress'] = 'Selhalo rozbalení staženého souboru. Toto je nejspíš důsledek poškození souboru při přenosu, zkuste soubor stáhnout znovu; případně nemusel být rozpoznán formát sbaleného souboru a bude třeba přistoupit k ruční instalaci. '; +$lang['error_findfolder'] = 'Nelze rozpoznat adresář pro rozšíření, je třeba stáhnout a instalovat ručně'; +$lang['error_copy'] = 'Došlo k chybě kopírování souborů při pokusu nainstalovat soubory do adresáře <em>%s</em>: může být plný disk nebo špatně nastavena přístupová práva. Tato chyba mohla zapříčinit pouze částečnou instalaci zásuvného modulu a uvést wiki do nestabilního stavu.'; +$lang['noperms'] = 'Nelze zapisovat do adresáře pro rozšíření'; +$lang['notplperms'] = 'Nelze zapisovat do odkládacího adresáře'; +$lang['nopluginperms'] = 'Nelze zapisovat do adresáře se zásuvnými moduly'; +$lang['git'] = 'Toto rozšíření bylo nainstalováno přes git. Touto cestou ho nejspíš tady aktualizovat nechcete.'; +$lang['auth'] = 'Tento ověřovací zásuvný modul není povolen v nastavení, zvažte jeho deaktivaci.'; +$lang['install_url'] = 'Nainstalovat z URL:'; +$lang['install_upload'] = 'Nahrát rozšíření:'; +$lang['repo_error'] = 'Nelze kontaktovat repozitář se zásuvnými moduly. Ujistěte se, že váš server může kontaktovat www.dokuwiki.org a zkontrolujte nastavení proxy.'; +$lang['nossl'] = 'Použité PHP pravděpodobně nepodporuje SSL. Stažení mnoha DokuWiki rozšíření nebude fungovat.'; diff --git a/lib/plugins/extension/lang/da/lang.php b/lib/plugins/extension/lang/da/lang.php new file mode 100644 index 000000000..c341bc5f9 --- /dev/null +++ b/lib/plugins/extension/lang/da/lang.php @@ -0,0 +1,24 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Søren Birk <soer9648@eucl.dk> + */ +$lang['update_available'] = '<strong>Opdatering:</strong> Ny version %s er tilgængelig.'; +$lang['wrong_folder'] = '<strong>Plugin ikke installeret korrekt:</strong> Omdøb plugin-mappe "%s" til "%s".'; +$lang['url_change'] = '<strong>URL ændret:</strong> Download-URL er blevet ændret siden sidste download. Kontrollér om den nye URL er valid, inden udvidelsen opdateres.<br />Ny: %s<br />Gammel: %s'; +$lang['error_badurl'] = 'URL\'er skal starte med http eller https'; +$lang['error_dircreate'] = 'Ikke i stand til at oprette midlertidig mappe til modtagelse af download'; +$lang['error_download'] = 'Ikke i stand til at downloade filen: %s'; +$lang['error_decompress'] = 'Ikke i stand til at dekomprimere den downloadede fil. Dette kan være et resultat af en dårlig download, hvor du i så fald bør du prøve igen; eller komprimeringsformatet kan være ukendt, hvor du i så fald bliver nød til at downloade og installere manuelt.'; +$lang['error_findfolder'] = 'Ikke i stand til at identificere udvidelsesmappe - du bliver nød til at downloade og installere manuelt.'; +$lang['error_copy'] = 'Der opstod en kopieringsfejl under installation af filer til mappen <em>%s</em>: disken kan være fuld, eller mangel på fil-tilladelser. Dette kan have resulteret i et delvist installeret plugin, og efterladt din wiki-installation ustabil.'; +$lang['noperms'] = 'Udvidelsesmappe er ikke skrivbar'; +$lang['notplperms'] = 'Skabelonmappe er ikke skrivbar'; +$lang['nopluginperms'] = 'Pluginmappe er ikke skrivbar'; +$lang['git'] = 'Udvidelsen blev installeret via git - du vil muligvis ikke opdatere herfra.'; +$lang['auth'] = 'Auth-plugin er ikke aktiveret i konfigurationen - overvej at deaktivere den.'; +$lang['install_url'] = 'Installér fra URL:'; +$lang['install_upload'] = 'Upload Udvidelse:'; +$lang['repo_error'] = 'Plugin-arkivet kunne ikke kontaktes. Kontrollér at din server kan kontakte www.dokuwiki.org kontrollér dine proxy-indstillinger.'; diff --git a/lib/plugins/extension/lang/en/lang.php b/lib/plugins/extension/lang/en/lang.php index 72c9b9e2d..f545b6da3 100644 --- a/lib/plugins/extension/lang/en/lang.php +++ b/lib/plugins/extension/lang/en/lang.php @@ -69,7 +69,8 @@ $lang['status_bundled'] = 'bundled'; $lang['msg_enabled'] = 'Plugin %s enabled'; $lang['msg_disabled'] = 'Plugin %s disabled'; -$lang['msg_delete_success'] = 'Extension uninstalled'; +$lang['msg_delete_success'] = 'Extension %s uninstalled'; +$lang['msg_delete_failed'] = 'Uninstalling Extension %s failed'; $lang['msg_template_install_success'] = 'Template %s installed successfully'; $lang['msg_template_update_success'] = 'Template %s updated successfully'; $lang['msg_plugin_install_success'] = 'Plugin %s installed successfully'; @@ -94,8 +95,10 @@ $lang['noperms'] = 'Extension directory is not writable'; $lang['notplperms'] = 'Template directory is not writable'; $lang['nopluginperms'] = 'Plugin directory is not writable'; $lang['git'] = 'This extension was installed via git, you may not want to update it here.'; +$lang['auth'] = 'This auth plugin is not enabled in configuration, consider disabling it.'; $lang['install_url'] = 'Install from URL:'; $lang['install_upload'] = 'Upload Extension:'; -$lang['repo_error'] = 'The plugin repository could not be contacted. Make sure your server is allowed to contact www.dokuwiki.org and check your proxy settings.';
\ No newline at end of file +$lang['repo_error'] = 'The plugin repository could not be contacted. Make sure your server is allowed to contact www.dokuwiki.org and check your proxy settings.'; +$lang['nossl'] = 'Your PHP seems to miss SSL support. Downloading will not work for many DokuWiki extensions.';
\ No newline at end of file diff --git a/lib/plugins/extension/lang/fi/lang.php b/lib/plugins/extension/lang/fi/lang.php new file mode 100644 index 000000000..a154f2563 --- /dev/null +++ b/lib/plugins/extension/lang/fi/lang.php @@ -0,0 +1,37 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Jussi Takala <jussi.takala@live.fi> + */ +$lang['tab_plugins'] = 'Asennetut liitännäiset'; +$lang['tab_search'] = 'Etsi ja asenna'; +$lang['tab_install'] = 'Manuaalinen asennus'; +$lang['notimplemented'] = 'Tätä ominaisuutta ei ole vielä toteutettu'; +$lang['notinstalled'] = 'Tätä laajennusta ei ole asennettu'; +$lang['alreadyenabled'] = 'Tämä laajennus on jo käytössä'; +$lang['alreadydisabled'] = 'Tämä laajennus on jo otettu pois käytöstä'; +$lang['pluginlistsaveerror'] = 'Tapahtui virhe tallentaessa liitännäislistaa'; +$lang['unknownauthor'] = 'Tuntematon tekijä'; +$lang['unknownversion'] = 'Tuntematon versio'; +$lang['btn_info'] = 'Näytä lisää tietoa'; +$lang['btn_update'] = 'Päivitä'; +$lang['btn_enable'] = 'Ota käyttöön'; +$lang['btn_disable'] = 'Poista käytöstä'; +$lang['btn_install'] = 'Asenna'; +$lang['btn_reinstall'] = 'Uudelleenasenna'; +$lang['js']['reallydel'] = 'Haluatko varmasti poistaa tämän laajennuksen?'; +$lang['search_for'] = 'Etsi laajennusta:'; +$lang['search'] = 'Etsi'; +$lang['downloadurl'] = 'Lataa URL-osoite'; +$lang['installed_version'] = 'Asennettu versio'; +$lang['install_date'] = 'Sinun viimeinen päivitys:'; +$lang['available_version'] = 'Saatavissa oleva versio:'; +$lang['status_installed'] = 'asennettu'; +$lang['status_protected'] = 'suojattu'; +$lang['status_enabled'] = 'otettu käyttöön'; +$lang['status_disabled'] = 'otettu pois käytöstä'; +$lang['status_plugin'] = 'liitännäinen'; +$lang['install_url'] = 'Asenna URL-osoitteesta:'; +$lang['install_upload'] = 'Ladattu laajennus:'; diff --git a/lib/plugins/extension/lang/fr/lang.php b/lib/plugins/extension/lang/fr/lang.php index 88234efd0..44d403847 100644 --- a/lib/plugins/extension/lang/fr/lang.php +++ b/lib/plugins/extension/lang/fr/lang.php @@ -4,8 +4,9 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Schplurtz le Déboulonné <schplurtz@laposte.net> + * @author Yves Grandvalet <Yves.Grandvalet@laposte.net> */ -$lang['menu'] = 'Gestionnaire d\'extension'; +$lang['menu'] = 'Gestionnaire d\'extensions'; $lang['tab_plugins'] = 'Greffons installés'; $lang['tab_templates'] = 'Thèmes installés'; $lang['tab_search'] = 'Rechercher et installer'; @@ -61,7 +62,8 @@ $lang['status_template'] = 'thème'; $lang['status_bundled'] = 'fourni'; $lang['msg_enabled'] = 'Greffon %s activé'; $lang['msg_disabled'] = 'Greffon %s désactivé'; -$lang['msg_delete_success'] = 'Extension désinstallée'; +$lang['msg_delete_success'] = 'Extension %s désinstallée.'; +$lang['msg_delete_failed'] = 'Echec de la désinstallation de l\'extension %s'; $lang['msg_template_install_success'] = 'Thème %s installée avec succès'; $lang['msg_template_update_success'] = 'Thème %s mis à jour avec succès'; $lang['msg_plugin_install_success'] = 'Greffon %s installé avec succès'; @@ -83,6 +85,8 @@ $lang['noperms'] = 'Impossible d\'écrire dans le dossier des exte $lang['notplperms'] = 'Impossible d\'écrire dans le dossier des thèmes.'; $lang['nopluginperms'] = 'Impossible d\'écrire dans le dossier des greffons.'; $lang['git'] = 'Cette extension a été installé via git, vous voudrez peut-être ne pas la mettre à jour ici.'; +$lang['auth'] = 'Votre configuration n\'utilise pas ce greffon d\'authentification. Vous devriez songer à le désactiver.'; $lang['install_url'] = 'Installez depuis l\'URL :'; $lang['install_upload'] = 'Téléversez l\'extension :'; $lang['repo_error'] = 'L\'entrepôt d\'extensions est injoignable. Veuillez vous assurer que le server web est autorisé à contacter www.dokuwiki.org et vérifier les réglages de proxy.'; +$lang['nossl'] = 'Votre version de PHP semble ne pas prendre en charge SSL. Le téléchargement de nombreuses extensions va échouer.'; diff --git a/lib/plugins/extension/lang/hr/lang.php b/lib/plugins/extension/lang/hr/lang.php index 4905fe864..e51d8cba3 100644 --- a/lib/plugins/extension/lang/hr/lang.php +++ b/lib/plugins/extension/lang/hr/lang.php @@ -5,25 +5,25 @@ * * @author Davor Turkalj <turki.bsc@gmail.com> */ -$lang['menu'] = 'Upravitelj dodataka'; -$lang['tab_plugins'] = 'Instalirani dodatci'; -$lang['tab_templates'] = 'Instalirani predlošci'; -$lang['tab_search'] = 'Potraži i instaliraj'; -$lang['tab_install'] = 'Ručno instaliranje'; +$lang['menu'] = 'Upravitelj proširenja'; +$lang['tab_plugins'] = 'Ugrađeni dodatci'; +$lang['tab_templates'] = 'Ugrađeni predlošci'; +$lang['tab_search'] = 'Potraži i ugradi'; +$lang['tab_install'] = 'Ručna ugradnja'; $lang['notimplemented'] = 'Ova mogućnost još nije napravljena'; -$lang['notinstalled'] = 'Dodatak nije instaliran'; -$lang['alreadyenabled'] = 'Ovaj dodatak je već omogućen'; -$lang['alreadydisabled'] = 'Ovaj dodatak je već onemogućen'; +$lang['notinstalled'] = 'Proširenje nije ugrađeno'; +$lang['alreadyenabled'] = 'Ovo proširenje je već omogućeno'; +$lang['alreadydisabled'] = 'Ovo proširenje je već onemogućeno'; $lang['pluginlistsaveerror'] = 'Dogodila se greška pri snimanju liste dodataka'; $lang['unknownauthor'] = 'Nepoznat autor'; $lang['unknownversion'] = 'Nepoznata inačica'; $lang['btn_info'] = 'Prikaži više informacija'; -$lang['btn_update'] = 'Dopuni'; +$lang['btn_update'] = 'Ažuriraj'; $lang['btn_uninstall'] = 'Ukloni'; $lang['btn_enable'] = 'Omogući'; $lang['btn_disable'] = 'Onemogući'; -$lang['btn_install'] = 'Postavi'; -$lang['btn_reinstall'] = 'Ponovno postavi'; +$lang['btn_install'] = 'Ugradi'; +$lang['btn_reinstall'] = 'Ponovno ugradi'; $lang['js']['reallydel'] = 'Zaista ukloniti ovo proširenje?'; $lang['search_for'] = 'Pretraži proširenja'; $lang['search'] = 'Pretraži'; @@ -33,12 +33,12 @@ $lang['popularity'] = 'Popularnost: %s%%'; $lang['homepage_link'] = 'Upute'; $lang['bugs_features'] = 'Greške'; $lang['tags'] = 'Oznake:'; -$lang['author_hint'] = 'Potraži dodatke od ovog autora'; -$lang['installed'] = 'Postavljeno:'; +$lang['author_hint'] = 'Potraži proširenja od ovog autora'; +$lang['installed'] = 'Ugrađeno:'; $lang['downloadurl'] = 'URL adresa preuzimanja:'; $lang['repository'] = 'Repozitorij:'; $lang['unknown'] = '<em>nepoznat</em>'; -$lang['installed_version'] = 'Postavljena inačica:'; +$lang['installed_version'] = 'Ugrađena inačica:'; $lang['install_date'] = 'Vaše zadnje osvježavanje:'; $lang['available_version'] = 'Dostupna inačica'; $lang['compatible'] = 'Kompatibilan s:'; @@ -61,7 +61,8 @@ $lang['status_template'] = 'predložak'; $lang['status_bundled'] = 'ugrađen'; $lang['msg_enabled'] = 'Dodatak %s omogućen'; $lang['msg_disabled'] = 'Dodatak %s onemogućen'; -$lang['msg_delete_success'] = 'Proširenje uklonjeno'; +$lang['msg_delete_success'] = 'Proširenje %s uklonjeno'; +$lang['msg_delete_failed'] = 'Uklanjanje proširenja %s nije uspjelo'; $lang['msg_template_install_success'] = 'Predložak %s uspješno ugrađen'; $lang['msg_template_update_success'] = 'Predložak %s uspješno nadograđen'; $lang['msg_plugin_install_success'] = 'Dodatak %s uspješno ugrađen'; @@ -83,6 +84,8 @@ $lang['noperms'] = 'Nije moguće pisati u mapu proširanja'; $lang['notplperms'] = 'Nije moguće pisati u mapu predloška'; $lang['nopluginperms'] = 'Nije moguće pisati u mapu dodatka'; $lang['git'] = 'Proširenje je ugrađeno preko Git-a, možda ga ne želite nadograđivati ovdje.'; +$lang['auth'] = 'Autorizacijski dodatak nije podešen, razmotrite njegovo onemogućavanje kao dodatka.'; $lang['install_url'] = 'Ugradi s URL-a:'; $lang['install_upload'] = 'Učitaj proširenje:'; $lang['repo_error'] = 'Repozitorij dodataka nije dostupan. Budite sigurni da server može pristupiti www.dokuwiki.org i provjerite proxy postavke.'; +$lang['nossl'] = 'Izgleda da korišteni PHP ne podržava SSL. Učitavanje neće raditi na mnogim DokuWiki dodatcima.'; diff --git a/lib/plugins/extension/lang/it/lang.php b/lib/plugins/extension/lang/it/lang.php index 7dff6c5b2..1aa658e0f 100644 --- a/lib/plugins/extension/lang/it/lang.php +++ b/lib/plugins/extension/lang/it/lang.php @@ -5,11 +5,18 @@ * * @author Francesco <francesco.cavalli@hotmail.com> * @author Fabio <fabioslurp@yahoo.it> + * @author Torpedo <dgtorpedo@gmail.com> */ +$lang['unknownauthor'] = 'Autore sconosciuto'; +$lang['unknownversion'] = 'Revisione sconosciuta'; +$lang['btn_info'] = 'Mostra maggiori informazioni'; +$lang['btn_update'] = 'Aggiorna'; +$lang['btn_uninstall'] = 'Disinstalla'; $lang['btn_enable'] = 'Abilita'; $lang['btn_disable'] = 'Disabilita'; $lang['btn_install'] = 'Installa'; $lang['btn_reinstall'] = 'Reinstalla'; +$lang['js']['reallydel'] = 'Sicuro di disinstallare questa estensione?'; $lang['search'] = 'Cerca'; $lang['homepage_link'] = 'Documenti'; $lang['bugs_features'] = 'Bug'; @@ -18,13 +25,18 @@ $lang['author_hint'] = 'Cerca estensioni per questo autore'; $lang['installed'] = 'Installato:'; $lang['downloadurl'] = 'URL download:'; $lang['repository'] = 'Repository'; +$lang['unknown'] = '<em>sconosciuto</em>'; $lang['installed_version'] = 'Versione installata'; $lang['install_date'] = 'Il tuo ultimo aggiornamento:'; $lang['available_version'] = 'Versione disponibile:'; $lang['compatible'] = 'Compatibile con:'; +$lang['depends'] = 'Dipende da:'; $lang['similar'] = 'Simile a:'; +$lang['conflicts'] = 'Conflitto con:'; $lang['donate'] = 'Simile a questo?'; +$lang['donate_action'] = 'Paga un caffè all\'autore!'; $lang['repo_retry'] = 'Riprova'; +$lang['provides'] = 'Fornisce:'; $lang['status'] = 'Status:'; $lang['status_installed'] = 'installato'; $lang['status_not_installed'] = 'non installato'; @@ -34,6 +46,15 @@ $lang['status_disabled'] = 'disabilitato'; $lang['status_unmodifiable'] = 'inmodificabile'; $lang['status_plugin'] = 'plugin'; $lang['status_template'] = 'modello'; +$lang['msg_enabled'] = 'Plugin %s abilitato'; +$lang['msg_disabled'] = 'Plugin %s disabilitato'; +$lang['msg_delete_success'] = 'Estensione %s disinstallata'; +$lang['msg_plugin_install_success'] = 'Plugin %s installato con successo'; +$lang['msg_plugin_update_success'] = 'Plugin %s aggiornato con successo'; +$lang['msg_upload_failed'] = 'Caricamento del file fallito'; +$lang['missing_dependency'] = '<strong>Dipendenza mancante o disabilitata: </strong> %s'; +$lang['update_available'] = '<strong>Aggiornamento:</strong> Nuova versione %s disponibile.'; +$lang['wrong_folder'] = '<strong>Plugin non installato correttamente:</strong> rinomina la directory del plugin "%s" in "%s".'; $lang['error_badurl'] = 'URLs deve iniziare con http o https'; $lang['error_dircreate'] = 'Impossibile creare una cartella temporanea per ricevere il download'; $lang['error_download'] = 'Impossibile scaricare il file: %s'; diff --git a/lib/plugins/extension/lang/ja/lang.php b/lib/plugins/extension/lang/ja/lang.php index dec46d629..ce6ed2b97 100644 --- a/lib/plugins/extension/lang/ja/lang.php +++ b/lib/plugins/extension/lang/ja/lang.php @@ -5,6 +5,7 @@ * * @author Hideaki SAWADA <chuno@live.jp> * @author PzF_X <jp_minecraft@yahoo.co.jp> + * @author Satoshi Sahara <sahara.satoshi@gmail.com> */ $lang['menu'] = '拡張機能管理'; $lang['tab_plugins'] = 'インストール済プラグイン'; @@ -62,7 +63,8 @@ $lang['status_template'] = 'テンプレート'; $lang['status_bundled'] = '同梱'; $lang['msg_enabled'] = '%s プラグインを有効化しました。'; $lang['msg_disabled'] = '%s プラグインを無効化しました。'; -$lang['msg_delete_success'] = '拡張機能をアンインストールしました。'; +$lang['msg_delete_success'] = '拡張機能 %s をアンインストールしました。'; +$lang['msg_delete_failed'] = '拡張機能 %s のアンインストールに失敗しました。'; $lang['msg_template_install_success'] = '%s テンプレートをインストールできました。'; $lang['msg_template_update_success'] = '%s テンプレートを更新できました。'; $lang['msg_plugin_install_success'] = '%s プラグインをインストールできました。'; @@ -84,6 +86,8 @@ $lang['noperms'] = '拡張機能ディレクトリが書き込み $lang['notplperms'] = 'テンプレートディレクトリが書き込み不可です。'; $lang['nopluginperms'] = 'プラグインディレクトリが書き込み不可です。'; $lang['git'] = 'この拡張機能は Git 経由でインストールされており、ここで更新すべきでないかもしれません。'; +$lang['auth'] = 'この認証プラグインは設定管理画面で無効化されています。'; $lang['install_url'] = 'URL からインストール:'; $lang['install_upload'] = '拡張機能をアップロード:'; $lang['repo_error'] = 'プラグインのリポジトリに接続できません。サーバーが www.dokuwiki.org に接続できることやプロキシの設定を確認して下さい。'; +$lang['nossl'] = 'PHP機能がSSLをサポートしていないため、拡張機能のダウンロードが正常に動作しません。'; diff --git a/lib/plugins/extension/lang/ko/lang.php b/lib/plugins/extension/lang/ko/lang.php index 53c9b4481..5dc5d8269 100644 --- a/lib/plugins/extension/lang/ko/lang.php +++ b/lib/plugins/extension/lang/ko/lang.php @@ -62,7 +62,8 @@ $lang['status_template'] = '템플릿'; $lang['status_bundled'] = '포함'; $lang['msg_enabled'] = '%s 플러그인이 활성화되었습니다'; $lang['msg_disabled'] = '%s 플러그인이 비활성화되었습니다'; -$lang['msg_delete_success'] = '확장 기능이 제거되었습니다'; +$lang['msg_delete_success'] = '%s 확장 기능이 제거되었습니다'; +$lang['msg_delete_failed'] = '%s 확장 기능 제거에 실패했습니다'; $lang['msg_template_install_success'] = '%s 템플릿을 성공적으로 설치했습니다'; $lang['msg_template_update_success'] = '%s 템플릿을 성공적으로 업데이트했습니다'; $lang['msg_plugin_install_success'] = '%s 플러그인을 성공적으로 설치했습니다'; @@ -79,11 +80,13 @@ $lang['error_dircreate'] = '다운로드를 받을 임시 폴더를 만들 $lang['error_download'] = '파일을 다운로드할 수 없습니다: %s'; $lang['error_decompress'] = '다운로드한 파일의 압축을 풀 수 없습니다. 이는 아마도 잘못된 다운로드의 결과로, 이럴 경우 다시 시도해야 합니다; 또는 압축 형식을 알 수 없으며, 이럴 경우 수동으로 다운로드하고 설치해야 합니다.'; $lang['error_findfolder'] = '확장 기능 디렉터리를 식별할 수 없습니다, 수동으로 다운로드하고 설치해야 합니다'; -$lang['error_copy'] = '<em>%s</em> 디렉터리에 파일을 설치하는 동안 파일 복사 오류가 발생했습니다: 디스크가 꽉 찼거나 파일 접근 권한이 잘못되었을 수도 있습니다. 플러그인 설치가 부분적으로 되었거나 불안정하게 위키 설치가 되었을 수 있습니다.'; +$lang['error_copy'] = '<em>%s</em> 디렉터리에 파일을 설치하는 동안 파일 복사 오류가 발생했습니다: 디스크가 꽉 찼거나 파일 접근 권한이 잘못되었을 수도 있습니다. 플러그인이 부분적으로 설치되어 위키가 불안정할지도 모릅니다'; $lang['noperms'] = '확장 기능 디렉터리에 쓸 수 없습니다'; $lang['notplperms'] = '임시 디렉터리에 쓸 수 없습니다'; $lang['nopluginperms'] = '플러그인 디렉터리에 쓸 수 없습니다'; -$lang['git'] = '이 확장 기능은 git을 통해 설치되었으며, 여기에서 업데이트할 수 없을 수 있습니다.'; +$lang['git'] = '이 확장 기능은 git를 통해 설치되었으며, 여기에서 업데이트할 수 없을 수 있습니다.'; +$lang['auth'] = '이 인증 플러그인은 환경 설정에서 활성화할 수 없습니다, 그것을 비활성화하는 것을 고려하세요.'; $lang['install_url'] = 'URL에서 설치:'; $lang['install_upload'] = '확장 기능 올리기:'; $lang['repo_error'] = '플러그인 저장소에 연결할 수 없습니다. 서버가 www.dokuwiki.org에 연결할 수 있는지 확인하고 프록시 설정을 확인하세요.'; +$lang['nossl'] = 'PHP가 SSL 지원을 하지 않는 것으로 보입니다. 많은 도쿠위키 확장 기능의 다운로드가 작동하지 않을 것입니다.'; diff --git a/lib/plugins/extension/lang/nl/lang.php b/lib/plugins/extension/lang/nl/lang.php index a54924e93..194b4b3e1 100644 --- a/lib/plugins/extension/lang/nl/lang.php +++ b/lib/plugins/extension/lang/nl/lang.php @@ -6,6 +6,7 @@ * @author Rene <wllywlnt@yahoo.com> * @author Gerrit Uitslag <klapinklapin@gmail.com> * @author Johan Vervloet <johan.vervloet@gmail.com> + * @author Mijndert <mijndert@mijndertstuij.nl> */ $lang['menu'] = 'Uitbreidingen'; $lang['tab_plugins'] = 'Geïnstalleerde Plugins'; @@ -63,7 +64,8 @@ $lang['status_template'] = 'template'; $lang['status_bundled'] = 'Gebundeld'; $lang['msg_enabled'] = 'Plugin %s ingeschakeld'; $lang['msg_disabled'] = 'Plugin %s uitgeschakeld'; -$lang['msg_delete_success'] = 'Uitbreiding gedeinstalleerd'; +$lang['msg_delete_success'] = 'Uitbreiding %s gedeinstalleerd'; +$lang['msg_delete_failed'] = 'Het deïnstalleren van de extensie %s is mislukt.'; $lang['msg_template_install_success'] = 'Template %s werd succesvol geïnstalleerd'; $lang['msg_template_update_success'] = 'Template %s werd succesvol geüpdatet'; $lang['msg_plugin_install_success'] = 'Plugin %s werd succesvol geïnstalleerd'; diff --git a/lib/plugins/extension/lang/pt/intro_install.txt b/lib/plugins/extension/lang/pt/intro_install.txt new file mode 100644 index 000000000..5e5871391 --- /dev/null +++ b/lib/plugins/extension/lang/pt/intro_install.txt @@ -0,0 +1 @@ +Aqui você pode instalar manualmente plugins e modelos ou enviando-os (upload) ou fornecendo uma URL de download direto.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/pt/intro_plugins.txt b/lib/plugins/extension/lang/pt/intro_plugins.txt new file mode 100644 index 000000000..fcfaa5cea --- /dev/null +++ b/lib/plugins/extension/lang/pt/intro_plugins.txt @@ -0,0 +1 @@ +Estes são os plugins instalados atualmente em seu DokuWiki. Você pode ativar ou desativar ou desinstala-los completamente aqui. Atualizações de plugins também são mostradas aqui, não se esqueça de ler a documentação do plug-in antes de atualizar.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/pt/intro_search.txt b/lib/plugins/extension/lang/pt/intro_search.txt new file mode 100644 index 000000000..be39a9860 --- /dev/null +++ b/lib/plugins/extension/lang/pt/intro_search.txt @@ -0,0 +1 @@ +Esta guia lhe dá acesso a todos os plugins e modelos de terceiros disponíveis DokuWiki. Por favor, esteja ciente de que a instalação de componentes de terceiros pode representar um risco de segurança ** **, você pode querer ler sobre [[doku> segurança # plugin_security | segurança plug-in]] antes de realizar a instalação de módulos de terceiros.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/pt/intro_templates.txt b/lib/plugins/extension/lang/pt/intro_templates.txt new file mode 100644 index 000000000..ecdf99f17 --- /dev/null +++ b/lib/plugins/extension/lang/pt/intro_templates.txt @@ -0,0 +1 @@ +Estes são os modelos atualmente instalados em seu DokuWiki. Você pode selecionar o modelo a ser usado no [[Do = admin & page = configuração |? Configuration Manager]].
\ No newline at end of file diff --git a/lib/plugins/extension/lang/pt/lang.php b/lib/plugins/extension/lang/pt/lang.php new file mode 100644 index 000000000..c7b4f29c2 --- /dev/null +++ b/lib/plugins/extension/lang/pt/lang.php @@ -0,0 +1,132 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Guido Salatino <guidorafael23@gmail.com> + */ +$lang['menu'] = 'Gerenciador de Extensões'; +$lang['tab_plugins'] = 'Plugins Instalados'; +$lang['tab_templates'] = 'Modelos Instalados'; +$lang['tab_search'] = 'Pesquisar e Instalar'; +$lang['tab_install'] = 'Instalação Manual'; +$lang['notimplemented'] = 'Este recurso não foi implementado ainda'; +$lang['notinstalled'] = 'Esta extensão não está instalada'; +$lang['alreadyenabled'] = 'Esta extensão já foi ativada'; +$lang['alreadydisabled'] = 'Esta extensão já foi desativada'; +$lang['pluginlistsaveerror'] = 'Houve um erro ao salvar a lista de plugins'; +$lang['unknownauthor'] = 'Autor desconhecido'; +$lang['unknownversion'] = 'Versão desconhecida'; +$lang['btn_info'] = 'Mostrar mais informações'; +$lang['btn_update'] = 'Atualizar'; +$lang['btn_uninstall'] = 'Desinstalar'; +$lang['btn_enable'] = 'Habilitar'; +$lang['btn_disable'] = 'Desabilitar'; +$lang['btn_install'] = 'Instalar'; +$lang['btn_reinstall'] = 'Reinstalar'; +$lang['js']['reallydel'] = 'Confirma a desinstalação desta extensão?'; +$lang['search_for'] = 'Pesquisar Extensão:'; +$lang['search'] = 'Pesquisar'; +$lang['extensionby'] = '<strong>%s</strong> by %s'; +$lang['screenshot'] = 'Screenshot of %s'; +$lang['popularity'] = 'Popularidade: %s%%'; +$lang['homepage_link'] = 'Documentos'; +$lang['bugs_features'] = 'Erros'; +$lang['tags'] = 'Tags:'; +$lang['author_hint'] = 'Pesquisar extensões deste autor'; +$lang['installed'] = 'Instalado: +'; +$lang['downloadurl'] = 'Baixar URL: +'; +$lang['repository'] = 'Repositório: +'; +$lang['unknown'] = '<em> desconhecido </ em> +'; +$lang['installed_version'] = 'Versão instalada:'; +$lang['install_date'] = 'Sua última atualização:'; +$lang['available_version'] = 'Versão disponível: +'; +$lang['compatible'] = 'Compatível com:'; +$lang['depends'] = 'Depende de: +'; +$lang['similar'] = 'Semelhante a: +'; +$lang['conflicts'] = 'Conflitos com: +'; +$lang['donate'] = 'Assim? +'; +$lang['donate_action'] = 'Pague um café para o autor!'; +$lang['repo_retry'] = 'Tentar novamente +'; +$lang['provides'] = 'Fornece: +'; +$lang['status'] = 'Status: +'; +$lang['status_installed'] = 'instalado +'; +$lang['status_not_installed'] = 'não instalado +'; +$lang['status_protected'] = 'protegido +'; +$lang['status_enabled'] = 'habilitado'; +$lang['status_disabled'] = 'desabilitado'; +$lang['status_unmodifiable'] = 'imodificável +'; +$lang['status_plugin'] = 'plugin +'; +$lang['status_template'] = 'modelo +'; +$lang['status_bundled'] = 'empacotado +'; +$lang['msg_enabled'] = 'Plugin %s habilitado +'; +$lang['msg_disabled'] = 'Plugin %s desabilitado'; +$lang['msg_delete_success'] = 'Extensão %s desinstalada'; +$lang['msg_delete_failed'] = 'Desinstalar Extensão %s falhou +'; +$lang['msg_template_install_success'] = 'Modelo %s instalado com sucesso'; +$lang['msg_template_update_success'] = 'Modelo %s atualizado com sucesso +'; +$lang['msg_plugin_install_success'] = 'Plugin %s instalado com sucesso +'; +$lang['msg_plugin_update_success'] = 'Plugin %s atualizado com sucesso +'; +$lang['msg_upload_failed'] = 'Enviando o arquivo falhou +'; +$lang['missing_dependency'] = '<strong>dependência ausente ou desabilitada:</strong> %s +'; +$lang['security_issue'] = '<strong> Questão de segurança:</strong> %s +'; +$lang['security_warning'] = '<strong> Aviso de segurança:</strong> %s'; +$lang['update_available'] = '<strong>Atualização:</strong> Nova versão %s está disponível. +'; +$lang['wrong_folder'] = '<strong>Plugin instalado incorretamente: </strong> Renomear pasta de plugins de "%s" para "%s". +'; +$lang['url_change'] = '<strong>URL mudou: </strong> URL para download mudou desde o último download. Verifique se a nova URL é válida antes de atualizar a extensão <br/> Nova:%s<br/>Antiga:%s +'; +$lang['error_badurl'] = 'URLs deve começar com http ou https +'; +$lang['error_dircreate'] = 'Não é possível criar pasta temporária para receber o download +'; +$lang['error_download'] = 'Não é possível baixar o arquivo:%s +'; +$lang['error_decompress'] = 'Não é possível descompactar o arquivo baixado. Talvez seja resultado de um download ruim, nesse caso, você deve tentar novamente; ou o formato de compressão pode ser desconhecido, nesse caso, você precisará baixar e instalar manualmente.'; +$lang['error_findfolder'] = 'Não foi possível identificar diretório de extensão, você precisa baixar e instalar manualmente +'; +$lang['error_copy'] = 'Houve um erro na cópia do arquivo durante a tentativa de instalar os arquivos para o diretório <em>%s </em>: o disco pode estar cheio ou as permissões de acesso ao arquivo podem estar incorretas. Isso pode ter resultado em um plugin parcialmente instalado e tornar instável a sua instalação wiki +'; +$lang['noperms'] = 'Diretório da extensão não é gravável +'; +$lang['notplperms'] = 'Diretório do modelo não é gravável +'; +$lang['nopluginperms'] = 'Diretório do plugin não é gravável +'; +$lang['git'] = 'Esta extensão foi instalada via git, você não pode querer atualizá-la aqui. +'; +$lang['auth'] = 'Este plugin não está habilitado na configuração, considere desabilita-lo.'; +$lang['install_url'] = 'Instalar a partir da URL:'; +$lang['install_upload'] = 'Publique a Extensão:'; +$lang['repo_error'] = 'O repositório do plugin não pôde ser conectado. Verifique se o seu servidor está autorizado a conectar com www.dokuwiki.org e verifique as configurações de proxy do servidor. +'; +$lang['nossl'] = 'Seu PHP parece que perdeu o suporte a SSL. O download não vai funcionar para muitas extensões DokuWiki. +'; diff --git a/lib/plugins/extension/lang/ru/intro_install.txt b/lib/plugins/extension/lang/ru/intro_install.txt new file mode 100644 index 000000000..7b8ac661b --- /dev/null +++ b/lib/plugins/extension/lang/ru/intro_install.txt @@ -0,0 +1 @@ +Здесь вы можете самостоятельно установить плагины и шаблоны, загрузив их или предоставив прямой URL для скачивания.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ru/intro_plugins.txt b/lib/plugins/extension/lang/ru/intro_plugins.txt new file mode 100644 index 000000000..c5ea9e0ec --- /dev/null +++ b/lib/plugins/extension/lang/ru/intro_plugins.txt @@ -0,0 +1 @@ +Плагины, установленные в вашей «Докувики». Здесь вы можете их включить или выключить, или даже полностью удалить. Также здесь показываются обновления плагинов; обязательно прочтите документацию плагина перед обновлением.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ru/intro_search.txt b/lib/plugins/extension/lang/ru/intro_search.txt new file mode 100644 index 000000000..3c16748ba --- /dev/null +++ b/lib/plugins/extension/lang/ru/intro_search.txt @@ -0,0 +1 @@ +Вкладка даёт вам доступ ко всем имеющимся сторонним плагинам и шаблонам для «Докувики». Имейте ввиду, что установка стороннего кода может представлять **угрозу безопасности,** возможно вам нужно сперва прочитать о [[doku>security#plugin_security|безопасности плагинов]].
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ru/intro_templates.txt b/lib/plugins/extension/lang/ru/intro_templates.txt new file mode 100644 index 000000000..787b32fa3 --- /dev/null +++ b/lib/plugins/extension/lang/ru/intro_templates.txt @@ -0,0 +1 @@ +Шаблоны (темы оформления), установленные в вашей «Докувики». Шаблон, который нужно использовать, выбирается в [[?do=admin&page=config|настройках вики]]
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ru/lang.php b/lib/plugins/extension/lang/ru/lang.php index fa1625f28..381d84500 100644 --- a/lib/plugins/extension/lang/ru/lang.php +++ b/lib/plugins/extension/lang/ru/lang.php @@ -5,13 +5,19 @@ * * @author Aleksandr Selivanov <alexgearbox@yandex.ru> * @author Igor Degraf <igordegraf@gmail.com> + * @author Type-kun <workwork-1@yandex.ru> + * @author Vitaly Filatenko <kot@hacktest.net> */ $lang['menu'] = 'Управление дополнениями'; $lang['tab_plugins'] = 'Установленные плагины'; $lang['tab_templates'] = 'Установленные шаблоны'; $lang['tab_search'] = 'Поиск и установка'; $lang['tab_install'] = 'Ручная установка'; +$lang['notimplemented'] = 'Эта возможность ещё не реализована'; $lang['notinstalled'] = 'Это дополнение не установлено'; +$lang['alreadyenabled'] = 'Это расширение уже включено'; +$lang['alreadydisabled'] = 'Это расширение уже выключено'; +$lang['pluginlistsaveerror'] = 'Ошибка при сохранении списка плагинов'; $lang['unknownauthor'] = 'Автор неизвестен'; $lang['unknownversion'] = 'Версия неизвестна'; $lang['btn_info'] = 'Отобразить доп. информацию'; @@ -25,44 +31,62 @@ $lang['js']['reallydel'] = 'Действительно удалить эт $lang['search_for'] = 'Поиск дополнения:'; $lang['search'] = 'Найти'; $lang['extensionby'] = '<strong>%s</strong> — %s'; -$lang['popularity'] = 'Попоулярность: %s%%'; -$lang['bugs_features'] = 'Ошибки'; +$lang['screenshot'] = 'Скриншот: %s'; +$lang['popularity'] = 'Популярность: %s%%'; +$lang['homepage_link'] = 'Описание'; +$lang['bugs_features'] = 'Баг-трекер'; $lang['tags'] = 'Метки:'; -$lang['author_hint'] = 'Найти дополнения этого автора'; +$lang['author_hint'] = 'Найти дополнения автора'; $lang['installed'] = 'Установлено:'; -$lang['downloadurl'] = 'Ссылка для скачивания:'; +$lang['downloadurl'] = 'Скачать:'; $lang['repository'] = 'Репозиторий:'; $lang['unknown'] = '<em>неизвестно</em>'; -$lang['installed_version'] = 'Установленная версия:'; -$lang['install_date'] = 'Последнее обновление:'; +$lang['installed_version'] = 'Уст. версия:'; +$lang['install_date'] = 'Посл. обновление:'; $lang['available_version'] = 'Доступная версия:'; -$lang['compatible'] = 'Совместим с:'; -$lang['depends'] = 'Зависит от:'; -$lang['similar'] = 'Похож на:'; -$lang['conflicts'] = 'Конфликтует с:'; +$lang['compatible'] = 'Совместим с'; +$lang['depends'] = 'Зависит от'; +$lang['similar'] = 'Похож на'; +$lang['conflicts'] = 'Конфликтует с'; $lang['donate'] = 'Нравится?'; $lang['donate_action'] = 'Купить автору кофе!'; $lang['repo_retry'] = 'Повторить'; +$lang['provides'] = 'Предоставляет:'; +$lang['status'] = 'Статус:'; $lang['status_installed'] = 'установлено'; $lang['status_not_installed'] = 'не установлено'; $lang['status_protected'] = 'защищено'; -$lang['status_enabled'] = 'включен'; +$lang['status_enabled'] = 'включён'; $lang['status_disabled'] = 'отключено'; $lang['status_unmodifiable'] = 'неизменяемо'; $lang['status_plugin'] = 'плагин'; $lang['status_template'] = 'шаблон'; $lang['status_bundled'] = 'в комплекте'; -$lang['msg_enabled'] = 'Плагин %s включен'; -$lang['msg_disabled'] = 'Плагин %s отключен'; -$lang['msg_delete_success'] = 'Дополнение удалено'; +$lang['msg_enabled'] = 'Плагин %s включён'; +$lang['msg_disabled'] = 'Плагин %s отключён'; +$lang['msg_delete_success'] = 'Дополнение %s удалено'; +$lang['msg_delete_failed'] = 'Не удалось удалить расширение %s'; $lang['msg_template_install_success'] = 'Шаблон %s успешно установлен'; $lang['msg_template_update_success'] = 'Шаблон %s успешно обновлён'; $lang['msg_plugin_install_success'] = 'Плагин %s успешно установлен'; $lang['msg_plugin_update_success'] = 'Плагин %s успешно обновлён'; -$lang['noperms'] = 'Папка для расширений не доступна на запись'; -$lang['notplperms'] = 'Папка для шаблонов не доступна на запись'; -$lang['nopluginperms'] = 'Папка плагинов не доступна на запись'; -$lang['git'] = 'Это расширение было установлено через git, Вы не можете обновить его тут.'; -$lang['install_url'] = 'Установить с адреса URL:'; -$lang['install_upload'] = 'Скачать расширение:'; -$lang['repo_error'] = 'Сайт с плагинами недоступен. Убедитесь, что у сайта есть доступ на www.dokuwiki.org и также проверьте настройки соединения прокси.'; +$lang['msg_upload_failed'] = 'Не удалось загрузить файл'; +$lang['missing_dependency'] = '<strong>Отсутствует или отключена зависимость:</strong> %s'; +$lang['security_issue'] = '<strong>Проблема безопасности:</strong> %s'; +$lang['security_warning'] = '<strong>Предупреждение безопасности:</strong> %s'; +$lang['update_available'] = '<strong>Обновление:</strong> доступна новая версия %s.'; +$lang['wrong_folder'] = '<strong>Плагин установлен неправильно:</strong> переименуйте папку плагина из %s в %s.'; +$lang['url_change'] = '<strong>Ссылка изменилась:</strong> ссылка для загрузки изменилась с прошлого раза. Проверьте новую ссылку прежде, чем обновлять расширение.<br />Новая: %s<br />Старая: %s'; +$lang['error_badurl'] = 'Ссылки должны начинаться с http или https'; +$lang['error_dircreate'] = 'Не удалось создать временную директорию для загрузки'; +$lang['error_download'] = 'Не удалось загрузить файл: %s'; +$lang['error_decompress'] = 'Не удалось распаковать загруженный файл. Возможно, файл был повреждён при загрузке — тогда нужно попробовать ещё раз. Либо неизвестен формат архива — тогда загрузку и установку надо произвести вручную.'; +$lang['error_findfolder'] = 'Не удалось определить директорию для расширения, загрузку и установку надо произвести вручную.'; +$lang['error_copy'] = 'Возникла ошибка копирования файлов в директорию <em>%s</em>: возможно, диск переполнен, или неверно выставлены права доступа. Это могло привести к неполной установке плагина и нарушить работу вашей вики.'; +$lang['noperms'] = 'Папка для расширений недоступна для записи'; +$lang['notplperms'] = 'Папка для шаблонов недоступна для записи'; +$lang['nopluginperms'] = 'Папка плагинов недоступна для записи'; +$lang['git'] = 'Это расширение было установлено через git. Вы не можете обновить его тут.'; +$lang['install_url'] = 'Установить с адреса URL'; +$lang['install_upload'] = 'Скачать расширение'; +$lang['repo_error'] = 'Сайт с плагинами недоступен. Убедитесь, что у сайта есть доступ на www.dokuwiki.org, а также проверьте настройки соединения с Интернетом.'; diff --git a/lib/plugins/extension/lang/zh-tw/intro_plugins.txt b/lib/plugins/extension/lang/zh-tw/intro_plugins.txt new file mode 100644 index 000000000..b5b77a267 --- /dev/null +++ b/lib/plugins/extension/lang/zh-tw/intro_plugins.txt @@ -0,0 +1 @@ +已經有一些外掛套件被安裝在你的DokuWiki之中。你可以在這裡啟用、禁用,甚至是完全移除它們。如外掛可更新也同時會顯示在這裡,請確保在更新前先閱讀過該套件之文件。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/zh-tw/lang.php b/lib/plugins/extension/lang/zh-tw/lang.php index a86364d7a..79657ffeb 100644 --- a/lib/plugins/extension/lang/zh-tw/lang.php +++ b/lib/plugins/extension/lang/zh-tw/lang.php @@ -5,6 +5,7 @@ * * @author Stan <talktostan@gmail.com> * @author June-Hao Hou <junehao@gmail.com> + * @author lioujheyu <lioujheyu@gmail.com> */ $lang['menu'] = '延伸功能管理'; $lang['tab_plugins'] = '已安裝外掛'; @@ -28,20 +29,49 @@ $lang['btn_reinstall'] = '重新安裝'; $lang['js']['reallydel'] = '確定要移除此延伸功能?'; $lang['search_for'] = '搜尋延伸功能:'; $lang['search'] = '搜尋'; +$lang['homepage_link'] = '文件'; $lang['tags'] = '標籤:'; $lang['author_hint'] = '搜尋相同作者的延伸功能'; $lang['installed'] = '已安裝:'; $lang['downloadurl'] = '下載網址:'; +$lang['unknown'] = '<em>未知</em>'; $lang['installed_version'] = '已安裝版本:'; +$lang['install_date'] = '你最後一次更新: '; $lang['available_version'] = '可用版本:'; $lang['compatible'] = '相容於:'; +$lang['depends'] = '依賴於: '; +$lang['similar'] = '類似於: '; +$lang['conflicts'] = '相衝突於: '; +$lang['donate'] = '像這樣?'; +$lang['donate_action'] = '請作者一杯咖啡!'; $lang['repo_retry'] = '再試一次'; $lang['status'] = '狀態:'; $lang['status_installed'] = '已安裝'; $lang['status_not_installed'] = '未安裝'; +$lang['status_protected'] = '已保護'; $lang['status_enabled'] = '作用中'; $lang['status_disabled'] = '停用中'; +$lang['status_unmodifiable'] = '不可更動'; $lang['status_plugin'] = '外掛'; +$lang['status_template'] = '模板'; +$lang['status_bundled'] = '已綑綁內附'; +$lang['msg_enabled'] = '外掛 %s 已啟用'; +$lang['msg_disabled'] = '外掛 %s 已禁用'; +$lang['msg_delete_success'] = '附加元件已移除'; +$lang['msg_template_install_success'] = '模板 %s 以成功安裝'; +$lang['msg_template_update_success'] = '模板 %s 以成功更新'; +$lang['msg_plugin_install_success'] = '外掛 %s 以成功安裝'; +$lang['msg_plugin_update_success'] = '外掛 %s 以成功更新'; +$lang['msg_upload_failed'] = '上傳檔案失敗'; +$lang['missing_dependency'] = '<strong>遺失或禁用相依性套件:</strong> %s'; +$lang['security_issue'] = '<strong>安全性問題:</strong> %s'; +$lang['security_warning'] = '<strong>安全問題警告:</strong> %s'; +$lang['update_available'] = '<strong>更新:</strong> 已可取得 %s 的新版本'; +$lang['wrong_folder'] = '<strong>外掛安裝不正確:</strong> 將外掛資料夾從 "%s" 更名至 "%s"。'; +$lang['url_change'] = '<strong>網址已變更:</strong> 自從上次下載後下載網址已變更。在更新延伸功能前請先檢查新網址是否可用。<br />新: %s<br />舊: %s'; +$lang['error_download'] = '無法下載檔案:%s'; +$lang['error_decompress'] = '無法解壓縮檔案。這可能是下載品質不佳所致,在這個情況下你應該再試一次;也有可能是因為無法辨識的壓縮格式,在這個情況下你應該自行下載並手動安裝'; +$lang['error_findfolder'] = '無法辨認延伸功能資料夾,你必須自行下載並手動安裝'; $lang['noperms'] = '延伸功能資料夾無法寫入'; $lang['notplperms'] = '版型資料夾無法寫入'; $lang['nopluginperms'] = '外掛資料夾無法寫入'; diff --git a/lib/plugins/info/syntax.php b/lib/plugins/info/syntax.php index 9265f44d5..773256faf 100644 --- a/lib/plugins/info/syntax.php +++ b/lib/plugins/info/syntax.php @@ -44,9 +44,14 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { $this->Lexer->addSpecialPattern('~~INFO:\w+~~',$mode,'plugin_info'); } - /** * Handle the match + * + * @param string $match The text matched by the patterns + * @param int $state The lexer state for the match + * @param int $pos The character position of the matched text + * @param Doku_Handler $handler The Doku_Handler object + * @return array Return an array with all data you want to use in render */ function handle($match, $state, $pos, Doku_Handler $handler){ $match = substr($match,7,-2); //strip ~~INFO: from start and ~~ from end @@ -55,6 +60,11 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { /** * Create output + * + * @param string $format string output format being rendered + * @param Doku_Renderer $renderer the current renderer object + * @param array $data data created by handler() + * @return boolean rendered correctly? */ function render($format, Doku_Renderer $renderer, $data) { if($format == 'xhtml'){ @@ -103,8 +113,11 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { * list all installed plugins * * uses some of the original renderer methods + * + * @param string $type + * @param Doku_Renderer_xhtml $renderer */ - function _plugins_xhtml($type, Doku_Renderer &$renderer){ + function _plugins_xhtml($type, Doku_Renderer_xhtml $renderer){ global $lang; $renderer->doc .= '<ul>'; @@ -114,7 +127,7 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { // remove subparts foreach($plugins as $p){ if (!$po = plugin_load($type,$p)) continue; - list($name,$part) = explode('_',$p,2); + list($name,/* $part */) = explode('_',$p,2); $plginfo[$name] = $po->getInfo(); } @@ -141,8 +154,10 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { * list all installed plugins * * uses some of the original renderer methods + * + * @param Doku_Renderer_xhtml $renderer */ - function _helpermethods_xhtml(Doku_Renderer &$renderer){ + function _helpermethods_xhtml(Doku_Renderer_xhtml $renderer){ $plugins = plugin_list('helper'); foreach($plugins as $p){ if (!$po = plugin_load('helper',$p)) continue; @@ -189,6 +204,8 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { /** * lists all known syntax types and their registered modes + * + * @return string */ function _syntaxtypes_xhtml(){ global $PARSER_MODES; @@ -211,6 +228,8 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { /** * lists all known syntax modes and their sorting value + * + * @return string */ function _syntaxmodes_xhtml(){ $modes = p_get_parsermodes(); @@ -249,13 +268,18 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin { /** * Adds a TOC item + * + * @param string $text + * @param int $level + * @param Doku_Renderer_xhtml $renderer + * @return string */ - function _addToTOC($text, $level, Doku_Renderer &$renderer){ + protected function _addToTOC($text, $level, Doku_Renderer_xhtml $renderer){ global $conf; + $hid = ''; if (($level >= $conf['toptoclevel']) && ($level <= $conf['maxtoclevel'])){ - /** @var $renderer Doku_Renderer_xhtml */ - $hid = $renderer->_headerToLink($text, 'true'); + $hid = $renderer->_headerToLink($text, true); $renderer->toc[] = array( 'hid' => $hid, 'title' => $text, diff --git a/lib/plugins/popularity/admin.php b/lib/plugins/popularity/admin.php index bd2d090e1..ab569b8b4 100644 --- a/lib/plugins/popularity/admin.php +++ b/lib/plugins/popularity/admin.php @@ -87,7 +87,7 @@ class admin_plugin_popularity extends DokuWiki_Admin_Plugin { //If there was an error the last time we tried to autosubmit, warn the user if ( $this->helper->isAutoSubmitEnabled() ){ - if ( @file_exists($this->helper->autosubmitErrorFile) ){ + if ( file_exists($this->helper->autosubmitErrorFile) ){ echo $this->getLang('autosubmitError'); echo io_readFile( $this->helper->autosubmitErrorFile ); } diff --git a/lib/plugins/popularity/helper.php b/lib/plugins/popularity/helper.php index eacde06d0..8673fb5af 100644 --- a/lib/plugins/popularity/helper.php +++ b/lib/plugins/popularity/helper.php @@ -74,14 +74,16 @@ class helper_plugin_popularity extends Dokuwiki_Plugin { /** * Check if autosubmit is enabled + * * @return boolean TRUE if we should send data once a month, FALSE otherwise */ function isAutoSubmitEnabled(){ - return @file_exists($this->autosubmitFile); + return file_exists($this->autosubmitFile); } /** * Send the data, to the submit url + * * @param string $data The popularity data * @return string An empty string if everything worked fine, a string describing the error otherwise */ @@ -97,6 +99,8 @@ class helper_plugin_popularity extends Dokuwiki_Plugin { /** * Compute the last time the data was sent. If it has never been sent, we return 0. + * + * @return int */ function lastSentTime(){ $manualSubmission = @filemtime($this->popularityLastSubmitFile); @@ -107,6 +111,7 @@ class helper_plugin_popularity extends Dokuwiki_Plugin { /** * Gather all information + * * @return string The popularity data as a string */ function gatherAsString(){ @@ -124,6 +129,7 @@ class helper_plugin_popularity extends Dokuwiki_Plugin { /** * Gather all information + * * @return array The popularity data as an array */ function _gather(){ @@ -288,17 +294,24 @@ class helper_plugin_popularity extends Dokuwiki_Plugin { * * @author <gilthans dot NO dot SPAM at gmail dot com> * @link http://de3.php.net/manual/en/ini.core.php#79564 + * + * @param string $v + * @return int|string */ function _to_byte($v){ $l = substr($v, -1); $ret = substr($v, 0, -1); switch(strtoupper($l)){ + /** @noinspection PhpMissingBreakStatementInspection */ case 'P': $ret *= 1024; + /** @noinspection PhpMissingBreakStatementInspection */ case 'T': $ret *= 1024; + /** @noinspection PhpMissingBreakStatementInspection */ case 'G': $ret *= 1024; + /** @noinspection PhpMissingBreakStatementInspection */ case 'M': $ret *= 1024; case 'K': diff --git a/lib/plugins/popularity/lang/eu/lang.php b/lib/plugins/popularity/lang/eu/lang.php index b52ccaee1..b5b80357c 100644 --- a/lib/plugins/popularity/lang/eu/lang.php +++ b/lib/plugins/popularity/lang/eu/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Basque language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Inko Illarramendi <inko.i.a@gmail.com> * @author Zigor Astarbe <astarbe@gmail.com> */ diff --git a/lib/plugins/popularity/lang/ro/lang.php b/lib/plugins/popularity/lang/ro/lang.php index 8ba119dcb..5be528bac 100644 --- a/lib/plugins/popularity/lang/ro/lang.php +++ b/lib/plugins/popularity/lang/ro/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Romanian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Emanuel-Emeric Andrasi <n30@mandrivausers.ro> * @author Emanuel-Emeric Andrași <n30@mandrivausers.ro> * @author Emanuel-Emeric Andraşi <em.andrasi@mandrivausers.ro> diff --git a/lib/plugins/revert/lang/eu/lang.php b/lib/plugins/revert/lang/eu/lang.php index d3532c070..40be3e382 100644 --- a/lib/plugins/revert/lang/eu/lang.php +++ b/lib/plugins/revert/lang/eu/lang.php @@ -1,9 +1,11 @@ <?php + /** - * Basque language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Inko Illarramendi <inko.i.a@gmail.com> * @author Zigor Astarbe <astarbe@gmail.com> + * @author Yadav Gowda <yadav.gowda@gmail.com> */ $lang['menu'] = 'Berrezartze Kudeatzailea'; $lang['filter'] = 'Bilatu spam duten orriak'; diff --git a/lib/plugins/revert/lang/ko/lang.php b/lib/plugins/revert/lang/ko/lang.php index 5666100e9..df4b271b1 100644 --- a/lib/plugins/revert/lang/ko/lang.php +++ b/lib/plugins/revert/lang/ko/lang.php @@ -18,4 +18,4 @@ $lang['removed'] = '%s 제거됨'; $lang['revstart'] = '되돌리기 작업을 시작합니다. 오랜 시간이 걸릴 수 있습니다. 완료되기 전에 스크립트 시간 초과가 발생한다면 더 작은 작업으로 나누어서 되돌리시기 바랍니다.'; $lang['revstop'] = '되돌리기 작업이 성공적으로 끝났습니다.'; $lang['note1'] = '참고: 대소문자를 구별해 찾습니다'; -$lang['note2'] = '참고: 문서는 <i>%s</i> 스팸 단어를 포함하지 않은 최신 판으로 되돌립니다. '; +$lang['note2'] = '참고: 문서는 <i>%s</i> 스팸 단어를 포함하지 않은 최신 판으로 되돌립니다.'; diff --git a/lib/plugins/revert/lang/no/lang.php b/lib/plugins/revert/lang/no/lang.php index 6806dcd93..76da8ca9c 100644 --- a/lib/plugins/revert/lang/no/lang.php +++ b/lib/plugins/revert/lang/no/lang.php @@ -19,6 +19,7 @@ * @author Thomas Juberg <Thomas.Juberg@Gmail.com> * @author Boris <boris@newton-media.no> * @author Christopher Schive <chschive@frisurf.no> + * @author Patrick <spill.p@hotmail.com> */ $lang['menu'] = 'Tilbakestillingsbehandler'; $lang['filter'] = 'Søk etter søppelmeldinger'; diff --git a/lib/plugins/revert/lang/ro/lang.php b/lib/plugins/revert/lang/ro/lang.php index 5ea802575..3d0ca7957 100644 --- a/lib/plugins/revert/lang/ro/lang.php +++ b/lib/plugins/revert/lang/ro/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Romanian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Sergiu Baltariu <s_baltariu@yahoo.com> * @author s_baltariu@yahoo.com * @author Emanuel-Emeric Andrasi <n30@mandrivausers.ro> diff --git a/lib/plugins/syntax.php b/lib/plugins/syntax.php index 4a301f927..9e2913d78 100644 --- a/lib/plugins/syntax.php +++ b/lib/plugins/syntax.php @@ -52,6 +52,7 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * 'stack' - Special case. Plugin wraps other paragraphs. * * @see Doku_Handler_Block + * * @return string */ function getPType(){ @@ -70,7 +71,7 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * @param int $state The lexer state for the match * @param int $pos The character position of the matched text * @param Doku_Handler $handler The Doku_Handler object - * @return array Return an array with all data you want to use in render + * @return bool|array Return an array with all data you want to use in render, false don't add an instruction */ function handle($match, $state, $pos, Doku_Handler $handler){ trigger_error('handle() not implemented in '.get_class($this), E_USER_WARNING); @@ -94,10 +95,10 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * The contents of the $data array depends on what the handler() function above * created * - * @param $format string output format being rendered - * @param $renderer Doku_Renderer the current renderer object - * @param $data array data created by handler() - * @return boolean rendered correctly? + * @param string $format output format being rendered + * @param Doku_Renderer $renderer the current renderer object + * @param array $data data created by handler() + * @return boolean rendered correctly? (however, returned value is not used at the moment) */ function render($format, Doku_Renderer $renderer, $data) { trigger_error('render() not implemented in '.get_class($this), E_USER_WARNING); diff --git a/lib/plugins/usermanager/admin.php b/lib/plugins/usermanager/admin.php index b67d91b36..86562f1dd 100644 --- a/lib/plugins/usermanager/admin.php +++ b/lib/plugins/usermanager/admin.php @@ -58,9 +58,12 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { } } - /** - * Return prompt for admin menu - */ + /** + * Return prompt for admin menu + * + * @param string $language + * @return string + */ public function getMenuText($language) { if (!is_null($this->_auth)) @@ -71,6 +74,8 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { /** * return sort order for position in admin menu + * + * @return int */ public function getMenuSort() { return 2; @@ -78,6 +83,8 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { /** * Handle user request + * + * @return bool */ public function handle() { global $INPUT; @@ -128,6 +135,8 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { /** * Output appropriate html + * + * @return bool */ public function html() { global $ID; @@ -738,6 +747,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { global $auth; global $INPUT; + $user = array(); $user[0] = ($clean) ? $auth->cleanUser($INPUT->str('userid')) : $INPUT->str('userid'); $user[1] = $INPUT->str('userpass'); $user[2] = $INPUT->str('username'); @@ -764,7 +774,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $this->_filter = array(); if ($op == 'new') { - list($user,$pass,$name,$mail,$grps) = $this->_retrieveUser(false); + list($user,/* $pass */,$name,$mail,$grps) = $this->_retrieveUser(false); if (!empty($user)) $this->_filter['user'] = $user; if (!empty($name)) $this->_filter['name'] = $name; @@ -816,6 +826,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $disabled = 'disabled="disabled"'; + $buttons = array(); $buttons['start'] = $buttons['prev'] = ($this->_start == 0) ? $disabled : ''; if ($this->_user_total == -1) { @@ -937,8 +948,8 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { * Returns cleaned user data * * @param array $candidate raw values of line from input file - * @param $error - * @return array|bool cleaned data or false + * @param string $error + * @return array|false cleaned data or false */ protected function _cleanImportUser($candidate, & $error){ global $INPUT; @@ -951,7 +962,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $INPUT->set('usergroups', $candidate[4]); $cleaned = $this->_retrieveUser(); - list($user,$pass,$name,$mail,$grps) = $cleaned; + list($user,/* $pass */,$name,$mail,/* $grps */) = $cleaned; if (empty($user)) { $error = $this->lang['import_error_baduserid']; return false; @@ -1021,6 +1032,9 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { /** * wrapper for is_uploaded_file to facilitate overriding by test suite + * + * @param string $file filename + * @return bool */ protected function _isUploadedFile($file) { return is_uploaded_file($file); @@ -1031,6 +1045,9 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { * * @deprecated remove when dokuwiki php requirement increases to 5.3+ * also associated unit test & mock access method + * + * @param string $csv string to parse + * @return array */ protected function _getcsv($csv) { return function_exists('str_getcsv') ? str_getcsv($csv) : $this->str_getcsv($csv); @@ -1041,6 +1058,9 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { * loosely based on www.php.net/str_getcsv#88311 * * @deprecated remove when dokuwiki php requirement increases to 5.3+ + * + * @param string $str string to parse + * @return array */ protected function str_getcsv($str) { $fp = fopen("php://temp/maxmemory:1048576", 'r+'); // 1MiB diff --git a/lib/plugins/usermanager/images/search.png b/lib/plugins/usermanager/images/search.png Binary files differindex e9dabc11e..3f2a0b53b 100644 --- a/lib/plugins/usermanager/images/search.png +++ b/lib/plugins/usermanager/images/search.png diff --git a/lib/plugins/usermanager/lang/cs/lang.php b/lib/plugins/usermanager/lang/cs/lang.php index bbb560679..6130fccd8 100644 --- a/lib/plugins/usermanager/lang/cs/lang.php +++ b/lib/plugins/usermanager/lang/cs/lang.php @@ -15,6 +15,7 @@ * @author Jakub A. Těšínský (j@kub.cz) * @author mkucera66@seznam.cz * @author Zbyněk Křivka <krivka@fit.vutbr.cz> + * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ $lang['menu'] = 'Správa uživatelů'; $lang['noauth'] = '(autentizace uživatelů není k dispozici)'; @@ -55,20 +56,23 @@ $lang['next'] = 'další'; $lang['last'] = 'poslední'; $lang['edit_usermissing'] = 'Vybraný uživatel nebyl nalezen, zadané uživatelského mohlo být smazáno nebo změněno.'; $lang['user_notify'] = 'Upozornit uživatele'; -$lang['note_notify'] = 'Maily s upozorněním se budou posílat pouze, když uživatel dostává nové heslo.'; +$lang['note_notify'] = 'E-maily s upozorněním se budou posílat pouze, když uživatel dostává nové heslo.'; $lang['note_group'] = 'Noví uživatelé budou přidáváni do této výchozí skupiny (%s), pokud pro ně není uvedena žádná skupina.'; $lang['note_pass'] = 'Heslo bude automaticky vygenerováno, pokud je pole ponecháno prázdné a je zapnuto upozornění uživatele.'; $lang['add_ok'] = 'Uživatel úspěšně vytvořen'; $lang['add_fail'] = 'Vytvoření uživatele selhalo'; -$lang['notify_ok'] = 'Odeslán mail s upozorněním'; -$lang['notify_fail'] = 'Mail s upozorněním nebylo možno odeslat'; +$lang['notify_ok'] = 'Odeslán e-mail s upozorněním'; +$lang['notify_fail'] = 'E-mail s upozorněním nebylo možno odeslat'; +$lang['import_userlistcsv'] = 'Seznam uživatelů (CSV):'; +$lang['import_header'] = 'Poslední selhání importu'; $lang['import_success_count'] = 'Import uživatelů: nalezeno %d uživatelů, %d úspěšně importováno.'; $lang['import_failure_count'] = 'Import uživatelů: %d selhalo. Seznam chybných je níže.'; $lang['import_error_fields'] = 'Nedostatek položek, nalezena/y %d, požadovány 4.'; $lang['import_error_baduserid'] = 'Chybí User-id'; $lang['import_error_badname'] = 'Špatné jméno'; -$lang['import_error_badmail'] = 'Špatná emailová adresa'; +$lang['import_error_badmail'] = 'Špatná e-mailová adresa'; $lang['import_error_upload'] = 'Import selhal. CSV soubor nemohl být nahrán nebo je prázdný.'; $lang['import_error_readfail'] = 'Import selhal. Nelze číst nahraný soubor.'; $lang['import_error_create'] = 'Nelze vytvořit uživatele'; -$lang['import_notify_fail'] = 'Importovanému uživateli %s s emailem %s nemohlo být zasláno upozornění.'; +$lang['import_notify_fail'] = 'Importovanému uživateli %s s e-mailem %s nemohlo být zasláno upozornění.'; +$lang['import_downloadfailures'] = 'Stáhnout chyby pro nápravu jako CVS'; diff --git a/lib/plugins/usermanager/lang/da/import.txt b/lib/plugins/usermanager/lang/da/import.txt new file mode 100644 index 000000000..8ff1946b8 --- /dev/null +++ b/lib/plugins/usermanager/lang/da/import.txt @@ -0,0 +1,9 @@ +===== Samling af Brugere Import ===== + +Kræver en CSV-fil med brugere på mindst fire kolonner. +Kolonnerne skal indeholde, i denne orden: bruger-id, fulde navn, email-adresse og grupper. +CSV-felterne skal separeres af kommaer (,) og strengafgrænser med anførelsestegn (%%""%%). Backslash (\) kan benyttes som "escape character". +For et eksempel på en brugbar fil, kan du prøve "Eksportér Brugere"-funktionen her over. +Overlappende bruger-id'er bliver ignoreret. + +En adgangskode vil blive genereret og sendt til hver succesfuldt importeret bruger.
\ No newline at end of file diff --git a/lib/plugins/usermanager/lang/da/lang.php b/lib/plugins/usermanager/lang/da/lang.php index 47d7efea2..795024f89 100644 --- a/lib/plugins/usermanager/lang/da/lang.php +++ b/lib/plugins/usermanager/lang/da/lang.php @@ -13,6 +13,7 @@ * @author Michael Pedersen subben@gmail.com * @author Mikael Lyngvig <mikael@lyngvig.org> * @author soer9648 <soer9648@eucl.dk> + * @author Søren Birk <soer9648@eucl.dk> */ $lang['menu'] = 'Brugerstyring'; $lang['noauth'] = '(Brugervalidering er ikke tilgængelig)'; @@ -72,3 +73,4 @@ $lang['import_error_upload'] = 'Import Fejlet. CSV-filen kunne ikke uploades e $lang['import_error_readfail'] = 'Import Fejlet. Ikke muligt at læse uploadede fil.'; $lang['import_error_create'] = 'Ikke muligt at oprette brugeren'; $lang['import_notify_fail'] = 'Notifikationsmeddelelse kunne ikke sendes for importerede bruger %s, med emailen %s.'; +$lang['import_downloadfailures'] = 'Download Fejl som CSV til rettelser'; diff --git a/lib/plugins/usermanager/lang/eu/lang.php b/lib/plugins/usermanager/lang/eu/lang.php index 5d3a01fc7..1fbe13739 100644 --- a/lib/plugins/usermanager/lang/eu/lang.php +++ b/lib/plugins/usermanager/lang/eu/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Basque language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Inko Illarramendi <inko.i.a@gmail.com> * @author Zigor Astarbe <astarbe@gmail.com> */ diff --git a/lib/plugins/usermanager/lang/fi/lang.php b/lib/plugins/usermanager/lang/fi/lang.php index de243133a..dba67fb61 100644 --- a/lib/plugins/usermanager/lang/fi/lang.php +++ b/lib/plugins/usermanager/lang/fi/lang.php @@ -7,6 +7,7 @@ * @author Otto Vainio <otto@valjakko.net> * @author Teemu Mattila <ghcsystems@gmail.com> * @author Sami Olmari <sami@olmari.fi> + * @author Jussi Takala <jussi.takala@live.fi> */ $lang['menu'] = 'Käyttäjähallinta'; $lang['noauth'] = '(autentikointi ei ole käytössä)'; @@ -29,6 +30,9 @@ $lang['search'] = 'Hae'; $lang['search_prompt'] = 'Tee haku'; $lang['clear'] = 'Tyhjennä hakusuodatin'; $lang['filter'] = 'Suodatin'; +$lang['import'] = 'Tuo uusia käyttäjiä'; +$lang['line'] = 'Rivi nro.'; +$lang['error'] = 'Vikailmoitus'; $lang['summary'] = 'Näytetään käyttäjät %1$d-%2$d / %3$d löytynyttä. %4$d käyttäjää yhteensä.'; $lang['nonefound'] = 'Ei löytynyt käyttäjiä. %d käyttäjää yhteensä.'; $lang['delete_ok'] = '%d käyttäjää poistettu'; @@ -49,3 +53,9 @@ $lang['add_ok'] = 'Käyttäjä lisätty onnistuneesti'; $lang['add_fail'] = 'Käyttäjän lisäys epäonnistui'; $lang['notify_ok'] = 'Ilmoitus sähköpostilla lähetetty'; $lang['notify_fail'] = 'Ilmoitusta sähköpostilla ei voitu lähettää'; +$lang['import_error_baduserid'] = 'Käyttäjätunnus puuttuu'; +$lang['import_error_badname'] = 'Epäkelpo nimi'; +$lang['import_error_badmail'] = 'Epäkelpo sähköpostiosoite'; +$lang['import_error_upload'] = 'Tuonti epäonnistui. CSV-tiedostoa ei voitu ladata tai se on tyhjä.'; +$lang['import_error_readfail'] = 'Tuonti epäonnistui. Ladattua tiedostoa ei voida lukea.'; +$lang['import_error_create'] = 'Käyttäjää ei voida luoda.'; diff --git a/lib/plugins/usermanager/lang/hr/lang.php b/lib/plugins/usermanager/lang/hr/lang.php index 80613ed6f..a71afb60a 100644 --- a/lib/plugins/usermanager/lang/hr/lang.php +++ b/lib/plugins/usermanager/lang/hr/lang.php @@ -33,7 +33,7 @@ $lang['line'] = 'Linija br.'; $lang['error'] = 'Poruka o grešci'; $lang['summary'] = 'Prikaz korisnika %1$d-%2$d od %3$d nađenih. Ukupno %4$d korisnika.'; $lang['nonefound'] = 'Nema korisnika koji odgovaraju filtru.Ukupno %d korisnika.'; -$lang['delete_ok'] = '%d korisnik obrisano'; +$lang['delete_ok'] = '%d korisnika obrisano'; $lang['delete_fail'] = '%d neuspjelih brisanja.'; $lang['update_ok'] = 'Korisnik uspješno izmijenjen'; $lang['update_fail'] = 'Neuspjela izmjena korisnika'; @@ -49,7 +49,7 @@ $lang['note_group'] = 'Novi korisnik biti će dodijeljen u podrazumij $lang['note_pass'] = 'Lozinka će biti generirana ako se polje ostavi prazno i obavješćivanje korisnika je omogućeno.'; $lang['add_ok'] = 'Korisnik uspješno dodan'; $lang['add_fail'] = 'Neuspješno dodavanje korisnika'; -$lang['notify_ok'] = 'Obavijest korisniku poslana'; +$lang['notify_ok'] = 'Poslana obavijest korisniku'; $lang['notify_fail'] = 'Obavijest korisniku ne može biti poslana'; $lang['import_userlistcsv'] = 'Datoteka s popisom korisnika (CSV):'; $lang['import_header'] = 'Zadnje greške pri uvozu'; diff --git a/lib/plugins/usermanager/lang/ko/lang.php b/lib/plugins/usermanager/lang/ko/lang.php index 70e3d94f0..bc76470e8 100644 --- a/lib/plugins/usermanager/lang/ko/lang.php +++ b/lib/plugins/usermanager/lang/ko/lang.php @@ -13,7 +13,7 @@ * @author Garam <rowain8@gmail.com> */ $lang['menu'] = '사용자 관리자'; -$lang['noauth'] = '(사용자 인증이 불가능합니다)'; +$lang['noauth'] = '(사용자 인증을 사용할 수 없습니다)'; $lang['nosupport'] = '(사용자 관리가 지원되지 않습니다)'; $lang['badauth'] = '인증 메커니즘이 잘못되었습니다'; $lang['user_id'] = '사용자'; @@ -35,10 +35,10 @@ $lang['clear'] = '검색 필터 재설정'; $lang['filter'] = '필터'; $lang['export_all'] = '모든 사용자 목록 내보내기 (CSV)'; $lang['export_filtered'] = '필터된 사용자 목록 내보내기 (CSV)'; -$lang['import'] = '새 사용자 목록 가져오기'; +$lang['import'] = '새 사용자 가져오기'; $lang['line'] = '줄 번호'; $lang['error'] = '오류 메시지'; -$lang['summary'] = '찾은 사용자 %3$d 중 %1$d-%2$d을(를) 봅니다. 전체 사용자는 %4$d명입니다.'; +$lang['summary'] = '찾은 사용자 %3$d명 중 %1$d-%2$d을(를) 봅니다. 전체 사용자는 %4$d명입니다.'; $lang['nonefound'] = '찾은 사용자가 없습니다. 전체 사용자는 %d명입니다.'; $lang['delete_ok'] = '사용자 %d명이 삭제되었습니다'; $lang['delete_fail'] = '사용자 %d명을 삭제하는 데 실패했습니다.'; @@ -68,6 +68,6 @@ $lang['import_error_badname'] = '잘못된 이름'; $lang['import_error_badmail'] = '잘못된 이메일 주소'; $lang['import_error_upload'] = '가져오기를 실패했습니다. csv 파일을 올릴 수 없거나 비어 있습니다.'; $lang['import_error_readfail'] = '가져오기를 실패했습니다. 올린 파일을 읽을 수 없습니다.'; -$lang['import_error_create'] = '사용자를 만들 수 없습니다.'; +$lang['import_error_create'] = '사용자를 만들 수 없습니다'; $lang['import_notify_fail'] = '알림 메시지를 가져온 %s (이메일: %s) 사용자에게 보낼 수 없습니다.'; $lang['import_downloadfailures'] = '교정을 위한 CSV로 다운로드 실패'; diff --git a/lib/plugins/usermanager/lang/pt/lang.php b/lib/plugins/usermanager/lang/pt/lang.php index b59649aa1..43ea69e53 100644 --- a/lib/plugins/usermanager/lang/pt/lang.php +++ b/lib/plugins/usermanager/lang/pt/lang.php @@ -8,6 +8,7 @@ * @author Fil <fil@meteopt.com> * @author André Neves <drakferion@gmail.com> * @author José Campos zecarlosdecampos@gmail.com + * @author Guido Salatino <guidorafael23@gmail.com> */ $lang['menu'] = 'Gestor de Perfis'; $lang['noauth'] = '(autenticação indisponível)'; @@ -33,6 +34,8 @@ $lang['filter'] = 'Filtro'; $lang['export_all'] = 'Exportar Todos os Utilizadores (CSV)'; $lang['export_filtered'] = 'Exportar a lista de utilizadores filtrada (CSV)'; $lang['import'] = 'Importar Novos Utilizadores'; +$lang['line'] = 'Linha nº +'; $lang['error'] = 'Mensagem de erro'; $lang['summary'] = 'Apresentar utilizadores %1$d-%2$d de %3$d encontrados. %4$d inscritos.'; $lang['nonefound'] = 'Nenhum utilizador encontrado. %d inscritos.'; @@ -54,11 +57,17 @@ $lang['add_ok'] = 'Utilizador adicionado.'; $lang['add_fail'] = 'Utilizador não adicionado.'; $lang['notify_ok'] = 'Mensagem de notificação enviada.'; $lang['notify_fail'] = 'Não foi possível enviar mensagem de notificação'; +$lang['import_userlistcsv'] = 'Arquivo de lista do usuário (CSV): +'; +$lang['import_header'] = 'Mais Recentes Importações - Falhas'; $lang['import_success_count'] = 'Importar Utilizadores: %d utiliyadores encontrados, %d importados com sucesso.'; $lang['import_failure_count'] = 'Importar Utilizadores: %d falharam. As falhas estão listadas abaixo.'; $lang['import_error_fields'] = 'Campos insuficientes, encontrados %d mas requeridos 4.'; $lang['import_error_baduserid'] = 'Falta id de utilizador'; +$lang['import_error_badname'] = 'Nome inválido'; +$lang['import_error_badmail'] = 'E-Mail inválido'; $lang['import_error_upload'] = 'Falhou a importação. O ficheiro csv não pôde ser importado ou está vazio.'; $lang['import_error_readfail'] = 'Falhou a importação. Não foi possível ler o ficheiro submetido.'; $lang['import_error_create'] = 'Não foi possível criar o utilizador.'; $lang['import_notify_fail'] = 'A mensagem de notificação não pôde ser enviada para o utilizador importado, %s com email %s.'; +$lang['import_downloadfailures'] = 'Baixe Falhas como CSV para a correção'; diff --git a/lib/plugins/usermanager/lang/ro/lang.php b/lib/plugins/usermanager/lang/ro/lang.php index 1b33cc4f8..55cbbed04 100644 --- a/lib/plugins/usermanager/lang/ro/lang.php +++ b/lib/plugins/usermanager/lang/ro/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Romanian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Sergiu Baltariu <s_baltariu@yahoo.com> * @author s_baltariu@yahoo.com * @author Emanuel-Emeric Andrasi <n30@mandrivausers.ro> diff --git a/lib/plugins/usermanager/lang/ru/import.txt b/lib/plugins/usermanager/lang/ru/import.txt index f2049dd0c..22372c254 100644 --- a/lib/plugins/usermanager/lang/ru/import.txt +++ b/lib/plugins/usermanager/lang/ru/import.txt @@ -2,8 +2,8 @@ Потребуется список пользователей в файле формата CSV, состоящий из 4 столбцов. Столбцы должны быть заполнены следующим образом: user-id, полное имя, эл. почта, группы. -Поля CSV должны быть отделены запятой (,), а строки должны быть заключены в кавычки (%%""%%). Обратный слэш используется как прерывание. -В качестве примера можете взять список пользователей, экспортированный через «Экспорт пользователей». +Поля CSV должны быть отделены запятой (,), а строки должны быть заключены в кавычки (%%""%%). Обратный слэш (\) используется как прерывание. +В качестве примера можете взять список пользователей, экспортированный через «Экспорт пользователей». Повторяющиеся идентификаторы user-id будут игнорироваться. Пароль доступа будет сгенерирован и отправлен по почте удачно импортированному пользователю.
\ No newline at end of file diff --git a/lib/plugins/usermanager/lang/ru/lang.php b/lib/plugins/usermanager/lang/ru/lang.php index 8bbfa639c..de650d681 100644 --- a/lib/plugins/usermanager/lang/ru/lang.php +++ b/lib/plugins/usermanager/lang/ru/lang.php @@ -21,6 +21,7 @@ * @author Pavel <ivanovtsk@mail.ru> * @author Aleksandr Selivanov <alexgearbox@yandex.ru> * @author Igor Degraf <igordegraf@gmail.com> + * @author Vitaly Filatenko <kot@hacktest.net> */ $lang['menu'] = 'Управление пользователями'; $lang['noauth'] = '(авторизация пользователей недоступна)'; @@ -68,9 +69,11 @@ $lang['add_ok'] = 'Пользователь успешно доб $lang['add_fail'] = 'Не удалось добавить пользователя'; $lang['notify_ok'] = 'Письмо с уведомлением отправлено'; $lang['notify_fail'] = 'Не удалось отправить письмо с уведомлением'; +$lang['import_userlistcsv'] = 'Файл со списком пользователей (CSV):'; +$lang['import_header'] = 'Последний импорт — список ошибок'; $lang['import_success_count'] = 'Импорт пользователей: %d пользователей найдено, %d импортировано успешно.'; $lang['import_failure_count'] = 'Импорт пользователей: %d не удалось. Список ошибок прочтите ниже.'; -$lang['import_error_fields'] = 'Не все поля заполнены. Найдено %d, а нужно 4.'; +$lang['import_error_fields'] = 'Не все поля заполнены. Найдено %d, а нужно: 4.'; $lang['import_error_baduserid'] = 'Отсутствует идентификатор пользователя'; $lang['import_error_badname'] = 'Имя не годится'; $lang['import_error_badmail'] = 'Адрес электронной почты не годится'; @@ -78,4 +81,4 @@ $lang['import_error_upload'] = 'Импорт не удался. CSV-файл $lang['import_error_readfail'] = 'Импорт не удался. Невозможно прочесть загруженный файл.'; $lang['import_error_create'] = 'Невозможно создать пользователя'; $lang['import_notify_fail'] = 'Оповещение не может быть отправлено импортированному пользователю %s по электронной почте %s.'; -$lang['import_downloadfailures'] = 'Скачать Ошибки в формате CSV для исправления'; +$lang['import_downloadfailures'] = 'Скачать ошибки в формате CSV для исправления'; diff --git a/lib/scripts/behaviour.js b/lib/scripts/behaviour.js index 6b46add07..fb61f6e48 100644 --- a/lib/scripts/behaviour.js +++ b/lib/scripts/behaviour.js @@ -56,6 +56,8 @@ var dw_behaviour = { jQuery(document).on('click','#page__revisions input[type=checkbox]', dw_behaviour.revisionBoxHandler ); + + jQuery('.bounce').effect('bounce', {times:10}, 2000 ); }, /** @@ -64,7 +66,14 @@ var dw_behaviour = { scrollToMarker: function(){ var $obj = jQuery('#scroll__here'); if($obj.length) { - $obj[0].scrollIntoView(); + if($obj.offset().top != 0) { + jQuery('html, body').animate({ + scrollTop: $obj.offset().top - 100 + }, 500); + } else { + // hidden object have no offset but can still be scrolled into view + $obj[0].scrollIntoView(); + } } }, @@ -77,13 +86,11 @@ var dw_behaviour = { /** * Remove all search highlighting when clicking on a highlighted term - * - * @FIXME would be nice to have it fade out */ removeHighlightOnClick: function(){ jQuery('span.search_hit').click( function(e){ - jQuery(e.target).removeClass('search_hit'); + jQuery(e.target).removeClass('search_hit', 1000); } ); }, diff --git a/lib/scripts/editor.js b/lib/scripts/editor.js index 74919cb98..f4143f0bc 100644 --- a/lib/scripts/editor.js +++ b/lib/scripts/editor.js @@ -124,14 +124,15 @@ var dw_editor = { * Listens to all key inputs and handle indentions * of lists and code blocks * - * Currently handles space, backspce and enter presses + * Currently handles space, backspace, enter and + * ctrl-enter presses * * @author Andreas Gohr <andi@splitbrain.org> * @fixme handle tabs * @param event e - the key press event object */ keyHandler: function(e){ - if(jQuery.inArray(e.keyCode,[8, 13, 32]) === -1) { + if(jQuery.inArray(e.keyCode,[8, 10, 13, 32]) === -1) { return; } var selection = DWgetSelection(this); @@ -143,7 +144,12 @@ var dw_editor = { search.lastIndexOf("\r")); //IE workaround search = search.substr(linestart); - if(e.keyCode == 13){ // Enter + if((e.keyCode == 13 || e.keyCode == 10) && e.ctrlKey) { // Ctrl-Enter (With Chrome workaround) + // Submit current edit + jQuery('input#edbtn__save').click(); + e.preventDefault(); // prevent enter key + return false; + }else if(e.keyCode == 13){ // Enter // keep current indention for lists and code var match = search.match(/(\n +([\*-] ?)?)/); if(match){ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png Binary files differindex 4b8c26b72..f5c2d583d 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png Binary files differindex 718a40454..e36540bbf 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png Binary files differindex 9e3de4335..8225e3e18 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png Binary files differindex 18fd8b166..3e56dbdca 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png Binary files differindex 8f31ae15d..d5265f4dd 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png Binary files differindex a6effc68e..1d509f45a 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png Binary files differindex c50038aff..38349845c 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png Binary files differindex f08378e9f..a374f7501 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png Binary files differindex 8deb23b9d..a13f9b4dd 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png Binary files differindex aa2ddc3b5..945c3d704 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png Binary files differindex ef231bb25..60ec1c692 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png Binary files differindex 8bfb68534..48de3ed6b 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png Binary files differindex d72d6906d..b987966e0 100644 --- a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png +++ b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png diff --git a/lib/tpl/dokuwiki/detail.php b/lib/tpl/dokuwiki/detail.php index 8fe2c88a2..d4f9c39d1 100644 --- a/lib/tpl/dokuwiki/detail.php +++ b/lib/tpl/dokuwiki/detail.php @@ -49,7 +49,7 @@ header('X-UA-Compatible: IE=edge,chrome=1'); if($ERROR): echo '<h1>'.$ERROR.'</h1>'; else: ?> - + <?php if($REV) echo p_locale_xhtml('showrev');?> <h1><?php echo nl2br(hsc(tpl_img_getTag('simple.title'))); ?></h1> <?php tpl_img(900,700); /* parameters: maximum width, maximum height (and more) */ ?> @@ -82,8 +82,8 @@ header('X-UA-Compatible: IE=edge,chrome=1'); $data = array( 'view' => 'detail', 'items' => array( - 'mediaManager' => tpl_action('mediaManager', 1, 'li', 1, '<span>', '</span>'), - 'img_backto' => tpl_action('img_backto', 1, 'li', 1, '<span>', '</span>'), + 'mediaManager' => tpl_action('mediaManager', true, 'li', true, '<span>', '</span>'), + 'img_backto' => tpl_action('img_backto', true, 'li', true, '<span>', '</span>'), ) ); diff --git a/lib/tpl/dokuwiki/images/apple-touch-icon.png b/lib/tpl/dokuwiki/images/apple-touch-icon.png Binary files differindex fb5f108c0..87c99a919 100644 --- a/lib/tpl/dokuwiki/images/apple-touch-icon.png +++ b/lib/tpl/dokuwiki/images/apple-touch-icon.png diff --git a/lib/tpl/dokuwiki/images/button-css.png b/lib/tpl/dokuwiki/images/button-css.png Binary files differindex 706325e1c..5c0f5a993 100644 --- a/lib/tpl/dokuwiki/images/button-css.png +++ b/lib/tpl/dokuwiki/images/button-css.png diff --git a/lib/tpl/dokuwiki/images/button-html5.png b/lib/tpl/dokuwiki/images/button-html5.png Binary files differindex 5885a331b..f7b068811 100644 --- a/lib/tpl/dokuwiki/images/button-html5.png +++ b/lib/tpl/dokuwiki/images/button-html5.png diff --git a/lib/tpl/dokuwiki/images/button-rss.png b/lib/tpl/dokuwiki/images/button-rss.png Binary files differindex b7cddadec..aa6b7fca8 100644 --- a/lib/tpl/dokuwiki/images/button-rss.png +++ b/lib/tpl/dokuwiki/images/button-rss.png diff --git a/lib/tpl/dokuwiki/images/logo.png b/lib/tpl/dokuwiki/images/logo.png Binary files differindex 35640279c..a1f499569 100644 --- a/lib/tpl/dokuwiki/images/logo.png +++ b/lib/tpl/dokuwiki/images/logo.png diff --git a/lib/tpl/dokuwiki/images/page-gradient.png b/lib/tpl/dokuwiki/images/page-gradient.png Binary files differindex 8e16a2805..38c74198a 100644 --- a/lib/tpl/dokuwiki/images/page-gradient.png +++ b/lib/tpl/dokuwiki/images/page-gradient.png diff --git a/lib/tpl/dokuwiki/images/pagetools-build.php b/lib/tpl/dokuwiki/images/pagetools-build.php index 1b7262ad5..3cf35b2ea 100644 --- a/lib/tpl/dokuwiki/images/pagetools-build.php +++ b/lib/tpl/dokuwiki/images/pagetools-build.php @@ -92,7 +92,7 @@ function hex2rgb($hex) { /** * Scale (darken/lighten) a given image * - * @param ressource $img The truetype GD image to work on + * @param resource $img The truetype GD image to work on * @param float $scale Scale the colors by this value ( <1 darkens, >1 lightens) */ function imagecolorscale(&$img, $scale){ diff --git a/lib/tpl/dokuwiki/images/pagetools-sprite.png b/lib/tpl/dokuwiki/images/pagetools-sprite.png Binary files differindex b6e808717..8e7f7f876 100644 --- a/lib/tpl/dokuwiki/images/pagetools-sprite.png +++ b/lib/tpl/dokuwiki/images/pagetools-sprite.png diff --git a/lib/tpl/dokuwiki/images/pagetools/00_default.png b/lib/tpl/dokuwiki/images/pagetools/00_default.png Binary files differindex 95d122e17..bcb2de0f8 100644 --- a/lib/tpl/dokuwiki/images/pagetools/00_default.png +++ b/lib/tpl/dokuwiki/images/pagetools/00_default.png diff --git a/lib/tpl/dokuwiki/images/pagetools/01_edit.png b/lib/tpl/dokuwiki/images/pagetools/01_edit.png Binary files differindex ad4a737d8..99f3093ee 100644 --- a/lib/tpl/dokuwiki/images/pagetools/01_edit.png +++ b/lib/tpl/dokuwiki/images/pagetools/01_edit.png diff --git a/lib/tpl/dokuwiki/images/pagetools/02_create.png b/lib/tpl/dokuwiki/images/pagetools/02_create.png Binary files differindex e4fc5d3b1..57fa68d42 100644 --- a/lib/tpl/dokuwiki/images/pagetools/02_create.png +++ b/lib/tpl/dokuwiki/images/pagetools/02_create.png diff --git a/lib/tpl/dokuwiki/images/pagetools/03_draft.png b/lib/tpl/dokuwiki/images/pagetools/03_draft.png Binary files differindex a13d8c3b4..ce1c6cf14 100644 --- a/lib/tpl/dokuwiki/images/pagetools/03_draft.png +++ b/lib/tpl/dokuwiki/images/pagetools/03_draft.png diff --git a/lib/tpl/dokuwiki/images/pagetools/04_show.png b/lib/tpl/dokuwiki/images/pagetools/04_show.png Binary files differindex 6f64b1bd1..1ced340dd 100644 --- a/lib/tpl/dokuwiki/images/pagetools/04_show.png +++ b/lib/tpl/dokuwiki/images/pagetools/04_show.png diff --git a/lib/tpl/dokuwiki/images/pagetools/05_source.png b/lib/tpl/dokuwiki/images/pagetools/05_source.png Binary files differindex bcc4fa21f..dffe1931a 100644 --- a/lib/tpl/dokuwiki/images/pagetools/05_source.png +++ b/lib/tpl/dokuwiki/images/pagetools/05_source.png diff --git a/lib/tpl/dokuwiki/images/pagetools/06_revert.png b/lib/tpl/dokuwiki/images/pagetools/06_revert.png Binary files differindex 7b8457e5e..18c644474 100644 --- a/lib/tpl/dokuwiki/images/pagetools/06_revert.png +++ b/lib/tpl/dokuwiki/images/pagetools/06_revert.png diff --git a/lib/tpl/dokuwiki/images/pagetools/07_revisions.png b/lib/tpl/dokuwiki/images/pagetools/07_revisions.png Binary files differindex d918bce05..e599d016c 100644 --- a/lib/tpl/dokuwiki/images/pagetools/07_revisions.png +++ b/lib/tpl/dokuwiki/images/pagetools/07_revisions.png diff --git a/lib/tpl/dokuwiki/images/pagetools/08_backlink.png b/lib/tpl/dokuwiki/images/pagetools/08_backlink.png Binary files differindex 2c0823a72..aa34e2775 100644 --- a/lib/tpl/dokuwiki/images/pagetools/08_backlink.png +++ b/lib/tpl/dokuwiki/images/pagetools/08_backlink.png diff --git a/lib/tpl/dokuwiki/images/pagetools/09_subscribe.png b/lib/tpl/dokuwiki/images/pagetools/09_subscribe.png Binary files differindex 30e039dbc..36254ff53 100644 --- a/lib/tpl/dokuwiki/images/pagetools/09_subscribe.png +++ b/lib/tpl/dokuwiki/images/pagetools/09_subscribe.png diff --git a/lib/tpl/dokuwiki/images/pagetools/10_top.png b/lib/tpl/dokuwiki/images/pagetools/10_top.png Binary files differindex e4bf1d49d..b930fd25f 100644 --- a/lib/tpl/dokuwiki/images/pagetools/10_top.png +++ b/lib/tpl/dokuwiki/images/pagetools/10_top.png diff --git a/lib/tpl/dokuwiki/images/pagetools/11_mediamanager.png b/lib/tpl/dokuwiki/images/pagetools/11_mediamanager.png Binary files differindex 36116802f..71b5a3372 100644 --- a/lib/tpl/dokuwiki/images/pagetools/11_mediamanager.png +++ b/lib/tpl/dokuwiki/images/pagetools/11_mediamanager.png diff --git a/lib/tpl/dokuwiki/images/pagetools/12_back.png b/lib/tpl/dokuwiki/images/pagetools/12_back.png Binary files differindex d154651ec..6d6093ed6 100644 --- a/lib/tpl/dokuwiki/images/pagetools/12_back.png +++ b/lib/tpl/dokuwiki/images/pagetools/12_back.png diff --git a/lib/tpl/dokuwiki/images/search.png b/lib/tpl/dokuwiki/images/search.png Binary files differindex 1ab7866fb..a07a721df 100644 --- a/lib/tpl/dokuwiki/images/search.png +++ b/lib/tpl/dokuwiki/images/search.png diff --git a/lib/tpl/dokuwiki/images/toc-bullet.png b/lib/tpl/dokuwiki/images/toc-bullet.png Binary files differindex fc771b97e..a2dfa47e9 100644 --- a/lib/tpl/dokuwiki/images/toc-bullet.png +++ b/lib/tpl/dokuwiki/images/toc-bullet.png diff --git a/lib/tpl/dokuwiki/images/usertools.png b/lib/tpl/dokuwiki/images/usertools.png Binary files differindex e99b6596e..68102271f 100644 --- a/lib/tpl/dokuwiki/images/usertools.png +++ b/lib/tpl/dokuwiki/images/usertools.png diff --git a/lib/tpl/dokuwiki/main.php b/lib/tpl/dokuwiki/main.php index 44fef81eb..10c0bf91e 100644 --- a/lib/tpl/dokuwiki/main.php +++ b/lib/tpl/dokuwiki/main.php @@ -41,7 +41,7 @@ $showSidebar = $hasSidebar && ($ACT=='show'); <div class="content"> <?php tpl_flush() ?> <?php tpl_includeFile('sidebarheader.html') ?> - <?php tpl_include_page($conf['sidebar'], 1, 1) ?> + <?php tpl_include_page($conf['sidebar'], true, true) ?> <?php tpl_includeFile('sidebarfooter.html') ?> </div> </div></div><!-- /aside --> @@ -77,12 +77,12 @@ $showSidebar = $hasSidebar && ($ACT=='show'); $data = array( 'view' => 'main', 'items' => array( - 'edit' => tpl_action('edit', 1, 'li', 1, '<span>', '</span>'), - 'revert' => tpl_action('revert', 1, 'li', 1, '<span>', '</span>'), - 'revisions' => tpl_action('revisions', 1, 'li', 1, '<span>', '</span>'), - 'backlink' => tpl_action('backlink', 1, 'li', 1, '<span>', '</span>'), - 'subscribe' => tpl_action('subscribe', 1, 'li', 1, '<span>', '</span>'), - 'top' => tpl_action('top', 1, 'li', 1, '<span>', '</span>') + 'edit' => tpl_action('edit', true, 'li', true, '<span>', '</span>'), + 'revert' => tpl_action('revert', true, 'li', true, '<span>', '</span>'), + 'revisions' => tpl_action('revisions', true, 'li', true, '<span>', '</span>'), + 'backlink' => tpl_action('backlink', true, 'li', true, '<span>', '</span>'), + 'subscribe' => tpl_action('subscribe', true, 'li', true, '<span>', '</span>'), + 'top' => tpl_action('top', true, 'li', true, '<span>', '</span>') ) ); diff --git a/lib/tpl/dokuwiki/tpl_header.php b/lib/tpl/dokuwiki/tpl_header.php index a2bfd4346..7d9c88347 100644 --- a/lib/tpl/dokuwiki/tpl_header.php +++ b/lib/tpl/dokuwiki/tpl_header.php @@ -46,10 +46,10 @@ if (!defined('DOKU_INC')) die(); tpl_userinfo(); /* 'Logged in as ...' */ echo '</li>'; } - tpl_action('admin', 1, 'li'); - tpl_action('profile', 1, 'li'); - tpl_action('register', 1, 'li'); - tpl_action('login', 1, 'li'); + tpl_action('admin', true, 'li'); + tpl_action('profile', true, 'li'); + tpl_action('register', true, 'li'); + tpl_action('login', true, 'li'); ?> </ul> </div> @@ -64,9 +64,9 @@ if (!defined('DOKU_INC')) die(); </div> <ul> <?php - tpl_action('recent', 1, 'li'); - tpl_action('media', 1, 'li'); - tpl_action('index', 1, 'li'); + tpl_action('recent', true, 'li'); + tpl_action('media', true, 'li'); + tpl_action('index', true, 'li'); ?> </ul> </div> |