diff options
70 files changed, 775 insertions, 737 deletions
diff --git a/.gitignore b/.gitignore index 64816ba38..bb39ba7cf 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ /conf/lang/* /conf/plugin_lang/* /conf/plugins.local.* +/conf/tpl/* .htaccess *.swp *.bak @@ -26,25 +27,23 @@ /data/media_attic/* /data/meta/* /data/pages/* +/data/tmp/* !/data/pages/wiki/dokuwiki.txt !/data/pages/wiki/syntax.txt !/data/pages/wiki/welcome.txt -/data/tmp/* /lib/tpl/* -!/lib/tpl/default !/lib/tpl/dokuwiki !/lib/tpl/index.php /lib/plugins/* +!/lib/plugins/acl !/lib/plugins/authad !/lib/plugins/authldap !/lib/plugins/authmysql !/lib/plugins/authpgsql !/lib/plugins/authplain -!/lib/plugins/acl !/lib/plugins/config !/lib/plugins/extension !/lib/plugins/info -!/lib/plugins/plugin !/lib/plugins/popularity !/lib/plugins/revert !/lib/plugins/safefnrecode @@ -52,5 +51,8 @@ !/lib/plugins/usermanager !/lib/plugins/action.php !/lib/plugins/admin.php +!/lib/plugins/auth.php !/lib/plugins/index.html +!/lib/plugins/remote.php !/lib/plugins/syntax.php +lib/images/*/local/* diff --git a/_test/tests/inc/parserutils_get_renderer.test.php b/_test/tests/inc/parserutils_get_renderer.test.php new file mode 100644 index 000000000..69aeb3b19 --- /dev/null +++ b/_test/tests/inc/parserutils_get_renderer.test.php @@ -0,0 +1,83 @@ +<?php + +class parserutils_get_renderer_test extends DokuWikiTest { + + private $plugin_controller; + + // test default behaviour / usual settings + function test_p_get_renderer_normal() { + global $conf; + + $old_conf = $conf; + $conf['renderer_xhtml'] = 'xhtml'; + + $this->assertInstanceOf('Doku_Renderer_xhtml', p_get_renderer('xhtml')); + + $conf = $old_conf; + } + + // test get a renderer plugin + function test_p_get_renderer_plugin() { + global $conf; + global $plugin_controller; + + $old_conf = $conf; + $conf['renderer_xhtml'] = 'get_renderer_test'; + $this->plugin_controller = $plugin_controller; + $plugin_controller = $this; + + $this->assertInstanceOf('renderer_plugin_test', p_get_renderer('xhtml')); + + $conf = $old_conf; + $plugin_controller = $this->plugin_controller; + } + + // test fallback succeeds + function test_p_get_renderer_fallback() { + global $conf; + + $old_conf = $conf; + $conf['renderer_xhtml'] = 'badvalue'; + + $this->assertInstanceOf('Doku_Renderer_xhtml', p_get_renderer('xhtml')); + + $conf = $old_conf; + } + + // test fallback fails + /** + * @expectedException PHPUnit_Framework_Error + * @expectedExceptionCode E_USER_WARNING + */ + function test_p_get_renderer_fallback_fail() { + global $conf; + + $old_conf = $conf; + $conf['renderer_junk'] = 'badvalue'; + + $this->assertNull(p_get_renderer('junk')); + + $conf = $old_conf; + } + + // wrapper function for the fake plugin controller, return $this for the fake syntax of this test + function load($type,$name,$new=false,$disabled=false){ + if ($name == 'get_renderer_test') { + return new renderer_plugin_test(); + } else { + return $this->plugin_controller->load($type, $name, $new, $disabled); + } + } + } + +require_once DOKU_INC . 'inc/parser/xhtml.php'; + +class renderer_plugin_test extends Doku_Renderer_xhtml { + + function canRender($format) { + return ($format=='xhtml'); + } + +} + +// vim:ts=4:sw=4:et: diff --git a/data/pages/wiki/dokuwiki.txt b/data/pages/wiki/dokuwiki.txt index 808aea68a..0e08fdcd3 100644 --- a/data/pages/wiki/dokuwiki.txt +++ b/data/pages/wiki/dokuwiki.txt @@ -6,7 +6,7 @@ Read the [[doku>manual|DokuWiki Manual]] to unleash the full power of DokuWiki. ===== Download ===== -DokuWiki is available at http://www.splitbrain.org/go/dokuwiki +DokuWiki is available at http://download.dokuwiki.org/ ===== Read More ===== @@ -24,7 +24,7 @@ All documentation and additional information besides the [[syntax|syntax descrip **Installing DokuWiki** * [[doku>requirements|System Requirements]] - * [[http://www.splitbrain.org/go/dokuwiki|Download DokuWiki]] :!: + * [[http://download.dokuwiki.org/|Download DokuWiki]] :!: * [[doku>changes|Change Log]] * [[doku>Install|How to install or upgrade]] :!: * [[doku>config|Configuration]] @@ -50,7 +50,7 @@ All documentation and additional information besides the [[syntax|syntax descrip * [[doku>mailinglist|Join the mailing list]] * [[http://forum.dokuwiki.org|Check out the user forum]] * [[doku>irc|Talk to other users in the IRC channel]] - * [[http://bugs.splitbrain.org/index.php?project=1|Submit bugs and feature wishes]] + * [[https://github.com/splitbrain/dokuwiki/issues|Submit bugs and feature wishes]] * [[http://www.wikimatrix.org/forum/viewforum.php?id=10|Share your experiences in the WikiMatrix forum]] * [[doku>thanks|Some humble thanks]] @@ -20,8 +20,7 @@ $opt = rss_parseOptions(); // the feed is dynamic - we need a cache for each combo // (but most people just use the default feed so it's still effective) -$cache = getCacheName(join('', array_values($opt)).$_SERVER['REMOTE_USER'], '.feed'); -$key = join('', array_values($opt)).$_SERVER['REMOTE_USER']; +$key = join('', array_values($opt)).'$'.$_SERVER['REMOTE_USER'].'$'.$_SERVER['HTTP_HOST'].$_SERVER['SERVER_PORT']; $cache = new cache($key, '.feed'); // prepare cache depends @@ -299,12 +298,12 @@ function rss_buildItems(&$rss, &$data, $opt) { $src_l = ''; if($size = media_image_preview_size($id, false, new JpegMeta(mediaFN($id)), 300)) { - $more = 'w='.$size[0].'&h='.$size[1].'t='.@filemtime(mediaFN($id)); - $src_r = ml($id, $more); + $more = 'w='.$size[0].'&h='.$size[1].'&t='.@filemtime(mediaFN($id)); + $src_r = ml($id, $more, true, '&', true); } if($rev && $size = media_image_preview_size($id, $rev, new JpegMeta(mediaFN($id, $rev)), 300)) { $more = 'rev='.$rev.'&w='.$size[0].'&h='.$size[1]; - $src_l = ml($id, $more); + $src_l = ml($id, $more, true, '&', true); } $content = ''; if($src_r) { @@ -347,8 +346,8 @@ function rss_buildItems(&$rss, &$data, $opt) { case 'html': if($ditem['media']) { if($size = media_image_preview_size($id, false, new JpegMeta(mediaFN($id)))) { - $more = 'w='.$size[0].'&h='.$size[1].'t='.@filemtime(mediaFN($id)); - $src = ml($id, $more); + $more = 'w='.$size[0].'&h='.$size[1].'&t='.@filemtime(mediaFN($id)); + $src = ml($id, $more, true, '&', true); $content = '<img src="'.$src.'" alt="'.$id.'" />'; } else { $content = ''; @@ -378,8 +377,8 @@ function rss_buildItems(&$rss, &$data, $opt) { default: if($ditem['media']) { if($size = media_image_preview_size($id, false, new JpegMeta(mediaFN($id)))) { - $more = 'w='.$size[0].'&h='.$size[1].'t='.@filemtime(mediaFN($id)); - $src = ml($id, $more); + $more = 'w='.$size[0].'&h='.$size[1].'&t='.@filemtime(mediaFN($id)); + $src = ml($id, $more, true, '&', true); $content = '<img src="'.$src.'" alt="'.$id.'" />'; } else { $content = ''; diff --git a/inc/EmailAddressValidator.php b/inc/EmailAddressValidator.php index bb4ef0ca9..fd6f3275b 100644 --- a/inc/EmailAddressValidator.php +++ b/inc/EmailAddressValidator.php @@ -15,8 +15,8 @@ class EmailAddressValidator { /** * Check email address validity - * @param strEmailAddress Email address to be checked - * @return True if email is valid, false if not + * @param string $strEmailAddress Email address to be checked + * @return bool True if email is valid, false if not */ public function check_email_address($strEmailAddress) { @@ -82,8 +82,8 @@ class EmailAddressValidator { /** * Checks email section before "@" symbol for validity - * @param strLocalPortion Text to be checked - * @return True if local portion is valid, false if not + * @param string $strLocalPortion Text to be checked + * @return bool True if local portion is valid, false if not */ protected function check_local_portion($strLocalPortion) { // Local portion can only be from 1 to 64 characters, inclusive. @@ -113,8 +113,8 @@ class EmailAddressValidator { /** * Checks email section after "@" symbol for validity - * @param strDomainPortion Text to be checked - * @return True if domain portion is valid, false if not + * @param string $strDomainPortion Text to be checked + * @return bool True if domain portion is valid, false if not */ protected function check_domain_portion($strDomainPortion) { // Total domain can only be from 1 to 255 characters, inclusive @@ -172,10 +172,10 @@ class EmailAddressValidator { /** * Check given text length is between defined bounds - * @param strText Text to be checked - * @param intMinimum Minimum acceptable length - * @param intMaximum Maximum acceptable length - * @return True if string is within bounds (inclusive), false if not + * @param string $strText Text to be checked + * @param int $intMinimum Minimum acceptable length + * @param int $intMaximum Maximum acceptable length + * @return bool True if string is within bounds (inclusive), false if not */ protected function check_text_length($strText, $intMinimum, $intMaximum) { // Minimum and maximum are both inclusive diff --git a/inc/actions.php b/inc/actions.php index 50cbe369f..4dbad1a32 100644 --- a/inc/actions.php +++ b/inc/actions.php @@ -697,7 +697,7 @@ function act_sitemap($act) { // Send file //use x-sendfile header to pass the delivery to compatible webservers - if (http_sendfile($sitemap)) exit; + http_sendfile($sitemap); readfile($sitemap); exit; diff --git a/inc/cache.php b/inc/cache.php index 5eac94934..5f54a34a9 100644 --- a/inc/cache.php +++ b/inc/cache.php @@ -8,16 +8,24 @@ if(!defined('DOKU_INC')) die('meh.'); +/** + * Generic handling of caching + */ class cache { - var $key = ''; // primary identifier for this item - var $ext = ''; // file ext for cache data, secondary identifier for this item - var $cache = ''; // cache file name - var $depends = array(); // array containing cache dependency information, + public $key = ''; // primary identifier for this item + public $ext = ''; // file ext for cache data, secondary identifier for this item + public $cache = ''; // cache file name + public $depends = array(); // array containing cache dependency information, // used by _useCache to determine cache validity var $_event = ''; // event to be triggered during useCache + var $_time; - function cache($key,$ext) { + /** + * @param string $key primary identifier + * @param string $ext file extension + */ + public function cache($key,$ext) { $this->key = $key; $this->ext = $ext; $this->cache = getCacheName($key,$ext); @@ -36,7 +44,7 @@ class cache { * * @return bool true if cache can be used, false otherwise */ - function useCache($depends=array()) { + public function useCache($depends=array()) { $this->depends = $depends; $this->_addDependencies(); @@ -59,7 +67,7 @@ class cache { * * @return bool see useCache() */ - function _useCache() { + protected function _useCache() { if (!empty($this->depends['purge'])) return false; // purge requested? if (!($this->_time = @filemtime($this->cache))) return false; // cache exists? @@ -83,7 +91,7 @@ class cache { * it should not remove any existing dependencies and * it should only overwrite a dependency when the new value is more stringent than the old */ - function _addDependencies() { + protected function _addDependencies() { global $INPUT; if ($INPUT->has('purge')) $this->depends['purge'] = true; // purge requested } @@ -94,7 +102,7 @@ class cache { * @param bool $clean true to clean line endings, false to leave line endings alone * @return string cache contents */ - function retrieveCache($clean=true) { + public function retrieveCache($clean=true) { return io_readFile($this->cache, $clean); } @@ -104,14 +112,14 @@ class cache { * @param string $data the data to be cached * @return bool true on success, false otherwise */ - function storeCache($data) { + public function storeCache($data) { return io_savefile($this->cache, $data); } /** * remove any cached data associated with this cache instance */ - function removeCache() { + public function removeCache() { @unlink($this->cache); } @@ -122,7 +130,7 @@ class cache { * @param bool $success result of this cache use attempt * @return bool pass-thru $success value */ - function _stats($success) { + protected function _stats($success) { global $conf; static $stats = null; static $file; @@ -157,14 +165,23 @@ class cache { } } +/** + * Parser caching + */ class cache_parser extends cache { - var $file = ''; // source file for cache - var $mode = ''; // input mode (represents the processing the input file will undergo) + public $file = ''; // source file for cache + public $mode = ''; // input mode (represents the processing the input file will undergo) var $_event = 'PARSER_CACHE_USE'; - function cache_parser($id, $file, $mode) { + /** + * + * @param string $id page id + * @param string $file source file for cache + * @param string $mode input mode + */ + public function cache_parser($id, $file, $mode) { if ($id) $this->page = $id; $this->file = $file; $this->mode = $mode; @@ -172,24 +189,29 @@ class cache_parser extends cache { parent::cache($file.$_SERVER['HTTP_HOST'].$_SERVER['SERVER_PORT'],'.'.$mode); } - function _useCache() { + /** + * method contains cache use decision logic + * + * @return bool see useCache() + */ + protected function _useCache() { if (!@file_exists($this->file)) return false; // source exists? return parent::_useCache(); } - function _addDependencies() { - global $conf, $config_cascade; + protected function _addDependencies() { + global $conf; $this->depends['age'] = isset($this->depends['age']) ? min($this->depends['age'],$conf['cachetime']) : $conf['cachetime']; // parser cache file dependencies ... - $files = array($this->file, // ... source + $files = array($this->file, // ... source DOKU_INC.'inc/parser/parser.php', // ... parser DOKU_INC.'inc/parser/handler.php', // ... handler ); - $files = array_merge($files, getConfigFiles('main')); // ... wiki settings + $files = array_merge($files, getConfigFiles('main')); // ... wiki settings $this->depends['files'] = !empty($this->depends['files']) ? array_merge($files, $this->depends['files']) : $files; parent::_addDependencies(); @@ -197,8 +219,17 @@ class cache_parser extends cache { } +/** + * Caching of data of renderer + */ class cache_renderer extends cache_parser { - function _useCache() { + + /** + * method contains cache use decision logic + * + * @return bool see useCache() + */ + protected function _useCache() { global $conf; if (!parent::_useCache()) return false; @@ -231,7 +262,7 @@ class cache_renderer extends cache_parser { return true; } - function _addDependencies() { + protected function _addDependencies() { // renderer cache file dependencies ... $files = array( @@ -253,18 +284,37 @@ class cache_renderer extends cache_parser { } } +/** + * Caching of parser instructions + */ class cache_instructions extends cache_parser { - function cache_instructions($id, $file) { + /** + * @param string $id page id + * @param string $file source file for cache + */ + public function cache_instructions($id, $file) { parent::cache_parser($id, $file, 'i'); } - function retrieveCache($clean=true) { + /** + * retrieve the cached data + * + * @param bool $clean true to clean line endings, false to leave line endings alone + * @return string cache contents + */ + public function retrieveCache($clean=true) { $contents = io_readFile($this->cache, false); return !empty($contents) ? unserialize($contents) : array(); } - function storeCache($instructions) { + /** + * cache $instructions + * + * @param string $instructions the instruction to be cached + * @return bool true on success, false otherwise + */ + public function storeCache($instructions) { return io_savefile($this->cache,serialize($instructions)); } } diff --git a/inc/common.php b/inc/common.php index bbc0a6e68..9a53ee526 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1141,7 +1141,6 @@ function saveWikiText($id, $text, $summary, $minor = false) { * @author Andreas Gohr <andi@splitbrain.org> */ function saveOldRevision($id) { - global $conf; $oldf = wikiFN($id); if(!@file_exists($oldf)) return ''; $date = filemtime($oldf); @@ -1231,8 +1230,9 @@ function getGoogleQuery() { /** * Return the human readable size of a file * - * @param int $size A file size - * @param int $dec A number of decimal places + * @param int $size A file size + * @param int $dec A number of decimal places + * @return string human readable size * @author Martin Benjamin <b.martin@cybernet.ch> * @author Aidan Lister <aidan@php.net> * @version 1.0.0 @@ -1363,12 +1363,16 @@ function php_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/inc/events.php b/inc/events.php index 58ba4d5e4..7f9824f60 100644 --- a/inc/events.php +++ b/inc/events.php @@ -8,6 +8,9 @@ if(!defined('DOKU_INC')) die('meh.'); +/** + * The event + */ class Doku_Event { // public properties @@ -32,6 +35,9 @@ class Doku_Event { } + /** + * @return string + */ function __toString() { return $this->name; } @@ -51,7 +57,8 @@ class Doku_Event { * $evt->advise_after(); * unset($evt); * - * @return results of processing the event, usually $this->_default + * @param bool $enablePreventDefault + * @return bool results of processing the event, usually $this->_default */ function advise_before($enablePreventDefault=true) { global $EVENT_HANDLER; @@ -77,7 +84,9 @@ class Doku_Event { * $this->_default, all of which may have been modified by the event handlers. * - advise all registered (<event>_AFTER) handlers that the event has taken place * - * @return $event->results + * @param null|callable $action + * @param bool $enablePrevent + * @return mixed $event->results * the value set by any <event>_before or <event> handlers if the default action is prevented * or the results of the default action (as modified by <event>_after handlers) * or NULL no action took place and no handler modified the value @@ -116,6 +125,9 @@ class Doku_Event { function preventDefault() { $this->_default = false; } } +/** + * Controls the registration and execution of all events, + */ class Doku_Event_Handler { // public properties: none @@ -132,6 +144,7 @@ class Doku_Event_Handler { function Doku_Event_Handler() { // load action plugins + /** @var DokuWiki_Action_Plugin $plugin */ $plugin = null; $pluginlist = plugin_list('action'); @@ -147,12 +160,13 @@ class Doku_Event_Handler { * * register a hook for an event * - * @param $event (string) name used by the event, (incl '_before' or '_after' for triggers) - * @param $obj (obj) object in whose scope method is to be executed, + * @param $event string name used by the event, (incl '_before' or '_after' for triggers) + * @param $advise string + * @param $obj object object in whose scope method is to be executed, * if NULL, method is assumed to be a globally available function - * @param $method (function) event handler function - * @param $param (mixed) data passed to the event handler - * @param $seq (int) sequence number for ordering hook execution (ascending) + * @param $method string event handler function + * @param $param mixed data passed to the event handler + * @param $seq int sequence number for ordering hook execution (ascending) */ function register_hook($event, $advise, $obj, $method, $param=null, $seq=0) { $seq = (int)$seq; @@ -164,6 +178,12 @@ class Doku_Event_Handler { } } + /** + * process the before/after event + * + * @param Doku_Event $event + * @param string $advise BEFORE or AFTER + */ function process_event($event,$advise='') { $evt_name = $event->name . ($advise ? '_'.$advise : '_BEFORE'); @@ -191,12 +211,12 @@ class Doku_Event_Handler { * * function wrapper to process (create, trigger and destroy) an event * - * @param $name (string) name for the event - * @param $data (mixed) event data - * @param $action (callback) (optional, default=NULL) default action, a php callback function - * @param $canPreventDefault (bool) (optional, default=true) can hooks prevent the default action + * @param $name string name for the event + * @param $data mixed event data + * @param $action callback (optional, default=NULL) default action, a php callback function + * @param $canPreventDefault bool (optional, default=true) can hooks prevent the default action * - * @return (mixed) the event results value after all event processing is complete + * @return mixed the event results value after all event processing is complete * by default this is the return value of the default action however * it can be set or modified by event handler hooks */ diff --git a/inc/fetch.functions.php b/inc/fetch.functions.php index 3eacaa2fe..c61c54503 100644 --- a/inc/fetch.functions.php +++ b/inc/fetch.functions.php @@ -77,7 +77,7 @@ function sendFile($file, $mime, $dl, $cache, $public = false, $orig = null) { } //use x-sendfile header to pass the delivery to compatible webservers - if(http_sendfile($file)) exit; + http_sendfile($file); // send file contents $fp = @fopen($file, "rb"); diff --git a/inc/form.php b/inc/form.php index 312c42b60..610f50200 100644 --- a/inc/form.php +++ b/inc/form.php @@ -47,15 +47,11 @@ class Doku_Form { * with up to four parameters is deprecated, instead the first parameter * should be an array with parameters. * - * @param mixed $params Parameters for the HTML form element; Using the - * deprecated calling convention this is the ID - * attribute of the form - * @param string $action (optional, deprecated) submit URL, defaults to - * current page - * @param string $method (optional, deprecated) 'POST' or 'GET', default - * is POST - * @param string $enctype (optional, deprecated) Encoding type of the - * data + * @param mixed $params Parameters for the HTML form element; Using the deprecated + * calling convention this is the ID attribute of the form + * @param bool|string $action (optional, deprecated) submit URL, defaults to current page + * @param bool|string $method (optional, deprecated) 'POST' or 'GET', default is POST + * @param bool|string $enctype (optional, deprecated) Encoding type of the data * @author Tom N Harris <tnharris@whoopdedo.org> */ function Doku_Form($params, $action=false, $method=false, $enctype=false) { @@ -230,7 +226,7 @@ class Doku_Form { * first (underflow) or last (overflow) element. * * @param int $pos 0-based index - * @return arrayreference pseudo-element + * @return array reference pseudo-element * @author Tom N Harris <tnharris@whoopdedo.org> */ function &getElementAt($pos) { diff --git a/inc/fulltext.php b/inc/fulltext.php index 87b5a7370..dd918f214 100644 --- a/inc/fulltext.php +++ b/inc/fulltext.php @@ -72,8 +72,20 @@ function _ft_pageSearch(&$data) { $pages = end($stack); $pages_matched = array(); foreach(array_keys($pages) as $id){ - $text = utf8_strtolower(rawWiki($id)); - if (strpos($text, $phrase) !== false) { + $evdata = array( + 'id' => $id, + 'phrase' => $phrase, + 'text' => rawWiki($id) + ); + $evt = new Doku_Event('FULLTEXT_PHRASE_MATCH',$evdata); + if ($evt->advise_before() && $evt->result !== true) { + $text = utf8_strtolower($evdata['text']); + if (strpos($text, $phrase) !== false) { + $evt->result = true; + } + } + $evt->advise_after(); + if ($evt->result === true) { $pages_matched[$id] = 0; // phrase: always 0 hit } } diff --git a/inc/httputils.php b/inc/httputils.php index 003733ede..efeb2a56c 100644 --- a/inc/httputils.php +++ b/inc/httputils.php @@ -64,13 +64,13 @@ function http_conditionalRequest($timestamp){ * Let the webserver send the given file via x-sendfile method * * @author Chris Smith <chris@jalakai.co.uk> - * @param $file - * @returns bool or exits with previously header() commands executed + * @param string $file absolute path of file to send + * @returns void or exits with previous header() commands executed */ function http_sendfile($file) { global $conf; - //use x-sendfile header to pass the delivery to compatible webservers + //use x-sendfile header to pass the delivery to compatible web servers if($conf['xsendfile'] == 1){ header("X-LIGHTTPD-send-file: $file"); ob_end_clean(); @@ -80,12 +80,12 @@ function http_sendfile($file) { ob_end_clean(); exit; }elseif($conf['xsendfile'] == 3){ + // FS#2388 nginx just needs the relative path. + $file = DOKU_REL.substr($file, strlen(fullpath(DOKU_INC)) + 1); header("X-Accel-Redirect: $file"); ob_end_clean(); exit; } - - return false; } /** @@ -224,7 +224,8 @@ function http_cached($cache, $cache_ok) { header('Content-Encoding: gzip'); readfile($cache.".gz"); } else { - if (!http_sendfile($cache)) readfile($cache); + http_sendfile($cache); + readfile($cache); } exit; } diff --git a/inc/lang/bn/lang.php b/inc/lang/bn/lang.php index 94a3fbb12..230f3ef80 100644 --- a/inc/lang/bn/lang.php +++ b/inc/lang/bn/lang.php @@ -5,6 +5,7 @@ * * @author Foysol <ragebot1125@gmail.com> * @author ninetailz <ninetailz1125@gmail.com> + * @author Khan M. B. Asad <muhammad2017@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'itr'; @@ -127,3 +128,33 @@ $lang['js']['medialeft'] = 'বাম দিকে ইমেজ সার $lang['js']['mediaright'] = 'ডান দিকে ইমেজ সারিবদ্ধ কর'; $lang['js']['mediacenter'] = 'মাঝখানে ইমেজ সারিবদ্ধ কর'; $lang['js']['medianoalign'] = 'কোনো সারিবদ্ধ করা প্রয়োজন নেই'; +$lang['js']['nosmblinks'] = 'উইন্ডোস শেয়ার এর সাথে সংযোগ সাধন কেবল মাইক্রোসফ্ট ইন্টারনেট এক্সপ্লোরারেই সম্ভব।\nতবে আপনি লিংকটি কপি পেস্ট করতেই পারেন।'; +$lang['js']['linkwiz'] = 'লিংক উইজার্ড'; +$lang['js']['linkto'] = 'সংযোগের লক্ষ্য:'; +$lang['js']['del_confirm'] = 'নির্বাচিত আইটেম(গুলো) আসলেই মুছে ফেলতে চান?'; +$lang['js']['restore_confirm'] = 'এই সংস্করণ সত্যিই পূর্বাবস্থায় ফিরিয়ে আনতে চান?'; +$lang['js']['media_diff'] = 'পার্থক্যগুলো দেখুন:'; +$lang['js']['media_diff_both'] = 'পাশাপাশি'; +$lang['js']['media_diff_opacity'] = 'শাইন-থ্রু'; +$lang['js']['media_diff_portions'] = 'ঝেঁটিয়ে বিদায়'; +$lang['js']['media_select'] = 'ফাইল নির্বাচন...'; +$lang['js']['media_upload_btn'] = 'আপলোড'; +$lang['js']['media_done_btn'] = 'সাধিত'; +$lang['js']['media_drop'] = 'আপলোডের জন্য এখানে ফাইল ফেলুন'; +$lang['js']['media_cancel'] = 'অপসারণ'; +$lang['js']['media_overwrt'] = 'বর্তমান ফাইল ওভাররাইট করুন'; +$lang['rssfailed'] = 'ফিডটি জোগাড় করতে গিয়ে একটি ত্রুটি ঘটেছে:'; +$lang['nothingfound'] = 'কিছু পাওয়া যায়নি।'; +$lang['mediaselect'] = 'মিডিয়া ফাইল'; +$lang['fileupload'] = 'মিডিয়া ফাইল আপলোড'; +$lang['uploadsucc'] = 'আপলোড সফল'; +$lang['uploadfail'] = 'আপলোড ব্যর্থ। অনুমতি জনিত ত্রুটি কী?'; +$lang['uploadwrong'] = 'আপলোড প্রত্যাখ্যাত। এই ফাইল এক্সটেনশন অননুমোদিত।'; +$lang['uploadexist'] = 'ফাইল ইতিমধ্যেই বিরাজমান। কিছু করা হয়নি।'; +$lang['uploadbadcontent'] = 'আপলোডকৃত সামগ্রী %s ফাইল এক্সটেনশন এর সাথে মিলেনি।'; +$lang['uploadspam'] = 'স্প্যাম ব্ল্যাকলিস্ট আপলোড আটকে দিয়েছে।'; +$lang['uploadxss'] = 'সামগ্রীটি ক্ষতিকর ভেবে আপলোড আটকে দেয়া হয়েছে।'; +$lang['uploadsize'] = 'আপলোডকৃত ফাইলটি বেশি বড়ো। (সর্বোচ্চ %s)'; +$lang['deletesucc'] = '"%s" ফাইলটি মুছে ফেলা হয়েছে।'; +$lang['deletefail'] = '"%s" ডিলিট করা যায়নি - অনুমতি আছে কি না দেখুন।'; +$lang['mediainuse'] = '"%s" ফাইলটি মোছা হয়নি - এটি এখনো ব্যবহৃত হচ্ছে।'; diff --git a/inc/lang/fr/denied.txt b/inc/lang/fr/denied.txt index 20d4d6755..56c59a7c2 100644 --- a/inc/lang/fr/denied.txt +++ b/inc/lang/fr/denied.txt @@ -1,3 +1,3 @@ ====== Autorisation refusée ====== -Désolé, vous n'avez pas les droits pour continuer. Peut-être avez-vous oublié de vous identifier ? +Désolé, vous n'avez pas suffisement d'autorisations pour poursuivre votre demande. Peut-être avez-vous oublié de vous identifier ? diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 49f617323..32e3055f7 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -29,6 +29,7 @@ * @author Bruno Veilleux <bruno.vey@gmail.com> * @author Emmanuel <seedfloyd@gmail.com> * @author Jérôme Brandt <jeromebrandt@gmail.com> + * @author Wild <wild.dagger@free.fr> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -51,10 +52,10 @@ $lang['btn_revs'] = 'Anciennes révisions'; $lang['btn_recent'] = 'Derniers changements'; $lang['btn_upload'] = 'Envoyer'; $lang['btn_cancel'] = 'Annuler'; -$lang['btn_index'] = 'Index'; +$lang['btn_index'] = 'Plan du site'; $lang['btn_secedit'] = 'Modifier'; -$lang['btn_login'] = 'Connexion'; -$lang['btn_logout'] = 'Déconnexion'; +$lang['btn_login'] = 'S\'identifier'; +$lang['btn_logout'] = 'Se déconnecter'; $lang['btn_admin'] = 'Administrer'; $lang['btn_update'] = 'Mettre à jour'; $lang['btn_delete'] = 'Effacer'; @@ -69,7 +70,7 @@ $lang['btn_draft'] = 'Modifier le brouillon'; $lang['btn_recover'] = 'Récupérer le brouillon'; $lang['btn_draftdel'] = 'Effacer le brouillon'; $lang['btn_revert'] = 'Restaurer'; -$lang['btn_register'] = 'S\'enregistrer'; +$lang['btn_register'] = 'Créer un compte'; $lang['btn_apply'] = 'Appliquer'; $lang['btn_media'] = 'Gestionnaire de médias'; $lang['btn_deleteuser'] = 'Supprimer mon compte'; diff --git a/inc/lang/nl/lang.php b/inc/lang/nl/lang.php index e5e3e3c76..e22aa9fff 100644 --- a/inc/lang/nl/lang.php +++ b/inc/lang/nl/lang.php @@ -22,6 +22,7 @@ * @author Klap-in <klapinklapin@gmail.com> * @author Remon <no@email.local> * @author gicalle <gicalle@hotmail.com> + * @author Rene <wllywlnt@yahoo.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/lang/zh/lang.php b/inc/lang/zh/lang.php index 004997d6e..57110bae3 100644 --- a/inc/lang/zh/lang.php +++ b/inc/lang/zh/lang.php @@ -20,6 +20,7 @@ * @author Yangyu Huang <yangyu.huang@gmail.com> * @author anjianshi <anjianshi@gmail.com> * @author oott123 <ip.192.168.1.1@qq.com> + * @author Cupen <Cupenoruler@foxmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/load.php b/inc/load.php index 497dd6921..f1deffe19 100644 --- a/inc/load.php +++ b/inc/load.php @@ -96,6 +96,12 @@ function load_autoload($name){ 'DokuWiki_Remote_Plugin' => DOKU_PLUGIN.'remote.php', 'DokuWiki_Auth_Plugin' => DOKU_PLUGIN.'auth.php', + 'Doku_Renderer' => DOKU_INC.'inc/parser/renderer.php', + 'Doku_Renderer_xhtml' => DOKU_INC.'inc/parser/xhtml.php', + 'Doku_Renderer_code' => DOKU_INC.'inc/parser/code.php', + 'Doku_Renderer_xhtmlsummary' => DOKU_INC.'inc/parser/xhtmlsummary.php', + 'Doku_Renderer_metadata' => DOKU_INC.'inc/parser/metadata.php', + ); if(isset($classes[$name])){ diff --git a/inc/pageutils.php b/inc/pageutils.php index c8d3cf4bb..9c2794387 100644 --- a/inc/pageutils.php +++ b/inc/pageutils.php @@ -94,6 +94,7 @@ function getID($param='id',$clean=true){ * @author Andreas Gohr <andi@splitbrain.org> * @param string $raw_id The pageid to clean * @param boolean $ascii Force ASCII + * @return string cleaned id */ function cleanID($raw_id,$ascii=false){ global $conf; @@ -244,6 +245,7 @@ function page_exists($id,$rev='',$clean=true) { * @param $rev string page revision, empty string for current * @param $clean bool flag indicating that $raw_id should be cleaned. Only set to false * when $id is guaranteed to have been cleaned already. + * @return string full path * * @author Andreas Gohr <andi@splitbrain.org> */ @@ -361,6 +363,7 @@ function mediaFN($id, $rev=''){ * * @param string $id The id of the local file * @param string $ext The file extension (usually txt) + * @return string full filepath to localized file * @author Andreas Gohr <andi@splitbrain.org> */ function localeFN($id,$ext='txt'){ @@ -543,6 +546,11 @@ function isHiddenPage($id){ return $data['hidden']; } +/** + * callback checks if page is hidden + * + * @param array $data event data see isHiddenPage() + */ function _isHiddenPage(&$data) { global $conf; global $ACT; diff --git a/inc/parser/code.php b/inc/parser/code.php index 0b8e3ee02..d77ffd1aa 100644 --- a/inc/parser/code.php +++ b/inc/parser/code.php @@ -5,7 +5,6 @@ * @author Andreas Gohr <andi@splitbrain.org> */ if(!defined('DOKU_INC')) die('meh.'); -require_once DOKU_INC . 'inc/parser/renderer.php'; class Doku_Renderer_code extends Doku_Renderer { var $_codeblock=0; diff --git a/inc/parser/metadata.php b/inc/parser/metadata.php index 8ba159d62..73bae190f 100644 --- a/inc/parser/metadata.php +++ b/inc/parser/metadata.php @@ -16,8 +16,6 @@ if ( !defined('DOKU_TAB') ) { define ('DOKU_TAB',"\t"); } -require_once DOKU_INC . 'inc/parser/renderer.php'; - /** * The Renderer */ diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index e3401fd48..1f9ad00a2 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -6,8 +6,6 @@ * @author Andreas Gohr <andi@splitbrain.org> */ if(!defined('DOKU_INC')) die('meh.'); -require_once DOKU_INC . 'inc/plugin.php'; -require_once DOKU_INC . 'inc/pluginutils.php'; /** * An empty renderer, produces no output diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php index 315b4d640..184e62fe3 100644 --- a/inc/parser/xhtml.php +++ b/inc/parser/xhtml.php @@ -17,9 +17,6 @@ if ( !defined('DOKU_TAB') ) { define ('DOKU_TAB',"\t"); } -require_once DOKU_INC . 'inc/parser/renderer.php'; -require_once DOKU_INC . 'inc/html.php'; - /** * The Renderer */ diff --git a/inc/parser/xhtmlsummary.php b/inc/parser/xhtmlsummary.php index 95f86cbef..867b71f6a 100644 --- a/inc/parser/xhtmlsummary.php +++ b/inc/parser/xhtmlsummary.php @@ -1,6 +1,5 @@ <?php if(!defined('DOKU_INC')) die('meh.'); -require_once DOKU_INC . 'inc/parser/xhtml.php'; /** * The summary XHTML form selects either up to the first two paragraphs diff --git a/inc/parserutils.php b/inc/parserutils.php index 4df273f11..06bd6dbb8 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -430,8 +430,9 @@ function p_render_metadata($id, $orig){ global $ID, $METADATA_RENDERERS; // avoid recursive rendering processes for the same id - if (isset($METADATA_RENDERERS[$id])) + if (isset($METADATA_RENDERERS[$id])) { return $orig; + } // store the original metadata in the global $METADATA_RENDERERS so p_set_metadata can use it $METADATA_RENDERERS[$id] =& $orig; @@ -444,8 +445,6 @@ function p_render_metadata($id, $orig){ $evt = new Doku_Event('PARSER_METADATA_RENDER', $orig); if ($evt->advise_before()) { - require_once DOKU_INC."inc/parser/metadata.php"; - // get instructions $instructions = p_cached_instructions(wikiFN($id),false,$id); if(is_null($instructions)){ @@ -588,7 +587,7 @@ function p_sort_modes($a, $b){ function p_render($mode,$instructions,&$info){ if(is_null($instructions)) return ''; - $Renderer =& p_get_renderer($mode); + $Renderer = p_get_renderer($mode); if (is_null($Renderer)) return null; $Renderer->reset(); @@ -616,43 +615,54 @@ function p_render($mode,$instructions,&$info){ } /** + * Figure out the correct renderer class to use for $mode, + * instantiate and return it + * * @param $mode string Mode of the renderer to get * @return null|Doku_Renderer The renderer + * + * @author Christopher Smith <chris@jalakai.co.uk> */ -function & p_get_renderer($mode) { +function p_get_renderer($mode) { /** @var Doku_Plugin_Controller $plugin_controller */ global $conf, $plugin_controller; $rname = !empty($conf['renderer_'.$mode]) ? $conf['renderer_'.$mode] : $mode; $rclass = "Doku_Renderer_$rname"; + // if requested earlier or a bundled renderer if( class_exists($rclass) ) { $Renderer = new $rclass(); return $Renderer; } - // try default renderer first: - $file = DOKU_INC."inc/parser/$rname.php"; - if(@file_exists($file)){ - require_once $file; + // not bundled, see if its an enabled plugin for rendering $mode + $Renderer = $plugin_controller->load('renderer',$rname); + if ($Renderer && is_a($Renderer, 'Doku_Renderer') && ($mode == $Renderer->getFormat())) { + return $Renderer; + } - if ( !class_exists($rclass) ) { - trigger_error("Unable to resolve render class $rclass",E_USER_WARNING); - msg("Renderer '$rname' for $mode not valid",-1); - return null; + // there is a configuration error! + // not bundled, not a valid enabled plugin, use $mode to try to fallback to a bundled renderer + $rclass = "Doku_Renderer_$mode"; + if ( class_exists($rclass) ) { + // viewers should see renderered output, so restrict the warning to admins only + $msg = "No renderer '$rname' found for mode '$mode', check your plugins"; + if ($mode == 'xhtml') { + $msg .= " and the 'renderer_xhtml' config setting"; } - $Renderer = new $rclass(); - }else{ - // Maybe a plugin/component is available? - $Renderer = $plugin_controller->load('renderer',$rname); + $msg .= ".<br/>Attempting to fallback to the bundled renderer."; + msg($msg,-1,'','',MSG_ADMINS_ONLY); - if(!isset($Renderer) || is_null($Renderer)){ - msg("No renderer '$rname' found for mode '$mode'",-1); - return null; - } + $Renderer = new $rclass; + $Renderer->nocache(); // fallback only (and may include admin alerts), don't cache + return $Renderer; } - return $Renderer; + // fallback failed, alert the world + trigger_error("Unable to resolve render class $rclass",E_USER_WARNING); + msg("No renderer '$rname' found for mode '$mode'",-1); + return null; } /** diff --git a/inc/pluginutils.php b/inc/pluginutils.php index 894bbefb6..911c4e5c0 100644 --- a/inc/pluginutils.php +++ b/inc/pluginutils.php @@ -37,7 +37,7 @@ function plugin_list($type='',$all=false) { * @param $name string name of the plugin to load * @param $new bool true to return a new instance of the plugin, false to use an already loaded instance * @param $disabled bool true to load even disabled plugins - * @return DokuWiki_Plugin|DokuWiki_Syntax_Plugin|null the plugin object or null on failure + * @return DokuWiki_Plugin|null the plugin object or null on failure */ function plugin_load($type,$name,$new=false,$disabled=false) { /** @var $plugin_controller Doku_Plugin_Controller */ diff --git a/lib/exe/js.php b/lib/exe/js.php index 04413b409..8f16f4a96 100644 --- a/lib/exe/js.php +++ b/lib/exe/js.php @@ -220,6 +220,12 @@ function js_pluginstrings() { return $pluginstrings; } +/** + * Return an two-dimensional array with strings from the language file of current active template. + * + * - $lang['js'] must be an array. + * - Nothing is returned for template without an entry for $lang['js'] + */ function js_templatestrings() { global $conf; $templatestrings = array(); diff --git a/lib/plugins/extension/lang/de/intro_install.txt b/lib/plugins/extension/lang/de/intro_install.txt new file mode 100644 index 000000000..4ecebe959 --- /dev/null +++ b/lib/plugins/extension/lang/de/intro_install.txt @@ -0,0 +1 @@ +Hier können Sie Plugins und Templates von Hand installieren indem Sie sie hochladen oder eine Download-URL angeben.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/de/intro_plugins.txt b/lib/plugins/extension/lang/de/intro_plugins.txt new file mode 100644 index 000000000..1a1521050 --- /dev/null +++ b/lib/plugins/extension/lang/de/intro_plugins.txt @@ -0,0 +1 @@ +Dies sind die Plugins, die bereits installiert sind. Sie können sie hier an- oder abschalten oder sie komplett deinstallieren. Außerdem werden hier Updates zu den installiereten Plugins angezeigt. Bitte lesen Sie vor einem Update die zugehörige Dokumentation.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/de/intro_search.txt b/lib/plugins/extension/lang/de/intro_search.txt new file mode 100644 index 000000000..7df8de185 --- /dev/null +++ b/lib/plugins/extension/lang/de/intro_search.txt @@ -0,0 +1 @@ +Dieser Tab gibt Ihnen Zugriff auf alle vorhandenen Plugins und Templates für DokuWiki. Bitte bedenken sie das jede installierte Erweiterung ein Sicherheitsrisiko darstellen kann. Sie sollten vor einer Installation die [[doku>security#plugin_security|Plugin Security]] Informationen lesen.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/de/intro_templates.txt b/lib/plugins/extension/lang/de/intro_templates.txt new file mode 100644 index 000000000..d71ce6237 --- /dev/null +++ b/lib/plugins/extension/lang/de/intro_templates.txt @@ -0,0 +1 @@ +Dies sind die in Ihrem Dokuwiki installierten Templates. Sie können das gewünschte Template im [[?do=admin&page=config|Konfigurations Manager]] aktivieren.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/de/lang.php b/lib/plugins/extension/lang/de/lang.php new file mode 100644 index 000000000..10d501130 --- /dev/null +++ b/lib/plugins/extension/lang/de/lang.php @@ -0,0 +1,73 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author H. Richard <wanderer379@t-online.de> + */ +$lang['menu'] = 'Erweiterungen verwalten'; +$lang['tab_plugins'] = 'Installierte Plugins'; +$lang['tab_templates'] = 'Installierte Templates'; +$lang['tab_search'] = 'Suchen und Installieren'; +$lang['tab_install'] = 'Händisch installieren'; +$lang['notimplemented'] = 'Dieses Fähigkeit/Eigenschaft wurde noch nicht implementiert'; +$lang['notinstalled'] = 'Diese Erweiterung ist nicht installiert'; +$lang['alreadyenabled'] = 'Diese Erweiterung ist bereits aktiviert'; +$lang['alreadydisabled'] = 'Diese Erweiterung ist bereits deaktiviert'; +$lang['pluginlistsaveerror'] = 'Es gab einen Fehler beim Speichern der Plugin-Liste'; +$lang['unknownauthor'] = 'Unbekannter Autor'; +$lang['unknownversion'] = 'Unbekannte Version'; +$lang['btn_info'] = 'Zeige weitere Info'; +$lang['btn_update'] = 'Update'; +$lang['btn_uninstall'] = 'Deinstallation'; +$lang['btn_enable'] = 'Aktivieren'; +$lang['btn_disable'] = 'Deaktivieren'; +$lang['btn_install'] = 'Installieren'; +$lang['btn_reinstall'] = 'Neu installieren'; +$lang['js']['reallydel'] = 'Wollen Sie diese Erweiterung wirklich löschen?'; +$lang['search_for'] = 'Erweiterung suchen:'; +$lang['search'] = 'Suchen'; +$lang['extensionby'] = '<strong>%s</strong> von %s'; +$lang['screenshot'] = 'Bildschirmfoto von %s'; +$lang['popularity'] = 'Popularität: %s%%'; +$lang['homepage_link'] = 'Doku'; +$lang['bugs_features'] = 'Bugs'; +$lang['tags'] = 'Schlagworte'; +$lang['author_hint'] = 'Suche weitere Erweiterungen dieses Autors'; +$lang['installed'] = 'Installiert:'; +$lang['downloadurl'] = 'URL zum Herunterladen'; +$lang['unknown'] = '<em>unbekannt</em>'; +$lang['installed_version'] = 'Installierte Version'; +$lang['install_date'] = 'Ihr letztes Update:'; +$lang['available_version'] = 'Verfügbare Version: '; +$lang['compatible'] = 'Kompatibel mit:'; +$lang['depends'] = 'Benötigt:'; +$lang['similar'] = 'Ist ähnlich zu:'; +$lang['conflicts'] = 'Nicht kompatibel mit:'; +$lang['donate'] = 'Nützlich?'; +$lang['donate_action'] = 'Spendieren Sie dem Autor einen Kaffee!'; +$lang['repo_retry'] = 'Neu versuchen'; +$lang['provides'] = 'Enthält'; +$lang['status'] = 'Status'; +$lang['status_installed'] = 'installiert'; +$lang['status_not_installed'] = 'nicht installiert'; +$lang['status_protected'] = 'geschützt'; +$lang['status_enabled'] = 'aktiviert'; +$lang['status_disabled'] = 'deaktiviert'; +$lang['status_unmodifiable'] = 'unveränderlich'; +$lang['status_plugin'] = 'Plugin'; +$lang['status_template'] = 'Template'; +$lang['msg_enabled'] = 'Plugin %s ist aktiviert'; +$lang['msg_disabled'] = 'Erweiterung %s ist deaktiviert'; +$lang['msg_delete_success'] = 'Erweiterung wurde entfernt'; +$lang['msg_template_install_success'] = 'Das Template %s wurde erfolgreich installiert'; +$lang['msg_template_update_success'] = 'Das Update des Templates %s war erfolgreich '; +$lang['msg_plugin_install_success'] = 'Das Plugin %s wurde erfolgreich installiert'; +$lang['msg_plugin_update_success'] = 'Das Update des Plugins %s war erfolgreich'; +$lang['msg_upload_failed'] = 'Fehler beim Hochladen der Datei'; +$lang['missing_dependency'] = '<strong>fehlende oder deaktivierte Abhängigkeit:<strong>%s'; +$lang['noperms'] = 'Das Erweiterungs-Verzeichnis ist schreibgeschützt'; +$lang['notplperms'] = 'Das Template-Verzeichnis ist schreibgeschützt'; +$lang['nopluginperms'] = 'Das Plugin-Verzeichnis ist schreibgeschützt'; +$lang['install_url'] = 'Von Webadresse (URL) installieren'; +$lang['install_upload'] = 'Erweiterung hochladen:'; diff --git a/lib/plugins/extension/lang/ja/intro_install.txt b/lib/plugins/extension/lang/ja/intro_install.txt new file mode 100644 index 000000000..889ed6879 --- /dev/null +++ b/lib/plugins/extension/lang/ja/intro_install.txt @@ -0,0 +1 @@ +ここでは、アップロードするかダウンロードURLを指定して、手動でプラグインやテンプレートをインストールできます。 diff --git a/lib/plugins/extension/lang/ja/intro_plugins.txt b/lib/plugins/extension/lang/ja/intro_plugins.txt new file mode 100644 index 000000000..9bfc68431 --- /dev/null +++ b/lib/plugins/extension/lang/ja/intro_plugins.txt @@ -0,0 +1 @@ +このDokuWikiに現在インストールされているプラグインです。ここでは、これらプラグインを有効化、無効化、アンインストールすることができます。同様にプラグインのアップデートも表示されます。アップデート前に、プラグインのマニュアルをお読みください。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ja/intro_search.txt b/lib/plugins/extension/lang/ja/intro_search.txt new file mode 100644 index 000000000..66d977b1b --- /dev/null +++ b/lib/plugins/extension/lang/ja/intro_search.txt @@ -0,0 +1 @@ +このタブでは、DokuWiki用の利用可能なすべてのサードパーティのプラグインとテンプレートにアクセスできます。サードパーティ製のコードには、**セキュリティ上のリスク**の可能性があることに注意してください、最初に[[doku>ja:security#プラグインのセキュリティ|プラグインのセキュリティ]]を読むことをお勧めします。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ja/intro_templates.txt b/lib/plugins/extension/lang/ja/intro_templates.txt new file mode 100644 index 000000000..f97694aaa --- /dev/null +++ b/lib/plugins/extension/lang/ja/intro_templates.txt @@ -0,0 +1 @@ +このDokuWikiに現在インストールされているテンプレートです。[[?do=admin&page=config|設定管理]]で使用するテンプレートを選択できます。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/ja/lang.php b/lib/plugins/extension/lang/ja/lang.php new file mode 100644 index 000000000..0401d7630 --- /dev/null +++ b/lib/plugins/extension/lang/ja/lang.php @@ -0,0 +1,54 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Hideaki SAWADA <chuno@live.jp> + */ +$lang['menu'] = '拡張機能管理'; +$lang['tab_plugins'] = 'インストール済プラグイン'; +$lang['tab_templates'] = 'インストール済テンプレート'; +$lang['tab_install'] = '手動インストール'; +$lang['notimplemented'] = 'この機能は未実装です。'; +$lang['notinstalled'] = 'この拡張機能はインストールされていません。'; +$lang['alreadyenabled'] = 'この拡張機能は有効です。'; +$lang['alreadydisabled'] = 'この拡張機能は無効です。'; +$lang['pluginlistsaveerror'] = 'プラグイン一覧の保存中にエラーが発生しました。'; +$lang['unknownauthor'] = '作者不明'; +$lang['unknownversion'] = 'バージョン不明'; +$lang['btn_info'] = '詳細情報を表示する。'; +$lang['btn_update'] = 'アップデート'; +$lang['btn_uninstall'] = 'アンインストール'; +$lang['btn_enable'] = '有効化'; +$lang['btn_disable'] = '無効化'; +$lang['btn_install'] = 'インストール'; +$lang['btn_reinstall'] = '再インストール'; +$lang['js']['reallydel'] = 'この拡張機能を本当にアンインストールしますか?'; +$lang['downloadurl'] = 'ダウンロード URL:'; +$lang['repository'] = 'リポジトリ:'; +$lang['depends'] = '依存:'; +$lang['similar'] = '類似:'; +$lang['status_installed'] = 'インストール済'; +$lang['status_not_installed'] = '未インストール'; +$lang['status_enabled'] = '有効'; +$lang['status_disabled'] = '無効'; +$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['security_issue'] = '<strong>セキュリティ問題:</strong> %s'; +$lang['security_warning'] = '<strong>セキュリティ警告:</strong> %s'; +$lang['update_available'] = '<strong>アップデート:</strong>%sの新バージョンが利用可能です。 '; +$lang['error_badurl'] = 'URLはhttpかhttpsで始まる必要があります。'; +$lang['error_dircreate'] = 'ダウンロード用の一時フォルダが作成できません。'; +$lang['error_download'] = 'ファイルをダウンロードできません:%s'; +$lang['noperms'] = '拡張機能ディレクトリが書き込み不可です。'; +$lang['notplperms'] = 'テンプレートディレクトリが書き込み不可です。'; +$lang['nopluginperms'] = 'プラグインディレクトリが書き込み不可です。'; diff --git a/lib/plugins/extension/lang/nl/intro_install.txt b/lib/plugins/extension/lang/nl/intro_install.txt new file mode 100644 index 000000000..6a0b41055 --- /dev/null +++ b/lib/plugins/extension/lang/nl/intro_install.txt @@ -0,0 +1 @@ +Hier kunt u handmatig plugins en templates installeren door deze te uploaden of door een directe download URL op te geven.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/nl/intro_plugins.txt b/lib/plugins/extension/lang/nl/intro_plugins.txt new file mode 100644 index 000000000..0077aca30 --- /dev/null +++ b/lib/plugins/extension/lang/nl/intro_plugins.txt @@ -0,0 +1 @@ +Dit zijn de momenteel in uw Dokuwiki geïnstalleerde plugins. U kunt deze hier aan of uitschakelen danwel geheel deïnstalleren. Plugin updates zijn hier ook opgenomen, lees de pluin documentatie voordat u update.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/nl/intro_search.txt b/lib/plugins/extension/lang/nl/intro_search.txt new file mode 100644 index 000000000..8fc3900ad --- /dev/null +++ b/lib/plugins/extension/lang/nl/intro_search.txt @@ -0,0 +1 @@ +Deze tab verschaft u toegang tot alle plugins en templates vervaardigd door derden en bestemd voor Dokuwiki. Houdt er rekening meel dat indien u Plugins van derden installeerd deze een **veiligheids risico ** kunnen bevatten, geadviseerd wordt om eerst te lezen [[doku>security#plugin_security|plugin security]].
\ No newline at end of file diff --git a/lib/plugins/extension/lang/nl/intro_templates.txt b/lib/plugins/extension/lang/nl/intro_templates.txt new file mode 100644 index 000000000..5ef23dadf --- /dev/null +++ b/lib/plugins/extension/lang/nl/intro_templates.txt @@ -0,0 +1 @@ +Deze templates zijn thans in DokuWiki geïnstalleerd. U kent een template selecteren middels [[?do=admin&page=config|Configuration Manager]] .
\ No newline at end of file diff --git a/lib/plugins/extension/lang/nl/lang.php b/lib/plugins/extension/lang/nl/lang.php new file mode 100644 index 000000000..783168c2e --- /dev/null +++ b/lib/plugins/extension/lang/nl/lang.php @@ -0,0 +1,87 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Rene <wllywlnt@yahoo.com> + */ +$lang['menu'] = 'Extension Manager (Uitbreidings Beheerder)'; +$lang['tab_plugins'] = 'Geïnstalleerde Plugins'; +$lang['tab_templates'] = 'Geïnstalleerde Templates'; +$lang['tab_search'] = 'Zoek en installeer'; +$lang['tab_install'] = 'Handmatige installatie'; +$lang['notimplemented'] = 'Deze toepassing is nog niet geïnstalleerd'; +$lang['notinstalled'] = 'Deze uitbreiding is nog niet geïnstalleerd'; +$lang['alreadyenabled'] = 'Deze uitbreiding is reeds ingeschakeld'; +$lang['alreadydisabled'] = 'Deze uitbreiding is reeds uitgeschakeld'; +$lang['pluginlistsaveerror'] = 'Fout bij het opslaan van de plugin lijst'; +$lang['unknownauthor'] = 'Onbekende auteur'; +$lang['unknownversion'] = 'Onbekende versie'; +$lang['btn_info'] = 'Toon meer informatie'; +$lang['btn_update'] = 'Update'; +$lang['btn_uninstall'] = 'Deinstalleer'; +$lang['btn_enable'] = 'Schakel aan'; +$lang['btn_disable'] = 'Schakel uit'; +$lang['btn_install'] = 'Installeer'; +$lang['btn_reinstall'] = 'Her-installeer'; +$lang['js']['reallydel'] = 'Wilt u deze uitbreiding deinstalleren ?'; +$lang['search_for'] = 'Zoek Uitbreiding:'; +$lang['search'] = 'Zoek'; +$lang['extensionby'] = '<strong>%s</strong> by %s'; +$lang['screenshot'] = 'Schermafdruk bij %s'; +$lang['popularity'] = 'Populariteit:%s%%'; +$lang['homepage_link'] = 'Dokumenten'; +$lang['msg_delete_success'] = 'Uitbreiding gedeinstalleerd'; +$lang['msg_template_install_success'] = 'Template %s werd succesvol geïnstalleerd'; +$lang['msg_template_update_success'] = 'Template %s werd succesvol ge-update'; +$lang['msg_plugin_install_success'] = 'Plugin %s werd succesvol geïnstalleerd'; +$lang['msg_plugin_update_success'] = 'Plugin %s werd succesvol ge-update'; +$lang['msg_upload_failed'] = 'Uploaden van het bestand is mislukt'; +$lang['missing_dependency'] = '<strong>niet aanwezige of uitgeschakelde afhankelijkheid</strong> %s'; +$lang['security_issue'] = '<strong>Veiligheids kwestie:</strong> %s'; +$lang['security_warning'] = '<strong>Veiligheids Waarschuwing</strong> %s'; +$lang['update_available'] = '<strong>Update:</strong> Nieuwe versie %s is beschikbaar.'; +$lang['wrong_folder'] = '<strong>Plugin onjuist geïnstalleerd:</strong> Hernoem de plugin directory van "%s" naar"%s"'; +$lang['url_change'] = '<strong>URL gewijzigd:</strong> Download URL is gewijzigd sinds de laatste download. Controleer of de nieuwe URL juist is voordat u de uitbreiding update. <br />Nieuw:%s<Br /> Vorig: %s'; +$lang['error_badurl'] = 'URLs moeten beginnen met http of https'; +$lang['error_dircreate'] = 'De tijdelijke map kon niet worden gemaakt om de download te ontvangen'; +$lang['error_download'] = 'Het is niet mogelijk het bestand te downloaden: %s'; +$lang['error_decompress'] = 'Onmogelijk om het gedownloade bestand uit te pakken. Dit is wellicht het gevolg van een onvolledige/onjuiste download, in welk geval u het nog eens moet proberen; of het compressie formaat is onbekend in welk geval u het bestand handmatig moet downloaden en installeren.'; +$lang['error_findfolder'] = 'Onmogelijk om de uitbreidings directory te vinden, u moet het zelf downloaden en installeren'; +$lang['error_copy'] = 'Er was een bestand kopieer fout tijdens het installeren van bestanden in directory <em>%s</em>: de schijf kan vol zijn of de bestand toegangs rechten kunnen onjuist zijn. Dit kan tot gevolg hebben dat de plugin slechts gedeeltelijk werd geïnstalleerd waardoor uw wiki installatie onstabiel is '; +$lang['noperms'] = 'Uitbreidings directory is niet schrijfbaar'; +$lang['notplperms'] = 'Template directory is niet schrijfbaar'; +$lang['nopluginperms'] = 'Plugin directory is niet schrijfbaar'; +$lang['git'] = 'De uitbreiding werd geïnstalleerd via git, u wilt deze hier wellicht niet aanpassen.'; +$lang['install_url'] = 'Installeer vanaf URL:'; +$lang['install_upload'] = 'Upload Uitbreiding:'; +$lang['bugs_features'] = 'Bugs'; +$lang['tags'] = 'Tags:'; +$lang['author_hint'] = 'Zoek uitbreidingen van deze auteur:'; +$lang['installed'] = 'Geinstalleerd:'; +$lang['downloadurl'] = 'Download URL:'; +$lang['repository'] = 'Repository ( centrale opslag)'; +$lang['unknown'] = '<em>onbekend</em>'; +$lang['installed_version'] = 'Geïnstalleerde versie'; +$lang['install_date'] = 'Uw laatste update :'; +$lang['available_version'] = 'Beschikbare versie:'; +$lang['compatible'] = 'Compatible met :'; +$lang['depends'] = 'Afhankelijk van :'; +$lang['similar'] = 'Soortgelijk :'; +$lang['conflicts'] = 'Conflicteerd met :'; +$lang['donate'] = 'Vindt u dit leuk ?'; +$lang['donate_action'] = 'Koop een kop koffie voor de auteur!'; +$lang['repo_retry'] = 'Herhaal'; +$lang['provides'] = 'Zorgt voor:'; +$lang['status'] = 'Status:'; +$lang['status_installed'] = 'Geïnstalleerd'; +$lang['status_not_installed'] = 'niet geïnstalleerd '; +$lang['status_protected'] = 'beschermd'; +$lang['status_enabled'] = 'ingeschakeld'; +$lang['status_disabled'] = 'uitgeschakeld'; +$lang['status_unmodifiable'] = 'Niet wijzigbaar'; +$lang['status_plugin'] = 'plugin'; +$lang['status_template'] = 'template'; +$lang['status_bundled'] = 'Gebundeld'; +$lang['msg_enabled'] = 'Plugin %s ingeschakeld'; +$lang['msg_disabled'] = 'Plugin %s uitgeschakeld'; diff --git a/lib/plugins/extension/lang/sk/lang.php b/lib/plugins/extension/lang/sk/lang.php new file mode 100644 index 000000000..d00c2e32b --- /dev/null +++ b/lib/plugins/extension/lang/sk/lang.php @@ -0,0 +1,58 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Martin Michalek <michalek.dev@gmail.com> + */ +$lang['tab_plugins'] = 'Inštalované pluginy'; +$lang['tab_templates'] = 'Inštalované šablóny'; +$lang['tab_search'] = 'Hľadanie e inštalácia'; +$lang['tab_install'] = 'Manuálna inštalácia'; +$lang['notimplemented'] = 'Táto vlastnosť ešte nebola implementovaná'; +$lang['unknownauthor'] = 'Neznámy autor'; +$lang['unknownversion'] = 'Neznáma verzia'; +$lang['btn_info'] = 'Viac informácií'; +$lang['btn_update'] = 'Aktualizácia'; +$lang['btn_uninstall'] = 'Odinštalovanie'; +$lang['btn_enable'] = 'Povolenie'; +$lang['btn_disable'] = 'Zablokovanie'; +$lang['btn_install'] = 'Inštalácia'; +$lang['btn_reinstall'] = 'Re-Inštalácia'; +$lang['search'] = 'Vyhľadávanie'; +$lang['extensionby'] = '<strong>%s</strong> od %s'; +$lang['screenshot'] = 'Obrázok od %s'; +$lang['popularity'] = 'Popularita: %s%%'; +$lang['homepage_link'] = 'Dokumentácia'; +$lang['bugs_features'] = 'Chyby:'; +$lang['tags'] = 'Kľúčové slová:'; +$lang['unknown'] = '<em>neznámy</em>'; +$lang['installed_version'] = 'Inštalovaná verzia:'; +$lang['install_date'] = 'Posledná aktualizácia:'; +$lang['available_version'] = 'Dostupné verzie:'; +$lang['compatible'] = 'Kompaktibilita:'; +$lang['similar'] = 'Podobné:'; +$lang['conflicts'] = 'V konflikte:'; +$lang['status_installed'] = 'inštalovaný'; +$lang['status_not_installed'] = 'neinštalovaný'; +$lang['status_protected'] = 'chránený'; +$lang['status_enabled'] = 'povolený'; +$lang['status_disabled'] = 'nepovolený'; +$lang['status_plugin'] = 'plugin'; +$lang['status_template'] = 'šablóna'; +$lang['msg_enabled'] = 'Plugin %s povolený'; +$lang['msg_disabled'] = 'Plugin %s nepovolený'; +$lang['msg_template_install_success'] = 'Šablóna %s úspešne nainštalovaná'; +$lang['msg_template_update_success'] = 'Šablóna %s úspešne aktualizovaná'; +$lang['msg_plugin_install_success'] = 'Plugin %s úspešne nainštalovaný'; +$lang['msg_plugin_update_success'] = 'Plugin %s úspešne aktualizovaný'; +$lang['msg_upload_failed'] = 'Nahrávanie súboru zlyhalo'; +$lang['update_available'] = '<strong>Aktualizácia:</strong> Nová verzia %s.'; +$lang['wrong_folder'] = '<strong>Plugin nesprávne nainštalovaný:</strong> Premenujte adresár s pluginom "%s" na "%s".'; +$lang['error_badurl'] = 'URL by mali mať na začiatku http alebo https'; +$lang['error_dircreate'] = 'Nie je možné vytvoriť dočasný adresár pre uloženie sťahovaného súboru'; +$lang['error_download'] = 'Nie je možné stiahnuť súbor: %s'; +$lang['error_decompress'] = 'Nie je možné dekomprimovať stiahnutý súbor. Môže to byť dôvodom chyby sťahovania (v tom prípade to skúste znova) alebo neznámym kompresným formátom (v tom prípade musíte stiahnuť a inštalovať manuálne).'; +$lang['error_copy'] = 'Chyba kopírovania pri inštalácii do adresára <em>%s</em>: disk môže byť plný alebo nemáte potrebné prístupové oprávnenie. Dôsledkom može byť čiastočne inštalovaný plugin a nestabilná wiki inštalácia.'; +$lang['nopluginperms'] = 'Adresár s pluginom nie je zapisovateľný.'; +$lang['install_url'] = 'Inštalácia z URL:'; diff --git a/lib/plugins/extension/lang/zh/intro_install.txt b/lib/plugins/extension/lang/zh/intro_install.txt new file mode 100644 index 000000000..640839319 --- /dev/null +++ b/lib/plugins/extension/lang/zh/intro_install.txt @@ -0,0 +1 @@ +你可以通过上传或直接提供下载链接来安装插件和模板。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/zh/intro_search.txt b/lib/plugins/extension/lang/zh/intro_search.txt new file mode 100644 index 000000000..0059075c0 --- /dev/null +++ b/lib/plugins/extension/lang/zh/intro_search.txt @@ -0,0 +1 @@ +这个标签会为你展示所有DokuWiki的第三方插件和模板。但你需要知道这些由第三方提供的代码可能会给你带来**安全方面的风险**,你最好先读一下[[doku>security#plugin_security|插件安全性]]。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/zh/intro_templates.txt b/lib/plugins/extension/lang/zh/intro_templates.txt new file mode 100644 index 000000000..20575d381 --- /dev/null +++ b/lib/plugins/extension/lang/zh/intro_templates.txt @@ -0,0 +1 @@ +DokuWiki当前所使用的模板已经安装了,你可以在[[?do=admin&page=config|配置管理器]]里选择你要的模板。
\ No newline at end of file diff --git a/lib/plugins/extension/lang/zh/lang.php b/lib/plugins/extension/lang/zh/lang.php new file mode 100644 index 000000000..b5d77b1dd --- /dev/null +++ b/lib/plugins/extension/lang/zh/lang.php @@ -0,0 +1,33 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Cupen <Cupenoruler@foxmail.com> + */ +$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'] = '查看更多信息'; +$lang['btn_update'] = '更新'; +$lang['btn_uninstall'] = '卸载'; +$lang['btn_enable'] = '激活'; +$lang['btn_disable'] = '关闭'; +$lang['btn_install'] = '安装'; +$lang['btn_reinstall'] = '重新安装'; +$lang['js']['reallydel'] = '确定卸载这个扩展么?'; +$lang['search_for'] = '搜索扩展'; +$lang['search'] = '搜索'; +$lang['extensionby'] = '<strong>%s</strong> by %s'; +$lang['screenshot'] = '%s 的截图'; +$lang['popularity'] = '人气: %s%%'; +$lang['homepage_link'] = '文档'; diff --git a/lib/plugins/plugin/lang/cs/admin_plugin.txt b/lib/plugins/plugin/lang/cs/admin_plugin.txt deleted file mode 100644 index 6ebf1e78f..000000000 --- a/lib/plugins/plugin/lang/cs/admin_plugin.txt +++ /dev/null @@ -1,3 +0,0 @@ -====== Správa pluginů ====== - -Na této stránce lze spravovat pluginy DokuWiki [[doku>plugins|plugins]]. Aby bylo možné stahovat a instalovat pluginy, musí mít webový server přístup pro zápis do adresáře //plugin//. diff --git a/lib/plugins/plugin/lang/cs/lang.php b/lib/plugins/plugin/lang/cs/lang.php deleted file mode 100644 index 8917f8ef6..000000000 --- a/lib/plugins/plugin/lang/cs/lang.php +++ /dev/null @@ -1,66 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Tomas Valenta <t.valenta@sh.cvut.cz> - * @author Zbynek Krivka <zbynek.krivka@seznam.cz> - * @author Bohumir Zamecnik <bohumir@zamecnik.org> - * @author tomas@valenta.cz - * @author Marek Sacha <sachamar@fel.cvut.cz> - * @author Lefty <lefty@multihost.cz> - * @author Vojta Beran <xmamut@email.cz> - * @author zbynek.krivka@seznam.cz - * @author Bohumir Zamecnik <bohumir.zamecnik@gmail.com> - * @author Jakub A. Těšínský (j@kub.cz) - * @author mkucera66@seznam.cz - * @author Zbyněk Křivka <krivka@fit.vutbr.cz> - * @author Gerrit Uitslag <klapinklapin@gmail.com> - * @author Petr Klíma <qaxi@seznam.cz> - */ -$lang['menu'] = 'Správa pluginů'; -$lang['download'] = 'Stáhnout a instalovat plugin'; -$lang['manage'] = 'Seznam instalovaných pluginů'; -$lang['btn_info'] = 'info'; -$lang['btn_update'] = 'aktualizovat'; -$lang['btn_delete'] = 'smazat'; -$lang['btn_settings'] = 'nastavení'; -$lang['btn_download'] = 'Stáhnout'; -$lang['btn_enable'] = 'Uložit'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Instalován:'; -$lang['lastupdate'] = 'Poslední aktualizace:'; -$lang['source'] = 'Zdroj:'; -$lang['unknown'] = 'neznámý'; -$lang['updating'] = 'Aktualizuji ...'; -$lang['updated'] = 'Modul %s úspěšně aktualizován'; -$lang['updates'] = 'Následující pluginy byly úspěšně aktualizovány'; -$lang['update_none'] = 'Žádné aktualizace nenalezeny.'; -$lang['deleting'] = 'Probíhá mazání ...'; -$lang['deleted'] = 'Plugin %s smazán.'; -$lang['downloading'] = 'Stahuji ...'; -$lang['downloaded'] = 'Plugin %s nainstalován'; -$lang['downloads'] = 'Následující pluginy byly úspěšně instalovány:'; -$lang['download_none'] = 'Žádné pluginy nebyly nenalezeny, nebo se vyskytla nějaká chyba při -stahování a instalaci.'; -$lang['plugin'] = 'Plugin:'; -$lang['components'] = 'Součásti'; -$lang['noinfo'] = 'Plugin nevrátil žádné informace. Může být poškozen nebo špatný.'; -$lang['name'] = 'Jméno:'; -$lang['date'] = 'Datum:'; -$lang['type'] = 'Typ:'; -$lang['desc'] = 'Popis:'; -$lang['author'] = 'Autor:'; -$lang['www'] = 'Web:'; -$lang['error'] = 'Nastala neznámá chyba.'; -$lang['error_download'] = 'Nelze stáhnout soubor s pluginem: %s'; -$lang['error_badurl'] = 'URL je zřejmě chybná - nelze z ní určit název souboru'; -$lang['error_dircreate'] = 'Nelze vytvořit dočasný adresář ke stažení dat'; -$lang['error_decompress'] = 'Správce pluginů nemůže rozbalit stažený soubor. Toto může být způsobeno chybou při stahování. Můžete se pokusit stahování opakovat. Chyba může být také v kompresním formátu souboru. V tom případě bude nutné stáhnout a nainstalovat plugin ručně.'; -$lang['error_copy'] = 'Došlo k chybě při instalaci pluginu <em>%s</em>. Je možné, že na disku není volné místo, nebo mohou být špatně nastavena přístupová práva. Pozor, mohlo dojít k částečné a tudíž chybné instalaci pluginu a tím může být ohrožena stabilita wiki.'; -$lang['error_delete'] = 'Došlo k chybě při pokusu o smazání pluginu <em>%s</em>. Nejspíše je chyba v nastavení přístupových práv k některým souborům či adresářům.'; -$lang['enabled'] = 'Plugin %s aktivován.'; -$lang['notenabled'] = 'Plugin %s nelze aktivovat, zkontrolujte práva k souborům.'; -$lang['disabled'] = 'Plugin %s deaktivován.'; -$lang['notdisabled'] = 'Plugin %s nelze deaktivovat, zkontrolujte práva k souborům.'; -$lang['packageinstalled'] = 'Balíček pluginů (%d plugin(ů): %s) úspěšně nainstalován.'; diff --git a/lib/plugins/plugin/lang/el/admin_plugin.txt b/lib/plugins/plugin/lang/el/admin_plugin.txt deleted file mode 100644 index 8b292935d..000000000 --- a/lib/plugins/plugin/lang/el/admin_plugin.txt +++ /dev/null @@ -1,5 +0,0 @@ -====== Διαχείριση Επεκτάσεων ====== - -Σε αυτή την σελίδα μπορείτε να διαχειριστείτε τις [[doku>plugins|επεκτάσεις]] του Dokuwiki σας. Για να μπορέσετε να εγκαταστήσετε νέες επεκτάσεις, ο αντίστοιχος φάκελος συστήματος θα πρέπει να είναι εγγράψιμος από τον χρήστη κάτω από τον οποίο εκτελείται η εφαρμογή του εξυπηρετητή σας. - - diff --git a/lib/plugins/plugin/lang/el/lang.php b/lib/plugins/plugin/lang/el/lang.php deleted file mode 100644 index f50e26c46..000000000 --- a/lib/plugins/plugin/lang/el/lang.php +++ /dev/null @@ -1,58 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Christopher Smith <chris@jalakai.co.uk> - * @author Thanos Massias <tm@thriasio.gr> - * @author Αθανάσιος Νταής <homunculus@wana.gr> - * @author Konstantinos Koryllos <koryllos@gmail.com> - * @author George Petsagourakis <petsagouris@gmail.com> - * @author Petros Vidalis <pvidalis@gmail.com> - * @author Vasileios Karavasilis vasileioskaravasilis@gmail.com - */ -$lang['menu'] = 'Διαχείριση Επεκτάσεων'; -$lang['download'] = 'Κατεβάστε και εγκαταστήστε μια νέα επέκταση (plugin)'; -$lang['manage'] = 'Εγκατεστημένες επεκτάσεις'; -$lang['btn_info'] = 'πληροφορίες'; -$lang['btn_update'] = 'ενημέρωση'; -$lang['btn_delete'] = 'διαγραφή'; -$lang['btn_settings'] = 'ρυθμίσεις'; -$lang['btn_download'] = 'Μεταφόρτωση'; -$lang['btn_enable'] = 'Αποθήκευση'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Εγκατεστημένη:'; -$lang['lastupdate'] = 'Τελευταία ενημέρωση:'; -$lang['source'] = 'Προέλευση:'; -$lang['unknown'] = 'άγνωστο'; -$lang['updating'] = 'Σε διαδικασία ενημέρωσης ...'; -$lang['updated'] = 'Η επέκταση %s ενημερώθηκε με επιτυχία'; -$lang['updates'] = 'Οι παρακάτω επεκτάσεις ενημερώθηκαν με επιτυχία:'; -$lang['update_none'] = 'Δεν βρέθηκαν ενημερώσεις.'; -$lang['deleting'] = 'Σε διαδικασία διαγραφής ...'; -$lang['deleted'] = 'Η επέκταση %s διαγράφηκε.'; -$lang['downloading'] = 'Σε διαδικασία μεταφόρτωσης ...'; -$lang['downloaded'] = 'Η επέκταση %s εγκαταστάθηκε με επιτυχία'; -$lang['downloads'] = 'Οι παρακάτω επεκτάσεις εγκαταστάθηκαν με επιτυχία:'; -$lang['download_none'] = 'Δεν βρέθηκαν επεκτάσεις ή εμφανίστηκε κάποιο πρόβλημα κατά την σχετική διαδικασία.'; -$lang['plugin'] = 'Επέκταση:'; -$lang['components'] = 'Συστατικά'; -$lang['noinfo'] = 'Αυτή η επέκταση δεν επέστρεψε κάποια πληροφορία - η επέκταση μπορεί να μην λειτουργεί κανονικά.'; -$lang['name'] = 'Όνομα:'; -$lang['date'] = 'Ημερομηνία:'; -$lang['type'] = 'Τύπος:'; -$lang['desc'] = 'Περιγραφή:'; -$lang['author'] = 'Συγγραφέας:'; -$lang['www'] = 'Διεύθυνση στο διαδίκτυο:'; -$lang['error'] = 'Εμφανίστηκε άγνωστο σφάλμα.'; -$lang['error_download'] = 'Δεν είναι δυνατή η μεταφόρτωση του αρχείου: %s'; -$lang['error_badurl'] = 'Το URL είναι μάλλον λανθασμένο - είναι αδύνατον να εξαχθεί το όνομα αρχείου από αυτό το URL'; -$lang['error_dircreate'] = 'Δεν είναι δυνατή η δημιουργία ενός προσωρινού φακέλου αποθήκευσης των μεταφορτώσεων'; -$lang['error_decompress'] = 'Δεν είναι δυνατή η αποσυμπίεση των μεταφορτώσεων. Αυτό μπορεί να οφείλεται σε μερική λήψη των μεταφορτώσεων, οπότε θα πρέπει να επαναλάβετε την διαδικασία ή το σύστημά σας δεν μπορεί να διαχειριστεί το συγκεκριμένο είδος συμπίεσης, οπότε θα πρέπει να εγκαταστήσετε την επέκταση χειροκίνητα.'; -$lang['error_copy'] = 'Εμφανίστηκε ένα σφάλμα αντιγραφής αρχείων κατά την διάρκεια εγκατάστασης της επέκτασης <em>%s</em>: ο δίσκος μπορεί να είναι γεμάτος ή να μην είναι σωστά ρυθμισμένα τα δικαιώματα πρόσβασης. Αυτό το γεγονός μπορεί να οδήγησε σε μερική εγκατάσταση της επέκτασης και άρα η DokuWiki εγκατάστασή σας να εμφανίσει προβλήματα σταθερότητας.'; -$lang['error_delete'] = 'Εμφανίστηκε ένα σφάλμα κατά την διαδικασία διαγραφής της επέκτασης <em>%s</em>. Η πιθανότερη αιτία είναι να μην είναι σωστά ρυθμισμένα τα δικαιώματα πρόσβασης.'; -$lang['enabled'] = 'Η επέκταση %s ενεργοποιήθηκε.'; -$lang['notenabled'] = 'Η επέκταση %s δεν μπορεί να ενεργοποιηθεί. Ελέγξτε τα δικαιώματα πρόσβασης.'; -$lang['disabled'] = 'Η επέκταση %s απενεργοποιήθηκε.'; -$lang['notdisabled'] = 'Η επέκταση %s δεν μπορεί να απενεργοποιηθεί. Ελέγξτε τα δικαιώματα πρόσβασης.'; -$lang['packageinstalled'] = 'Το πακέτο της επέκτασης (%d επέκταση(εις): %s) εγκαστήθηκε επιτυχημένα.'; diff --git a/lib/plugins/plugin/lang/fr/admin_plugin.txt b/lib/plugins/plugin/lang/fr/admin_plugin.txt deleted file mode 100644 index b7beba25a..000000000 --- a/lib/plugins/plugin/lang/fr/admin_plugin.txt +++ /dev/null @@ -1,4 +0,0 @@ -====== Gestion des extensions ====== - -Cette page vous permet de gérer tout ce qui a trait aux [[doku>fr:plugins|extensions]] de DokuWiki. Pour pouvoir télécharger et installer un module, le répertoire « ''plugin'' » doit être accessible en écriture pour le serveur web. - diff --git a/lib/plugins/plugin/lang/fr/lang.php b/lib/plugins/plugin/lang/fr/lang.php deleted file mode 100644 index 0592f3c7d..000000000 --- a/lib/plugins/plugin/lang/fr/lang.php +++ /dev/null @@ -1,69 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Guy Brand <gb@unistra.fr> - * @author Delassaux Julien <julien@delassaux.fr> - * @author Maurice A. LeBlanc <leblancma@cooptel.qc.ca> - * @author stephane.gully@gmail.com - * @author Guillaume Turri <guillaume.turri@gmail.com> - * @author Erik Pedersen <erik.pedersen@shaw.ca> - * @author olivier duperray <duperray.olivier@laposte.net> - * @author Vincent Feltz <psycho@feltzv.fr> - * @author Philippe Bajoit <philippe.bajoit@gmail.com> - * @author Florian Gaub <floriang@floriang.net> - * @author Samuel Dorsaz samuel.dorsaz@novelion.net - * @author Johan Guilbaud <guilbaud.johan@gmail.com> - * @author schplurtz@laposte.net - * @author skimpax@gmail.com - * @author Yannick Aure <yannick.aure@gmail.com> - * @author Olivier DUVAL <zorky00@gmail.com> - * @author Anael Mobilia <contrib@anael.eu> - * @author Bruno Veilleux <bruno.vey@gmail.com> - */ -$lang['menu'] = 'Gestion des extensions'; -$lang['download'] = 'Télécharger et installer une nouvelle extension'; -$lang['manage'] = 'Extensions installées'; -$lang['btn_info'] = 'Info'; -$lang['btn_update'] = 'Mettre à jour'; -$lang['btn_delete'] = 'Supprimer'; -$lang['btn_settings'] = 'Paramètres'; -$lang['btn_download'] = 'Télécharger'; -$lang['btn_enable'] = 'Enregistrer'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Installé :'; -$lang['lastupdate'] = 'Dernière mise à jour :'; -$lang['source'] = 'Source :'; -$lang['unknown'] = 'inconnu'; -$lang['updating'] = 'Mise à jour…'; -$lang['updated'] = 'Extension %s mise à jour avec succès'; -$lang['updates'] = 'Les extensions suivantes ont été mises à jour avec succès'; -$lang['update_none'] = 'Aucune mise à jour n\'a été trouvée.'; -$lang['deleting'] = 'Suppression…'; -$lang['deleted'] = 'Extension %s supprimée.'; -$lang['downloading'] = 'Téléchargement…'; -$lang['downloaded'] = 'Extension %s installée avec succès'; -$lang['downloads'] = 'Les extensions suivantes ont été installées avec succès :'; -$lang['download_none'] = 'Aucune extension n\'a été trouvée, ou un problème inconnu est survenu durant le téléchargement et l\'installation.'; -$lang['plugin'] = 'Extension :'; -$lang['components'] = 'Composants'; -$lang['noinfo'] = 'Cette extension n\'a transmis aucune information, elle pourrait être invalide.'; -$lang['name'] = 'Nom :'; -$lang['date'] = 'Date :'; -$lang['type'] = 'Type :'; -$lang['desc'] = 'Description :'; -$lang['author'] = 'Auteur :'; -$lang['www'] = 'Site web :'; -$lang['error'] = 'Une erreur inconnue est survenue.'; -$lang['error_download'] = 'Impossible de télécharger le fichier de l\'extension : %s'; -$lang['error_badurl'] = 'URL suspecte : impossible de déterminer le nom du fichier à partir de l\'URL'; -$lang['error_dircreate'] = 'Impossible de créer le répertoire temporaire pour effectuer le téléchargement'; -$lang['error_decompress'] = 'Le gestionnaire d\'extensions a été incapable de décompresser le fichier téléchargé. Ceci peut être le résultat d\'un mauvais téléchargement, auquel cas vous devriez réessayer ; ou bien le format de compression est inconnu, auquel cas vous devez télécharger et installer l\'extension manuellement.'; -$lang['error_copy'] = 'Une erreur de copie est survenue lors de l\'installation des fichiers de l\'extension <em>%s</em> : le disque est peut-être plein ou les autorisations d\'accès sont incorrects. Il a pu en résulter une installation partielle de l\'extension et laisser votre installation du wiki instable.'; -$lang['error_delete'] = 'Une erreur est survenue lors de la suppression de l\'extension <em>%s</em>. La raison la plus probable est l\'insuffisance des autorisations sur les fichiers ou les répertoires.'; -$lang['enabled'] = 'Extension %s activée.'; -$lang['notenabled'] = 'L\'extension %s n\'a pas pu être activée, vérifiez les autorisations des fichiers.'; -$lang['disabled'] = 'Extension %s désactivée.'; -$lang['notdisabled'] = 'L\'extension %s n\'a pas pu être désactivée, vérifiez les autorisations des fichiers.'; -$lang['packageinstalled'] = 'Ensemble d\'extensions (%d extension(s): %s) installé avec succès.'; diff --git a/lib/plugins/plugin/lang/hu/admin_plugin.txt b/lib/plugins/plugin/lang/hu/admin_plugin.txt deleted file mode 100644 index cf4a3b316..000000000 --- a/lib/plugins/plugin/lang/hu/admin_plugin.txt +++ /dev/null @@ -1,4 +0,0 @@ -====== Bővítménykezelő ====== - -Ezen az oldalon a Dokuwiki [[doku>plugins|bővítményeivel]] kapcsolatos teendőket láthatod el. A webkiszolgálónak tudnia kell írni a //plugin// könyvtárba az új bővítmények letöltéséhez és telepítéséhez. - diff --git a/lib/plugins/plugin/lang/hu/lang.php b/lib/plugins/plugin/lang/hu/lang.php deleted file mode 100644 index 7fb237a32..000000000 --- a/lib/plugins/plugin/lang/hu/lang.php +++ /dev/null @@ -1,59 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Sandor TIHANYI <stihanyi+dw@gmail.com> - * @author Siaynoq Mage <siaynoqmage@gmail.com> - * @author schilling.janos@gmail.com - * @author Szabó Dávid <szabo.david@gyumolcstarhely.hu> - * @author Sándor TIHANYI <stihanyi+dw@gmail.com> - * @author David Szabo <szabo.david@gyumolcstarhely.hu> - * @author Marton Sebok <sebokmarton@gmail.com> - * @author Marina Vladi <deldadam@gmail.com> - */ -$lang['menu'] = 'Bővítménykezelő'; -$lang['download'] = 'Új bővítmény letöltése és telepítése'; -$lang['manage'] = 'Telepített bővítmények'; -$lang['btn_info'] = 'infó'; -$lang['btn_update'] = 'frissítés'; -$lang['btn_delete'] = 'törlés'; -$lang['btn_settings'] = 'beállítások'; -$lang['btn_download'] = 'Letöltés'; -$lang['btn_enable'] = 'Mentés'; -$lang['url'] = 'URL-cím'; -$lang['installed'] = 'Telepítve:'; -$lang['lastupdate'] = 'Utolsó frissítés:'; -$lang['source'] = 'Forrás:'; -$lang['unknown'] = 'ismeretlen'; -$lang['updating'] = 'Frissítés...'; -$lang['updated'] = 'A(z) %s bővítmény frissítése sikeres.'; -$lang['updates'] = 'A következő bővítmények frissítése sikeres:'; -$lang['update_none'] = 'Nem találtam újabb verziót.'; -$lang['deleting'] = 'Törlés...'; -$lang['deleted'] = 'A(z) %s bővítményt eltávolítva.'; -$lang['downloading'] = 'Letöltés...'; -$lang['downloaded'] = 'A(z) %s bővítmény telepítése sikeres.'; -$lang['downloads'] = 'A következő bővítmények telepítése sikeres.'; -$lang['download_none'] = 'Nem találtam bővítményt vagy ismeretlen hiba történt a letöltés/telepítés közben.'; -$lang['plugin'] = 'Bővítmény:'; -$lang['components'] = 'Részek'; -$lang['noinfo'] = 'Ez a bővítmény nem tartalmaz információt, lehet, hogy hibás.'; -$lang['name'] = 'Név:'; -$lang['date'] = 'Dátum:'; -$lang['type'] = 'Típus:'; -$lang['desc'] = 'Leírás:'; -$lang['author'] = 'Szerző:'; -$lang['www'] = 'Web:'; -$lang['error'] = 'Ismeretlen hiba lépett fel.'; -$lang['error_download'] = 'Nem tudom letölteni a fájlt a bővítményhez: %s'; -$lang['error_badurl'] = 'Feltehetően rossz URL - nem tudom meghatározni a fájlnevet az URL-ből.'; -$lang['error_dircreate'] = 'Nem tudom létrehozni az átmeneti könyvtárat a letöltéshez.'; -$lang['error_decompress'] = 'A Bővítménykezelő nem tudta a letöltött állományt kicsomagolni. Ennek oka lehet hibás letöltés, ebben az esetben újra letöltéssel próbálkozhatsz, esetleg a tömörítés módja ismeretlen, ebben az esetben kézzel kell letölteni és telepíteni a bővítményt.'; -$lang['error_copy'] = 'Fájl másolási hiba történt a(z) <em>%s</em> bővítmény telepítése közben: vagy a lemezterület fogyott el, vagy az állomány hozzáférési jogosultságai nem megfelelőek. Emiatt előfordulhat, hogy a bővítményt csak részben sikerült telepíteni és a wiki összeomolhat.'; -$lang['error_delete'] = 'Hiba történt a(z) <em>%s</em> bővítmény eltávolítása közben. A legvalószínűbb ok, hogy a könyvtár vagy állomány hozzáférési jogosultságai nem megfelelőek.'; -$lang['enabled'] = 'A(z) %s bővítmény bekapcsolva.'; -$lang['notenabled'] = 'A(z) %s bővítmény engedélyezése nem sikerült. Ellenőrizze a fájlhozzáférési jogosultságokat.'; -$lang['disabled'] = 'A(z) %s bővítmény kikapcsolva.'; -$lang['notdisabled'] = 'A(z) %s bővítmény kikapcsolása nem sikerült. Ellenőrizze a fájlhozzáférési jogosultságokat.'; -$lang['packageinstalled'] = 'A bővítménycsomag(ok) feltelepült(ek): %d plugin(s): %s'; diff --git a/lib/plugins/plugin/lang/id/lang.php b/lib/plugins/plugin/lang/id/lang.php deleted file mode 100644 index 2653b075e..000000000 --- a/lib/plugins/plugin/lang/id/lang.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Irwan Butar Butar <irwansah.putra@gmail.com> - * @author Yustinus Waruwu <juswaruwu@gmail.com> - */ -$lang['btn_info'] = 'Info'; -$lang['btn_update'] = 'Baharui'; -$lang['btn_delete'] = 'Hapus'; -$lang['btn_settings'] = 'Pengaturan'; -$lang['btn_download'] = 'Unduh'; -$lang['btn_enable'] = 'Simpan'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Instal'; -$lang['lastupdate'] = 'Pembaharuan terakhir:'; -$lang['source'] = 'Sumber:'; -$lang['unknown'] = 'Tidak kenal'; -$lang['updating'] = 'Terbaharui ...'; -$lang['update_none'] = 'Tidak ditemukan pembaharuan'; -$lang['deleting'] = 'Terhapus ...'; -$lang['deleted'] = 'Hapus Plugin %s.'; -$lang['downloading'] = 'Unduh ...'; -$lang['plugin'] = 'Plugin:'; -$lang['components'] = 'Komponen'; -$lang['name'] = 'Nama:'; -$lang['date'] = 'Tanggal:'; -$lang['type'] = 'Tipe:'; -$lang['desc'] = 'Penjelasan:'; -$lang['author'] = 'Autor:'; -$lang['www'] = 'Web:'; diff --git a/lib/plugins/plugin/lang/pl/admin_plugin.txt b/lib/plugins/plugin/lang/pl/admin_plugin.txt deleted file mode 100644 index f01048198..000000000 --- a/lib/plugins/plugin/lang/pl/admin_plugin.txt +++ /dev/null @@ -1,5 +0,0 @@ -====== Menadżer wtyczek ====== - -Na tej stronie możesz zarządzać wszystkim co jest związane z [[doku>plugins|wtyczkami]] Dokuwiki. Aby móc ściągnąć i zainstalować wtyczkę, serwer WWW musi mieć prawo do zapisu w katalogu ''plugins''. - - diff --git a/lib/plugins/plugin/lang/pl/lang.php b/lib/plugins/plugin/lang/pl/lang.php deleted file mode 100644 index eae91f33e..000000000 --- a/lib/plugins/plugin/lang/pl/lang.php +++ /dev/null @@ -1,63 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Michał Tkacz <mehow@autocom.pl> - * @author Grzegorz Żur <grzegorz.zur@gmail.com> - * @author Mariusz Kujawski <marinespl@gmail.com> - * @author Maciej Kurczewski <pipijajko@gmail.com> - * @author Sławomir Boczek <slawkens@gmail.com> - * @author sleshek@wp.pl - * @author Leszek Stachowski <shazarre@gmail.com> - * @author maros <dobrimaros@yahoo.pl> - * @author Grzegorz Widła <dzesdzes@gmail.com> - * @author Łukasz Chmaj <teachmeter@gmail.com> - * @author Begina Felicysym <begina.felicysym@wp.eu> - * @author Aoi Karasu <aoikarasu@gmail.com> - */ -$lang['menu'] = 'Menadżer wtyczek'; -$lang['download'] = 'Ściągnij i zainstaluj nową wtyczkę'; -$lang['manage'] = 'Zainstalowane Wtyczki'; -$lang['btn_info'] = 'Informacje'; -$lang['btn_update'] = 'Aktualizuj'; -$lang['btn_delete'] = 'Usuń'; -$lang['btn_settings'] = 'Ustawienia'; -$lang['btn_download'] = 'Pobierz'; -$lang['btn_enable'] = 'Zapisz'; -$lang['url'] = 'Adres URL'; -$lang['installed'] = 'Instalacja:'; -$lang['lastupdate'] = 'Ostatnio zaktualizowana:'; -$lang['source'] = 'Źródło:'; -$lang['unknown'] = 'nieznane'; -$lang['updating'] = 'Aktualizuję...'; -$lang['updated'] = 'Aktualizacja wtyczki %s pomyślnie ściągnięta'; -$lang['updates'] = 'Aktualizacje następujących wtyczek zostały pomyślnie ściągnięte'; -$lang['update_none'] = 'Nie znaleziono aktualizacji.'; -$lang['deleting'] = 'Usuwam...'; -$lang['deleted'] = 'Wtyczka %s usunięta.'; -$lang['downloading'] = 'Pobieram...'; -$lang['downloaded'] = 'Wtyczka %s pomyślnie zainstalowana'; -$lang['downloads'] = 'Następujące wtyczki zostały pomyślnie zainstalowane:'; -$lang['download_none'] = 'Nie znaleziono wtyczek lub wystąpił nieznany problem podczas ściągania i instalacji.'; -$lang['plugin'] = 'Wtyczka:'; -$lang['components'] = 'Składniki'; -$lang['noinfo'] = 'Ta wtyczka nie zwróciła żadnych informacji, może być niepoprawna.'; -$lang['name'] = 'Nazwa:'; -$lang['date'] = 'Data:'; -$lang['type'] = 'Typ:'; -$lang['desc'] = 'Opis:'; -$lang['author'] = 'Autor:'; -$lang['www'] = 'WWW:'; -$lang['error'] = 'Wystąpił nieznany błąd.'; -$lang['error_download'] = 'Nie powiodło się ściągnięcie pliku wtyczki: %s'; -$lang['error_badurl'] = 'Prawdopodobnie zły url - nie da się ustalić nazwy pliku na podstawie urla'; -$lang['error_dircreate'] = 'Nie powiodło się stworzenie tymczasowego katalogu na pobrane pliki'; -$lang['error_decompress'] = 'Menadżer wtyczek nie był w stanie rozpakować ściągniętego pliku. Może to być spowodowane przez nieudany transfer (w takim przypadku powinieneś spróbować ponownie) lub nieznany format kompresji (w takim przypadku będziesz musiał ściągnąć i zainstalować wtyczkę ręcznie).'; -$lang['error_copy'] = 'Wystąpił błąd podczas kopiowania pliku w trakcie instalacji wtyczki %s: być może dysk jest pełny lub prawa dostępu są niepoprawne. Efektem może być częściowo zainstalowana wtyczka co może spowodować niestabilność Twojej instalacji wiki.'; -$lang['error_delete'] = 'Wystąpił błąd przy próbie usunięcia wtyczki <em>%s</em>. Prawdopodobną przyczyną są niewystarczające uprawnienia do katalogu.'; -$lang['enabled'] = 'Wtyczka %s włączona.'; -$lang['notenabled'] = 'Nie udało się uruchomić wtyczki %s, sprawdź uprawnienia dostępu do plików.'; -$lang['disabled'] = 'Wtyczka %s wyłączona.'; -$lang['notdisabled'] = 'Nie udało się wyłączyć wtyczki %s, sprawdź uprawnienia dostępu do plików.'; -$lang['packageinstalled'] = 'Pakiet wtyczek (%d wtyczki: %s) zainstalowany pomyślnie.'; diff --git a/lib/plugins/plugin/lang/sk/admin_plugin.txt b/lib/plugins/plugin/lang/sk/admin_plugin.txt deleted file mode 100644 index ad3ae7f58..000000000 --- a/lib/plugins/plugin/lang/sk/admin_plugin.txt +++ /dev/null @@ -1,4 +0,0 @@ -====== Správa pluginov ====== - -Na tejto stránke je možné spravovať [[doku>plugins|pluginy]] Dokuwiki. Aby bolo možné sťahovať a inštalovať pluginy, musí mať webový server prístup pre zápis do adresára //plugin//. - diff --git a/lib/plugins/plugin/lang/sk/lang.php b/lib/plugins/plugin/lang/sk/lang.php deleted file mode 100644 index 35c07cf80..000000000 --- a/lib/plugins/plugin/lang/sk/lang.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Ondrej Végh <ov@vsieti.sk> - * @author Michal Mesko <michal.mesko@gmail.com> - * @author exusik@gmail.com - * @author Martin Michalek <michalek.dev@gmail.com> - */ -$lang['menu'] = 'Správa pluginov'; -$lang['download'] = 'Stiahnuť a nainštalovať plugin'; -$lang['manage'] = 'Nainštalované pluginy'; -$lang['btn_info'] = 'info'; -$lang['btn_update'] = 'aktualizovať'; -$lang['btn_delete'] = 'zmazať'; -$lang['btn_settings'] = 'nastavenia'; -$lang['btn_download'] = 'Stiahnuť'; -$lang['btn_enable'] = 'Uložiť'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Nainštalovaný:'; -$lang['lastupdate'] = 'Aktualizovaný:'; -$lang['source'] = 'Zdroj:'; -$lang['unknown'] = 'neznámy'; -$lang['updating'] = 'Aktualizuje sa ...'; -$lang['updated'] = 'Plugin %s bol úspešne aktualizovaný'; -$lang['updates'] = 'Nasledujúce pluginy bol úspešne aktualizované:'; -$lang['update_none'] = 'Neboli nájdené žiadne aktualizácie.'; -$lang['deleting'] = 'Vymazáva sa ...'; -$lang['deleted'] = 'Plugin %s bol zmazaný.'; -$lang['downloading'] = 'Sťahuje sa ...'; -$lang['downloaded'] = 'Plugin %s bol úspešne stiahnutý'; -$lang['downloads'] = 'Nasledujúce pluginy bol úspešne stiahnuté:'; -$lang['download_none'] = 'Neboli nájdené žiadne pluginy alebo nastal neznámy problém počas sťahovania a inštalácie pluginov.'; -$lang['plugin'] = 'Plugin:'; -$lang['components'] = 'Súčasti'; -$lang['noinfo'] = 'Tento plugin neobsahuje žiadne informácie, je možné, že je chybný.'; -$lang['name'] = 'názov:'; -$lang['date'] = 'Dátum:'; -$lang['type'] = 'Typ:'; -$lang['desc'] = 'Popis:'; -$lang['author'] = 'Autor:'; -$lang['www'] = 'Web:'; -$lang['error'] = 'Nastala neznáma chyba.'; -$lang['error_download'] = 'Nie je možné stiahnuť súbor pluginu: %s'; -$lang['error_badurl'] = 'Pravdepodobne zlá url adresa - nie je možné z nej určiť meno súboru'; -$lang['error_dircreate'] = 'Nie je možné vytvoriť dočasný adresár pre uloženie sťahovaného súboru'; -$lang['error_decompress'] = 'Správca pluginov nedokáže dekomprimovať stiahnutý súbor. Môže to byť dôsledok zlého stiahnutia, v tom prípade to skúste znovu, alebo môže ísť o neznámy formát súboru, v tom prípade musíte stiahnuť a nainštalovať plugin manuálne.'; -$lang['error_copy'] = 'Nastala chyba kopírovania súboru počas pokusu inštalovať súbory pluginu<em>%s</em>: disk môže byť plný alebo prístupové práva k súboru môžu byť nesprávne. Toto môže mať za následok čiastočne nainštalovanie pluginu a nestabilitu vašej DokuWiki.'; -$lang['error_delete'] = 'Nastala chyba počas pokusu o zmazanie pluginu <em>%s</em>. Najpravdepodobnejším dôvodom môžu byť nedostatočné prístupové práva pre súbor alebo adresár'; -$lang['enabled'] = 'Plugin %s aktivovaný.'; -$lang['notenabled'] = 'Plugin %s nemôže byť aktivovaný, skontrolujte prístupové práva.'; -$lang['disabled'] = 'Plugin %s deaktivovaný.'; -$lang['notdisabled'] = 'Plugin %s nemôže byť deaktivovaný, skontrolujte prístupové práva.'; -$lang['packageinstalled'] = 'Plugin package (%d plugin(s): %s) úspešne inštalovaný.'; diff --git a/lib/plugins/plugin/lang/sl/admin_plugin.txt b/lib/plugins/plugin/lang/sl/admin_plugin.txt deleted file mode 100644 index 5fd02e1ba..000000000 --- a/lib/plugins/plugin/lang/sl/admin_plugin.txt +++ /dev/null @@ -1,3 +0,0 @@ -====== Upravljanje vstavkov ====== - -Na tej strani je mogoče spreminjati in prilagajati nastavitve DokuWiki [[doku>plugins|vstavkov]]. Za prejemanje in nameščanje vstavkov v ustrezne mape, morajo imeti te določena ustrezna dovoljenja za pisanje spletnega strežnika. diff --git a/lib/plugins/plugin/lang/sl/lang.php b/lib/plugins/plugin/lang/sl/lang.php deleted file mode 100644 index e205c57f5..000000000 --- a/lib/plugins/plugin/lang/sl/lang.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Dejan Levec <webphp@gmail.com> - * @author Boštjan Seničar <senicar@gmail.com> - * @author Gregor Skumavc (grega.skumavc@gmail.com) - * @author Matej Urbančič (mateju@svn.gnome.org) - */ -$lang['menu'] = 'Upravljanje vstavkov'; -$lang['download'] = 'Prejmi in namesti nov vstavek'; -$lang['manage'] = 'Nameščeni vstavki'; -$lang['btn_info'] = 'Podrobnosti'; -$lang['btn_update'] = 'Posodobi'; -$lang['btn_delete'] = 'Izbriši'; -$lang['btn_settings'] = 'Nastavitve'; -$lang['btn_download'] = 'Prejmi'; -$lang['btn_enable'] = 'Shrani'; -$lang['url'] = 'URL'; -$lang['installed'] = 'Nameščeno:'; -$lang['lastupdate'] = 'Nazadnje posodobljeno:'; -$lang['source'] = 'Vir:'; -$lang['unknown'] = 'neznano'; -$lang['updating'] = 'Posodabljanje ...'; -$lang['updated'] = 'Vstavek %s je uspešno posodobljen'; -$lang['updates'] = 'Navedeni vstavki so uspešno posodobljeni'; -$lang['update_none'] = 'Posodobitev ni mogoče najti.'; -$lang['deleting'] = 'Brisanje ...'; -$lang['deleted'] = 'Vstavek %s je izbrisan.'; -$lang['downloading'] = 'Prejemanje ...'; -$lang['downloaded'] = 'Vstavek %s je uspešno nameščen'; -$lang['downloads'] = 'Navedeni vstavki so uspešno nameščeni:'; -$lang['download_none'] = 'Vstavkov ni mogoče najti ali pa je prišlo do napake med prejemanjem in nameščanjem.'; -$lang['plugin'] = 'Vstavek:'; -$lang['components'] = 'Sestavni deli'; -$lang['noinfo'] = 'Vstavek nima vpisanih podrobnih podatkov, kar pomeni, da je morda neveljaven.'; -$lang['name'] = 'Ime:'; -$lang['date'] = 'Datum:'; -$lang['type'] = 'Vrsta:'; -$lang['desc'] = 'Opis:'; -$lang['author'] = 'Avtor:'; -$lang['www'] = 'Spletna stran:'; -$lang['error'] = 'Prišlo je do neznane napake.'; -$lang['error_download'] = 'Ni mogoče prejeti datoteke vstavka: %s'; -$lang['error_badurl'] = 'Napaka naslova URL - ni mogoče določiti imena datoteke iz naslova URL'; -$lang['error_dircreate'] = 'Ni mogoče ustvariti začasne mape za prejemanje'; -$lang['error_decompress'] = 'Z upravljalnikom vstavkov ni mogoče razširiti prejetega arhiva vstavka. Najverjetneje je prišlo do napake med prejemanjem datoteke ali pa zapis arhiva ni znan. Poskusite znova ali pa napako odpravite z ročnim nameščanjem vstavka.'; -$lang['error_copy'] = 'Prišlo je do napake med nameščanjem datotek vstavka <em>%s</em>: najverjetneje so težave s prostorom za namestitev ali pa ni ustreznih dovoljenj za nameščanje. Zaradi nepopolne namestitve lahko nastopijo težave v delovanju sistema Wiki.'; -$lang['error_delete'] = 'Prišlo je do napake med brisanjem vstavka <em>%s</em>: najverjetneje ni ustreznih dovoljenj za dostop do datoteke ali mape'; -$lang['enabled'] = 'Vstavek %s je omogočen.'; -$lang['notenabled'] = 'Vstavka %s ni mogoče omogočiti zaradi neustreznih dovoljen.'; -$lang['disabled'] = 'Vstavek %s je onemogočen.'; -$lang['notdisabled'] = 'Vstavka %s ni mogoče onemogočiti zaradi neustreznih dovoljen.'; -$lang['packageinstalled'] = 'Paket vstavka (%d vstavkov: %s) je uspešno nameščen.'; diff --git a/lib/plugins/plugin/lang/tr/admin_plugin.txt b/lib/plugins/plugin/lang/tr/admin_plugin.txt deleted file mode 100644 index 956d701f6..000000000 --- a/lib/plugins/plugin/lang/tr/admin_plugin.txt +++ /dev/null @@ -1,3 +0,0 @@ -====== Eklenti Yönetimi ====== - -Bu sayfada DokuWiki [[doku>plugins|eklentileri]] ile ilgili herşeyi düzenleyebilirsiniz. Eklenti kurup indirmek için, eklenti dizininin yazılabilir olması gerekmektedir. diff --git a/lib/plugins/plugin/lang/tr/lang.php b/lib/plugins/plugin/lang/tr/lang.php deleted file mode 100644 index a4feea8cd..000000000 --- a/lib/plugins/plugin/lang/tr/lang.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php - -/** - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * - * @author Aydın Coşkuner <aydinweb@gmail.com> - * @author Cihan Kahveci <kahvecicihan@gmail.com> - * @author Yavuz Selim <yavuzselim@gmail.com> - * @author Caleb Maclennan <caleb@alerque.com> - * @author farukerdemoncel@gmail.com - */ -$lang['menu'] = 'Eklenti Yönetimi'; -$lang['download'] = 'Yeni bir eklenti indirip kur'; -$lang['manage'] = 'Kurulmuş Eklentiler'; -$lang['btn_info'] = 'bilgi'; -$lang['btn_update'] = 'güncelle'; -$lang['btn_delete'] = 'sil'; -$lang['btn_settings'] = 'Ayarlar'; -$lang['btn_download'] = 'İndir'; -$lang['btn_enable'] = 'Kaydet'; -$lang['url'] = 'Web Adresi'; -$lang['installed'] = 'Kuruldu:'; -$lang['lastupdate'] = 'Son güncelleştirme:'; -$lang['source'] = 'Kaynak:'; -$lang['unknown'] = 'bilinmiyor'; -$lang['updating'] = 'Güncelleştiriyor ...'; -$lang['updated'] = '%s eklentisi başarıyla güncellendi'; -$lang['updates'] = 'Şu eklentiler başarıyla güncellendi'; -$lang['update_none'] = 'Yeni bir güncelleme bulunamadı.'; -$lang['deleting'] = 'Siliniyor ...'; -$lang['deleted'] = '%s eklentisi silindi.'; -$lang['downloading'] = 'İndiriyor ...'; -$lang['downloaded'] = '%s eklentisi başarıyla kuruldu'; -$lang['downloads'] = 'Şu eklentiler başarıyla kuruldu:'; -$lang['download_none'] = 'Eklenti bulunamadı veya indirirken/kurarken bilinmeyen bir hata oluştu.'; -$lang['plugin'] = 'Eklenti:'; -$lang['components'] = 'Parçalar'; -$lang['noinfo'] = 'Bu eklentinin bilgileri alınamadı, geçerli bir eklenti olmayabilir.'; -$lang['name'] = 'Ad:'; -$lang['date'] = 'Tarih:'; -$lang['type'] = 'Tür:'; -$lang['desc'] = 'Açıklama:'; -$lang['author'] = 'Yazar:'; -$lang['www'] = 'Web Adresi:'; -$lang['error'] = 'Bilinmeyen bir hata oluştu.'; -$lang['error_download'] = 'Şu eklenti indirilemedi: %s'; -$lang['error_badurl'] = 'Yanlış adres olabilir - verilen adresten dosya adı alınamadı'; -$lang['error_dircreate'] = 'İndirmek için geçici klasör oluşturulamadı'; -$lang['error_decompress'] = 'Eklenti yöneticisi indirilen sıkıştırılmış dosyayı açamadı. Bu yanlış indirmeden kaynaklanabilir (bu durumda tekrar denemelisiniz). Ya da indirilen dosyanın sıkıştırma biçimi bilinmemektedir (bu durumda eklentiyi indirerek kendiniz kurmalısınız).'; -$lang['error_copy'] = '<em>%s</em> eklentisi dosyalarını kurmaya çalışırken kopyalama hatası ortaya çıktı. Sürücü dolu olabilir veya yazma yetkisi bulunmuyor olabilir. Bunun sebebi tam kurulmamış bir eklentinin wiki kurulumunu bozması olabilir.'; -$lang['error_delete'] = '<em>%s</em> eklentisini silerken bir hata oluştu. Bu hata yetersiz dosya/klasör erişim yetkisinden kaynaklanabilir.'; -$lang['enabled'] = '%s eklentisi etkinleştirildi.'; -$lang['notenabled'] = '%s eklentisi etkinleştirilemedi, dosya yetkilerini kontrol edin.'; -$lang['disabled'] = '%s eklentisi devre dışı bırakıldı.'; -$lang['notdisabled'] = '%s eklentisi devre dışı bırakılamadı, dosya yetkilerini kontrol edin.'; diff --git a/lib/plugins/usermanager/admin.php b/lib/plugins/usermanager/admin.php index 156037f09..eadfb76ad 100644 --- a/lib/plugins/usermanager/admin.php +++ b/lib/plugins/usermanager/admin.php @@ -277,6 +277,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { protected function _htmlUserForm($cmd,$user='',$userdata=array(),$indent=0) { global $conf; global $ID; + global $lang; $name = $mail = $groups = ''; $notes = array(); @@ -299,6 +300,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $this->_htmlInputField($cmd."_userid", "userid", $this->lang["user_id"], $user, $this->_auth->canDo("modLogin"), $indent+6); $this->_htmlInputField($cmd."_userpass", "userpass", $this->lang["user_pass"], "", $this->_auth->canDo("modPass"), $indent+6); + $this->_htmlInputField($cmd."_userpass2", "userpass2", $lang["passchk"], "", $this->_auth->canDo("modPass"), $indent+6); $this->_htmlInputField($cmd."_username", "username", $this->lang["user_name"], $name, $this->_auth->canDo("modName"), $indent+6); $this->_htmlInputField($cmd."_usermail", "usermail", $this->lang["user_mail"], $mail, $this->_auth->canDo("modMail"), $indent+6); $this->_htmlInputField($cmd."_usergroups","usergroups",$this->lang["user_groups"],$groups,$this->_auth->canDo("modGroups"),$indent+6); @@ -358,7 +360,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $class = $cando ? '' : ' class="disabled"'; echo str_pad('',$indent); - if($name == 'userpass'){ + if($name == 'userpass' || $name == 'userpass2'){ $fieldtype = 'password'; $autocomp = 'autocomplete="off"'; }elseif($name == 'usermail'){ @@ -475,7 +477,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { if (!checkSecurityToken()) return false; if (!$this->_auth->canDo('addUser')) return false; - list($user,$pass,$name,$mail,$grps) = $this->_retrieveUser(); + list($user,$pass,$name,$mail,$grps,$passconfirm) = $this->_retrieveUser(); if (empty($user)) return false; if ($this->_auth->canDo('modPass')){ @@ -486,6 +488,10 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { msg($this->lang['add_fail'], -1); return false; } + } else { + if (!$this->_verifyPassword($pass,$passconfirm)) { + return false; + } } } else { if (!empty($pass)){ @@ -606,7 +612,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $oldinfo = $this->_auth->getUserData($olduser); // get new user data subject to change - list($newuser,$newpass,$newname,$newmail,$newgrps) = $this->_retrieveUser(); + list($newuser,$newpass,$newname,$newmail,$newgrps,$passconfirm) = $this->_retrieveUser(); if (empty($newuser)) return false; $changes = array(); @@ -625,27 +631,37 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $changes['user'] = $newuser; } } - - // generate password if left empty and notification is on - if($INPUT->has('usernotify') && empty($newpass)){ - $newpass = auth_pwgen($olduser); + if ($this->_auth->canDo('modPass')) { + if ($newpass || $passconfirm) { + if ($this->_verifyPassword($newpass,$passconfirm)) { + $changes['pass'] = $newpass; + } else { + return false; + } + } else { + // no new password supplied, check if we need to generate one (or it stays unchanged) + if ($INPUT->has('usernotify')) { + $changes['pass'] = auth_pwgen($olduser); + } + } } - if (!empty($newpass) && $this->_auth->canDo('modPass')) - $changes['pass'] = $newpass; - if (!empty($newname) && $this->_auth->canDo('modName') && $newname != $oldinfo['name']) - $changes['name'] = $newname; - if (!empty($newmail) && $this->_auth->canDo('modMail') && $newmail != $oldinfo['mail']) - $changes['mail'] = $newmail; - if (!empty($newgrps) && $this->_auth->canDo('modGroups') && $newgrps != $oldinfo['grps']) - $changes['grps'] = $newgrps; + if (!empty($newname) && $this->_auth->canDo('modName') && $newname != $oldinfo['name']) { + $changes['name'] = $newname; + } + if (!empty($newmail) && $this->_auth->canDo('modMail') && $newmail != $oldinfo['mail']) { + $changes['mail'] = $newmail; + } + if (!empty($newgrps) && $this->_auth->canDo('modGroups') && $newgrps != $oldinfo['grps']) { + $changes['grps'] = $newgrps; + } if ($ok = $this->_auth->triggerUserMod('modify', array($olduser, $changes))) { msg($this->lang['update_ok'],1); - if ($INPUT->has('usernotify') && $newpass) { + if ($INPUT->has('usernotify') && !empty($changes['pass'])) { $notify = empty($changes['user']) ? $olduser : $newuser; - $this->_notifyUser($notify,$newpass); + $this->_notifyUser($notify,$changes['pass']); } // invalidate all sessions @@ -686,6 +702,32 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { } /** + * Verify password meets minimum requirements + * :TODO: extend to support password strength + * + * @param string $password candidate string for new password + * @param string $confirm repeated password for confirmation + * @return bool true if meets requirements, false otherwise + */ + protected function _verifyPassword($password, $confirm) { + global $lang; + + if (empty($password) && empty($confirm)) { + return false; + } + + if ($password !== $confirm) { + msg($lang['regbadpass'], -1); + return false; + } + + // :TODO: test password for required strength + + // if we make it this far the password is good + return true; + } + + /** * Retrieve & clean user data from the form * * @param bool $clean whether the cleanUser method of the authentication backend is applied @@ -701,6 +743,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $user[2] = $INPUT->str('username'); $user[3] = $INPUT->str('usermail'); $user[4] = explode(',',$INPUT->str('usergroups')); + $user[5] = $INPUT->str('userpass2'); // repeated password for confirmation $user[4] = array_map('trim',$user[4]); if($clean) $user[4] = array_map(array($auth,'cleanGroup'),$user[4]); diff --git a/lib/plugins/usermanager/lang/en/lang.php b/lib/plugins/usermanager/lang/en/lang.php index f87c77afb..b55ecc998 100644 --- a/lib/plugins/usermanager/lang/en/lang.php +++ b/lib/plugins/usermanager/lang/en/lang.php @@ -76,4 +76,3 @@ $lang['import_error_create'] = 'Unable to create the user'; $lang['import_notify_fail'] = 'Notification message could not be sent for imported user, %s with email %s.'; $lang['import_downloadfailures'] = 'Download Failures as CSV for correction'; - diff --git a/lib/tpl/dokuwiki/css/content.less b/lib/tpl/dokuwiki/css/content.less index a5ffbf2be..a2e343a33 100644 --- a/lib/tpl/dokuwiki/css/content.less +++ b/lib/tpl/dokuwiki/css/content.less @@ -67,19 +67,19 @@ /*____________ lists ____________*/ -#dokuwiki__content ul li, -#dokuwiki__aside ul li { - color: @ini_text_alt; -} +.dokuwiki .page, +.dokuwiki .aside { + ul li { + color: @ini_text_alt; + } -#dokuwiki__content ol li, -#dokuwiki__aside ol li { - color: @ini_text_neu; -} + ol li { + color: @ini_text_neu; + } -#dokuwiki__content li .li, -#dokuwiki__aside li .li { - color: @ini_text; + li .li { + color: @ini_text; + } } /*____________ tables ____________*/ diff --git a/lib/tpl/dokuwiki/css/design.less b/lib/tpl/dokuwiki/css/design.less index 42292de49..46b4a045b 100644 --- a/lib/tpl/dokuwiki/css/design.less +++ b/lib/tpl/dokuwiki/css/design.less @@ -186,50 +186,50 @@ text-align: right; form.search { - display: block; font-size: 0.875em; - position: relative; + } +} - input.edit { - width: 18em; - padding: .35em 22px .35em .1em; - } +[dir=rtl] #dokuwiki__sitetools { + text-align: left; +} - input.button { - background: transparent url(images/search.png) no-repeat 0 0; - border-width: 0; - width: 19px; - height: 14px; - text-indent: -99999px; - margin-left: -20px; - box-shadow: none; - padding: 0; - } +form.search { + display: block; + position: relative; + margin-bottom: 0.5em; + + input.edit { + width: 18em; + padding: .35em 22px .35em .1em; } - ul { - margin-top: 0.5em; + input.button { + background: transparent url(images/search.png) no-repeat 0 0; + border-width: 0; + width: 19px; + height: 14px; + text-indent: -99999px; + margin-left: -20px; + box-shadow: none; + padding: 0; } } -[dir=rtl] #dokuwiki__sitetools { - text-align: left; - - form.search { - input.edit { - padding: .35em .1em .35em 22px; - } +[dir=rtl] form.search { + input.edit { + padding: .35em .1em .35em 22px; + } - input.button { - background-position: 5px 0; - margin-left: 0; - margin-right: -20px; - position: relative; - } + input.button { + background-position: 5px 0; + margin-left: 0; + margin-right: -20px; + position: relative; } } -#IE7 #dokuwiki__sitetools form.search { +#IE7 form.search { min-height: 1px; z-index: 21; } @@ -278,13 +278,10 @@ /* sidebar ********************************************************************/ -#dokuwiki__aside { - - > .pad { - font-size: 0.875em; - overflow: hidden; - word-wrap: break-word; - } +.dokuwiki .aside { + font-size: 0.875em; + overflow: hidden; + word-wrap: break-word; /* make sidebar more condensed */ @@ -340,8 +337,8 @@ } } -[dir=rtl] #dokuwiki__aside ul, -[dir=rtl] #dokuwiki__aside ol { +[dir=rtl] .dokuwiki .aside ul, +[dir=rtl] .dokuwiki .aside ol { padding-right: .5em; } diff --git a/lib/tpl/dokuwiki/main.php b/lib/tpl/dokuwiki/main.php index 3bc46406a..44fef81eb 100644 --- a/lib/tpl/dokuwiki/main.php +++ b/lib/tpl/dokuwiki/main.php @@ -36,7 +36,7 @@ $showSidebar = $hasSidebar && ($ACT=='show'); <?php if($showSidebar): ?> <!-- ********** ASIDE ********** --> - <div id="dokuwiki__aside"><div class="pad include group"> + <div id="dokuwiki__aside"><div class="pad aside include group"> <h3 class="toggle"><?php echo $lang['sidebar'] ?></h3> <div class="content"> <?php tpl_flush() ?> |