diff options
234 files changed, 3156 insertions, 498 deletions
diff --git a/.htaccess.dist b/.htaccess.dist index 5724a6e04..1d2bd418e 100644 --- a/.htaccess.dist +++ b/.htaccess.dist @@ -6,10 +6,20 @@ ## make sure nobody gets the htaccess, README, COPYING or VERSION files <Files ~ "^([\._]ht|README$|VERSION$|COPYING$)"> - Order allow,deny - Deny from all + <IfModule mod_authz_host> + Require all denied + </IfModule> + <IfModule !mod_authz_host> + Order allow,deny + Deny from all + </IfModule> </Files> +## Don't allow access to git directories +<IfModule alias_module> + RedirectMatch 404 /\.git +</IfModule> + ## Uncomment these rules if you want to have nice URLs using ## $conf['userewrite'] = 1 - not needed for rewrite mode 2 #RewriteEngine on diff --git a/.travis.yml b/.travis.yml index 61e47522d..a0aa15296 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,20 +1,23 @@ language: php sudo: false php: + - "7.0" - "5.6" - "5.5" - "5.4" - "5.3" - "hhvm" - - "nightly" +env: + - DISABLE_FUNCTIONS= + - DISABLE_FUNCTIONS="gzopen" matrix: allow_failures: - php: "hhvm" - - php: "nightly" notifications: irc: channels: - "chat.freenode.net#dokuwiki" on_success: change on_failure: change +before_script: echo "disable_functions=$DISABLE_FUNCTIONS" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini script: cd _test && phpunit --verbose --stderr diff --git a/_test/tests/inc/PassHash.test.php b/_test/tests/inc/PassHash.test.php index 1d34aa696..1bc4b95bc 100644 --- a/_test/tests/inc/PassHash.test.php +++ b/_test/tests/inc/PassHash.test.php @@ -17,6 +17,24 @@ class PassHash_test extends DokuWikiTest { $this->assertEquals('fbdb1d1b18aa6c08324b7d64b71fb76370690e1d', PassHash::hmac('sha1','','')); $this->assertEquals('80070713463e7749b90c2dc24911e275', PassHash::hmac('md5','The quick brown fox jumps over the lazy dog','key')); $this->assertEquals('de7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9', PassHash::hmac('sha1','The quick brown fox jumps over the lazy dog','key')); + } + + function test_djangopbkdf2() { + if(!function_exists('hash_pbkdf2') || !in_array('sha256', hash_algos())){ + $this->markTestSkipped('missing hash functions for djangopbkdf2 password tests'); + return; + } + $ph = new PassHash(); + $knownpasses = array ( + 'pbkdf2_sha256$24000$LakQQ2OOTO1v$dmUgz8V7zcpaoBSA3MV76J5a4rzrszF0NpxGx6HRBbE=', + 'pbkdf2_sha256$24000$PXogIZpE4gaK$F/P/L5SRrbb6taOGEr4w6DhxjMzNAj1jEWTPyAUn8WU=', + 'pbkdf2_sha256$24000$vtn5APnhirmB$/jzJXYvm78X8/FCOMhGUmcCy0iWhtk0L1hcBWN1AYZc=', + 'pbkdf2_sha256$24000$meyCtGKrS5Ai$vkMfMzB/yGFKplmXujgtfl3OGR27AwOQmP+YeRP6lbw=', + 'pbkdf2_sha256$24000$M8ecC8zfqLmJ$l6cIa/Od+m56VMm9hJbdPNhTXZykPVbUGGTPx7/VRE4=', + ); + foreach($knownpasses as $known) { + $this->assertTrue($ph->verify_hash('P4zzW0rd!', $known)); + } } -}
\ No newline at end of file +} diff --git a/_test/tests/inc/auth_password.test.php b/_test/tests/inc/auth_password.test.php index 5067e2ca1..71b0dfb4c 100644 --- a/_test/tests/inc/auth_password.test.php +++ b/_test/tests/inc/auth_password.test.php @@ -2,7 +2,7 @@ class auth_password_test extends DokuWikiTest { - // hashes for the password foo$method, using abcdefgh as salt + // hashes for the password foo$method, using abcdefgh12345678912345678912345678 as salt var $passes = array( 'smd5' => '$1$abcdefgh$SYbjm2AEvSoHG7Xapi8so.', 'apr1' => '$apr1$abcdefgh$C/GzYTF4kOVByYLEoD5X4.', @@ -24,14 +24,24 @@ class auth_password_test extends DokuWikiTest { // Check SHA512 only if available in this PHP $this->passes['sha512'] = '$6$abcdefgh12345678$J9.zOcgx0lotwZdcz0uulA3IVQMinZvFZVjA5vapRLVAAqtay23XD4xeeUxQ3B4JvDWYFBIxVWW1tOYlHX13k1'; } + if(function_exists('hash_pbkdf2')) { + if(in_array('sha256', hash_algos())) { + $this->passes['djangopbkdf2_sha256'] = 'pbkdf2_sha256$24000$abcdefgh1234$R23OyZJ0nGHLG6MvPNfEkV5AOz3jUY5zthByPXs2gn0='; + } + if(in_array('sha1', hash_algos())) { + $this->passes['djangopbkdf2_sha1'] = 'pbkdf2_sha1$24000$abcdefgh1234$pOliX4vV1hgOv7lFNURIHHx41HI='; + } + } } function test_cryptPassword(){ foreach($this->passes as $method => $hash){ $info = "testing method $method"; - $this->assertEquals(auth_cryptPassword('foo'.$method, $method,'abcdefgh12345678912345678912345678'), - $hash, $info); + $this->assertEquals( + $hash, + auth_cryptPassword('foo'.$method, $method,'abcdefgh12345678912345678912345678'), + $info); } } diff --git a/_test/tests/inc/common_blank.test.php b/_test/tests/inc/common_blank.test.php new file mode 100644 index 000000000..9df35936a --- /dev/null +++ b/_test/tests/inc/common_blank.test.php @@ -0,0 +1,52 @@ +<?php + +class common_blank_test extends DokuWikiTest { + + private $nope; + + function test_blank() { + $tests = array( + // these are not blank + array('string', false), + array(1, false), + array(1.0, false), + array(0xff, false), + array(array('something'), false), + + // these aren't either! + array('0', false), + array(' ', false), + array('0.0', false), + array(0, false), + array(0.0, false), + array(0x00, false), + array(true, false), + + // but these are + array('', true), + array(array(), true), + array(null, true), + array(false, true), + array("\0", true) + ); + + foreach($tests as $test) { + $this->assertEquals($test[1], blank($test[0]), "using " . var_export($test[0], true)); + } + } + + function test_trim() { + $whitespace = " \t\r\n"; + $this->assertFalse(blank($whitespace), "using default \$trim value"); + $this->assertFalse(blank($whitespace, false), "using \$trim = false"); + $this->assertTrue(blank($whitespace, true), "using \$trim = true"); + } + + function test_undefined() { + $undef = array(); + $this->assertTrue(blank($var), "using undefined/unitialised variable"); + $this->assertTrue(blank($undef['nope']), "using undefined array index"); + $this->assertTrue(blank($this->nope), "using unset object property"); + } + +} diff --git a/_test/tests/inc/common_saveWikiText.test.php b/_test/tests/inc/common_saveWikiText.test.php new file mode 100644 index 000000000..800e20952 --- /dev/null +++ b/_test/tests/inc/common_saveWikiText.test.php @@ -0,0 +1,145 @@ +<?php + +class common_saveWikiText_test extends DokuWikiTest { + + /** + * Execute a whole bunch of saves on the same page and check the results + */ + function test_savesequence() { + global $REV; + + $page = 'page'; + $file = wikiFN($page); + + // create the page + $this->assertFileNotExists($file); + saveWikiText($page, 'teststring', 'first save', false); + $this->assertFileExists($file); + $lastmod = filemtime($file); + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(1, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('first save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_CREATE, $revinfo['type']); + + sleep(1); // wait for new revision ID + + // save with same content should be ignored + saveWikiText($page, 'teststring', 'second save', false); + clearstatcache(false, $file); + $this->assertEquals($lastmod, filemtime($file)); + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(1, count($revisions)); + + // update the page with new text + saveWikiText($page, 'teststring2', 'third save', false); + clearstatcache(false, $file); + $newmod = filemtime($file); + $this->assertNotEquals($lastmod, $newmod); + $lastmod = $newmod; + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(2, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('third save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_EDIT, $revinfo['type']); + + sleep(1); // wait for new revision ID + + // add a minor edit (unauthenticated) + saveWikiText($page, 'teststring3', 'fourth save', true); + clearstatcache(false, $file); + $newmod = filemtime($file); + $this->assertNotEquals($lastmod, $newmod); + $lastmod = $newmod; + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(3, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('fourth save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_EDIT, $revinfo['type']); + + sleep(1); // wait for new revision ID + + // add a minor edit (authenticated) + $_SERVER['REMOTE_USER'] = 'user'; + saveWikiText($page, 'teststring4', 'fifth save', true); + clearstatcache(false, $file); + $newmod = filemtime($file); + $this->assertNotEquals($lastmod, $newmod); + $lastmod = $newmod; + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(4, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('fifth save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_MINOR_EDIT, $revinfo['type']); + + sleep(1); // wait for new revision ID + + // delete + saveWikiText($page, '', 'sixth save', false); + clearstatcache(false, $file); + $this->assertFileNotExists($file); + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(5, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('sixth save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_DELETE, $revinfo['type']); + + sleep(1); // wait for new revision ID + + // restore + $REV = $lastmod; + saveWikiText($page, 'teststring4', 'seventh save', true); + clearstatcache(false, $file); + $this->assertFileExists($file); + $newmod = filemtime($file); + $this->assertNotEquals($lastmod, $newmod); + $lastmod = $newmod; + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(6, count($revisions)); + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('seventh save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_REVERT, $revinfo['type']); + $this->assertEquals($REV, $revinfo['extra']); + $REV = ''; + + sleep(1); // wait for new revision ID + + // create external edit + file_put_contents($file, 'teststring5'); + + sleep(1); // wait for new revision ID + + // save on top of external edit + saveWikiText($page, 'teststring6', 'eigth save', false); + clearstatcache(false, $file); + $newmod = filemtime($file); + $this->assertNotEquals($lastmod, $newmod); + $lastmod = $newmod; + + $pagelog = new PageChangeLog($page); + $revisions = $pagelog->getRevisions(-1, 200); + $this->assertEquals(8, count($revisions)); // two more revisions now! + $revinfo = $pagelog->getRevisionInfo($revisions[0]); + $this->assertEquals('eigth save', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_EDIT, $revinfo['type']); + + $revinfo = $pagelog->getRevisionInfo($revisions[1]); + $this->assertEquals('external edit', $revinfo['sum']); + $this->assertEquals(DOKU_CHANGE_TYPE_EDIT, $revinfo['type']); + + } +} diff --git a/_test/tests/inc/io_readfile.test.php b/_test/tests/inc/io_readfile.test.php index 700c1902b..43bb7f80c 100644 --- a/_test/tests/inc/io_readfile.test.php +++ b/_test/tests/inc/io_readfile.test.php @@ -6,7 +6,7 @@ class io_readfile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_zlib() { - if (!extension_loaded('zlib')) { + if (!DOKU_HAS_GZIP) { $this->markTestSkipped('skipping all zlib tests. Need zlib extension'); } } @@ -15,7 +15,7 @@ class io_readfile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_bz2() { - if (!extension_loaded('bz2')) { + if (!DOKU_HAS_BZIP) { $this->markTestSkipped('skipping all bzip2 tests. Need bz2 extension'); } } diff --git a/_test/tests/inc/io_replaceinfile.test.php b/_test/tests/inc/io_replaceinfile.test.php index 452ed7401..d517584e1 100644 --- a/_test/tests/inc/io_replaceinfile.test.php +++ b/_test/tests/inc/io_replaceinfile.test.php @@ -8,7 +8,7 @@ class io_replaceinfile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_zlib() { - if (!extension_loaded('zlib')) { + if (!DOKU_HAS_GZIP) { $this->markTestSkipped('skipping all zlib tests. Need zlib extension'); } } @@ -17,7 +17,7 @@ class io_replaceinfile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_bz2() { - if (!extension_loaded('bz2')) { + if (!DOKU_HAS_BZIP) { $this->markTestSkipped('skipping all bzip2 tests. Need bz2 extension'); } } diff --git a/_test/tests/inc/io_savefile.test.php b/_test/tests/inc/io_savefile.test.php index 4a4d4671d..5f387b8a1 100644 --- a/_test/tests/inc/io_savefile.test.php +++ b/_test/tests/inc/io_savefile.test.php @@ -6,7 +6,7 @@ class io_savefile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_zlib() { - if (!extension_loaded('zlib')) { + if (!DOKU_HAS_GZIP) { $this->markTestSkipped('skipping all zlib tests. Need zlib extension'); } } @@ -15,7 +15,7 @@ class io_savefile_test extends DokuWikiTest { * dependency for tests needing zlib extension to pass */ public function test_ext_bz2() { - if (!extension_loaded('bz2')) { + if (!DOKU_HAS_BZIP) { $this->markTestSkipped('skipping all bzip2 tests. Need bz2 extension'); } } diff --git a/_test/tests/inc/remote.test.php b/_test/tests/inc/remote.test.php index 037b1dc0b..3cbc14f6b 100644 --- a/_test/tests/inc/remote.test.php +++ b/_test/tests/inc/remote.test.php @@ -106,14 +106,32 @@ class remote_plugin_testplugin extends DokuWiki_Remote_Plugin { function methodString() { return 'success'; } function method2($str, $int, $bool = false) { return array($str, $int, $bool); } function publicCall() {return true;} +} + +class remote_plugin_testplugin2 extends DokuWiki_Remote_Plugin { + /** + * This is a dummy method + * + * @param string $str some more parameter description + * @param int $int + * @param bool $bool + * @param Object $unknown + * @return array + */ + public function commented($str, $int, $bool, $unknown) { return array($str, $int, $bool); } + private function privateMethod() {return true;} + protected function protectedMethod() {return true;} + public function _underscore() {return true;} } + class remote_test extends DokuWikiTest { var $userinfo; + /** @var RemoteAPI */ var $remote; function setUp() { @@ -125,10 +143,18 @@ class remote_test extends DokuWikiTest { parent::setUp(); + // mock plugin controller to return our test plugins $pluginManager = $this->getMock('Doku_Plugin_Controller'); - $pluginManager->expects($this->any())->method('getList')->will($this->returnValue(array('testplugin'))); - $pluginManager->expects($this->any())->method('load')->will($this->returnValue(new remote_plugin_testplugin())); - + $pluginManager->method('getList')->willReturn(array('testplugin', 'testplugin2')); + $pluginManager->method('load')->willReturnCallback( + function($type, $plugin) { + if($plugin == 'testplugin2') { + return new remote_plugin_testplugin2(); + } else { + return new remote_plugin_testplugin(); + } + } + ); $plugin_controller = $pluginManager; $conf['remote'] = 1; @@ -151,12 +177,31 @@ class remote_test extends DokuWikiTest { $methods = $this->remote->getPluginMethods(); $actual = array_keys($methods); sort($actual); - $expect = array('plugin.testplugin.method1', 'plugin.testplugin.method2', 'plugin.testplugin.methodString', 'plugin.testplugin.method2ext', 'plugin.testplugin.publicCall'); + $expect = array( + 'plugin.testplugin.method1', + 'plugin.testplugin.method2', + 'plugin.testplugin.methodString', + 'plugin.testplugin.method2ext', + 'plugin.testplugin.publicCall', + + 'plugin.testplugin2.commented' + ); sort($expect); $this->assertEquals($expect,$actual); } + function test_pluginDescriptors() { + $methods = $this->remote->getPluginMethods(); + $this->assertEquals(array('string','int','bool','string'), $methods['plugin.testplugin2.commented']['args']); + $this->assertEquals('array', $methods['plugin.testplugin2.commented']['return']); + $this->assertEquals(0, $methods['plugin.testplugin2.commented']['public']); + $this->assertContains('This is a dummy method', $methods['plugin.testplugin2.commented']['doc']); + $this->assertContains('string $str some more parameter description', $methods['plugin.testplugin2.commented']['doc']); + } + function test_hasAccessSuccess() { + global $conf; + $conf['remoteuser'] = ''; $this->assertTrue($this->remote->hasAccess()); } @@ -209,6 +254,7 @@ class remote_test extends DokuWikiTest { function test_forceAccessSuccess() { global $conf; $conf['remote'] = 1; + $conf['remoteuser'] = ''; $this->remote->forceAccess(); // no exception should occur } @@ -223,7 +269,11 @@ class remote_test extends DokuWikiTest { function test_generalCoreFunctionWithoutArguments() { global $conf; + global $USERINFO; $conf['remote'] = 1; + $conf['remoteuser'] = ''; + $conf['useacl'] = 1; + $USERINFO['grps'] = array('grp'); $remoteApi = new RemoteApi(); $remoteApi->getCoreMethods(new RemoteAPICoreTest()); @@ -249,7 +299,10 @@ class remote_test extends DokuWikiTest { function test_generalCoreFunctionWithArguments() { global $conf; + global $USERINFO; $conf['remote'] = 1; + $conf['remoteuser'] = ''; + $conf['useacl'] = 1; $remoteApi = new RemoteApi(); $remoteApi->getCoreMethods(new RemoteAPICoreTest()); @@ -262,7 +315,10 @@ class remote_test extends DokuWikiTest { function test_pluginCallMethods() { global $conf; + global $USERINFO; $conf['remote'] = 1; + $conf['remoteuser'] = ''; + $conf['useacl'] = 1; $remoteApi = new RemoteApi(); $this->assertEquals($remoteApi->call('plugin.testplugin.method1'), null); @@ -319,6 +375,11 @@ class remote_test extends DokuWikiTest { } function test_pluginCallCustomPath() { + global $conf; + global $USERINFO; + $conf['remote'] = 1; + $conf['remoteuser'] = ''; + $conf['useacl'] = 1; global $EVENT_HANDLER; $EVENT_HANDLER->register_hook('RPC_CALL_ADD', 'BEFORE', $this, 'pluginCallCustomPathRegister'); diff --git a/bin/.htaccess b/bin/.htaccess index 281d5c33d..5f279f180 100644 --- a/bin/.htaccess +++ b/bin/.htaccess @@ -1,2 +1,7 @@ -order allow,deny -deny from all +<IfModule mod_authz_host> + Require all denied +</IfModule> +<IfModule !mod_authz_host> + Order allow,deny + Deny from all +</IfModule> diff --git a/bin/dwpage.php b/bin/dwpage.php index d7f6e9bb8..1c1a1c10e 100755 --- a/bin/dwpage.php +++ b/bin/dwpage.php @@ -248,7 +248,7 @@ class PageCLI extends DokuCLI { lock($wiki_id); - if(checklock($wiki_id) != $this->username) { + if(checklock($wiki_id)) { $this->error("Unable to obtain lock for $wiki_id "); var_dump(checklock($wiki_id)); exit(1); diff --git a/conf/.htaccess b/conf/.htaccess index bcc3ea0bd..b3ffca597 100644 --- a/conf/.htaccess +++ b/conf/.htaccess @@ -1,3 +1,8 @@ ## no access to the conf directory -order allow,deny -deny from all +<IfModule mod_authz_host> + Require all denied +</IfModule> +<IfModule !mod_authz_host> + Order allow,deny + Deny from all +</IfModule> diff --git a/conf/dokuwiki.php b/conf/dokuwiki.php index bdc9739d1..ef62b41e7 100644 --- a/conf/dokuwiki.php +++ b/conf/dokuwiki.php @@ -65,7 +65,7 @@ $conf['disableactions'] = ''; //comma separated list of actions to di $conf['auth_security_timeout'] = 900; //time (seconds) auth data is considered valid, set to 0 to recheck on every page view $conf['securecookie'] = 1; //never send HTTPS cookies via HTTP $conf['remote'] = 0; //Enable/disable remote interfaces -$conf['remoteuser'] = '!!not set !!'; //user/groups that have access to remote interface (comma separated) +$conf['remoteuser'] = '!!not set!!'; //user/groups that have access to remote interface (comma separated) /* Antispam Features */ $conf['usewordblock']= 1; //block spam based on words? 0|1 diff --git a/conf/interwiki.conf b/conf/interwiki.conf index 4dc3c80ee..a314c0817 100644 --- a/conf/interwiki.conf +++ b/conf/interwiki.conf @@ -30,7 +30,7 @@ amazon https://www.amazon.com/exec/obidos/ASIN/{URL}/splitbrain-20/ amazon.de https://www.amazon.de/exec/obidos/ASIN/{URL}/splitbrain-21/ amazon.uk https://www.amazon.co.uk/exec/obidos/ASIN/ paypal https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business= -phpfn https://www.php.net/{NAME} +phpfn https://secure.php.net/{NAME} skype skype:{NAME} google.de https://www.google.de/search?q= go https://www.google.com/search?q={URL}&btnI=lucky diff --git a/data/.htaccess b/data/.htaccess index 281d5c33d..5f279f180 100644 --- a/data/.htaccess +++ b/data/.htaccess @@ -1,2 +1,7 @@ -order allow,deny -deny from all +<IfModule mod_authz_host> + Require all denied +</IfModule> +<IfModule !mod_authz_host> + Order allow,deny + Deny from all +</IfModule> @@ -135,7 +135,7 @@ function rss_parseOptions() { 'content_type' => array('str', 'view', $conf['rss_media']) ) as $name => $val) { - $opt[$name] = $INPUT->$val[0]($val[1], $val[2], true); + $opt[$name] = $INPUT->{$val[0]}($val[1], $val[2], true); } $opt['items'] = max(0, (int) $opt['items']); diff --git a/inc/.htaccess b/inc/.htaccess index 2d9c357ff..2b34c725f 100644 --- a/inc/.htaccess +++ b/inc/.htaccess @@ -1,3 +1,8 @@ ## no access to the inc directory -order allow,deny -deny from all +<IfModule mod_authz_host> + Require all denied +</IfModule> +<IfModule !mod_authz_host> + Order allow,deny + Deny from all +</IfModule> diff --git a/inc/HTTPClient.php b/inc/HTTPClient.php index 092216c57..4aefcfe5a 100644 --- a/inc/HTTPClient.php +++ b/inc/HTTPClient.php @@ -597,13 +597,15 @@ class HTTPClient { // setups with this solution before, but we have no usable test for that and TLS should be the more // common crypto by now if (@stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) { - $requesturl = $requestinfo['path']; + $requesturl = $requestinfo['path']. + (!empty($requestinfo['query'])?'?'.$requestinfo['query']:''); return true; } // if the above failed, this will most probably not work either, but we can try if (@stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_SSLv3_CLIENT)) { - $requesturl = $requestinfo['path']; + $requesturl = $requestinfo['path']. + (!empty($requestinfo['query'])?'?'.$requestinfo['query']:''); return true; } diff --git a/inc/PassHash.class.php b/inc/PassHash.class.php index 0701c4116..bcfea1dfc 100644 --- a/inc/PassHash.class.php +++ b/inc/PassHash.class.php @@ -42,8 +42,15 @@ class PassHash { $magic = 'P'; } elseif(preg_match('/^\$H\$(.{31})$/', $hash, $m)) { $method = 'pmd5'; - $salt = $m[1]; - $magic = 'H'; + $salt = $m[1]; + $magic = 'H'; + } elseif(preg_match('/^pbkdf2_(\w+?)\$(\d+)\$(.{12})\$/', $hash, $m)) { + $method = 'djangopbkdf2'; + $magic = array( + 'algo' => $m[1], + 'iter' => $m[2], + ); + $salt = $m[3]; } elseif(preg_match('/^sha1\$(.{5})\$/', $hash, $m)) { $method = 'djangosha1'; $salt = $m[1]; @@ -83,7 +90,8 @@ class PassHash { //crypt and compare $call = 'hash_'.$method; - if($this->$call($clear, $salt, $magic) === $hash) { + $newhash = $this->$call($clear, $salt, $magic); + if($newhash === $hash) { return true; } return false; @@ -436,6 +444,69 @@ class PassHash { } /** + * Password hashing method 'djangopbkdf2' + * + * An algorithm and iteration count should be given in the opts array. + * Defaults to sha256 and 24000 iterations + * + * @param string $clear The clear text to hash + * @param string $salt The salt to use, null for random + * @param array $opts ('algo' => hash algorithm, 'iter' => iterations) + * @return string Hashed password + * @throws Exception when PHP is missing support for the method/algo + */ + public function hash_djangopbkdf2($clear, $salt=null, $opts=array()) { + $this->init_salt($salt, 12); + if(empty($opts['algo'])) { + $algo = 'sha256'; + } else { + $algo = $opts['algo']; + } + if(empty($opts['iter'])) { + $iter = 24000; + } else { + $iter = (int) $opts['iter']; + } + if(!function_exists('hash_pbkdf2')) { + throw new Exception('This PHP installation has no PBKDF2 support'); + } + if(!in_array($algo, hash_algos())) { + throw new Exception("This PHP installation has no $algo support"); + } + + $hash = base64_encode(hash_pbkdf2($algo, $clear, $salt, $iter, 0, true)); + return "pbkdf2_$algo\$$iter\$$salt\$$hash"; + } + + /** + * Alias for djangopbkdf2 defaulting to sha256 as hash algorithm + * + * @param string $clear The clear text to hash + * @param string $salt The salt to use, null for random + * @param array $opts ('iter' => iterations) + * @return string Hashed password + * @throws Exception when PHP is missing support for the method/algo + */ + public function hash_djangopbkdf2_sha256($clear, $salt=null, $opts=array()) { + $opts['algo'] = 'sha256'; + return $this->hash_djangopbkdf2($clear, $salt, $opts); + } + + /** + * Alias for djangopbkdf2 defaulting to sha1 as hash algorithm + * + * @param string $clear The clear text to hash + * @param string $salt The salt to use, null for random + * @param array $opts ('iter' => iterations) + * @return string Hashed password + * @throws Exception when PHP is missing support for the method/algo + */ + public function hash_djangopbkdf2_sha1($clear, $salt=null, $opts=array()) { + $opts['algo'] = 'sha1'; + return $this->hash_djangopbkdf2($clear, $salt, $opts); + } + + /** * Passwordhashing method 'bcrypt' * * Uses a modified blowfish algorithm called eksblowfish diff --git a/inc/actions.php b/inc/actions.php index b0753b22e..adba2aa32 100644 --- a/inc/actions.php +++ b/inc/actions.php @@ -29,6 +29,8 @@ function act_dispatch(){ // give plugins an opportunity to process the action $evt = new Doku_Event('ACTION_ACT_PREPROCESS',$ACT); + + $headers = array(); if ($evt->advise_before()) { //sanitize $ACT @@ -144,8 +146,10 @@ function act_dispatch(){ $ACT = act_draftdel($ACT); //draft saving on preview - if($ACT == 'preview') + if($ACT == 'preview') { + $headers[] = "X-XSS-Protection: 0"; $ACT = act_draftsave($ACT); + } //edit if(in_array($ACT, array('edit', 'preview', 'recover'))) { @@ -189,7 +193,6 @@ function act_dispatch(){ global $license; //call template FIXME: all needed vars available? - $headers = array(); $headers[] = 'Content-Type: text/html; charset=utf-8'; trigger_event('ACTION_HEADERS_SEND',$headers,'act_sendheaders'); diff --git a/inc/auth.php b/inc/auth.php index e04a6ca1a..8965ee4c0 100644 --- a/inc/auth.php +++ b/inc/auth.php @@ -101,10 +101,7 @@ function auth_setup() { $INPUT->set('p', stripctl($INPUT->str('p'))); } - if($INPUT->str('authtok')) { - // when an authentication token is given, trust the session - auth_validateToken($INPUT->str('authtok')); - } elseif(!is_null($auth) && $auth->canDo('external')) { + if(!is_null($auth) && $auth->canDo('external')) { // external trust mechanism in place $auth->trustExternal($INPUT->str('u'), $INPUT->str('p'), $INPUT->bool('r')); } else { @@ -275,52 +272,6 @@ function auth_login($user, $pass, $sticky = false, $silent = false) { } /** - * Checks if a given authentication token was stored in the session - * - * Will setup authentication data using data from the session if the - * token is correct. Will exit with a 401 Status if not. - * - * @author Andreas Gohr <andi@splitbrain.org> - * - * @param string $token The authentication token - * @return boolean|null true (or will exit on failure) - */ -function auth_validateToken($token) { - if(!$token || $token != $_SESSION[DOKU_COOKIE]['auth']['token']) { - // bad token - http_status(401); - print 'Invalid auth token - maybe the session timed out'; - unset($_SESSION[DOKU_COOKIE]['auth']['token']); // no second chance - exit; - } - // still here? trust the session data - global $USERINFO; - /* @var Input $INPUT */ - global $INPUT; - - $INPUT->server->set('REMOTE_USER',$_SESSION[DOKU_COOKIE]['auth']['user']); - $USERINFO = $_SESSION[DOKU_COOKIE]['auth']['info']; - return true; -} - -/** - * Create an auth token and store it in the session - * - * NOTE: this is completely unrelated to the getSecurityToken() function - * - * @author Andreas Gohr <andi@splitbrain.org> - * - * @return string The auth token - */ -function auth_createToken() { - $token = md5(auth_randombytes(16)); - @session_start(); // reopen the session if needed - $_SESSION[DOKU_COOKIE]['auth']['token'] = $token; - session_write_close(); - return $token; -} - -/** * Builds a pseudo UID from browser and IP data * * This is neither unique nor unfakable - still it adds some @@ -752,10 +703,10 @@ function auth_aclcheck_cb($data) { //add ALL group $groups[] = '@ALL'; - + //add User if($user) $groups[] = $user; - + //check exact match first $matches = preg_grep('/^'.preg_quote($id, '/').'[ \t]+([^ \t]+)[ \t]+/', $AUTH_ACL); if(count($matches)) { diff --git a/inc/common.php b/inc/common.php index 17facd249..91004af5d 100644 --- a/inc/common.php +++ b/inc/common.php @@ -31,6 +31,32 @@ function hsc($string) { } /** + * Checks if the given input is blank + * + * This is similar to empty() but will return false for "0". + * + * Please note: when you pass uninitialized variables, they will implicitly be created + * with a NULL value without warning. + * + * To avoid this it's recommended to guard the call with isset like this: + * + * (isset($foo) && !blank($foo)) + * (!isset($foo) || blank($foo)) + * + * @param $in + * @param bool $trim Consider a string of whitespace to be blank + * @return bool + */ +function blank(&$in, $trim = false) { + if(is_null($in)) return true; + if(is_array($in)) return empty($in); + if($in === "\0") return true; + if($trim && trim($in) === '') return true; + if(strlen($in) > 0) return false; + return empty($in); +} + +/** * print a newline terminated string * * You can give an indention as optional parameter @@ -1165,6 +1191,38 @@ function con($pre, $text, $suf, $pretty = false) { } /** + * Checks if the current page version is newer than the last entry in the page's + * changelog. If so, we assume it has been an external edit and we create an + * attic copy and add a proper changelog line. + * + * This check is only executed when the page is about to be saved again from the + * wiki, triggered in @see saveWikiText() + * + * @param string $id the page ID + */ +function detectExternalEdit($id) { + global $lang; + + $file = wikiFN($id); + $old = @filemtime($file); // from page + $pagelog = new PageChangeLog($id, 1024); + $oldRev = $pagelog->getRevisions(-1, 1); // from changelog + $oldRev = (int) (empty($oldRev) ? 0 : $oldRev[0]); + + if(!file_exists(wikiFN($id, $old)) && file_exists($file) && $old >= $oldRev) { + // add old revision to the attic if missing + saveOldRevision($id); + // add a changelog entry if this edit came from outside dokuwiki + if($old > $oldRev) { + addLogEntry($old, $id, DOKU_CHANGE_TYPE_EDIT, $lang['external_edit'], '', array('ExternalEdit'=> true)); + // remove soon to be stale instructions + $cache = new cache_instructions($id, $file); + $cache->removeCache(); + } + } +} + +/** * Saves a wikitext by calling io_writeWikiPage. * Also directs changelog and attic updates. * @@ -1189,77 +1247,72 @@ function saveWikiText($id, $text, $summary, $minor = false) { /* @var Input $INPUT */ global $INPUT; - // ignore if no changes were made - if($text == rawWiki($id, '')) { - return; - } + // prepare data for event + $svdta = array(); + $svdta['id'] = $id; + $svdta['file'] = wikiFN($id); + $svdta['revertFrom'] = $REV; + $svdta['oldRevision'] = @filemtime($svdta['file']); + $svdta['newRevision'] = 0; + $svdta['newContent'] = $text; + $svdta['oldContent'] = rawWiki($id); + $svdta['summary'] = $summary; + $svdta['contentChanged'] = ($svdta['newContent'] != $svdta['oldContent']); + $svdta['changeInfo'] = ''; + $svdta['changeType'] = DOKU_CHANGE_TYPE_EDIT; - $file = wikiFN($id); - $old = @filemtime($file); // from page - $wasRemoved = (trim($text) == ''); // check for empty or whitespace only - $wasCreated = !file_exists($file); - $wasReverted = ($REV == true); - $pagelog = new PageChangeLog($id, 1024); - $newRev = false; - $oldRev = $pagelog->getRevisions(-1, 1); // from changelog - $oldRev = (int) (empty($oldRev) ? 0 : $oldRev[0]); - if(!file_exists(wikiFN($id, $old)) && file_exists($file) && $old >= $oldRev) { - // add old revision to the attic if missing - saveOldRevision($id); - // add a changelog entry if this edit came from outside dokuwiki - if($old > $oldRev) { - addLogEntry($old, $id, DOKU_CHANGE_TYPE_EDIT, $lang['external_edit'], '', array('ExternalEdit'=> true)); - // remove soon to be stale instructions - $cache = new cache_instructions($id, $file); - $cache->removeCache(); - } + // select changelog line type + if($REV) { + $svdta['changeType'] = DOKU_CHANGE_TYPE_REVERT; + $svdta['changeInfo'] = $REV; + } else if(!file_exists($svdta['file'])) { + $svdta['changeType'] = DOKU_CHANGE_TYPE_CREATE; + } else if(trim($text) == '') { + // empty or whitespace only content deletes + $svdta['changeType'] = DOKU_CHANGE_TYPE_DELETE; + // autoset summary on deletion + if(blank($svdta['summary'])) $svdta['summary'] = $lang['deleted']; + } else if($minor && $conf['useacl'] && $INPUT->server->str('REMOTE_USER')) { + //minor edits only for logged in users + $svdta['changeType'] = DOKU_CHANGE_TYPE_MINOR_EDIT; } - if($wasRemoved) { + $event = new Doku_Event('COMMON_WIKIPAGE_SAVE', $svdta); + if(!$event->advise_before()) return; + + // if the content has not been changed, no save happens (plugins may override this) + if(!$svdta['contentChanged']) return; + + detectExternalEdit($id); + if($svdta['changeType'] == DOKU_CHANGE_TYPE_DELETE) { // Send "update" event with empty data, so plugins can react to page deletion - $data = array(array($file, '', false), getNS($id), noNS($id), false); + $data = array(array($svdta['file'], '', false), getNS($id), noNS($id), false); trigger_event('IO_WIKIPAGE_WRITE', $data); // pre-save deleted revision - @touch($file); + @touch($svdta['file']); clearstatcache(); - $newRev = saveOldRevision($id); + $data['newRevision'] = saveOldRevision($id); // remove empty file - @unlink($file); + @unlink($svdta['file']); // don't remove old meta info as it should be saved, plugins can use IO_WIKIPAGE_WRITE for removing their metadata... // purge non-persistant meta data p_purge_metadata($id); - $del = true; - // autoset summary on deletion - if(empty($summary)) $summary = $lang['deleted']; // remove empty namespaces io_sweepNS($id, 'datadir'); io_sweepNS($id, 'mediadir'); } else { // save file (namespace dir is created in io_writeWikiPage) - io_writeWikiPage($file, $text, $id); + io_writeWikiPage($svdta['file'], $text, $id); // pre-save the revision, to keep the attic in sync - $newRev = saveOldRevision($id); - $del = false; + $svdta['newRevision'] = saveOldRevision($id); } - // select changelog line type - $extra = ''; - $type = DOKU_CHANGE_TYPE_EDIT; - if($wasReverted) { - $type = DOKU_CHANGE_TYPE_REVERT; - $extra = $REV; - } else if($wasCreated) { - $type = DOKU_CHANGE_TYPE_CREATE; - } else if($wasRemoved) { - $type = DOKU_CHANGE_TYPE_DELETE; - } else if($minor && $conf['useacl'] && $INPUT->server->str('REMOTE_USER')) { - $type = DOKU_CHANGE_TYPE_MINOR_EDIT; - } //minor edits only for logged in users + $event->advise_after(); - addLogEntry($newRev, $id, $type, $summary, $extra); + addLogEntry($svdta['newRevision'], $svdta['id'], $svdta['changeType'], $svdta['summary'], $svdta['changeInfo']); // send notify mails - notify($id, 'admin', $old, $summary, $minor); - notify($id, 'subscribers', $old, $summary, $minor); + notify($svdta['id'], 'admin', $svdta['oldRevision'], $svdta['summary'], $minor); + notify($svdta['id'], 'subscribers', $svdta['oldRevision'], $svdta['summary'], $minor); // update the purgefile (timestamp of the last time anything within the wiki was changed) io_saveFile($conf['cachedir'].'/purgefile', time()); @@ -1793,6 +1846,8 @@ function is_mem_available($mem, $bytes = 1048576) { * @param string $url url being directed to */ function send_redirect($url) { + $url = stripctl($url); // defend against HTTP Response Splitting + /* @var Input $INPUT */ global $INPUT; diff --git a/inc/fulltext.php b/inc/fulltext.php index d6cddc566..a727a8b53 100644 --- a/inc/fulltext.php +++ b/inc/fulltext.php @@ -701,7 +701,7 @@ function ft_queryParser($Indexer, $query){ if (preg_match($ope_regex, $token)) { // operator $last_ope = end($ope_stack); - while ($ope_precedence[$token] <= $ope_precedence[$last_ope] && $last_ope != '(') { + while ($last_ope !== false && $ope_precedence[$token] <= $ope_precedence[$last_ope] && $last_ope != '(') { $parsed_ary[] = array_pop($ope_stack); $last_ope = end($ope_stack); } diff --git a/inc/html.php b/inc/html.php index d768022ec..c3cc66aa9 100644 --- a/inc/html.php +++ b/inc/html.php @@ -74,7 +74,7 @@ function html_login(){ function html_denied() { print p_locale_xhtml('denied'); - if(!$_SERVER['REMOTE_USER']){ + if(empty($_SERVER['REMOTE_USER'])){ html_login(); } } @@ -226,8 +226,7 @@ function html_btn($name, $id, $akey, $params, $method='get', $tooltip='', $label $tip .= ' ['.strtoupper($akey).']'; $ret .= 'accesskey="'.$akey.'" '; } - $ret .= 'title="'.$tip.'" '; - $ret .= '/>'; + $ret .= 'title="'.$tip.'">'; $ret .= hsc($label); $ret .= '</button>'; $ret .= '</div></form>'; @@ -897,10 +896,9 @@ function html_index($ns){ global $conf; global $ID; $ns = cleanID($ns); - #fixme use appropriate function if(empty($ns)){ - $ns = dirname(str_replace(':','/',$ID)); - if($ns == '.') $ns =''; + $ns = getNS($ID); + if($ns === false) $ns =''; } $ns = utf8_encodeFN(str_replace(':','/',$ns)); diff --git a/inc/httputils.php b/inc/httputils.php index ac79aa176..c365f4f5c 100644 --- a/inc/httputils.php +++ b/inc/httputils.php @@ -197,6 +197,8 @@ function http_rangeRequest($fh,$size,$mime){ * @return bool */ function http_gzip_valid($uncompressed_file) { + if(!DOKU_HAS_GZIP) return false; + $gzip = $uncompressed_file.'.gz'; if (filemtime($gzip) < filemtime($uncompressed_file)) { // filemtime returns false (0) if file doesn't exist return copy($uncompressed_file, 'compress.zlib://'.$gzip); @@ -252,10 +254,10 @@ function http_cached_finish($file, $content) { // save cache file io_saveFile($file, $content); - if(function_exists('gzopen')) io_saveFile("$file.gz",$content); + if(DOKU_HAS_GZIP) io_saveFile("$file.gz",$content); // finally send output - if ($conf['gzip_output']) { + if ($conf['gzip_output'] && DOKU_HAS_GZIP) { header('Vary: Accept-Encoding'); header('Content-Encoding: gzip'); print gzencode($content,9,FORCE_GZIP); diff --git a/inc/init.php b/inc/init.php index 6d271dfb0..c7a179489 100644 --- a/inc/init.php +++ b/inc/init.php @@ -195,10 +195,12 @@ require_once(DOKU_INC.'vendor/autoload.php'); require_once(DOKU_INC.'inc/load.php'); // disable gzip if not available -if($conf['compression'] == 'bz2' && !function_exists('bzopen')){ +define('DOKU_HAS_BZIP', function_exists('bzopen')); +define('DOKU_HAS_GZIP', function_exists('gzopen')); +if($conf['compression'] == 'bz2' && !DOKU_HAS_BZIP) { $conf['compression'] = 'gz'; } -if($conf['compression'] == 'gz' && !function_exists('gzopen')){ +if($conf['compression'] == 'gz' && !DOKU_HAS_GZIP) { $conf['compression'] = 0; } diff --git a/inc/io.php b/inc/io.php index 704c5b1a6..066030c89 100644 --- a/inc/io.php +++ b/inc/io.php @@ -107,9 +107,11 @@ function io_readFile($file,$clean=true){ $ret = ''; if(file_exists($file)){ if(substr($file,-3) == '.gz'){ + if(!DOKU_HAS_GZIP) return false; $ret = gzfile($file); if(is_array($ret)) $ret = join('', $ret); }else if(substr($file,-4) == '.bz2'){ + if(!DOKU_HAS_BZIP) return false; $ret = bzfile($file); }else{ $ret = file_get_contents($file); @@ -222,11 +224,13 @@ function _io_saveFile($file, $content, $append) { $fileexists = file_exists($file); if(substr($file,-3) == '.gz'){ + if(!DOKU_HAS_GZIP) return false; $fh = @gzopen($file,$mode.'9'); if(!$fh) return false; gzwrite($fh, $content); gzclose($fh); }else if(substr($file,-4) == '.bz2'){ + if(!DOKU_HAS_BZIP) return false; if($append) { $bzcontent = bzfile($file); if($bzcontent === false) return false; @@ -313,8 +317,10 @@ function io_replaceInFile($file, $oldline, $newline, $regex=false, $maxlines=0) // load into array if(substr($file,-3) == '.gz'){ + if(!DOKU_HAS_GZIP) return false; $lines = gzfile($file); }else if(substr($file,-4) == '.bz2'){ + if(!DOKU_HAS_BZIP) return false; $lines = bzfile($file, true); }else{ $lines = file($file); diff --git a/inc/lang/.htaccess b/inc/lang/.htaccess index 2d69be754..2aaae02fd 100644 --- a/inc/lang/.htaccess +++ b/inc/lang/.htaccess @@ -1,3 +1,8 @@ ## no access to the lang directory -order allow,deny -deny from all +<IfModule mod_authz_host> + Require all denied +</IfModule> +<IfModule !mod_authz_host> + Order allow,deny + Deny from all +</IfModule> diff --git a/inc/lang/cs/admin.txt b/inc/lang/cs/admin.txt index ccfbc4455..df7c5b61c 100644 --- a/inc/lang/cs/admin.txt +++ b/inc/lang/cs/admin.txt @@ -1,3 +1,3 @@ ====== Správa ====== -Níže je možno spravovat vaši DokuWiki. +Níže je možno spravovat vaší DokuWiki. diff --git a/inc/lang/cy/admin.txt b/inc/lang/cy/admin.txt new file mode 100644 index 000000000..75485fcf2 --- /dev/null +++ b/inc/lang/cy/admin.txt @@ -0,0 +1,4 @@ +====== Gweinyddu ====== + +Gallwch chi ddarganfod rhestr o dasgau gweinyddol ar gael mewn DokuWiki, isod. + diff --git a/inc/lang/cy/adminplugins.txt b/inc/lang/cy/adminplugins.txt new file mode 100644 index 000000000..ff21264fd --- /dev/null +++ b/inc/lang/cy/adminplugins.txt @@ -0,0 +1,2 @@ +===== Ategion Ychwanegol ===== + diff --git a/inc/lang/cy/backlinks.txt b/inc/lang/cy/backlinks.txt new file mode 100644 index 000000000..2180e5503 --- /dev/null +++ b/inc/lang/cy/backlinks.txt @@ -0,0 +1,4 @@ +====== Olgysylltiadau ====== + +Dyma restr o dudalennau sy'n ymddangos eu bod nhw'n cysylltu'n ôl i'r dudalen gyfredol. + diff --git a/inc/lang/cy/conflict.txt b/inc/lang/cy/conflict.txt new file mode 100644 index 000000000..133e863e5 --- /dev/null +++ b/inc/lang/cy/conflict.txt @@ -0,0 +1,6 @@ +====== Mae fersiwn mwy diweddar yn bodoli ====== + +Mae fersiwn mwy diweddar o'r ddogfen a wnaethoch chi olygu yn bodoli. Bydd hwn yn digwydd pan fydd defnyddiwr arall yn newid y ddogfen wrth i chi'n ei golygu hi. + +Archwiliwch y gwahaniaethau isod yn drylwyr, yna penderfynnwch pa fersiwn i'w gadw. Os ydych chi'n dewis ''cadw'', caiff eich fersiwn chi ei gadw. Pwyswch ''canslo'' i gadw'r fersiwn cyfredol. + diff --git a/inc/lang/cy/denied.txt b/inc/lang/cy/denied.txt new file mode 100644 index 000000000..2c0eb001c --- /dev/null +++ b/inc/lang/cy/denied.txt @@ -0,0 +1,4 @@ +====== Gwrthodwyd Hawl ====== + +Sori, 'sdim hawliau digonol 'da chi i barhau. + diff --git a/inc/lang/cy/diff.txt b/inc/lang/cy/diff.txt new file mode 100644 index 000000000..69a9ff688 --- /dev/null +++ b/inc/lang/cy/diff.txt @@ -0,0 +1,4 @@ +====== Gwahaniaethau ====== + +Mae hwn yn dangos y gwahaniaethau rhwng dau fersiwn y dudalen. + diff --git a/inc/lang/cy/draft.txt b/inc/lang/cy/draft.txt new file mode 100644 index 000000000..3b10c511e --- /dev/null +++ b/inc/lang/cy/draft.txt @@ -0,0 +1,8 @@ +====== Ffeil ddrafft wedi'i darganfod ====== + +Doedd eich sesiwn golygu ddiwethaf heb gwblhau'n gywir. Gwnaeth DokuWiki gadw copi ddrafft yn awtomatig wrth i chi weithio, sydd nawr ar gael i chi er mwyn parhau gyda'ch golygu. Gallwch chi weld y data a gafodd ei gadw o'ch sesiwn diwethaf isod. + +Penderfynwch os ydych chi am //adennill// eich sesiwn golygu goll, //dileu//'r drafft awtogadw neu //canslo//'r broses olygu. + + + diff --git a/inc/lang/cy/edit.txt b/inc/lang/cy/edit.txt new file mode 100644 index 000000000..7e2d899ef --- /dev/null +++ b/inc/lang/cy/edit.txt @@ -0,0 +1,2 @@ +Golygwch y dudalen a phwyso ''Cadw''. Gweler [[wiki:syntax]] ar gyfer cystrawen Wici. Golygwch y dudalen hon dim ond os ydych chi'n gallu ei **gwella** hi. Os ydych chi am brofi pethau, cymerwch eich camau cyntaf ar y [[playground:playground|maes chwarae]]. + diff --git a/inc/lang/cy/editrev.txt b/inc/lang/cy/editrev.txt new file mode 100644 index 000000000..5d32e9a68 --- /dev/null +++ b/inc/lang/cy/editrev.txt @@ -0,0 +1,2 @@ +**Rydych chi wedi llwytho hen adolygiad y ddogfen!** Os ydych chi'n ei chadw hi, byddwch chi'n creu fersiwn newydd gyda'r data hwn. +---- diff --git a/inc/lang/cy/index.txt b/inc/lang/cy/index.txt new file mode 100644 index 000000000..607a2f695 --- /dev/null +++ b/inc/lang/cy/index.txt @@ -0,0 +1,4 @@ +====== Map safle ====== + +Dyma fap safle o bob tudalen sydd ar gael, wedi'u trefnu gan [[doku>namespaces|namespaces]]. + diff --git a/inc/lang/cy/install.html b/inc/lang/cy/install.html new file mode 100644 index 000000000..406c7b456 --- /dev/null +++ b/inc/lang/cy/install.html @@ -0,0 +1,24 @@ +<p>Mae'r dudalen hon yn eich helpu chi i arsefydlu am y tro cyntaf a gyda ffurfweddu +<a href="http://dokuwiki.org">Dokuwiki</a>. Mae mwy o wybodaeth ar yr arsefydlwr hwn +ar <a href="http://dokuwiki.org/installer">dudalen ddogfennaeth</a> ei hun.</p> + +<p>Mae DokuWiki yn defnyddio ffeiliau arferol ar gyfer storio tudalennau wici a +gwybodaeth gysylltiol gyda'r tudalennau hynny (e.e. delweddau, indecsau chwilio, +hen adolygiadau, ac ati). Er mwyn gweithredu'n llwyddiannus mae'n +<strong>rhaid</strong> i DokuWiki gael yr hawl i ysgrifennu i'r ffolderi sydd yn +dal y ffeiliau hynny. 'Dyw'r arsefydlwr hwn ddim yn gallu gosod hawliau ffolderi. +Bydd hwn, fel rheol, yn gorfod cael ei wneud yn uniongyrchol gydag anogwr gorchymyn, +neu os ydych chi'n defnyddio gwesteiwr, drwy FTP neu eich panel gwesteio (e.e. +cPanel).</p> + +<p>Bydd yr arsefydlwr hwn yn gosod eich ffurfwedd DokuWiki ar gyfer +<abbr title="access control list">ACL</abbr>, sydd yn ei dro yn caniatáu +mewngofnodi gweinyddwr a mynediad i ddewislen gweinyddu DokuWiki ar gyfer arsefydlu +ategion, rheoli defnyddwyr, rheoli mynediad i dudalennau wici a newid gosodiadau +ffurfwedd. 'Sdim angen hwn ar DokuWiki er mwyn gweithio, ond bydd yn gwneud +Dokuwiki yn haws i'w weinyddu.</p> + +<p>Dylai defnyddwyr profiadol neu'r rheiny gydag anghenion gosodiad rrbennig special +ddefnyddio'r dolenni hyn am wybodaeth parthed +<a href="http://dokuwiki.org/install">canllawiau arsefydlu</a> +and <a href="http://dokuwiki.org/config">gosodiadau ffurfwedd</a>.</p> diff --git a/inc/lang/cy/jquery.ui.datepicker.js b/inc/lang/cy/jquery.ui.datepicker.js new file mode 100644 index 000000000..254eedab2 --- /dev/null +++ b/inc/lang/cy/jquery.ui.datepicker.js @@ -0,0 +1,37 @@ +/* Danish initialisation for the jQuery UI date picker plugin. */ + +(function( factory ) { + if ( typeof define === "function" && define.amd ) { + + // AMD. Register as an anonymous module. + define([ "../datepicker" ], factory ); + } else { + + // Browser globals + factory( jQuery.datepicker ); + } +}(function( datepicker ) { + +datepicker.regional['cy'] = { + closeText: 'Cau', + prevText: '<', + nextText: '>', + currentText: 'Heddiw', + monthNames: ['Ionawr','Chwefror','Mawrth','Ebrill','Mai','Mehefin', + 'Gorffennaf','Awst','Medi','Hydref','Tachwedd','Rhagfyr'], + monthNamesShort: ['Ion','Chw','Maw','Ebr','Mai','Meh', + 'Gor','Aws','Med','Hyd','Tac','Rha'], + dayNames: ['Dydd Sul','Dydd Llun','Dydd Mawrth','Dydd Mercher','Dydd Iau','Dydd Gwener','Dydd Sadwrn'], + dayNamesShort: ['Sul','Llu','Maw','Mer','Iau','Gwe','Sad'], + dayNamesMin: ['Su','Ll','Ma','Me','Ia','Gw','Sa'], + weekHeader: 'Wyth', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['cy']); + +return datepicker.regional['cy']; + +})); diff --git a/inc/lang/cy/lang.php b/inc/lang/cy/lang.php new file mode 100644 index 000000000..7018e0071 --- /dev/null +++ b/inc/lang/cy/lang.php @@ -0,0 +1,373 @@ +<?php +/** + * welsh language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Andreas Gohr <andi@splitbrain.org> + * @author Anika Henke <anika@selfthinker.org> + * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> + * @author Matthias Schulte <mailinglist@lupo49.de> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ +$lang['encoding'] = 'utf-8'; +$lang['direction'] = 'ltr'; +$lang['doublequoteopening'] = '“'; //“ +$lang['doublequoteclosing'] = '”'; //” +$lang['singlequoteopening'] = '‘'; //‘ +$lang['singlequoteclosing'] = '’'; //’ +$lang['apostrophe'] = '’'; //’ + +$lang['btn_edit'] = 'Golygu\'r dudaen hon'; +$lang['btn_source'] = 'Dangos y ffynhonnell'; +$lang['btn_show'] = 'Dangos y dudalen'; +$lang['btn_create'] = 'Creu\'r dudalen'; +$lang['btn_search'] = 'Chwilio'; +$lang['btn_save'] = 'Cadw'; +$lang['btn_preview'] = 'Rhagolwg'; +$lang['btn_top'] = 'Nôl i\'r brig'; +$lang['btn_newer'] = '<< mwy diweddar'; +$lang['btn_older'] = 'llai diweddar >>'; +$lang['btn_revs'] = 'Hen adolygiadau'; +$lang['btn_recent'] = 'Newidiadau Diweddar'; +$lang['btn_upload'] = 'Lanlwytho'; +$lang['btn_cancel'] = 'Canslo'; +$lang['btn_index'] = 'Safle map'; +$lang['btn_secedit'] = 'Golygu'; +$lang['btn_login'] = 'Mewngofnodi'; +$lang['btn_logout'] = 'Allgofnodi'; +$lang['btn_admin'] = 'Gweinyddu'; +$lang['btn_update'] = 'Diweddaru'; +$lang['btn_delete'] = 'Dileu'; +$lang['btn_back'] = 'Nôl'; +$lang['btn_backlink'] = 'Olgysylltiadau'; +$lang['btn_subscribe'] = 'Rheoli Tanysgrifiadau'; +$lang['btn_profile'] = 'Diweddaru Proffil'; +$lang['btn_reset'] = 'Ailosod'; +$lang['btn_resendpwd'] = 'Gosod cyfrinair newydd'; +$lang['btn_draft'] = 'Golygu drafft'; +$lang['btn_recover'] = 'Adennill drafft'; +$lang['btn_draftdel'] = 'Dileu drafft'; +$lang['btn_revert'] = 'Adfer'; +$lang['btn_register'] = 'Cofrestru'; +$lang['btn_apply'] = 'Gosod'; +$lang['btn_media'] = 'Rheolwr Cyfrwng'; +$lang['btn_deleteuser'] = 'Tynnu Fy Nghyfrif'; +$lang['btn_img_backto'] = 'Nôl i %s'; +$lang['btn_mediaManager'] = 'Dangos mewn rheolwr cyfrwng'; + +$lang['loggedinas'] = 'Mewngofnodwyd fel:'; +$lang['user'] = 'Defnyddair'; +$lang['pass'] = 'Cyfrinair'; +$lang['newpass'] = 'Cyfrinair newydd'; +$lang['oldpass'] = 'Cadarnhau cyfrinair cyfredol'; +$lang['passchk'] = 'unwaith eto'; +$lang['remember'] = 'Cofio fi'; +$lang['fullname'] = 'Enw go iawn'; +$lang['email'] = 'E-Bost'; +$lang['profile'] = 'Proffil Defnyddiwr'; +$lang['badlogin'] = 'Sori, roedd y defnyddair neu\'r gyfriair yn anghywir.'; +$lang['badpassconfirm'] = 'Sori, roedd y cyfrinair yn anghywir'; +$lang['minoredit'] = 'Newidiadau Bach'; +$lang['draftdate'] = 'Awtogadwyd drafft ar'; // full dformat date will be added +$lang['nosecedit'] = 'Newidiwyd y dudaen yn y cyfamser, roedd gwybodaeth yr adran wedi dyddio, felly llwythwyd y dudalen gyfan.'; +$lang['searchcreatepage'] = 'Os na wnaethoch chi ddod o hyd i\'r hyn roeddech chi am ddarganfod, gallwch chi greu neu golygu\'r dudalen wedi\'i henwi ar ôl eich ymholiad gyda\'r teclyn priodol.'; + +$lang['regmissing'] = 'Sori, llenwch bob maes.'; +$lang['reguexists'] = 'Sori, mae defnyddiwr â\'r enw hwn yn bodoli eisoes.'; +$lang['regsuccess'] = 'Cafodd y defnyddiwr ei greu a chafodd y cyfrinair ei anfon gan ebost.'; +$lang['regsuccess2'] = 'Cafodd y defnyddiwr ei greu.'; +$lang['regfail'] = 'Doedd dim modd creu\'r defnyddiwr.'; +$lang['regmailfail'] = 'Mae\'n debyg roedd gwall wrth anfon y post cyfrinair. Cysylltwch â\'r gweinyddwr!'; +$lang['regbadmail'] = 'Mae\'r cyfeiriad ebost a gyflwynoch chi\'n edrych yn annilys - os ydych chi\'n credu ei fod yn gywir, cysylltwch â\'r gweinyddwr'; +$lang['regbadpass'] = '\'Dyw\'r ddau gyfrinair ddim yn unfath, ceisiwch eto.'; +$lang['regpwmail'] = 'Eich cyfrinair DokuWiki'; +$lang['reghere'] = '\'Sdim cyfrif \'da chi eto? Cewch afael yn un nawr'; + +$lang['profna'] = '\'Dyw\'r wici hwn ddim yn caniatáu newid eich proffil'; +$lang['profnochange'] = 'Dim newidiadau, dim i\'w wneud.'; +$lang['profnoempty'] = '\'Sdim modd gadael eich enw neu\'ch cyfeiriad ebost chi\'n wag.'; +$lang['profchanged'] = 'Diweddarwyd eich proffil defnyddiwr yn llwyddiannus.'; +$lang['profnodelete'] = '\'Dyw\'r wici hwn ddim yn caniatáu dileu defnyddwyr'; +$lang['profdeleteuser'] = 'Dileu Cyfrif'; +$lang['profdeleted'] = 'Cafodd eich cyfrif defnyddiwr chi ei ddileu o\'r wiki hwn'; +$lang['profconfdelete'] = '\'Dwi eisiau tynnu fy nghyfrif oddi ar y wici hwn. <br/> \'Sdim modd dadwneud hyn.'; +$lang['profconfdeletemissing'] = 'Blwch gwirio heb ei dicio'; +$lang['proffail'] = 'Proffil defnyddiwr heb ei ddiweddaru.'; + +$lang['pwdforget'] = 'Anghofio\'ch cyfrinair? Cael gafael ar un newydd'; +$lang['resendna'] = '\'Dyw\'r wici hwn ddim yn caniatáu ailanfon cyfrineiriau.'; +$lang['resendpwd'] = 'Gosod cyfrinair newydd ar gyfer'; +$lang['resendpwdmissing'] = 'Sori, mae\'n rhaid llenwi pob maes.'; +$lang['resendpwdnouser'] = 'Sori, \'dyn ni ddim yn gallu darganfod y defnyddiwr hwn yn ein databas ni.'; +$lang['resendpwdbadauth'] = 'Sori, \'dyw\'r cod dilysu hwn ddim yn ddilys. Sicrhewch eich bod chi wedi defnyddio\'r ddolen gadarnhau gyfan.'; +$lang['resendpwdconfirm'] = 'Cafodd ddolen gadarnhau ei hanfon gan ebost.'; +$lang['resendpwdsuccess'] = 'Cafodd eich cyfrinair newydd chi ei anfon gan ebost.'; + +$lang['license'] = 'Heb law bod datganiad i\'r gwrthwyneb, mae cynnwys y wici hwn o dan y drwydded ganlynol:'; +$lang['licenseok'] = 'Sylwir: Gan olygu\'r dudalen hon rydych chi\'n cytuno i drwyddedu\'ch cynnwys chi o dan y drwydded ganlynol:'; + +$lang['searchmedia'] = 'Chwilio enw ffeil:'; +$lang['searchmedia_in'] = 'Chwilio mewn %s'; +$lang['txt_upload'] = 'Dewis ffeil i\'w lanlwytho:'; +$lang['txt_filename'] = 'Upload as (optional):'; +$lang['txt_overwrt'] = 'Trosysgrifo ffeil sy\'n bodoli'; +$lang['maxuploadsize'] = 'Lanlwytho uchanfswm %s y ffeil.'; +$lang['lockedby'] = 'Clowyd yn bresennol gan:'; +$lang['lockexpire'] = 'Clo\'n dod i ben ar:'; + +$lang['js']['willexpire'] = 'Mae\'ch clo ar gyfer golygu\'r dudalen hon yn mynd i ddod i ben mewn munud.\nEr mwyn osgoi gwrthdrawiadau defnyddiwch y botwm rhagolwg i ailosod amserydd y clo.'; +$lang['js']['notsavedyet'] = 'Caiff newidiadau heb gadw eu colli.'; +$lang['js']['searchmedia'] = 'Chwilio am ffeiliau'; +$lang['js']['keepopen'] = 'Cadw ffesnestr y dewisiad ar agor'; +$lang['js']['hidedetails'] = 'Cuddio Manylion'; +$lang['js']['mediatitle'] = 'Gosodiadau dolenni'; +$lang['js']['mediadisplay'] = 'Math y ddolen'; +$lang['js']['mediaalign'] = 'Aliniad'; +$lang['js']['mediasize'] = 'Maint y ddelwedd'; +$lang['js']['mediatarget'] = 'Targed y ddolen'; +$lang['js']['mediaclose'] = 'Cau'; +$lang['js']['mediainsert'] = 'Mewnosod'; +$lang['js']['mediadisplayimg'] = 'Dangos y ddelwedd.'; +$lang['js']['mediadisplaylnk'] = 'Dangos y ddolen yn unig.'; +$lang['js']['mediasmall'] = 'Fersiwn bach'; +$lang['js']['mediamedium'] = 'Fersiwn canolig'; +$lang['js']['medialarge'] = 'Fersiwn mawr'; +$lang['js']['mediaoriginal'] = 'Fersiwn gwreiddiol'; +$lang['js']['medialnk'] = 'Cysylltu i dudalen fanylion'; +$lang['js']['mediadirect'] = 'Cysylltiad uniongyrchol i\'r gwreiddiol'; +$lang['js']['medianolnk'] = 'Dim dolen'; +$lang['js']['medianolink'] = 'Peidio cysylltu i\'r dudalen'; +$lang['js']['medialeft'] = 'Alinio\'r ddelwedd i\'r chwith.'; +$lang['js']['mediaright'] = 'Alinio\'r ddelwedd i\'r dde.'; +$lang['js']['mediacenter'] = 'Alinio\'r ddelwedd i\'r canol.'; +$lang['js']['medianoalign'] = 'Peidio alinio.'; +$lang['js']['nosmblinks'] = 'Mae cysylltu gyda Windows shares dim ond yn gweithio gyda Microsoft Internet Explorer.\nGallwch chi gopïo a gludo\'r ddolen hefyd.'; +$lang['js']['linkwiz'] = 'Dewin Dolenni'; +$lang['js']['linkto'] = 'Cysylltu i:'; +$lang['js']['del_confirm'] = 'Gwir ddileu\'r eitem(au) a ddewiswyd?'; +$lang['js']['restore_confirm'] = 'Gwir adfer y fersiwn hwn?'; +$lang['js']['media_diff'] = 'Gweld gwahaniaethau:'; +$lang['js']['media_diff_both'] = 'Ochr wrth Ochr'; +$lang['js']['media_diff_opacity'] = 'Tywynnu-drwodd'; +$lang['js']['media_diff_portions'] = 'Taro'; //Swipe - rhaid bod gwell ateb i hwn +$lang['js']['media_select'] = 'Dewis ffeiliau…'; +$lang['js']['media_upload_btn'] = 'Lanlwytho'; +$lang['js']['media_done_btn'] = 'Gorffen'; +$lang['js']['media_drop'] = 'Gollwng ffeiliau yma i\'w lanlwytho'; +$lang['js']['media_cancel'] = 'tynnu'; +$lang['js']['media_overwrt'] = 'Trosysgrifo ffeiliau sy\'n bodoli'; + +$lang['rssfailed'] = 'Roedd gwall wrth hôl y ffrwd hwn: '; +$lang['nothingfound'] = 'Dim wedi\'i ddarganfod.'; + +$lang['mediaselect'] = 'Ffeiliau Cyfrwng'; +$lang['uploadsucc'] = 'Lanlwythiad llwyddiannus'; +$lang['uploadfail'] = 'Methodd y lanlwythiad. Hawliau anghywir efallai?'; +$lang['uploadwrong'] = 'Gwrthodwyd y lanlwythiad. Gwaherddir yr estyniad ffeil hwn!'; +$lang['uploadexist'] = 'Mae\'r ffeil eisoes yn bodoli. Dim wedi\'i wneud.'; +$lang['uploadbadcontent'] = 'Doedd y cynnwys a lanlwythwyd ddim yn cydweddu ag estyniad ffeil %s.'; +$lang['uploadspam'] = 'Cafodd y lanlwythiad ei flocio gan rhestr wahardd sbam.'; +$lang['uploadxss'] = 'Cafodd y lanlwythiad ei flocio efallai oherwydd cynnwys maleisus.'; +$lang['uploadsize'] = 'Roedd y ffeil a lanlwythwyd yn rhy fawr. (uchaf. %s)'; +$lang['deletesucc'] = 'Cafodd ffeil "%s" ei dileu.'; +$lang['deletefail'] = 'Doedd dim modd dileu "%s" - gwiriwch hawliau.'; +$lang['mediainuse'] = 'Doedd "%s" heb ei dileu - mae\'n cael ei defnyddio ar hyn o bryd.'; +$lang['namespaces'] = 'Namespaces'; //namespace +$lang['mediafiles'] = 'Ffeiliau ar gael mewn'; +$lang['accessdenied'] = '\'Sdim hawl \'da chi weld y dudalen hon.'; +$lang['mediausage'] = 'Defnyddiwch y gystrawen ganlynol i gyfeirio at y ffeil hon:'; +$lang['mediaview'] = 'Dangos y ffeil wreiddiol'; +$lang['mediaroot'] = 'gwraidd'; +$lang['mediaupload'] = 'lanlwythwch ffeil i\'r namespace cyfredol yma. Er mwy creu is-namespace, ychwanegwch nhw o flaen enw\'r ffeil gan eu gwahanu nhw gyda cholonau, ar ôl i chi ddewis y ffeiliau. Gall ffeiliau hefyd eu dewis gan lusgo a gollwng.'; //namespace +$lang['mediaextchange'] = 'Newidiwyd yr estyniad o .%s i .%s!'; +$lang['reference'] = 'Cyfeirnodau ar gyfer'; +$lang['ref_inuse'] = '\'Sdim modd dileu\'r ffeil hon, oherwydd ei bod hi\'n dal yn cael ei defnyddio gan y tudalennau canlynol:'; +$lang['ref_hidden'] = 'Mae rhai cyfeirnodau ar dudalennau \'sdim hawl \'da chi weld'; + +$lang['hits'] = 'Trawiadau'; +$lang['quickhits'] = 'Enw tudalennau\'n cydweddu'; +$lang['toc'] = 'Tabl Cynnwys'; +$lang['current'] = 'cyfredol'; +$lang['yours'] = 'Eich Fersiwn'; +$lang['diff'] = 'Dangos gwahaniaethau i\'r adolygiadau cyfredol'; +$lang['diff2'] = 'Dangos gwahaniaethau rhwng adolygiadau a ddewiswyd'; +$lang['difflink'] = 'Cysylltu i\'r olwg gymharu hon'; +$lang['diff_type'] = 'Dangos gwahaniaethau:'; +$lang['diff_inline'] = 'Mewnlin'; +$lang['diff_side'] = 'Ochr wrth Ochr'; +$lang['diffprevrev'] = 'Adolygiad blaenorol'; +$lang['diffnextrev'] = 'Adolygiad nesaf'; +$lang['difflastrev'] = 'Adolygiad diwethaf'; +$lang['diffbothprevrev'] = 'Dwy ochr yr adolygiad blaenorol'; +$lang['diffbothnextrev'] = 'Dwy ochr yr adolygiad nesaf'; +$lang['line'] = 'Llinell'; +$lang['breadcrumb'] = 'Olrhain:'; +$lang['youarehere'] = 'Rydych chi yma:'; +$lang['lastmod'] = 'Newidiwyd ddiwethaf:'; +$lang['by'] = 'gan'; +$lang['deleted'] = 'tynnwyd'; +$lang['created'] = 'crewyd'; +$lang['restored'] = 'adferwyd hen adolygiad (%s)'; +$lang['external_edit'] = 'golygiad allanol'; +$lang['summary'] = 'Crynodeb golygiad'; +$lang['noflash'] = 'Mae angen <a href="http://www.adobe.com/products/flashplayer/">Ategyn Adobe Flash</a> i ddangos y cynnwys hwn.'; +$lang['download'] = 'Lawrlwytho Darn'; +$lang['tools'] = 'Teclynnau'; +$lang['user_tools'] = 'Teclynnau Defnyddiwr'; +$lang['site_tools'] = 'Teclynnau Safle'; +$lang['page_tools'] = 'Teclynnau Tudalennau'; +$lang['skip_to_content'] = 'nedio i\'r cynnwys'; +$lang['sidebar'] = 'Bar ochr'; + +$lang['mail_newpage'] = 'ychwanegwyd tudalen:'; +$lang['mail_changed'] = 'newidiwyd tudalen:'; +$lang['mail_subscribe_list'] = 'newidiwyd tudalennau mewn namespace:'; //namespace +$lang['mail_new_user'] = 'defnyddiwr newydd:'; +$lang['mail_upload'] = 'lanlwythwyd ffeil:'; + +$lang['changes_type'] = 'Dangos newidiadau mewn'; +$lang['pages_changes'] = 'Tudalennau'; +$lang['media_changes'] = 'Ffeiliau cyfrwng'; +$lang['both_changes'] = 'Tudalennau a ffeiliau cyfrwng'; + +$lang['qb_bold'] = 'Testun Bras'; +$lang['qb_italic'] = 'Testun Italig'; +$lang['qb_underl'] = 'Testun wedi\'i Danlinellu'; +$lang['qb_code'] = 'Testun Unbylchog'; +$lang['qb_strike'] = 'Testun Llinell Drwodd'; +$lang['qb_h1'] = 'Pennawd Lefel 1'; +$lang['qb_h2'] = 'Pennawd Lefel 2'; +$lang['qb_h3'] = 'Pennawd Lefel 3'; +$lang['qb_h4'] = 'Pennawd Lefel 4'; +$lang['qb_h5'] = 'Pennawd Lefel 5'; +$lang['qb_h'] = 'Pennawd'; +$lang['qb_hs'] = 'Dewis Pennawd'; +$lang['qb_hplus'] = 'Pennawd Uwch'; +$lang['qb_hminus'] = 'Pennawd Is'; +$lang['qb_hequal'] = 'Pennawd yr un Lefel'; +$lang['qb_link'] = 'Dolen fewnol'; +$lang['qb_extlink'] = 'Dolen allanol'; +$lang['qb_hr'] = 'Llinell Lorweddol'; +$lang['qb_ol'] = 'Eitem Rhestr Drefnedig'; +$lang['qb_ul'] = 'Eitem Rhestr Rifol'; +$lang['qb_media'] = 'Ychwanegu Delweddau a ffeiliau eraill (agor mewn ffenestr newydd)'; +$lang['qb_sig'] = 'Mewnosod Llofnod'; +$lang['qb_smileys'] = 'Gwenogluniau'; +$lang['qb_chars'] = 'Nodau Arbennig'; + +$lang['upperns'] = 'neidio i namespace uwch'; //namespace + +$lang['metaedit'] = 'Golygu Metadata'; +$lang['metasaveerr'] = 'Methwyd ysgrifennu metadata'; +$lang['metasaveok'] = 'Cadwyd y metadata'; +$lang['img_title'] = 'Teitl:'; +$lang['img_caption'] = 'Egluryn:'; +$lang['img_date'] = 'Dyddiad:'; +$lang['img_fname'] = 'Enw ffeil:'; +$lang['img_fsize'] = 'Maint:'; +$lang['img_artist'] = 'Ffotograffydd:'; +$lang['img_copyr'] = 'Hawlfraint:'; +$lang['img_format'] = 'Fformat:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Allweddeiriau:'; +$lang['img_width'] = 'Lled:'; +$lang['img_height'] = 'Uchder:'; + +$lang['subscr_subscribe_success'] = 'Ychwanegwyd %s i\'r rhestr danysgrifio ar gyfer %s'; +$lang['subscr_subscribe_error'] = 'Gwall wrth ychwanegu %s i\'r rhestr danysgrifio ar gyfer %s'; +$lang['subscr_subscribe_noaddress'] = '\'Sdim cyfeiriad wedi\'i gysylltu gyda\'ch defnyddair, felly \'sdim modd eich ychwanegu chi i\'r rhestr danysgrifio'; +$lang['subscr_unsubscribe_success'] = 'Tynnwyd %s o\'r rhestr danysgrifio ar gyfer %s'; +$lang['subscr_unsubscribe_error'] = 'Roedd gwall wrth dynnu %s o\'r rhestr danysgrfio ar gyfer %s'; +$lang['subscr_already_subscribed'] = 'Mae %s eisoes wedi tanysgrifio i %s'; +$lang['subscr_not_subscribed'] = '\'Dyw %s heb danysgrifio i %s'; +// Manage page for subscriptions +$lang['subscr_m_not_subscribed'] = '\'Dych chi heb danysgrifio i\'r dudalen gyfredol neu\'r namespace, yn bresennol.'; //namespace +$lang['subscr_m_new_header'] = 'Ychwanegu tanysgrifiad'; +$lang['subscr_m_current_header'] = 'Tanysgrifiadau cyfredol'; +$lang['subscr_m_unsubscribe'] = 'Tynnu tanysgrifiad'; +$lang['subscr_m_subscribe'] = 'Tanysgrifio'; +$lang['subscr_m_receive'] = 'Derbyn'; +$lang['subscr_style_every'] = 'ebost ar bob newid'; +$lang['subscr_style_digest'] = 'ebost cryno o\'r newidiadau ar bob tudalen (pob %.2f diwrnod)'; +$lang['subscr_style_list'] = 'rhestr o dudalennau a newidiwyd ers yr ebost diwethaf (pob %.2f diwrnod)'; + +/* auth.class language support */ +$lang['authtempfail'] = '\'Dyw dilysiad defnyddiwr ddim ar gael yn bresennol (dros dro). Os ydy\'r sefyllfa\'n parhau, cysylltwch â gweinyddwr y wici.'; + +/* installer strings */ +$lang['i_chooselang'] = 'Dewiswch eich iaith'; +$lang['i_installer'] = 'Arsefydlwr DokuWiki'; +$lang['i_wikiname'] = 'Enw Wici'; +$lang['i_enableacl'] = 'Galluogi ACL (awgrymwyd)'; +$lang['i_superuser'] = 'Uwchddefnyddiwr'; +$lang['i_problems'] = 'Gwnaeth yr arsefydlwr ddod o hyd i broblemau, isod. \'Sdim modd parhau nes i chi eu datrys nhw.'; +$lang['i_modified'] = 'Oherwydd rhesymau diogelwch, bydd y sgript hwn dim ond yn gweithio gydag arsefydliad DokuWiki newydd sydd heb ei newid. + Dylech chi naill ai ail-echdynnu\'r ffeiliau o\'r pecyn a lawrlwythwyd neu porwch dros y + <a href="http://dokuwiki.org/install">canllawiau arsefydylu Dokuwiki</a> cyfan'; +$lang['i_funcna'] = 'Swyddogaeth PHP <code>%s</code> ddim ar gael. Posib bod eich gwesteiwr wedi\'i hanalluogi am ryw reswm?'; +$lang['i_phpver'] = 'Mae\'ch fersiwn PHP <code>%s</code> yn is na\'r hyn sydd ei angen <code>%s</code>. Mae angen i chi ddiweddaru eich arsefydliad PHP.'; +$lang['i_mbfuncoverload'] = 'Mae\'n rhaid analluogi mbstring.func_overload mewn php.ini er mwyn rhedeg DokuWiki.'; +$lang['i_permfail'] = '\'Dyw DokuWiki ddim yn gallu ysgrifennu i <code>%s</code>. Mae angen newid gosodiadau hawliau ar gyfer y ffolder hwn!'; +$lang['i_confexists'] = 'Mae <code>%s</code> eisoes yn bodoli'; +$lang['i_writeerr'] = 'Methu creu <code>%s</code>. Bydd angen i chi wirio hawliau ffolder/ffeil a chreu\'r ffeil gan law.'; +$lang['i_badhash'] = 'dokuwiki.php heb ei adnabod neu wedi\'i newid (hash=<code>%s</code>)'; +$lang['i_badval'] = '<code>%s</code> - gwerth anghyfreithlon neu wag'; +$lang['i_success'] = 'Gorffennodd y ffurfwedd yn llwyddiannus. Gallwch chi ddileu\'r ffeil install.php nawr. Ewch + <a href="doku.php?id=wiki:welcome">i\'ch DokuWiki newydd</a>.'; +$lang['i_failure'] = 'Ymddangosodd gwallau wrth ysgrifennu\'r ffeiliau ffurfwedd. Bydd angen i chi eu cywiro + nhw gan law cyn gallwch chi ddefnyddio\'ch <a href="doku.php?id=wiki:welcome">DokuWiki newydd</a>.'; +$lang['i_policy'] = 'Polisi ACL cychwynnol'; +$lang['i_pol0'] = 'Wici Agored (darllen, ysgrifennu, lanlwytho i bawb)'; +$lang['i_pol1'] = 'Wici Cyhoeddus (darllen i bawb, ysgrifennu a lanlwytho i ddefnyddwyr cofrestredig)'; +$lang['i_pol2'] = 'Wici Caeedig (darllen, ysgrifennu, lanlwytho i ddefnyddwyr cofrestredig yn unig)'; +$lang['i_allowreg'] = 'Caniatáu defnyddwyr i gofrestru eu hunain'; +$lang['i_retry'] = 'Ailgeisio'; +$lang['i_license'] = 'Dewiswch y drwydded rydych chi am osod ar eich cynnwys:'; +$lang['i_license_none'] = 'Peidio â dangos unrhyw wybodaeth drwyddedu'; +$lang['i_pop_field'] = 'Plis, helpwch ni i wella\'r profiad o ddefnyddio DokuWiki:'; +$lang['i_pop_label'] = 'Anfon data defnydd anhysbys i ddatblygwyr DokuWiki unwaith y mis'; + +$lang['recent_global'] = 'Yn bresennol, rydych chi\'n gwylio newidiadau tu fewn namespace <b>%s</b>. Gallwch chi hefyd <a href="%s">weld y newidiadau diweddar ar gyfer y wici cyfan</a>.'; //namespace + +$lang['years'] = '%d blynedd yn ôl'; +$lang['months'] = '%d mis yn ôl'; +$lang['weeks'] = '%d wythnos yn ôl'; +$lang['days'] = '%d diwrnod yn ôl'; +$lang['hours'] = '%d awr yn ôl'; +$lang['minutes'] = '%d munud yn ôl'; +$lang['seconds'] = '%d eiliad yn ôl'; + +$lang['wordblock'] = 'Doedd eich newid heb gadw gan ei fod yn cynnwys testun wedi\'i flocio (sbam).'; + +$lang['media_uploadtab'] = 'Lanlwytho'; +$lang['media_searchtab'] = 'Chwilio'; +$lang['media_file'] = 'Ffeil'; +$lang['media_viewtab'] = 'Golwg'; +$lang['media_edittab'] = 'Golygu'; +$lang['media_historytab'] = 'Hanes'; +$lang['media_list_thumbs'] = 'Bawdlun'; +$lang['media_list_rows'] = 'Rhesi'; +$lang['media_sort_name'] = 'Enw'; +$lang['media_sort_date'] = 'Dyddiad'; +$lang['media_namespaces'] = 'Dewis namespace'; //namespace +$lang['media_files'] = 'Ffeiliau mewn %s'; +$lang['media_upload'] = 'Lanlwytho i %s'; +$lang['media_search'] = 'Chwilio mewn %s'; +$lang['media_view'] = '%s'; +$lang['media_viewold'] = '%s ar %s'; +$lang['media_edit'] = 'Golygu %s'; +$lang['media_history'] = 'Hanes %s'; +$lang['media_meta_edited'] = 'golygwyd metadata'; +$lang['media_perm_read'] = 'Sori, ond \'sdim digon o hawliau \'da chi i ddarllen ffeiliau.'; +$lang['media_perm_upload'] = 'Sori, ond \'sdim digon o hawliau \'da chi i lanlwytho ffeiliau.'; +$lang['media_update'] = 'Lanlwytho fersiwn newydd'; +$lang['media_restore'] = 'Adfer y fersiwn hwn'; +$lang['media_acl_warning'] = 'Gall y rhestr hon fod yn anghyflawn oherwydd cyfyngiadau ACL a thudalennau coll.'; + +$lang['currentns'] = 'Namespace cyfredol'; //namespace +$lang['searchresult'] = 'Canlyniad Chwilio'; +$lang['plainhtml'] = 'HTML Plaen'; +$lang['wikimarkup'] = 'Iaith Wici'; +$lang['page_nonexist_rev'] = 'Doedd y dudalen ddim yn bodoli ar %s. Cafodd ei chreu wedyn ar <a href="%s">%s</a>.'; +$lang['unable_to_parse_date'] = 'Methu dosbarthu ar baramedr "%s".'; +//Setup VIM: ex: et ts=2 : diff --git a/inc/lang/cy/locked.txt b/inc/lang/cy/locked.txt new file mode 100644 index 000000000..4c7865dd0 --- /dev/null +++ b/inc/lang/cy/locked.txt @@ -0,0 +1,3 @@ +====== Tudalen ar glo ====== + +Mae'r dudalen hon wedi'i chloi ar gyfer golygu gan ddefnyddiwr arall. Bydd yn rhaid i chi aros tan i'r defnyddiwr orffen golygu neu tan fod y cyfnod cloi yn dod i ben. diff --git a/inc/lang/cy/login.txt b/inc/lang/cy/login.txt new file mode 100644 index 000000000..dbdde0e67 --- /dev/null +++ b/inc/lang/cy/login.txt @@ -0,0 +1,4 @@ +====== Mewngofnodi ====== + +'Dych chi heb fewngofnodi! Rhowch eich manylion mewngofnodi isod. Mae angen galluogi cwcis er mwyn mewngofnodi. + diff --git a/inc/lang/cy/mailtext.txt b/inc/lang/cy/mailtext.txt new file mode 100644 index 000000000..27462332e --- /dev/null +++ b/inc/lang/cy/mailtext.txt @@ -0,0 +1,17 @@ +Cafodd tudalen yn eich DokuWiki ei hychwanegu neu newid. Dyma'r manylion: + +Dyddiad : @DATE@ +Porwr : @BROWSER@ +Cyfeiriad-IP : @IPADDRESS@ +Gwesteiwr : @HOSTNAME@ +Hen Adolygiad : @OLDPAGE@ +Adolygiad Newydd: @NEWPAGE@ +Crynodeb Golygu : @SUMMARY@ +Defnyddiwr : @USER@ + +@DIFF@ + + +-- +Cafodd y neges hon ei generadyu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/mailwrap.html b/inc/lang/cy/mailwrap.html new file mode 100644 index 000000000..254fcca7a --- /dev/null +++ b/inc/lang/cy/mailwrap.html @@ -0,0 +1,13 @@ +<html> +<head> + <title>@TITLE@</title> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +</head> +<body> + +@HTMLBODY@ + +<br /><hr /> +<small>Cafodd y neges hon ei generadu gan DokuWiki ar @DOKUWIKIURL@.</small> +</body> +</html> diff --git a/inc/lang/cy/newpage.txt b/inc/lang/cy/newpage.txt new file mode 100644 index 000000000..dfe8a79d9 --- /dev/null +++ b/inc/lang/cy/newpage.txt @@ -0,0 +1,4 @@ +====== 'Dyw'r testun hwn ddim yn bodoli eto ====== + +Rydych chi wedi dilyn dolen i destun sy ddim yn bodoli eto. Os oes hawliau 'da chi, gallwch chi ei greu gan bwyso ar "Creu y dudalen hon". + diff --git a/inc/lang/cy/norev.txt b/inc/lang/cy/norev.txt new file mode 100644 index 000000000..7d978c550 --- /dev/null +++ b/inc/lang/cy/norev.txt @@ -0,0 +1,4 @@ +====== Adolygiad ddim y bodoli ====== + +'Dyw'r adolygiad hwn ddim yn bodoli. Pwyswch ar "Hen adolygiadau" am restr o hen adolygiadau'r ddogfen hon. + diff --git a/inc/lang/cy/password.txt b/inc/lang/cy/password.txt new file mode 100644 index 000000000..da0678ef3 --- /dev/null +++ b/inc/lang/cy/password.txt @@ -0,0 +1,10 @@ +Shw mae @FULLNAME@! + +Dyma'ch manylion ar gyfer @TITLE@ ar @DOKUWIKIURL@ + +Defnyddair : @LOGIN@ +Cyfrinair : @PASSWORD@ + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/preview.txt b/inc/lang/cy/preview.txt new file mode 100644 index 000000000..477879d51 --- /dev/null +++ b/inc/lang/cy/preview.txt @@ -0,0 +1,4 @@ +====== Rhagolwg ====== + +Dyma ragolwg o sut fydd eich testun yn edrych. Cofiwch: 'Dyw e **heb ei gadw** 'to! + diff --git a/inc/lang/cy/pwconfirm.txt b/inc/lang/cy/pwconfirm.txt new file mode 100644 index 000000000..529571e14 --- /dev/null +++ b/inc/lang/cy/pwconfirm.txt @@ -0,0 +1,15 @@ +Shw mae @FULLNAME@! + +Mae rhywun wedi gofyn am gyfrinair newydd ar gyfer eich manylion +@TITLE@ ar @DOKUWIKIURL@ + +Os na wnaethoch chi ofyn am gyfrinair newydd, anwybyddwch yr e-bost hwn. + +I gadarnhau daeth y cais oddi wrthoch chi, pwyswch y ddolen isod. + +@CONFIRM@ + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ + diff --git a/inc/lang/cy/read.txt b/inc/lang/cy/read.txt new file mode 100644 index 000000000..8703ef937 --- /dev/null +++ b/inc/lang/cy/read.txt @@ -0,0 +1,2 @@ +Mae'r dudalen hon i'w darllen yn unig. Gallwch chi edrych ar y ffynhonnell, ond nid ei newid hi. Cysylltwch â'ch gweinyddwr chi os ydych chi'n meddwl bod hwn yn anghywir. + diff --git a/inc/lang/cy/recent.txt b/inc/lang/cy/recent.txt new file mode 100644 index 000000000..2affbf905 --- /dev/null +++ b/inc/lang/cy/recent.txt @@ -0,0 +1,5 @@ +====== Newidiadau Diweddar ====== + +Cafodd y tudalennau canlynol eu newid yn ddiweddar. + + diff --git a/inc/lang/cy/register.txt b/inc/lang/cy/register.txt new file mode 100644 index 000000000..6fbc85056 --- /dev/null +++ b/inc/lang/cy/register.txt @@ -0,0 +1,4 @@ +====== Cofrestru fel defnyddiwr newydd ====== + +Llenwch yr holl wybodaeth isod i greu cyfrif newydd ar y wici hwn. Sicrhewch eich bod chi'n cynnwys **cyfeiriad e-bost dilys** - os na chewch chi'ch annog am gyfrinair, caiff un ei anfon i'ch cyfeiriad. Dylai'r enw mewngofnodi fod yn [[doku>pagename|enw tudalen]] dilys. + diff --git a/inc/lang/cy/registermail.txt b/inc/lang/cy/registermail.txt new file mode 100644 index 000000000..0cb2b4fd2 --- /dev/null +++ b/inc/lang/cy/registermail.txt @@ -0,0 +1,14 @@ +Cofrestrodd defnyddiwr newydd. Dyma'r manylion: + +Defnyddair : @NEWUSER@ +Enw llawn : @NEWNAME@ +E-bost : @NEWEMAIL@ + +Dyddiad : @DATE@ +Porwr : @BROWSER@ +Cyfeiriad-IP : @IPADDRESS@ +Gwesteiwr : @HOSTNAME@ + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/resendpwd.txt b/inc/lang/cy/resendpwd.txt new file mode 100644 index 000000000..ddad8a906 --- /dev/null +++ b/inc/lang/cy/resendpwd.txt @@ -0,0 +1,4 @@ +====== Anfon cyfrinair newydd ====== + +Ailgyflwynwch eich defnyddair yn y ffurflen isod i wneud cais am gyfrinair newydd i'ch cyfrif ar y wici hwn. Caiff ddolen gadarnhau ei hanfon i chi drwy eich e-bost cofrestredig. + diff --git a/inc/lang/cy/resetpwd.txt b/inc/lang/cy/resetpwd.txt new file mode 100644 index 000000000..57f19928e --- /dev/null +++ b/inc/lang/cy/resetpwd.txt @@ -0,0 +1,4 @@ +====== Gosod cyfrinair newydd ====== + +Rhowch gyfrinair newydd i'ch cyfrif ar y wici hwn. + diff --git a/inc/lang/cy/revisions.txt b/inc/lang/cy/revisions.txt new file mode 100644 index 000000000..afbc9fed2 --- /dev/null +++ b/inc/lang/cy/revisions.txt @@ -0,0 +1,4 @@ +====== Hen Adolygiadau ====== + +Dyma adolygiadau hŷn y ddogfen gyfredol. I droi'n ôl i hen adolygiad, dewiswch e isod a phwyso ''Golygu'r dudalen hon'' a'i gadw. + diff --git a/inc/lang/cy/searchpage.txt b/inc/lang/cy/searchpage.txt new file mode 100644 index 000000000..fd554e1e7 --- /dev/null +++ b/inc/lang/cy/searchpage.txt @@ -0,0 +1,5 @@ +====== Chwilio ====== + +Gallwch chi ddarganfod canlyniadau eich chwiliad isod. @CREATEPAGEINFO@ + +===== Canlyniadau ===== diff --git a/inc/lang/cy/showrev.txt b/inc/lang/cy/showrev.txt new file mode 100644 index 000000000..6cc9d6c2e --- /dev/null +++ b/inc/lang/cy/showrev.txt @@ -0,0 +1,2 @@ +**Dyma hen adolygiad y ddogfen!** +---- diff --git a/inc/lang/cy/stopwords.txt b/inc/lang/cy/stopwords.txt new file mode 100644 index 000000000..2ac4c3174 --- /dev/null +++ b/inc/lang/cy/stopwords.txt @@ -0,0 +1,31 @@ +# This is a list of words the indexer ignores, one word per line +# When you edit this file be sure to use UNIX line endings (single newline) +# No need to include words shorter than 3 chars - these are ignored anyway +# This list is based upon the ones found at http://www.ranks.nl/stopwords/ +allan +beth +ble +bydd +chi +dyma +dyna +eich +gyda +hefyd +hon +honna +hwn +hwnnw +hwy +hyn +hynny +mewn +nhw +oddi +oedd +pan +pwy +roedd +sut +wrth +www
\ No newline at end of file diff --git a/inc/lang/cy/subscr_digest.txt b/inc/lang/cy/subscr_digest.txt new file mode 100644 index 000000000..611e05709 --- /dev/null +++ b/inc/lang/cy/subscr_digest.txt @@ -0,0 +1,20 @@ +Shw mae! + +Gwnaeth y dudalen @PAGE@ mewn wici @TITLE@ newid. +Dyma'r newidiadau: + +-------------------------------------------------------- +@DIFF@ +-------------------------------------------------------- + +Hen Adolygiad: @OLDPAGE@ +Adolygiad Newydd: @NEWPAGE@ + +I ganslo hysbysiadau tudalen, mewngofnodwch i'r wici ar +@DOKUWIKIURL@ ac yna ewch i +@SUBSCRIBE@ +a thanysgrifio o newidiadau tudalen a/neu namespace. + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/subscr_form.txt b/inc/lang/cy/subscr_form.txt new file mode 100644 index 000000000..47d1a1715 --- /dev/null +++ b/inc/lang/cy/subscr_form.txt @@ -0,0 +1,3 @@ +====== Rheoli Tanysgrifiad ====== + +Mae'r dudalen hon yn eich galluogi i reoli'ch tanysgrifiadau ar gyfer y dudalen gyfredol a'r namespace. diff --git a/inc/lang/cy/subscr_list.txt b/inc/lang/cy/subscr_list.txt new file mode 100644 index 000000000..592f29028 --- /dev/null +++ b/inc/lang/cy/subscr_list.txt @@ -0,0 +1,17 @@ +Shw mae! + +Gwnaeth tudalennau yn y namespace @PAGE@ o'r wici @TITLE@ newid. +Dyma'r tudaalennau sydd wedi newid: + +-------------------------------------------------------- +@DIFF@ +-------------------------------------------------------- + +I ganslo hysbysiadau'r dudalen, mewngofnodwch i'r wici ar +@DOKUWIKIURL@ yna ewch i +@SUBSCRIBE@ +a thanysgrifio o newidiadau tudalen a/neu namespace. + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/subscr_single.txt b/inc/lang/cy/subscr_single.txt new file mode 100644 index 000000000..2a774ebd2 --- /dev/null +++ b/inc/lang/cy/subscr_single.txt @@ -0,0 +1,23 @@ +Shw mae! + +Gwnaeth y dudalen @PAGE@ yn y wici @TITLE@ newid. +Dyma'r newidiadau: + +-------------------------------------------------------- +@DIFF@ +-------------------------------------------------------- + +Dyddiad : @DATE@ +Defnyddiwr : @USER@ +Crynodeb Golygu : @SUMMARY@ +Hen Adolygiad : @OLDPAGE@ +Adolygiad Newwydd: @NEWPAGE@ + +I ganslo hysbysiadau'r dudalen, mewngofnodwch i'r wici ar +@DOKUWIKIURL@ yna ewch i +@SUBSCRIBE@ +a thanysgrifio o newidiadau tudalen a namespace. + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/cy/updateprofile.txt b/inc/lang/cy/updateprofile.txt new file mode 100644 index 000000000..ce9ca503f --- /dev/null +++ b/inc/lang/cy/updateprofile.txt @@ -0,0 +1,5 @@ +====== Diweddaru proffil eich cyfrif ====== + +Newidiwch y meysydd rydych chi amm newid yn unig. 'Sdim modd i chi newid eich defnyddair. + + diff --git a/inc/lang/cy/uploadmail.txt b/inc/lang/cy/uploadmail.txt new file mode 100644 index 000000000..8102232a3 --- /dev/null +++ b/inc/lang/cy/uploadmail.txt @@ -0,0 +1,15 @@ +Cafodd ffeil ei lanlwytho i'ch DokuWiki. Dyma'r manylion: + +Ffeil : @MEDIA@ +Hen adolygiad : @OLD@ +Dyddiad : @DATE@ +Porwr : @BROWSER@ +Cyfeiriad-IP : @IPADDRESS@ +Gwesteiwr : @HOSTNAME@ +Maint : @SIZE@ +Teip MIME : @MIME@ +Defnyddiwr : @USER@ + +-- +Cafodd y neges hon ei generadu gan DokuWiki ar +@DOKUWIKIURL@ diff --git a/inc/lang/de/subscr_list.txt b/inc/lang/de/subscr_list.txt index 98ec4c2ab..f4318df70 100644 --- a/inc/lang/de/subscr_list.txt +++ b/inc/lang/de/subscr_list.txt @@ -7,7 +7,7 @@ Das sind die geänderten Seiten: @DIFF@ -------------------------------------------------------- -Um das Abonnement für diese Seite aufzulösen, melde Sie sich im Wiki an +Um das Abonnement für diese Seite aufzulösen, melden Sie sich im Wiki an @DOKUWIKIURL@, besuchen dann @SUBSCRIBE@ und klicken auf die Taste 'Änderungen abbestellen'. diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 26304902a..97559bd98 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -41,6 +41,8 @@ * @author Alejandro Nunez <nunez.alejandro@gmail.com> * @author Mauricio Segura <maose38@yahoo.es> * @author Domingo Redal <docxml@gmail.com> + * @author solohazlo <solohhazlo@gmail.com> + * @author Romano <romanocl@outlook.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/lang/fa/admin.txt b/inc/lang/fa/admin.txt index ce7550977..f8e36ba49 100644 --- a/inc/lang/fa/admin.txt +++ b/inc/lang/fa/admin.txt @@ -1,3 +1,3 @@ ====== مدیریت ====== -در اینجا لیستی از وظیفههای مدیریتی را مشاهده میکنید.
\ No newline at end of file +در اینجا فهرستی از وظیفههای مدیریتی را مشاهده میکنید.
\ No newline at end of file diff --git a/inc/lang/fa/adminplugins.txt b/inc/lang/fa/adminplugins.txt index 3d2bb4a5b..dab0251be 100644 --- a/inc/lang/fa/adminplugins.txt +++ b/inc/lang/fa/adminplugins.txt @@ -1 +1 @@ -===== برنامه های جانبی دیگر =====
\ No newline at end of file +===== برنامههای جانبی دیگر =====
\ No newline at end of file diff --git a/inc/lang/fa/backlinks.txt b/inc/lang/fa/backlinks.txt index 6864e22d6..774d3d6cc 100644 --- a/inc/lang/fa/backlinks.txt +++ b/inc/lang/fa/backlinks.txt @@ -1,3 +1,3 @@ ====== پیوندهای بازگشتی ====== -در اینجا لیستی از صفحاتی که به این صفحه پیوند دادهاند را مشاهده میکنید.
\ No newline at end of file +در اینجا فهرستی از صفحاتی که به این صفحه پیوند دادهاند را مشاهده میکنید.
\ No newline at end of file diff --git a/inc/lang/fa/denied.txt b/inc/lang/fa/denied.txt index 4bffa0f3c..190b710ca 100644 --- a/inc/lang/fa/denied.txt +++ b/inc/lang/fa/denied.txt @@ -1,4 +1,4 @@ ====== دسترسی ممکن نیست ====== -شرمنده، شما اجازهی دسترسی ب این صفحه را ندارید. +شرمنده، شما اجازهٔ دسترسی به این صفحه را ندارید. diff --git a/inc/lang/fa/diff.txt b/inc/lang/fa/diff.txt index d5354f727..80e1ce7a1 100644 --- a/inc/lang/fa/diff.txt +++ b/inc/lang/fa/diff.txt @@ -1,3 +1,3 @@ ====== تفاوتها ====== -تفاوت دو نسخهی متفاوت از صفحه را مشاهده میکنید.
\ No newline at end of file +تفاوت دو نسخهٔ متفاوت از صفحه را مشاهده میکنید.
\ No newline at end of file diff --git a/inc/lang/fa/editrev.txt b/inc/lang/fa/editrev.txt index ca896feeb..eae539414 100644 --- a/inc/lang/fa/editrev.txt +++ b/inc/lang/fa/editrev.txt @@ -1 +1,2 @@ -**شما یک نگارش قدیمی را مشاهده میکنید!** اگر این نگارش را ذخیره کنید، شما یک نگارش جدید ایجاد کردهاید!
\ No newline at end of file +**شما یک نگارش قدیمی را مشاهده میکنید!** اگر این نگارش را ذخیره کنید، شما یک نگارش جدید ایجاد کردهاید! +----
\ No newline at end of file diff --git a/inc/lang/fa/lang.php b/inc/lang/fa/lang.php index 7b45b3137..c05b8b501 100644 --- a/inc/lang/fa/lang.php +++ b/inc/lang/fa/lang.php @@ -15,6 +15,8 @@ * @author Mohamad Mehdi Habibi <habibi.esf@gmail.com> * @author Mohammad Sadegh <msdn2013@gmail.com> * @author Omid Hezaveh <hezpublic@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'rtl'; @@ -24,9 +26,9 @@ $lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; $lang['apostrophe'] = '’'; $lang['btn_edit'] = 'ویرایش این صفحه'; -$lang['btn_source'] = 'نمایش مبدا'; +$lang['btn_source'] = 'نمایش متن صفحه'; $lang['btn_show'] = 'نمایش صفحه'; -$lang['btn_create'] = 'ساخت این صفحه'; +$lang['btn_create'] = 'ایجاد این صفحه'; $lang['btn_search'] = 'جستجو'; $lang['btn_save'] = 'ذخیره'; $lang['btn_preview'] = 'پیشنمایش'; @@ -63,23 +65,24 @@ $lang['btn_mediaManager'] = 'مشاهده در مدیریت رسانهه $lang['loggedinas'] = 'به این عنوان وارد شدهاید:'; $lang['user'] = 'نام کاربری'; $lang['pass'] = 'گذرواژه'; -$lang['newpass'] = 'گذروازهی جدید'; +$lang['newpass'] = 'گذرواژهی جدید'; $lang['oldpass'] = 'گذرواژهی فعلی را تایید کنید'; $lang['passchk'] = 'یک بار دیگر'; $lang['remember'] = 'مرا به خاطر بسپار.'; -$lang['fullname'] = '*نام واقعی شما'; -$lang['email'] = 'ایمیل شما*'; +$lang['fullname'] = 'نام واقعی شما'; +$lang['email'] = 'ایمیل شما'; $lang['profile'] = 'پروفایل کاربر'; -$lang['badlogin'] = 'خطا در ورود به سیستم'; -$lang['badpassconfirm'] = 'متاسفم ، رمز عبور اشتباه است'; +$lang['badlogin'] = 'متاسفم، نام کاربری یا رمز عبور اشتباه است.'; +$lang['badpassconfirm'] = 'متاسفم، رمز عبور اشتباه است'; $lang['minoredit'] = 'این ویرایش خُرد است'; -$lang['draftdate'] = 'ذخیره خودکار پیشنویس'; +$lang['draftdate'] = 'ذخیره خودکار پیشنویس در'; $lang['nosecedit'] = 'این صفحه در این میان تغییر کرده است، اطلاعات بخش قدیمی شده است، در عوض محتوای کل نمایش داده میشود.'; $lang['searchcreatepage'] = 'اگر به نتیجهی مطلوبی نرسیدهاید، میتوانید صفحهی مورد نظر را ایجاد کنید.'; $lang['regmissing'] = 'متاسفم، شما باید همه قسمتها را پر کنید.'; $lang['reguexists'] = 'نام کاربریای که وارد کردید قبلن استفاده شده است. خواهشمندیم یک نام دیگر انتخاب کنید.'; $lang['regsuccess'] = 'کاربر ساخته شد و گذرواژه به صورت ایمیل ارسال گردید.'; $lang['regsuccess2'] = 'حساب ایجاد شد.'; +$lang['regfail'] = 'ایجاد کاربر ممکن نیست.'; $lang['regmailfail'] = 'مشکلی در ارسال ایمیل پیش آمده است، با مدیر تماس بگیرید!'; $lang['regbadmail'] = 'نشانی واردشدهی ایمیل قابلقبول نیست، چرا که دارای ساختار نامعتبری است. خواهشمندیم نشانیای با ساختار صحیح وارد کنید و یا بخش مربوط را خالی بگذارید.'; $lang['regbadpass'] = 'گذرواژههایی که وارد کردید یکسان نیستند.'; @@ -94,30 +97,30 @@ $lang['profdeleteuser'] = 'حذف حساب کاربری'; $lang['profdeleted'] = 'حساب کاربری شما حذف گردیده است.'; $lang['profconfdelete'] = 'میخواهم حساب کاربری من از این ویکی حذف شود. <br/> این عمل قابل برگشت نیست.'; $lang['profconfdeletemissing'] = 'جعبهی تأیید تیک نخورده است'; -$lang['pwdforget'] = 'گذرواژهی خود را فراموش کردهاید؟ جدید دریافت کنید'; +$lang['proffail'] = 'بروزرسانی پروفایل کاربری انجام نشد.'; +$lang['pwdforget'] = 'گذرواژهی خود را فراموش کردهاید؟ گذرواژهی جدید دریافت کنید'; $lang['resendna'] = 'این ویکی ارسال مجدد گذرواژه را پشتیبانی نمیکند'; $lang['resendpwd'] = 'تعیین کلمه عبور جدید برای '; -$lang['resendpwdmissing'] = 'متاسفم، شما باید تمام قسمتها را پر کنید'; -$lang['resendpwdnouser'] = 'متاسفم، ما نتوانستیم این نام کاربری را در بانک خود پیدا کنیم'; +$lang['resendpwdmissing'] = 'متاسفم، شما باید تمام قسمتها را پر کنید.'; +$lang['resendpwdnouser'] = 'متاسفم، ما نتوانستیم این نام کاربری را در پایگاه دادهٔ خود پیدا کنیم.'; $lang['resendpwdbadauth'] = 'متاسفم، کد شناسایی معتبر نیست. از صحت لینک تاییدیه اطمینان حاصل کنید.'; -$lang['resendpwdconfirm'] = 'یک ایمیل تاییدیهی آدرس به آدرس مورنظر ارسال شد. قبل از اینکه نامهی دیگری قابل ارسال به این آدرس باشد، باید دستوراتی که در آن نامه آمده است را جهت تایید این مساله که این آدرس متعلق به شماست، اجرا کنید.'; -$lang['resendpwdsuccess'] = 'گذرواژهی جدید شما توسط ایمیل ارسال شد'; +$lang['resendpwdconfirm'] = 'یک لینک تاییدیه آدرس از طریق ایمیل ارسال شد.'; +$lang['resendpwdsuccess'] = 'گذرواژهی جدید شما توسط ایمیل ارسال شد.'; $lang['license'] = 'به جز مواردی که ذکر میشود، مابقی محتویات ویکی تحت مجوز زیر میباشند:'; $lang['licenseok'] = 'توجه: با ویرایش این صفحه، شما مجوز زیر را تایید میکنید:'; $lang['searchmedia'] = 'نام فایل برای جستجو:'; $lang['searchmedia_in'] = 'جستجو در %s'; -$lang['txt_upload'] = 'فایل را برای ارسال انتخاب کنید:'; +$lang['txt_upload'] = 'فایل را برای آپلود انتخاب کنید:'; $lang['txt_filename'] = 'ارسال به صورت (اختیاری):'; $lang['txt_overwrt'] = 'بر روی فایل موجود بنویس'; $lang['maxuploadsize'] = 'حداکثر %s برای هر فایل مجاز است.'; $lang['lockedby'] = 'در حال حاضر قفل شده است:'; -$lang['lockexpire'] = 'قفل منقضی شده است:'; +$lang['lockexpire'] = 'قفل منقضی میشود در:'; $lang['js']['willexpire'] = 'حالت قفل شما مدتی است منقضی شده است \n برای جلوگیری از تداخل دکمهی پیشنمایش را برای صفر شدن ساعت قفل بزنید.'; -$lang['js']['notsavedyet'] = 'تغییرات ذخیره شده از بین خواهد رفت. - میخواهید ادامه دهید؟'; -$lang['js']['searchmedia'] = 'جستجو برای فایل'; -$lang['js']['keepopen'] = 'پنجره را ر زمان انتخاب باز نگهدار'; -$lang['js']['hidedetails'] = 'پتهان کردن جزییات'; +$lang['js']['notsavedyet'] = 'تغییرات ذخیره نشده از بین خواهد رفت.'; +$lang['js']['searchmedia'] = 'جستجو برای فایلها'; +$lang['js']['keepopen'] = 'پنجره را در زمان انتخاب باز نگهدار'; +$lang['js']['hidedetails'] = 'پنهان کردن جزئیات'; $lang['js']['mediatitle'] = 'تنظیمات پیوند'; $lang['js']['mediadisplay'] = 'نوع پیوند'; $lang['js']['mediaalign'] = 'همترازی'; @@ -125,13 +128,13 @@ $lang['js']['mediasize'] = 'اندازه تصویر'; $lang['js']['mediatarget'] = 'هدف پیوند'; $lang['js']['mediaclose'] = 'بستن'; $lang['js']['mediainsert'] = 'درج کردن'; -$lang['js']['mediadisplayimg'] = 'نمایش تصویر'; +$lang['js']['mediadisplayimg'] = 'نمایش تصویر.'; $lang['js']['mediadisplaylnk'] = 'فقط پیوند را نمایش بده.'; $lang['js']['mediasmall'] = 'نگارش کوچک'; $lang['js']['mediamedium'] = 'نگارش متوسط'; $lang['js']['medialarge'] = 'نگارش بزرگ'; $lang['js']['mediaoriginal'] = 'نگارش اصلی'; -$lang['js']['medialnk'] = 'پیوند به صفحهی جزییات'; +$lang['js']['medialnk'] = 'پیوند به صفحهی جزئیات'; $lang['js']['mediadirect'] = 'پیوند مستقیم به اصلی'; $lang['js']['medianolnk'] = 'بدون پیوند'; $lang['js']['medianolink'] = 'تصویر را پیوند نکن'; @@ -149,38 +152,38 @@ $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_select'] = 'انتخاب فایلها...'; $lang['js']['media_upload_btn'] = 'آپلود'; $lang['js']['media_done_btn'] = 'انجام شد'; -$lang['js']['media_drop'] = 'فایل ها را در اینجا قرار دهید تا آپلود شود'; +$lang['js']['media_drop'] = 'فایلها را در اینجا قرار دهید تا آپلود شود'; $lang['js']['media_cancel'] = 'حذف'; -$lang['js']['media_overwrt'] = 'جاینوشت فایل های موجود'; -$lang['rssfailed'] = 'بروز خطا در هنگام واکشی'; -$lang['nothingfound'] = 'چیزی پیدا نشد'; +$lang['js']['media_overwrt'] = 'جاینوشت فایلهای موجود'; +$lang['rssfailed'] = 'بروز خطا در هنگام واکشی این فید:'; +$lang['nothingfound'] = 'چیزی پیدا نشد.'; $lang['mediaselect'] = 'فایلها'; $lang['uploadsucc'] = 'ارسال با موفقیت انجام شد'; -$lang['uploadfail'] = 'خطا در ارسال'; -$lang['uploadwrong'] = 'ارسال متوقف شد. این توسعهی فایل ممنوع میباشد.'; -$lang['uploadexist'] = 'این فابل وجود دارد. عملی انجام نشد.'; -$lang['uploadbadcontent'] = 'محتوای فایل ارسال شده با توسعهی %s متناقض است.'; +$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» حذف نمیشود، چون هنوز در حال استفاده است.'; -$lang['namespaces'] = 'فضاینام'; +$lang['namespaces'] = 'فضاینامها'; $lang['mediafiles'] = 'فایلهای موجود در'; $lang['accessdenied'] = 'شما اجازهی مشاهدهی این صفحه را ندارید.'; $lang['mediausage'] = 'برای ارجاع دادن به فایل از نگارش زیر استفاده کنید.'; $lang['mediaview'] = 'مشاهدهی فایل اصلی'; $lang['mediaroot'] = 'ریشه'; -$lang['mediaupload'] = 'ارسال فایل به فضاینام کنونی. برای ایجاد زیرفضاینامها، نامهای آنها را به عنوان پیشوندهایی که با دونقطه «:» جدا شدهاند به نام فایل، در قسمت «ارسال به صورت» اضافه کنید.'; -$lang['mediaextchange'] = 'توسعهی فایل از %s به %s تغییر داده شد.'; +$lang['mediaupload'] = 'ارسال فایل به فضاینام کنونی. برای ایجاد زیرفضاینامها، پس از انتخاب فایلها در قسمت «ارسال به صورت» به نام فایل نامهای فضاینامها را به عنوان پیشوندهایی که با دونقطه «:» جدا شدهاند، اضافه کنید. همچنین فایلها میتوانند با کشیدن و ول کردن انتخاب شوند.'; +$lang['mediaextchange'] = 'فرمت فایل از %s به %s تغییر داده شد.'; $lang['reference'] = 'ارجاعهای'; $lang['ref_inuse'] = 'این فایل نمیتواند حذف شود، زیرا همچنان در این صفحه استفاده شده است:'; $lang['ref_hidden'] = 'تعدادی مرجع در صفحاتی که شما دسترسی خواندن ندارید وجود دارد.'; -$lang['hits'] = 'بازدید'; +$lang['hits'] = 'بازدیدها'; $lang['quickhits'] = 'جور کردن نام صفحات'; $lang['toc'] = 'فهرست مندرجات'; $lang['current'] = 'فعلی'; @@ -339,7 +342,10 @@ $lang['media_perm_read'] = 'متاسفانه شما حق خواندن ای $lang['media_perm_upload'] = 'متاسفانه شما حق آپلود این فایلها را ندارید.'; $lang['media_update'] = 'آپلود نسخهی جدید'; $lang['media_restore'] = 'بازیابی این نسخه'; +$lang['media_acl_warning'] = 'این لیست ممکن است به خاطر محدودیتهای دسترسیهای ACL و صفحات پنهان کامل نباشد.'; $lang['currentns'] = 'فضای نام جاری'; $lang['searchresult'] = 'نتیجهی جستجو'; $lang['plainhtml'] = 'HTML ساده'; $lang['wikimarkup'] = 'نشانهگذاری ویکی'; +$lang['page_nonexist_rev'] = 'صفحه %s وجود نداشت. این صفحه معاقباً در<a href="%s">%s</a> ایجاد شد.'; +$lang['unable_to_parse_date'] = 'امکان تجزیه و تحلیل پارامتر «%s» وجود ندارد.'; diff --git a/inc/lang/he/lang.php b/inc/lang/he/lang.php index a24ccace9..7926d87e6 100644 --- a/inc/lang/he/lang.php +++ b/inc/lang/he/lang.php @@ -2,7 +2,7 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author גיא שפר <guysoft@ort.org.il> * @author Denis Simakov <akinoame1@gmail.com> * @author Dotan Kamber <kamberd@yahoo.com> @@ -15,6 +15,7 @@ * @author tomer <tomercarolldergicz@gmail.com> * @author itsho <itsho.itsho@gmail.com> * @author Menashe Tomer <menashesite@gmail.com> + * @author sagi <sagiyosef@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'rtl'; @@ -95,6 +96,7 @@ $lang['profdeleteuser'] = 'הסר חשבון'; $lang['profdeleted'] = 'חשבון המשתמש שלך נמחק מויקי זה'; $lang['profconfdelete'] = 'ברצוני להסיר את החשבון שלי מוויקי זה. <br/> לא ניתן לבטל פעולה זו.'; $lang['profconfdeletemissing'] = 'תיבת אישור אינו מסומן'; +$lang['proffail'] = 'פרופיל המשתמש לא עודכן'; $lang['pwdforget'] = 'שכחת את הססמה שלך? ניתן לקבל חדשה'; $lang['resendna'] = 'הוויקי הזה אינו תומך בחידוש ססמה'; $lang['resendpwd'] = 'הגדר סיסמא חדשה בעבור'; @@ -341,6 +343,7 @@ $lang['media_perm_read'] = 'מצטערים, אין לך הרשאות לק $lang['media_perm_upload'] = 'מצטערים, אין לך הרשאות להעלות קבצים.'; $lang['media_update'] = 'העלה גירסה חדשה'; $lang['media_restore'] = 'שחזר גירסה זו'; +$lang['media_acl_warning'] = 'רשימה זו עלולה להיות חסרה עכב חוסר בהרשאות או דפים מוסתרים'; $lang['currentns'] = 'שם מרחב נוכחי'; $lang['searchresult'] = 'תוצאות חיפוש'; $lang['plainhtml'] = 'HTML פשוט'; diff --git a/inc/lang/ko/admin.txt b/inc/lang/ko/admin.txt index 2f81e8961..e9631da10 100644 --- a/inc/lang/ko/admin.txt +++ b/inc/lang/ko/admin.txt @@ -1,3 +1,3 @@ ====== 관리 ====== -도쿠위키에서 사용할 수 있는 관리 작업 목록을 아래에서 찾을 수 있습니다.
\ No newline at end of file +도쿠위키에서 사용할 수 있는 관리 작업 목록은 아래에서 찾을 수 있습니다.
\ No newline at end of file diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index 5ee0df829..690212431 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -14,6 +14,7 @@ * @author Garam <rowain8@gmail.com> * @author Young gon Cha <garmede@gmail.com> * @author hyeonsoft <hyeonsoft@live.co.kr> + * @author Erial <erial2@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -82,7 +83,7 @@ $lang['regsuccess2'] = '사용자 계정을 만들었습니다.'; $lang['regfail'] = '사용자 계정을 만들 수 없었습니다.'; $lang['regmailfail'] = '비밀번호를 이메일로 보내는 동안 오류가 발생했습니다. 관리자에게 문의해주세요!'; $lang['regbadmail'] = '주어진 이메일 주소가 잘못되었습니다 - 오류라고 생각하면 관리자에게 문의해주세요'; -$lang['regbadpass'] = '두 주어진 비밀번호가 같지 않습니다. 다시 입력하세요.'; +$lang['regbadpass'] = '두 주어진 비밀번호가 일치하지 않습니다, 다시 입력하세요.'; $lang['regpwmail'] = '도쿠위키 비밀번호'; $lang['reghere'] = '계정이 없나요? 계정을 등록하세요'; $lang['profna'] = '이 위키는 프로필 수정을 할 수 없습니다'; @@ -111,7 +112,7 @@ $lang['txt_upload'] = '올릴 파일 선택:'; $lang['txt_filename'] = '올릴 파일 이름 (선택 사항):'; $lang['txt_overwrt'] = '기존 파일에 덮어쓰기'; $lang['maxuploadsize'] = '최대 올리기 용량. 파일당 %s.'; -$lang['lockedby'] = '현재 잠겨진 사용자:'; +$lang['lockedby'] = '현재 잠근 사용자:'; $lang['lockexpire'] = '잠금 해제 시간:'; $lang['js']['willexpire'] = '잠시 후 편집 잠금이 해제됩니다.\n편집 충돌을 피하려면 미리 보기를 눌러 잠금 시간을 다시 설정하세요.'; $lang['js']['notsavedyet'] = '저장하지 않은 바뀜이 사라집니다.'; @@ -122,7 +123,7 @@ $lang['js']['mediatitle'] = '링크 설정'; $lang['js']['mediadisplay'] = '링크 유형'; $lang['js']['mediaalign'] = '배치'; $lang['js']['mediasize'] = '그림 크기'; -$lang['js']['mediatarget'] = '링크 목표'; +$lang['js']['mediatarget'] = '링크 타겟'; $lang['js']['mediaclose'] = '닫기'; $lang['js']['mediainsert'] = '넣기'; $lang['js']['mediadisplayimg'] = '그림을 보여줍니다.'; @@ -303,7 +304,7 @@ $lang['i_policy'] = '초기 ACL 정책'; $lang['i_pol0'] = '열린 위키 (누구나 읽기, 쓰기, 올리기가 가능합니다)'; $lang['i_pol1'] = '공개 위키 (누구나 읽을 수 있지만, 등록된 사용자만 쓰기와 올리기가 가능합니다)'; $lang['i_pol2'] = '닫힌 위키 (등록된 사용자만 읽기, 쓰기, 올리기가 가능합니다)'; -$lang['i_allowreg'] = '사용자 자신이 등록할 수 있음'; +$lang['i_allowreg'] = '사용자 자신이 등록할 수 있도록 하기'; $lang['i_retry'] = '다시 시도'; $lang['i_license'] = '내용을 배포하기 위한 라이선스를 선택하세요:'; $lang['i_license_none'] = '라이선스 정보를 보여주지 않습니다'; diff --git a/inc/lang/nl/lang.php b/inc/lang/nl/lang.php index a2f2a64ce..c085521f2 100644 --- a/inc/lang/nl/lang.php +++ b/inc/lang/nl/lang.php @@ -29,6 +29,7 @@ * @author Hugo Smet <hugo.smet@scarlet.be> * @author Mark C. Prins <mprins@users.sf.net> * @author hugo smet <hugo.smet@scarlet.be> + * @author Wesley de Weerd <wesleytiel@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/lang/pt-br/lang.php b/inc/lang/pt-br/lang.php index 67b4651f2..efd48ae6e 100644 --- a/inc/lang/pt-br/lang.php +++ b/inc/lang/pt-br/lang.php @@ -25,6 +25,8 @@ * @author Juliano Marconi Lanigra <juliano.marconi@gmail.com> * @author Ednei <leuloch@gmail.com> * @author Hudson FAS <hudsonfas@gmail.com> + * @author Guilherme Cardoso <guicardoso@gmail.com> + * @author Viliam Dias <viliamjr@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/lang/pt/admin.txt b/inc/lang/pt/admin.txt index 366792a9b..5b103b38d 100644 --- a/inc/lang/pt/admin.txt +++ b/inc/lang/pt/admin.txt @@ -1,3 +1,3 @@ ====== Administração ====== -Abaixo pode encontrar uma lista de tarefas de administrativas permitidas pelo DokuWiki.
\ No newline at end of file +Abaixo pode encontrar uma lista de tarefas de administrativas disponíveis na DokuWiki.
\ No newline at end of file diff --git a/inc/lang/pt/adminplugins.txt b/inc/lang/pt/adminplugins.txt index 3eac7af53..259f5ce45 100644 --- a/inc/lang/pt/adminplugins.txt +++ b/inc/lang/pt/adminplugins.txt @@ -1 +1 @@ -===== Plugins Adicionais =====
\ No newline at end of file +===== Extras Adicionais =====
\ No newline at end of file diff --git a/inc/lang/pt/backlinks.txt b/inc/lang/pt/backlinks.txt index e78ddf874..4eb82cb26 100644 --- a/inc/lang/pt/backlinks.txt +++ b/inc/lang/pt/backlinks.txt @@ -1,4 +1,4 @@ ====== Backlinks ====== -Esta é uma lista de todos os documentos que apresentam ligações ao documento corrente. +Esta é uma lista de páginas que parece que interliga para a página atual. diff --git a/inc/lang/pt/conflict.txt b/inc/lang/pt/conflict.txt index b6d7319b0..49575fdb8 100644 --- a/inc/lang/pt/conflict.txt +++ b/inc/lang/pt/conflict.txt @@ -1,5 +1,5 @@ -====== Uma versão mais recente existe ====== +====== Existe uma versão mais recente ====== -Existe uma versão mais recente do documento editado. Isso acontece quando um outro usuário alterou o documento enquanto você estava editando. +Existe uma versão mais recente do documento editado. Isto acontece quando um outro utilizador alterou o documento enquanto o estava a editar. -Examine cuidadosamente as diferenças mostradas abaixo, em seguida, decida qual versão manter. Se você escolher ''salvar '', sua versão será salva. Clique ''cancelar '' para manter a versão atual. +Analise cuidadosamente as diferenças mostradas abaixo, depois decida qual a versão a manter. Se escolher 'guardar'', a sua versão será guardada. Clique em ''cancelar '' para manter a versão atual. diff --git a/inc/lang/pt/denied.txt b/inc/lang/pt/denied.txt index 84c3a9406..f4e8e0114 100644 --- a/inc/lang/pt/denied.txt +++ b/inc/lang/pt/denied.txt @@ -1,4 +1,4 @@ ====== Permissão Negada ====== -Desculpe, você não possui direitos e permissões suficientes para continuar. +Desculpe, não tem direitos suficientes para continuar. diff --git a/inc/lang/pt/diff.txt b/inc/lang/pt/diff.txt index e27640aa8..b73326268 100644 --- a/inc/lang/pt/diff.txt +++ b/inc/lang/pt/diff.txt @@ -1,5 +1,3 @@ ====== Diferenças ====== -Esta página mostra as diferenças entre a revisão do documento que escolheu e a versão actual. - ----- +Esta página mostra as diferenças entre as duas revisões da página.
\ No newline at end of file diff --git a/inc/lang/pt/lang.php b/inc/lang/pt/lang.php index c45d52295..4f111ee3f 100644 --- a/inc/lang/pt/lang.php +++ b/inc/lang/pt/lang.php @@ -14,6 +14,7 @@ * @author Guido Salatino <guidorafael23@gmail.com> * @author Romulo Pereira <romuloccomp@gmail.com> * @author Paulo Carmino <contato@paulocarmino.com> + * @author Alfredo Silva <alfredo.silva@sky.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -22,24 +23,24 @@ $lang['doublequoteclosing'] = '”'; $lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; $lang['apostrophe'] = '’'; -$lang['btn_edit'] = 'Editar página'; -$lang['btn_source'] = 'Ver fonte'; -$lang['btn_show'] = 'Ver página'; -$lang['btn_create'] = 'Criar página'; +$lang['btn_edit'] = 'Editar esta página'; +$lang['btn_source'] = 'Mostrar página fonte '; +$lang['btn_show'] = 'Mostrar página'; +$lang['btn_create'] = 'Criar esta página'; $lang['btn_search'] = 'Pesquisar'; -$lang['btn_save'] = 'Salvar'; -$lang['btn_preview'] = 'Prever'; +$lang['btn_save'] = 'Guardar'; +$lang['btn_preview'] = 'Pré-visualizar'; $lang['btn_top'] = 'Voltar ao topo'; $lang['btn_newer'] = '<< mais recente'; $lang['btn_older'] = 'menos recente >>'; $lang['btn_revs'] = 'Revisões antigas'; -$lang['btn_recent'] = 'Alt. Recentes'; -$lang['btn_upload'] = 'Carregar'; +$lang['btn_recent'] = 'Alterações Recentes'; +$lang['btn_upload'] = 'Enviar'; $lang['btn_cancel'] = 'Cancelar'; $lang['btn_index'] = 'Índice'; $lang['btn_secedit'] = 'Editar'; -$lang['btn_login'] = 'Entrar'; -$lang['btn_logout'] = 'Sair'; +$lang['btn_login'] = 'Iniciar sessão'; +$lang['btn_logout'] = 'Terminar sessão'; $lang['btn_admin'] = 'Administrar'; $lang['btn_update'] = 'Actualizar'; $lang['btn_delete'] = 'Apagar'; diff --git a/inc/lang/ro/lang.php b/inc/lang/ro/lang.php index 5dab68c69..2b929c2c2 100644 --- a/inc/lang/ro/lang.php +++ b/inc/lang/ro/lang.php @@ -2,7 +2,7 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author Tiberiu Micu <tibimicu@gmx.net> * @author Sergiu Baltariu <s_baltariu@yahoo.com> * @author Emanuel-Emeric Andrași <n30@mandrivausers.ro> @@ -10,6 +10,7 @@ * @author Marius OLAR <olarmariusalex@gmail.com> * @author Marius Olar <olarmariusalex@yahoo.com> * @author Marian Banica <banica.marian@gmail.com> + * @author Adrian Vesa <adrianvesa@dotwikis.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -75,6 +76,7 @@ $lang['regmissing'] = 'Ne pare rău, trebuie să completezi toate cî $lang['reguexists'] = 'Ne pare rău, un utilizator cu acest nume este deja autentificat.'; $lang['regsuccess'] = 'Utilizatorul a fost creat. Parola a fost trimisă prin e-mail.'; $lang['regsuccess2'] = 'Utilizatorul a fost creat.'; +$lang['regfail'] = 'Utilizatorul nu a putu fi creat.'; $lang['regmailfail'] = 'Se pare că a fost o eroare la trimiterea parolei prin e-mail. Contactează administratorul!'; $lang['regbadmail'] = 'Adresa de e-mail este nevalidă - dacă ești de părere că este o eroare contactează administratorul.'; $lang['regbadpass'] = 'Cele două parole furnizate nu sunt identice; încearcă din nou.'; @@ -87,6 +89,8 @@ $lang['profchanged'] = 'Profilul de utilizator a fost actualizat cu su $lang['profnodelete'] = 'Acest wiki nu accepta stergerea conturilor utilizatorilor'; $lang['profdeleteuser'] = 'Sterge cont'; $lang['profdeleted'] = 'Contul tau a fost sters de pe acest wiki'; +$lang['profconfdelete'] = 'As dori sa sterf contul meu de pe acest Wiki. <br/> Aceasta actiune nu poate fi anulata.'; +$lang['proffail'] = 'Profilul utilizatorului nu a fost actualizat.'; $lang['pwdforget'] = 'Parolă uitată? Obține una nouă!'; $lang['resendna'] = 'Acest wiki nu permite retrimiterea parolei.'; $lang['resendpwd'] = 'Configurează o parolă nouă pentru'; @@ -102,6 +106,7 @@ $lang['searchmedia_in'] = 'Caută în %s'; $lang['txt_upload'] = 'Selectează fișierul de încărcat:'; $lang['txt_filename'] = 'Încarcă fișierul ca (opțional):'; $lang['txt_overwrt'] = 'Suprascrie fișierul existent'; +$lang['maxuploadsize'] = 'Incarcare maxima % per fisier.'; $lang['lockedby'] = 'Momentan blocat de:'; $lang['lockexpire'] = 'Blocarea expiră la:'; $lang['js']['willexpire'] = 'Blocarea pentru editarea paginii expiră intr-un minut.\nPentru a preveni conflictele folosește butonul de previzualizare pentru resetarea blocării.'; @@ -183,6 +188,9 @@ $lang['difflink'] = 'Link către această vizualizare comparativă' $lang['diff_type'] = 'Vezi diferențe:'; $lang['diff_inline'] = 'Succesiv'; $lang['diff_side'] = 'Alăturate'; +$lang['diffprevrev'] = 'Versiuni anterioare'; +$lang['diffnextrev'] = 'Urmatoarea versiune'; +$lang['difflastrev'] = 'Ultima versiune'; $lang['line'] = 'Linia'; $lang['breadcrumb'] = 'Traseu:'; $lang['youarehere'] = 'Ești aici:'; @@ -287,8 +295,12 @@ $lang['i_policy'] = 'Politica ACL (liste de control a accesului) in $lang['i_pol0'] = 'Wiki deschis (oricine poate citi, scrie și încărca fișiere)'; $lang['i_pol1'] = 'Wiki public (oricine poate citi, utilizatorii înregistrați pot scrie și încărca fișiere)'; $lang['i_pol2'] = 'Wiki închis (doar utilizatorii înregistrați pot citi, scrie și încărca fișiere)'; +$lang['i_allowreg'] = 'Permite utilizatorilor sa se inregistreze singuri.'; $lang['i_retry'] = 'Încearcă din nou'; $lang['i_license'] = 'Te rugăm să alegi licența sub care dorești să publici conținutul:'; +$lang['i_license_none'] = 'Nu arata nici o informatie despre licenta.'; +$lang['i_pop_field'] = 'Te rog, ajuta-ne sa imbunatatim experienta DokuWiki.'; +$lang['i_pop_label'] = 'Odata pe luna, trimite date catre dezvoltatorii DokuWiki in mod anonim.'; $lang['recent_global'] = 'În acest moment vizualizezi modificările în interiorul spațiului de nume <b>%s</b>. De asemenea poți <a href="%s">vizualiza modificările recente în întregului wiki-ul</a>.'; $lang['years'] = 'acum %d ani'; $lang['months'] = 'acum %d luni'; @@ -321,3 +333,4 @@ $lang['media_perm_read'] = 'Ne pare rău, dar nu ai suficiente permisiuni $lang['media_perm_upload'] = 'Ne pare rău, dar nu ai suficiente permisiuni pentru a putea încărca fișiere.'; $lang['media_update'] = 'Încarcă noua versiune'; $lang['media_restore'] = 'Restaurează această versiune'; +$lang['searchresult'] = 'Rezultatul cautarii'; diff --git a/inc/lang/ru/lang.php b/inc/lang/ru/lang.php index 51f6ffd44..304233a48 100644 --- a/inc/lang/ru/lang.php +++ b/inc/lang/ru/lang.php @@ -33,6 +33,7 @@ * @author Nolf <m.kopachovets@gmail.com> * @author Takumo <9206984@mail.ru> * @author RainbowSpike <1@2.ru> + * @author dimsharav <dimsharav@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -64,9 +65,9 @@ $lang['btn_update'] = 'Обновить'; $lang['btn_delete'] = 'Удалить'; $lang['btn_back'] = 'Назад'; $lang['btn_backlink'] = 'Ссылки сюда'; -$lang['btn_subscribe'] = 'Подписаться (все правки)'; +$lang['btn_subscribe'] = 'Управление подписками'; $lang['btn_profile'] = 'Профиль'; -$lang['btn_reset'] = 'Сброс'; +$lang['btn_reset'] = 'Вернуть'; $lang['btn_resendpwd'] = 'Установить новый пароль'; $lang['btn_draft'] = 'Править черновик'; $lang['btn_recover'] = 'Восстановить черновик'; @@ -125,28 +126,29 @@ $lang['resendpwdconfirm'] = 'Ссылка для подтверждения $lang['resendpwdsuccess'] = 'Ваш новый пароль был выслан по электронной почте.'; $lang['license'] = 'За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:'; $lang['licenseok'] = 'Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии:'; -$lang['searchmedia'] = 'Поиск по имени файла:'; +$lang['searchmedia'] = 'Поиск по имени файла'; $lang['searchmedia_in'] = 'Поиск в %s'; $lang['txt_upload'] = 'Выберите файл для загрузки:'; $lang['txt_filename'] = 'Введите имя файла в вики (необязательно):'; $lang['txt_overwrt'] = 'Перезаписать существующий файл'; -$lang['maxuploadsize'] = 'Максимальный размер загружаемого файла %s'; -$lang['lockedby'] = 'В данный момент заблокирован:'; -$lang['lockexpire'] = 'Блокировка истекает в:'; +$lang['maxuploadsize'] = 'Макс. размер загружаемого файла %s'; +$lang['lockedby'] = 'В данный момент заблокировано пользователем'; +$lang['lockexpire'] = 'Блокировка истекает в'; $lang['js']['willexpire'] = 'Ваша блокировка этой страницы на редактирование истекает в течение минуты.\nЧтобы предотвратить конфликты используйте кнопку «Просмотр» для сброса таймера блокировки.'; $lang['js']['notsavedyet'] = 'Несохранённые изменения будут потеряны. Вы действительно хотите продолжить?'; $lang['js']['searchmedia'] = 'Поиск файлов'; $lang['js']['keepopen'] = 'Не закрывать окно после выбора'; $lang['js']['hidedetails'] = 'Скрыть детали'; -$lang['js']['mediatitle'] = 'Настройки ссылок'; +$lang['js']['mediatitle'] = 'Настройка ссылки'; $lang['js']['mediadisplay'] = 'Тип ссылки'; -$lang['js']['mediaalign'] = 'Выравнивание'; -$lang['js']['mediasize'] = 'Размер изображения'; -$lang['js']['mediatarget'] = 'Значение target ссылки'; +$lang['js']['mediaalign'] = 'Выравнивание +'; +$lang['js']['mediasize'] = 'Размер'; +$lang['js']['mediatarget'] = 'Целевая ссылка'; $lang['js']['mediaclose'] = 'Закрыть'; $lang['js']['mediainsert'] = 'Вставить'; -$lang['js']['mediadisplayimg'] = 'Показывать изображение.'; -$lang['js']['mediadisplaylnk'] = 'Показывать только ссылку.'; +$lang['js']['mediadisplayimg'] = 'Показывать изображение'; +$lang['js']['mediadisplaylnk'] = 'Показывать только ссылку'; $lang['js']['mediasmall'] = 'Малая версия'; $lang['js']['mediamedium'] = 'Средняя версия'; $lang['js']['medialarge'] = 'Крупная версия'; @@ -155,10 +157,10 @@ $lang['js']['medialnk'] = 'Ссылка на подробности'; $lang['js']['mediadirect'] = 'Прямая ссылка на оригинал'; $lang['js']['medianolnk'] = 'Без ссылки'; $lang['js']['medianolink'] = 'Не давать ссылку на изображение'; -$lang['js']['medialeft'] = 'Выровнять изображение по левому краю.'; -$lang['js']['mediaright'] = 'Выровнять изображение по правому краю.'; -$lang['js']['mediacenter'] = 'Выровнять изображение по центру.'; -$lang['js']['medianoalign'] = 'Не выравнивать.'; +$lang['js']['medialeft'] = 'Выровнять изображение по левому краю'; +$lang['js']['mediaright'] = 'Выровнять изображение по правому краю'; +$lang['js']['mediacenter'] = 'Выровнять изображение по центру'; +$lang['js']['medianoalign'] = 'Не выравнивать'; $lang['js']['nosmblinks'] = 'Ссылка на сетевые каталоги Windows работает только из MS Internet Explorer, но вы можете скопировать ссылку.'; $lang['js']['linkwiz'] = 'Мастер ссылок'; $lang['js']['linkto'] = 'Ссылка на:'; @@ -200,7 +202,7 @@ $lang['reference'] = 'Ссылки для'; $lang['ref_inuse'] = 'Этот файл не может быть удалён, так как он используется на следующих страницах:'; $lang['ref_hidden'] = 'Некоторые ссылки находятся на страницах, на чтение которых у вас нет прав доступа'; $lang['hits'] = 'соответствий'; -$lang['quickhits'] = 'Соответствия в названиях страниц'; +$lang['quickhits'] = 'Подходящие страницы'; $lang['toc'] = 'Содержание'; $lang['current'] = 'текущий'; $lang['yours'] = 'Ваша версия'; @@ -339,7 +341,7 @@ $lang['minutes'] = '%d минут назад'; $lang['seconds'] = '%d секунд назад'; $lang['wordblock'] = 'Ваши изменения не сохранены, поскольку они содержат блокируемые слова (спам).'; $lang['media_uploadtab'] = 'Загрузка'; -$lang['media_searchtab'] = 'Поиск'; +$lang['media_searchtab'] = 'Найти'; $lang['media_file'] = 'Файл'; $lang['media_viewtab'] = 'Просмотр'; $lang['media_edittab'] = 'Правка'; diff --git a/inc/lang/sk/lang.php b/inc/lang/sk/lang.php index 87bdd79b2..df711cd1b 100644 --- a/inc/lang/sk/lang.php +++ b/inc/lang/sk/lang.php @@ -53,7 +53,7 @@ $lang['btn_deleteuser'] = 'Zrušiť môj účet'; $lang['btn_img_backto'] = 'Späť na %s'; $lang['btn_mediaManager'] = 'Prezrieť v správcovi médií'; $lang['loggedinas'] = 'Prihlásený(á) ako:'; -$lang['user'] = 'Užívateľské meno'; +$lang['user'] = 'Používateľské meno'; $lang['pass'] = 'Heslo'; $lang['newpass'] = 'Nové heslo'; $lang['oldpass'] = 'Potvrď aktuálne heslo'; @@ -61,27 +61,27 @@ $lang['passchk'] = 'Ešte raz znovu'; $lang['remember'] = 'Zapamätaj si ma'; $lang['fullname'] = 'Celé meno'; $lang['email'] = 'E-Mail'; -$lang['profile'] = 'Užívateľský profil'; -$lang['badlogin'] = 'Zadané užívateľské meno a heslo nie je správne.'; +$lang['profile'] = 'Používateľský profil'; +$lang['badlogin'] = 'Zadané používateľské meno a heslo nie je správne.'; $lang['badpassconfirm'] = 'Ľutujem, heslo bolo nesprávne.'; $lang['minoredit'] = 'Menšie zmeny'; $lang['draftdate'] = 'Koncept automaticky uložený'; $lang['nosecedit'] = 'Stránka bola medzičasom zmenená, informácie o sekcii sú zastaralé a z tohto dôvodu bola nahraná celá stránka.'; $lang['searchcreatepage'] = 'Pokiaľ ste nenašli, čo hľadáte, skúste požadovanú stránku sami vytvoriť stlačením tlačidla \'\'Vytvoriť stránku\'\'.'; $lang['regmissing'] = 'Musíte vyplniť všetky údaje.'; -$lang['reguexists'] = 'Užívateľ s rovnakým menom je už zaregistrovaný.'; -$lang['regsuccess'] = 'Užívateľský účet bol vytvorený a heslo zaslané emailom.'; -$lang['regsuccess2'] = 'Užívateľský účet bol vytvorený.'; -$lang['regfail'] = 'Používateľ nemôže byť vytvorený.'; +$lang['reguexists'] = 'Používateľ s rovnakým menom je už zaregistrovaný.'; +$lang['regsuccess'] = 'Používateľský účet bol vytvorený a heslo zaslané emailom.'; +$lang['regsuccess2'] = 'Používateľský účet bol vytvorený.'; +$lang['regfail'] = 'Používateľský účet nemôže byť vytvorený.'; $lang['regmailfail'] = 'Zdá sa, že nastala chyba pri posielaní mailu s heslom. Skúste kontaktovať správcu.'; $lang['regbadmail'] = 'Zadaná emailová adresa nie je platná. Pokiaľ si myslíte, že to je zle, skúste kontaktovať správcu.'; $lang['regbadpass'] = 'Zadané heslá nie sú rovnaké, zadajte ich prosím znovu.'; $lang['regpwmail'] = 'Vaše heslo do systému DokuWiki'; -$lang['reghere'] = 'Nemáte užívateľský účet? Vytvorte si ho'; +$lang['reghere'] = 'Nemáte používateľský účet? Vytvorte si ho'; $lang['profna'] = 'Táto wiki nepodporuje zmenu profilu'; $lang['profnochange'] = 'Žiadne zmeny, nie je čo robiť.'; $lang['profnoempty'] = 'Prázdne meno alebo mailová adresa nie sú povolené.'; -$lang['profchanged'] = 'Užívateľský účet úspešne zmenený.'; +$lang['profchanged'] = 'Profil požívateľa bol úspešne zmenený.'; $lang['profnodelete'] = 'Táto wiki neumožňuje zrušenie používateľov.'; $lang['profdeleteuser'] = 'Zrušiť účet'; $lang['profdeleted'] = 'Váš účet bol zrušený v tejto wiki.'; @@ -92,7 +92,7 @@ $lang['pwdforget'] = 'Zabudli ste heslo? Získajte nové!'; $lang['resendna'] = 'Táto wiki nepodporuje opätovné zasielanie hesla.'; $lang['resendpwd'] = 'Nastaviť nové heslo pre'; $lang['resendpwdmissing'] = 'Prepáčte, musíte vyplniť všetky polia.'; -$lang['resendpwdnouser'] = 'Prepáčte, nemôžeme nájsť zadaného užívateľa v databáze.'; +$lang['resendpwdnouser'] = 'Prepáčte, nemôžeme nájsť zadaného používateľa v databáze.'; $lang['resendpwdbadauth'] = 'Prepáčte, tento autorizačný kód nie je platný. Uistite sa, či ste použili celý autorizačný odkaz.'; $lang['resendpwdconfirm'] = 'Autorizačný odkaz bol zaslaný na e-mail.'; $lang['resendpwdsuccess'] = 'Vaše nové heslo bolo zaslané na e-mail.'; @@ -206,7 +206,7 @@ $lang['sidebar'] = 'Bočný panel'; $lang['mail_newpage'] = 'stránka pridaná:'; $lang['mail_changed'] = 'stránka zmenená:'; $lang['mail_subscribe_list'] = 'stránky zmenené v mennom priestore:'; -$lang['mail_new_user'] = 'nový užívateľ:'; +$lang['mail_new_user'] = 'nový používateľ:'; $lang['mail_upload'] = 'nahraný súbor:'; $lang['changes_type'] = 'Prehľad zmien'; $lang['pages_changes'] = 'Stránok'; @@ -268,7 +268,7 @@ $lang['subscr_m_receive'] = 'Dostávať'; $lang['subscr_style_every'] = 'email pri každej zmene'; $lang['subscr_style_digest'] = 'email so zhrnutím zmien pre každú stránku (perióda %.2f dňa)'; $lang['subscr_style_list'] = 'zoznam zmenených stránok od posledného emailu (perióda %.2f dňa)'; -$lang['authtempfail'] = 'Užívateľská autentifikácia je dočasne nedostupná. Ak táto situácia pretrváva, prosím informujte správcu systému.'; +$lang['authtempfail'] = 'Používateľská autentifikácia je dočasne nedostupná. Ak táto situácia pretrváva, prosím informujte správcu systému.'; $lang['i_chooselang'] = 'Zvoľte váš jazyk'; $lang['i_installer'] = 'DokuWiki inštalátor'; $lang['i_wikiname'] = 'Názov Wiki'; @@ -287,8 +287,8 @@ $lang['i_success'] = 'Konfigurácia bola úspešne ukončená. Teraz $lang['i_failure'] = 'Pri zápise konfiguračného súboru nastali nejaké chyby. Potrebujete ich opraviť manuálne pred tým, ako budete môcť používať <a href="doku.php?id=wiki:welcome">vašu novú DokuWiki</a>.'; $lang['i_policy'] = 'Počiatočná ACL politika'; $lang['i_pol0'] = 'Otvorená Wiki (čítanie, zápis a nahrávanie pre každého)'; -$lang['i_pol1'] = 'Verejná Wiki (čítanie pre každého, zápis a nahrávanie pre registrovaných užívateľov)'; -$lang['i_pol2'] = 'Uzatvorená Wiki (čítanie, zápis a nahrávanie len pre registrovaných užívateľov)'; +$lang['i_pol1'] = 'Verejná Wiki (čítanie pre každého, zápis a nahrávanie pre registrovaných používateľov)'; +$lang['i_pol2'] = 'Uzatvorená Wiki (čítanie, zápis a nahrávanie len pre registrovaných používateľov)'; $lang['i_allowreg'] = 'Povolenie samostanej registrácie používateľov'; $lang['i_retry'] = 'Skúsiť znovu'; $lang['i_license'] = 'Vyberte licenciu, pod ktorou chcete uložiť váš obsah:'; diff --git a/inc/lang/sk/locked.txt b/inc/lang/sk/locked.txt index 5063c0605..fae400bca 100644 --- a/inc/lang/sk/locked.txt +++ b/inc/lang/sk/locked.txt @@ -1,3 +1,3 @@ ====== Stránka je uzamknutá ====== -Tato stránka je práve uzamknutá pre úpravy iným užívateľom. Musíte počkať dovtedy, pokiaľ daný užívateľ dokončí svoje úpravy alebo pokiaľ tento zámok stratí platnosť. +Tato stránka je práve uzamknutá pre úpravy iným používateľom. Musíte počkať dovtedy, pokiaľ daný používateľ dokončí svoje úpravy alebo pokiaľ tento zámok stratí platnosť. diff --git a/inc/lang/sk/password.txt b/inc/lang/sk/password.txt index 2b85e9c39..582844f29 100644 --- a/inc/lang/sk/password.txt +++ b/inc/lang/sk/password.txt @@ -3,7 +3,7 @@ Dobrý deň, Tu sú prihlasovacie informácie pre @TITLE@ (@DOKUWIKIURL@) Meno : @FULLNAME@ -Užívateľské meno : @LOGIN@ +Používateľské meno : @LOGIN@ Heslo : @PASSWORD@ -- diff --git a/inc/lang/sk/register.txt b/inc/lang/sk/register.txt index 59c225d7c..b939dccca 100644 --- a/inc/lang/sk/register.txt +++ b/inc/lang/sk/register.txt @@ -1,3 +1,3 @@ ====== Zaregistrujte sa ako nový užívateľ ====== -Aby ste získali užívateľský účet, vyplňte prosím všetky informácie v nasledujúcom formulári. Zadajte **platnú** mailovú adresu, na ktorú bude zaslané heslo. Užívateľské meno musí byť v platnom [[doku>pagename|formáte]] (ktorý je rovnaký ako formát názvu stránky). +Aby ste získali používateľský účet, vyplňte prosím všetky informácie v nasledujúcom formulári. Zadajte **platnú** mailovú adresu, na ktorú bude zaslané heslo. Používateľské meno musí byť v platnom [[doku>pagename|formáte]] (ktorý je rovnaký ako formát názvu stránky). diff --git a/inc/lang/sk/registermail.txt b/inc/lang/sk/registermail.txt index a0bf9e314..9cde994a3 100644 --- a/inc/lang/sk/registermail.txt +++ b/inc/lang/sk/registermail.txt @@ -1,6 +1,6 @@ -Nový užívateľ bol registrovaný. Tu sú detaily: +Nový používateľ bol registrovaný. Tu sú detaily: -Užívateľské meno : @NEWUSER@ +Používateľské meno : @NEWUSER@ Celé meno : @NEWNAME@ E-Mail : @NEWEMAIL@ diff --git a/inc/lang/sk/updateprofile.txt b/inc/lang/sk/updateprofile.txt index 67b823dc5..33b5e5b78 100644 --- a/inc/lang/sk/updateprofile.txt +++ b/inc/lang/sk/updateprofile.txt @@ -1,4 +1,4 @@ -====== Zmena vášho užívateľského profilu ====== +====== Zmena vášho používateľského profilu ====== Potrebujete vyplniť len tie polia, ktoré chcete zmeniť. Nemôžete zmeniť prihlasovacie meno. diff --git a/inc/lang/th/lang.php b/inc/lang/th/lang.php index 59332f70b..ee1f1e078 100644 --- a/inc/lang/th/lang.php +++ b/inc/lang/th/lang.php @@ -2,12 +2,13 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author Komgrit Niyomrath <n.komgrit@gmail.com> * @author Arthit Suriyawongkul <arthit@gmail.com> * @author Kittithat Arnontavilas <mrtomyum@gmail.com> * @author Thanasak Sompaisansin <jombthep@gmail.com> * @author Yuthana Tantirungrotechai <yt203y@gmail.com> + * @author Amnuay <amnuay@gmail.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -48,6 +49,7 @@ $lang['btn_recover'] = 'กู้คืนเอกสารฉบั $lang['btn_draftdel'] = 'ลบเอกสารฉบับร่าง'; $lang['btn_revert'] = 'กู้คืน'; $lang['btn_register'] = 'สร้างบัญชีผู้ใช้'; +$lang['btn_apply'] = 'นำไปใช้'; $lang['btn_media'] = 'ส่วนจัดการสื่อและไฟล์'; $lang['btn_deleteuser'] = 'ลบบัญชีผู้ใช้งานของฉัน'; $lang['btn_img_backto'] = 'กลับไปยัง %s'; @@ -72,6 +74,7 @@ $lang['regmissing'] = 'ขออภัย คุณต้องกร $lang['reguexists'] = 'ชื่อบัญชีที่ใส่นั้นมีผู้อื่นได้ใช้แล้ว กรุณาเลือกชื่อผู้ใช้อื่น'; $lang['regsuccess'] = 'ผู้ใช้ถูกสร้างแล้ว และรหัสผ่านได้ถูกส่งไปทางอีเมลแล้ว'; $lang['regsuccess2'] = 'ชื่อบัญชีได้ถูกสร้างขึ้น'; +$lang['regfail'] = 'การสร้างผู้ใช้ไม่สำเร็จ'; $lang['regmailfail'] = 'ดูเหมือนจะมีข้อผิดพลาดในการส่งรหัสผ่านทางเมล์ กรุณาติดต่อผู้ดูแลระบบ'; $lang['regbadmail'] = 'รูปแบบอีเมลไม่ถูกต้อง ให้ใส่อีเมลให้ถูกต้องตามรูปแบบอีเมล หรือให้ทำช่องอีเมลให้ว่างแทน'; $lang['regbadpass'] = 'รหัสผ่านที่ใส่ไม่ถูกต้อง'; @@ -85,8 +88,11 @@ $lang['profnodelete'] = 'วิกินี้ไม่รองรั $lang['profdeleteuser'] = 'ลบบัญชีผู้ใช้งาน'; $lang['profdeleted'] = 'บัญชีผู้ใช้งานของคุณได้ถูกลบออกจากวิกิแล้ว'; $lang['profconfdelete'] = 'ฉันอยากลบบัญชีผู้ใช้งานของฉันจากวิกินี้ <br/> การดำเนินการนี้ไม่สามารถแก้ไขคืนได้ '; +$lang['profconfdeletemissing'] = 'ท่านไม่ได้ยืนยันในช่องยืนยัน'; +$lang['proffail'] = 'ข้อมูลผู้ใช้ไม่เป็นปัจจุบัน'; $lang['pwdforget'] = 'ลืมรหัสผ่านหรือ? เอาอันใหม่สิ'; $lang['resendna'] = 'วิกินี้ไม่รองรับการส่งรหัสผ่านซ้ำ'; +$lang['resendpwd'] = 'สร้างรหัสผ่านใหม่สำหรับ'; $lang['resendpwdmissing'] = 'ขออภัย, คุณต้องกรอกทุกช่อง'; $lang['resendpwdnouser'] = 'ขออภัย, เราไม่พบผู้ใช้คนนี้ในฐานข้อมูลของเรา'; $lang['resendpwdbadauth'] = 'ขออภัย, รหัสนี้ยังใช้ไม่ได้ กรุณาตรวจสอบว่าคุณกดลิ้งค์ยืนยันแล้ว'; @@ -99,6 +105,7 @@ $lang['searchmedia_in'] = 'สืบค้นใน %s'; $lang['txt_upload'] = 'เลือกไฟล์ที่จะอัพโหลด:'; $lang['txt_filename'] = 'อัพโหลดเป็น(ตัวเลือก):'; $lang['txt_overwrt'] = 'เขียนทับไฟล์ที่มีอยู่แล้ว'; +$lang['maxuploadsize'] = 'อัพโหลด สูงสุด %s ต่อไฟล์'; $lang['lockedby'] = 'ตอนนี้ถูกล๊อคโดย:'; $lang['lockexpire'] = 'การล๊อคจะหมดอายุเมื่อ:'; $lang['js']['willexpire'] = 'การล๊อคเพื่อแก้ไขหน้านี้กำลังจะหมดเวลาในอีก \n นาที เพื่อที่จะหลีกเลี่ยงข้อขัดแย้งให้ใช้ปุ่ม "Preview" เพื่อรีเซ็ทเวลาใหม่'; @@ -106,6 +113,19 @@ $lang['js']['notsavedyet'] = 'การแก้ไขที่ไม่ไ $lang['js']['searchmedia'] = 'ค้นหาไฟล์'; $lang['js']['keepopen'] = 'เปิดหน้าต่างไว้ระหว่างที่เลือก'; $lang['js']['hidedetails'] = 'ซ่อนรายละเอียด'; +$lang['js']['mediatitle'] = 'กำหนดข้อมูลลิงค์'; +$lang['js']['mediadisplay'] = 'ชนิดของลิงค์'; +$lang['js']['mediaalign'] = 'การจัดวาง'; +$lang['js']['mediasize'] = 'ขนาดรูปภาพ'; +$lang['js']['mediatarget'] = 'เป้าหมายของลิงค์'; +$lang['js']['mediaclose'] = 'ปิด'; +$lang['js']['mediainsert'] = 'แทรก'; +$lang['js']['mediadisplayimg'] = 'แสดงรูปภาพ'; +$lang['js']['mediadisplaylnk'] = 'แสดงลิงค์ เท่านั้น'; +$lang['js']['mediasmall'] = 'รูปแบบขนาดเล็ก'; +$lang['js']['mediamedium'] = 'รูปแบบขนาดกลาง'; +$lang['js']['medialarge'] = 'รูปแบบขนาดใหญ่'; +$lang['js']['mediaoriginal'] = 'รูปแบบตั้งต้น'; $lang['js']['nosmblinks'] = 'เชื่อมไปยังหน้าต่างแบ่งปัน ทำงานได้กับเฉพาะไมโครซอฟท์อินเตอร์เน็ตเอ็กซโปรเรอร์(IE) คุณยังคงสามารถคัดลอกและแปะลิ้งค์ได้'; $lang['js']['linkwiz'] = 'ลิงค์วิเศษ'; $lang['js']['linkto'] = 'ลิงค์ไป:'; diff --git a/inc/lang/uk/lang.php b/inc/lang/uk/lang.php index 74a717bfe..7c99b6322 100644 --- a/inc/lang/uk/lang.php +++ b/inc/lang/uk/lang.php @@ -2,7 +2,7 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author Oleksiy Voronin <ovoronin@gmail.com> * @author serg_stetsuk@ukr.net * @author Oleksandr Kunytsia <okunia@gmail.com> @@ -12,6 +12,7 @@ * @author Egor Smkv <egorsmkv@gmail.com> * @author Max Lyashuk <m_lyashuk@ukr.net> * @author Pavel <pavelholovko@yandex.ru> + * @author Maksim <nikropol@yandex.ru> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -88,6 +89,8 @@ $lang['profnochange'] = 'Немає змін, немає що роби $lang['profnoempty'] = 'Ім’я або e-mail не можуть бути пустими.'; $lang['profchanged'] = 'Профіль успішно змінено.'; $lang['profdeleteuser'] = 'Видалити аккаунт'; +$lang['profdeleted'] = 'Ваш профіль користувача буде видалено з цієї wiki.'; +$lang['proffail'] = 'Профіль користувача не вдалося поновити.'; $lang['pwdforget'] = 'Забули пароль? Отримайте новий'; $lang['resendna'] = 'Ця Вікі не підтримує повторне відправлення пароля.'; $lang['resendpwd'] = 'Встановити новий пароль для'; @@ -140,6 +143,7 @@ $lang['js']['linkto'] = 'Посилання на:'; $lang['js']['del_confirm'] = 'Дійсно знищити обрані елементи?'; $lang['js']['restore_confirm'] = 'Дійсно відновити цю версію?'; $lang['js']['media_diff'] = 'Переглянути різницю:'; +$lang['js']['media_diff_portions'] = 'Прогорнути'; $lang['js']['media_select'] = 'Оберіть файли'; $lang['js']['media_upload_btn'] = 'Завантажити'; $lang['js']['media_done_btn'] = 'Успішно'; @@ -291,6 +295,7 @@ $lang['i_pol1'] = 'Публічна Вікі (читання дл $lang['i_pol2'] = 'Закрита Вікі (читання, запис та завантаження тільки для зареєстрованих користувачів)'; $lang['i_retry'] = 'Повторити'; $lang['i_license'] = 'Будь ласка, виберіть тип ліцензії, під якою Ві бажаєте опублікувати матеріал:'; +$lang['i_license_none'] = 'Не показувати жодної інформації про ліцензії.'; $lang['recent_global'] = 'Ви переглядаєте зміни в межах простору імен <b>%s</b>. Також можна <a href="%s">переглянути зміни в межах усієї Вікі</a>.'; $lang['years'] = '%d років тому'; $lang['months'] = '%d місяців тому'; @@ -307,3 +312,11 @@ $lang['media_edittab'] = 'Редагувати'; $lang['media_historytab'] = 'Історія'; $lang['media_sort_name'] = 'Ім’я'; $lang['media_sort_date'] = 'Дата'; +$lang['media_meta_edited'] = 'метаданні відредаговано'; +$lang['media_perm_read'] = 'Вибачте, у вас не достатньо прав для читання цього файлу.'; +$lang['media_update'] = 'Завантажити нову версію'; +$lang['media_restore'] = 'Відновити цю версію'; +$lang['currentns'] = 'Поточний діапазон імен'; +$lang['searchresult'] = 'Результати пошуку'; +$lang['plainhtml'] = 'Простий HTML'; +$lang['wikimarkup'] = 'Wiki розмітка'; diff --git a/inc/lang/uk/resetpwd.txt b/inc/lang/uk/resetpwd.txt new file mode 100644 index 000000000..b24e88473 --- /dev/null +++ b/inc/lang/uk/resetpwd.txt @@ -0,0 +1,3 @@ +====== Встановити новий пароль ====== + +Будь-ласка, введіть новий пароль для цієї wiki.
\ No newline at end of file diff --git a/inc/lang/zh/lang.php b/inc/lang/zh/lang.php index d179ad634..03b182390 100644 --- a/inc/lang/zh/lang.php +++ b/inc/lang/zh/lang.php @@ -25,6 +25,7 @@ * @author qinghao <qingxianhao@gmail.com> * @author Yuwei Sun <yuwei@hrz.tu-chemnitz.de> * @author Errol <errol@hotmail.com> + * @author Garfield <garfield_550@outlook.com> */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/inc/load.php b/inc/load.php index 42a6a6362..99e004b23 100644 --- a/inc/load.php +++ b/inc/load.php @@ -107,14 +107,15 @@ function load_autoload($name){ ); if(isset($classes[$name])){ - require_once($classes[$name]); - return; + require ($classes[$name]); + return true; } // our own namespace $name = str_replace('\\', '/', $name); if(substr($name, 0, 9) == 'dokuwiki/') { - require_once(substr($name, 9) . '.php'); + require substr($name, 9) . '.php'; + return true; } // Plugin loading @@ -124,9 +125,10 @@ function load_autoload($name){ $c = ((count($m) === 4) ? "/{$m[3]}" : ''); $plg = DOKU_PLUGIN . "{$m[2]}/{$m[1]}$c.php"; if(file_exists($plg)){ - include_once DOKU_PLUGIN . "{$m[2]}/{$m[1]}$c.php"; + require $plg; } - return; + return true; } + return false; } diff --git a/inc/remote.php b/inc/remote.php index 3e032049d..771d12d25 100644 --- a/inc/remote.php +++ b/inc/remote.php @@ -236,6 +236,9 @@ class RemoteAPI { if (!$conf['remote']) { throw new RemoteAccessDeniedException('server error. RPC server not enabled.',-32604); //should not be here,just throw } + if(trim($conf['remoteuser']) == '!!not set!!') { + return false; + } if(!$conf['useacl']) { return true; } diff --git a/inc/search.php b/inc/search.php index 935969d3f..cc3579c3c 100644 --- a/inc/search.php +++ b/inc/search.php @@ -28,6 +28,11 @@ function search(&$data,$base,$func,$opts,$dir='',$lvl=1,$sort='natural'){ $files = array(); $filepaths = array(); + // safeguard against runaways #1452 + if($base == '' || $base == '/') { + throw new RuntimeException('No valid $base passed to search() - possible misconfiguration or bug'); + } + //read in directories and files $dh = @opendir($base.'/'.$dir); if(!$dh) return; diff --git a/inc/template.php b/inc/template.php index a1bdc8d64..ec9974211 100644 --- a/inc/template.php +++ b/inc/template.php @@ -303,10 +303,13 @@ function tpl_metaheaders($alt = true) { // the usual stuff $head['meta'][] = array('name'=> 'generator', 'content'=> 'DokuWiki'); - $head['link'][] = array( - 'rel' => 'search', 'type'=> 'application/opensearchdescription+xml', - 'href'=> DOKU_BASE.'lib/exe/opensearch.php', 'title'=> $conf['title'] - ); + if(actionOK('search')) { + $head['link'][] = array( + 'rel' => 'search', 'type'=> 'application/opensearchdescription+xml', + 'href'=> DOKU_BASE.'lib/exe/opensearch.php', 'title'=> $conf['title'] + ); + } + $head['link'][] = array('rel'=> 'start', 'href'=> DOKU_BASE); if(actionOK('index')) { $head['link'][] = array( @@ -1,8 +1,68 @@ <?php /** - * Forwarder to doku.php + * Forwarder/Router to doku.php + * + * In normal usage, this script simply redirects to doku.php. However it can also be used as a routing + * script with PHP's builtin webserver. It takes care of .htaccess compatible rewriting, directory/file + * access permission checking and passing on static files. + * + * Usage example: + * + * php -S localhost:8000 index.php * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @author Andreas Gohr <andi@splitbrain.org> */ -header("Location: doku.php"); +if(php_sapi_name() != 'cli-server') { + header("Location: doku.php"); + exit; +} + +# ROUTER starts below + +# avoid path traversal +$_SERVER['SCRIPT_NAME'] = str_replace('/../', '/', $_SERVER['SCRIPT_NAME']); + +# routing aka. rewriting +if(preg_match('/^\/_media\/(.*)/', $_SERVER['SCRIPT_NAME'], $m)) { + # media dispatcher + $_GET['media'] = $m[1]; + require $_SERVER['DOCUMENT_ROOT'] . '/lib/exe/fetch.php'; + +} else if(preg_match('/^\/_detail\/(.*)/', $_SERVER['SCRIPT_NAME'], $m)) { + # image detail view + $_GET['media'] = $m[1]; + require $_SERVER['DOCUMENT_ROOT'] . '/lib/exe/detail.php'; + +} else if(preg_match('/^\/_media\/(.*)/', $_SERVER['SCRIPT_NAME'], $m)) { + # exports + $_GET['do'] = 'export_' . $m[1]; + $_GET['id'] = $m[2]; + require $_SERVER['DOCUMENT_ROOT'] . '/doku.php'; + +} elseif($_SERVER['SCRIPT_NAME'] == '/index.php') { + # 404s are automatically mapped to index.php + if(isset($_SERVER['PATH_INFO'])) { + $_GET['id'] = $_SERVER['PATH_INFO']; + } + require $_SERVER['DOCUMENT_ROOT'] . '/doku.php'; + +} else if(file_exists($_SERVER['DOCUMENT_ROOT'] . $_SERVER['SCRIPT_NAME'])) { + # existing files + + # access limitiations + if(preg_match('/\/([\._]ht|README$|VERSION$|COPYING$)/', $_SERVER['SCRIPT_NAME']) or + preg_match('/^\/(data|conf|bin|inc)\//', $_SERVER['SCRIPT_NAME']) + ) { + die('Access denied'); + } + + if(substr($_SERVER['SCRIPT_NAME'], -4) == '.php') { + # php scripts + require $_SERVER['DOCUMENT_ROOT'] . $_SERVER['SCRIPT_NAME']; + } else { + # static files + return false; + } +} +# 404 diff --git a/lib/exe/ajax.php b/lib/exe/ajax.php index a200a3ded..b3e9a618f 100644 --- a/lib/exe/ajax.php +++ b/lib/exe/ajax.php @@ -303,7 +303,8 @@ function ajax_mediaupload(){ ); } $json = new JSON; - echo htmlspecialchars($json->encode($result), ENT_NOQUOTES); + header('Content-Type: application/json'); + echo $json->encode($result); } /** @@ -428,7 +429,7 @@ function ajax_linkwiz(){ echo '<a href="'.$link.'" title="'.htmlspecialchars($item['id']).'" class="wikilink1">'.$name.'</a>'; - if($item['title']){ + if(!blank($item['title'])){ echo '<span>'.htmlspecialchars($item['title']).'</span>'; } echo '</div>'; diff --git a/lib/exe/js.php b/lib/exe/js.php index 16d22daf2..e850218cf 100644 --- a/lib/exe/js.php +++ b/lib/exe/js.php @@ -173,7 +173,7 @@ function js_load($file){ // is it a include_once? if($match[1]){ $base = utf8_basename($ifile); - if($loaded[$base]){ + if(array_key_exists($base, $loaded) && $loaded[$base] === true){ $data = str_replace($match[0], '' ,$data); continue; } @@ -419,9 +419,9 @@ function js_compress($s){ // Only consider deleting whitespace if the signs before and after // are not equal and are not an operator which may not follow itself. - if ((!$lch || $s[$i+1] == ' ') + if ($i+1 < $slen && ((!$lch || $s[$i+1] == ' ') || $lch != $s[$i+1] - || strpos($ops,$s[$i+1]) === false) { + || strpos($ops,$s[$i+1]) === false)) { // leading spaces if($i+1 < $slen && (strpos($chars,$s[$i+1]) !== false)){ $i = $i + 1; diff --git a/lib/plugins/acl/lang/cy/help.txt b/lib/plugins/acl/lang/cy/help.txt new file mode 100644 index 000000000..f3d6474f8 --- /dev/null +++ b/lib/plugins/acl/lang/cy/help.txt @@ -0,0 +1,10 @@ +=== Cymorth Byw: === + +Ar y dudalen hon, gallwch chi ychwanegu a dileu hawliau ar gyfer namespaces a thudalennau yn eich wici. + * Mae'r panel ar y chwith yn dangos pob namespace a thudalen. + * Mae'r ffurflen uchod yn eich galluogi chi i weld a newid hawliau defnyddiwr neu grŵp a ddewiswyd. + * Yn y tabl isod, dengys pob rheol rheoli mynediad sydd wedi'u gosod yn bresennol. Gallwch chi ei ddefnyddio i ddileu neu newid sawl rheol ar y tro. + +Gall darllen [[doku>acl|dogfennaeth swyddogol ar ACL]] fod o fudd er mwyn eich helpu chi ddeall yn llawn sut mae rheolaeth mynediad yn gweithio mewn DokuWiki. + + diff --git a/lib/plugins/acl/lang/cy/lang.php b/lib/plugins/acl/lang/cy/lang.php new file mode 100644 index 000000000..add3ca404 --- /dev/null +++ b/lib/plugins/acl/lang/cy/lang.php @@ -0,0 +1,47 @@ +<?php +/** + * welsh language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Andreas Gohr <andi@splitbrain.org> + * @author Anika Henke <anika@selfthinker.org> + * @author Matthias Grimm <matthiasgrimm@users.sourceforge.net> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +$lang['admin_acl'] = 'Rheolaeth Rhestr Rheoli Mynediad'; +$lang['acl_group'] = 'Grŵp:'; +$lang['acl_user'] = 'Defnyddiwr:'; +$lang['acl_perms'] = 'Hawliau'; +$lang['page'] = 'Tudalen'; +$lang['namespace'] = 'Namespace'; //namespace + +$lang['btn_select'] = 'Dewis'; + +$lang['p_user_id'] = 'Mae gan y defnyddiwr <b class="acluser">%s</b> yr hawliau canlynol yn bresennol ar dudalen <b class="aclpage">%s</b>: <i>%s</i>.'; +$lang['p_user_ns'] = 'Mae gan y defnyddiwr <b class="acluser">%s</b> yr hawliau canlynol yn bresennol mewn namespace <b class="aclns">%s</b>: <i>%s</i>.';//namespace +$lang['p_group_id'] = 'Mae gan aelodau grŵp <b class="aclgroup">%s</b> yr hawliau canlynol yn bresennol ar dudalen <b class="aclpage">%s</b>: <i>%s</i>.'; +$lang['p_group_ns'] = 'Mae gan aelodau grŵp <b class="aclgroup">%s</b> yr hawliau canlynol yn bresennol mewn namespace <b class="aclns">%s</b>: <i>%s</i>.';//namespace + +$lang['p_choose_id'] = 'Rhowch <b>ddefnyddiwr neu grŵp</b> yn y ffurflen uchod i weld neu golugu\'r hawliau sydd wedi\'u gosod ar gyfer y dudalen <b class="aclpage">%s</b>.'; +$lang['p_choose_ns'] = 'Rhowch <b>ddefnyddiwr neu grŵp</b> yn y ffurflen uchod i weld neu golugu\'r hawliau sydd wedi\'u gosod ar gyfer y namespace <b class="aclns">%s</b>.';//namespace + + +$lang['p_inherited'] = 'Sylw: Doedd yr hawliau hynny heb eu gosod yn uniongyrchol ond cawsant eu hetifeddu o grwpiau eraill neu namespaces uwch.';//namespace +$lang['p_isadmin'] = 'Sylw: Mae gan y grŵp neu\'r defnyddiwr hawliau llawn oherwydd mae wedi\'i ffurfweddu fel uwchddefnyddiwr.'; +$lang['p_include'] = 'Mae hawliau uwch yn cynnwys rhai is. Mae Creu, Lanlwytho a Dileu yn berthnasol i namespaces yn unig, nid tudalennau.';//namespace + +$lang['current'] = 'Rheolau ACL Cyfredol'; +$lang['where'] = 'Tudalen/Namespace';//namespace +$lang['who'] = 'Defnyddiwr/Grŵp'; +$lang['perm'] = 'Hawliau'; + +$lang['acl_perm0'] = 'Dim'; +$lang['acl_perm1'] = 'Darllen'; +$lang['acl_perm2'] = 'Golygu'; +$lang['acl_perm4'] = 'Creu'; +$lang['acl_perm8'] = 'Lanlwytho'; +$lang['acl_perm16'] = 'Dileu'; +$lang['acl_new'] = 'Ychwanegu Cofnod Newydd'; +$lang['acl_mod'] = 'Newid Cofnod'; +//Setup VIM: ex: et ts=2 : diff --git a/lib/plugins/acl/lang/de/lang.php b/lib/plugins/acl/lang/de/lang.php index f25a2ea71..f4d7cc9e2 100644 --- a/lib/plugins/acl/lang/de/lang.php +++ b/lib/plugins/acl/lang/de/lang.php @@ -21,6 +21,7 @@ * @author Christian Wichmann <nospam@zone0.de> * @author Paul Lachewsky <kaeptn.haddock@gmail.com> * @author Pierre Corell <info@joomla-praxis.de> + * @author Michael Große <grosse@cosmocode.de> */ $lang['admin_acl'] = 'Zugangsverwaltung'; $lang['acl_group'] = 'Gruppe:'; @@ -36,7 +37,7 @@ $lang['p_group_ns'] = 'Mitglieder der Gruppe <b class="aclgroup">%s</ $lang['p_choose_id'] = 'Bitte geben Sie in obigem Formular eine <b>einen Benutzer oder eine Gruppe</b> an, um die Berechtigungen für die Seite <b class="aclpage">%s</b> zu sehen oder zu ändern.'; $lang['p_choose_ns'] = 'Bitte geben Sie in obigem Formular eine <b>einen Benutzer oder eine Gruppe</b> an, um die Berechtigungen für den Namensraum <b class="aclns">%s</b> zu sehen oder zu ändern.'; $lang['p_inherited'] = 'Hinweis: Diese Berechtigungen wurden nicht explizit gesetzt, sondern von anderen Gruppen oder höher liegenden Namensräumen geerbt.'; -$lang['p_isadmin'] = 'Hinweis: Die ausgewählte Gruppe oder Benutzer haben immer alle Berechtigungen das sie als Superuser konfiguriert wurden.'; +$lang['p_isadmin'] = 'Hinweis: Die ausgewählte Gruppe oder Benutzer haben immer alle Berechtigungen, da sie als Superuser konfiguriert wurden.'; $lang['p_include'] = 'Höhere Berechtigungen schließen niedrigere mit ein. Anlegen, Hochladen und Entfernen gilt nur für Namensräume, nicht für einzelne Seiten'; $lang['current'] = 'Momentane Zugriffsregeln'; $lang['where'] = 'Seite/Namensraum'; diff --git a/lib/plugins/acl/lang/es/help.txt b/lib/plugins/acl/lang/es/help.txt index c683477a8..01f7a2e79 100644 --- a/lib/plugins/acl/lang/es/help.txt +++ b/lib/plugins/acl/lang/es/help.txt @@ -2,7 +2,7 @@ En esta página puede agregar o retirar permisos para los espacios de nombres y páginas en su wiki. -El panel de la izquierda muiestra todos los espacios de nombres y páginas +El panel de la izquierda muestra todos los espacios de nombres y páginas El formulario inferior permite ver y modificar los permisos del usuario o grupo elegido. diff --git a/lib/plugins/authad/auth.php b/lib/plugins/authad/auth.php index 60c68efc4..7f557975a 100644 --- a/lib/plugins/authad/auth.php +++ b/lib/plugins/authad/auth.php @@ -119,8 +119,8 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { } // other can do's are changed in $this->_loadServerConfig() base on domain setup - $this->cando['modName'] = true; - $this->cando['modMail'] = true; + $this->cando['modName'] = (bool)$this->conf['update_name']; + $this->cando['modMail'] = (bool)$this->conf['update_mail']; $this->cando['getUserCount'] = true; } @@ -642,6 +642,7 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { // compatibility with old option name if(empty($opts['admin_username']) && !empty($opts['ad_username'])) $opts['admin_username'] = $opts['ad_username']; if(empty($opts['admin_password']) && !empty($opts['ad_password'])) $opts['admin_password'] = $opts['ad_password']; + $opts['ad_password'] = conf_decodeString($opts['ad_password']); // deobfuscate // we can change the password if SSL is set if($opts['use_ssl'] || $opts['use_tls']) { diff --git a/lib/plugins/authad/conf/default.php b/lib/plugins/authad/conf/default.php index 6fb4c9145..f2834c808 100644 --- a/lib/plugins/authad/conf/default.php +++ b/lib/plugins/authad/conf/default.php @@ -13,3 +13,5 @@ $conf['use_tls'] = 0; $conf['debug'] = 0; $conf['expirywarn'] = 0; $conf['additional'] = ''; +$conf['update_name'] = 0; +$conf['update_mail'] = 0; diff --git a/lib/plugins/authad/conf/metadata.php b/lib/plugins/authad/conf/metadata.php index 560d25315..6b0fc168b 100644 --- a/lib/plugins/authad/conf/metadata.php +++ b/lib/plugins/authad/conf/metadata.php @@ -6,10 +6,12 @@ $meta['domain_controllers'] = array('string','_caution' => 'danger'); $meta['sso'] = array('onoff','_caution' => 'danger'); $meta['sso_charset'] = array('string','_caution' => 'danger'); $meta['admin_username'] = array('string','_caution' => 'danger'); -$meta['admin_password'] = array('password','_caution' => 'danger'); +$meta['admin_password'] = array('password','_caution' => 'danger','_code' => 'base64'); $meta['real_primarygroup'] = array('onoff','_caution' => 'danger'); $meta['use_ssl'] = array('onoff','_caution' => 'danger'); $meta['use_tls'] = array('onoff','_caution' => 'danger'); $meta['debug'] = array('onoff','_caution' => 'security'); $meta['expirywarn'] = array('numeric', '_min'=>0,'_caution' => 'danger'); $meta['additional'] = array('string','_caution' => 'danger'); +$meta['update_name'] = array('onoff','_caution' => 'danger'); +$meta['update_mail'] = array('onoff','_caution' => 'danger'); diff --git a/lib/plugins/authad/lang/cs/lang.php b/lib/plugins/authad/lang/cs/lang.php index 85bc41f2f..6223868c6 100644 --- a/lib/plugins/authad/lang/cs/lang.php +++ b/lib/plugins/authad/lang/cs/lang.php @@ -9,4 +9,5 @@ $lang['domain'] = 'Přihlašovací doména'; $lang['authpwdexpire'] = 'Platnost vašeho hesla vyprší za %d dní, měli byste ho změnit co nejdříve.'; $lang['passchangefail'] = 'Změna hesla selhala. Možná nebyla dodržena pravidla pro jejich tvorbu?'; +$lang['userchangefail'] = 'Změna atributů uživatele selhala. Možná nemá váš účet dostatečná oprávnění pro provádění změn. '; $lang['connectfail'] = 'Připojení k serveru Active Directory selhalo.'; diff --git a/lib/plugins/authad/lang/cy/lang.php b/lib/plugins/authad/lang/cy/lang.php new file mode 100644 index 000000000..8cc3746f2 --- /dev/null +++ b/lib/plugins/authad/lang/cy/lang.php @@ -0,0 +1,16 @@ +<?php +/** + * Welsh language file for addomain plugin + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Andreas Gohr <gohr@cosmocode.de> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +$lang['domain'] = 'Parth Mewngofnodi'; +$lang['authpwdexpire'] = 'Bydd eich cyfrinair yn dod i ben mewn %d diwrnod, dylech chi ei newid e\'n fuan.'; +$lang['passchangefail'] = 'Methodd newid y cyfrinair. Posib roedd y cyfrinair yn annilys?'; +$lang['userchangefail'] = 'Methodd newid priodoleddau defnyddiwr. Posib \'sdim hawliau \'da chi i wneud newidiadau?'; +$lang['connectfail'] = 'Methodd y cysylltiad i weinydd yr Active Directory.'; + +//Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/authad/lang/cy/settings.php b/lib/plugins/authad/lang/cy/settings.php new file mode 100644 index 000000000..e343485ec --- /dev/null +++ b/lib/plugins/authad/lang/cy/settings.php @@ -0,0 +1,15 @@ +<?php + +$lang['account_suffix'] = 'Olddodiad eich cyfrif. Ee. <code>@my.domain.org</code>'; +$lang['base_dn'] = 'Sail eich DN. Eg. <code>DC=my,DC=domain,DC=org</code>'; +$lang['domain_controllers'] = 'Rhestr gwahanwyd gan goma o reolwyr Parth. Ee. <code>srv1.domain.org,srv2.domain.org</code>'; +$lang['admin_username'] = 'Defnyddiwr Active Directory breintiedig gyda mynediad i ddata pob defnyddiwr arall. Yn opsiynol, ond yn hanfodol ar gyfer gweithredoedd penodol fel anfon ebyst tanysgrifio.'; +$lang['admin_password'] = 'Cyfrinair y defnyddiwr uchod.'; +$lang['sso'] = 'A ddylai Mewngofnodi-Unigol gan Kerberos neu NTLM gael ei ddefnyddio?'; +$lang['sso_charset'] = 'Y set nod mae\'ch gweinydd gwe yn pasio defnyddair Kerberos neu NTLM ynddi. Gwag ar gyfer UTF-8 neu latin-1. Bydd angen estyniad iconv.'; +$lang['real_primarygroup'] = 'Os ydy\'r prif grŵp real yn cael ei hadfer yn hytrach na thybio "Defnyddwyr Parth" (arafach).'; +$lang['use_ssl'] = 'Defnyddio cysylltiad SSL? Os ydych chi\'n defnyddio hwn, peidiwch â galluogi TLS isod.'; +$lang['use_tls'] = 'Defnyddio cysylltiad TLS? Os ydych chi\'n defnyddio hwn, peidiwch â galluogi SSL uchod.'; +$lang['debug'] = 'Dangos allbwn dadfygio ychwanegol ar wallau?'; +$lang['expirywarn'] = 'Diwrnodau o flaen llaw i rybuddio defnyddwyr o ran cyfrinair yn dod i ben. 0 i analluogi.'; +$lang['additional'] = 'Rhestr a wahanwyd gan goma o briodoleddau AD ychwanegol i nôl o ddata defnyddiwr. Defnyddiwyd gan rai ategion.'; diff --git a/lib/plugins/authad/lang/de/lang.php b/lib/plugins/authad/lang/de/lang.php index 93a65667e..ec73ac7d7 100644 --- a/lib/plugins/authad/lang/de/lang.php +++ b/lib/plugins/authad/lang/de/lang.php @@ -5,8 +5,10 @@ * * @author Andreas Gohr <gohr@cosmocode.de> * @author Philip Knack <p.knack@stollfuss.de> + * @author Uwe Benzelrath <uwebenzelrath@gmail.com> */ $lang['domain'] = 'Anmelde-Domäne'; $lang['authpwdexpire'] = 'Ihr Passwort läuft in %d Tag(en) ab. Sie sollten es frühzeitig ändern.'; $lang['passchangefail'] = 'Kennwortänderung fehlgeschlagen. Entspricht das Kennwort der Richtlinie?'; +$lang['userchangefail'] = 'Änderung der Nutzerattribute fehlgeschlagen. Möglicherweise hat ihr Benutzerkonto nicht die nötigen Rechte um diese Änderungen durchzuführen'; $lang['connectfail'] = 'Verbindung zum Active Directory Server fehlgeschlagen.'; diff --git a/lib/plugins/authad/lang/en/lang.php b/lib/plugins/authad/lang/en/lang.php index 751aa9f47..3e8a9e2a6 100644 --- a/lib/plugins/authad/lang/en/lang.php +++ b/lib/plugins/authad/lang/en/lang.php @@ -9,6 +9,7 @@ $lang['domain'] = 'Logon Domain'; $lang['authpwdexpire'] = 'Your password will expire in %d days, you should change it soon.'; $lang['passchangefail'] = 'Failed to change the password. Maybe the password policy was not met?'; +$lang['userchangefail'] = 'Failed to change user attributes. Maybe your account does not have permissions to make changes?'; $lang['connectfail'] = 'Failed to connect to Active Directory server.'; //Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/authad/lang/en/settings.php b/lib/plugins/authad/lang/en/settings.php index 92e9ac4e8..9e7a7c320 100644 --- a/lib/plugins/authad/lang/en/settings.php +++ b/lib/plugins/authad/lang/en/settings.php @@ -13,3 +13,5 @@ $lang['use_tls'] = 'Use TLS connection? If used, do not enable SSL ab $lang['debug'] = 'Display additional debugging output on errors?'; $lang['expirywarn'] = 'Days in advance to warn user about expiring password. 0 to disable.'; $lang['additional'] = 'A comma separated list of additional AD attributes to fetch from user data. Used by some plugins.'; +$lang['update_name'] = 'Allow users to update their AD display name?'; +$lang['update_mail'] = 'Allow users to update their email address?'; diff --git a/lib/plugins/authad/lang/es/lang.php b/lib/plugins/authad/lang/es/lang.php index 0ad262c21..d3d540b35 100644 --- a/lib/plugins/authad/lang/es/lang.php +++ b/lib/plugins/authad/lang/es/lang.php @@ -6,8 +6,10 @@ * @author Juan De La Cruz <juann.dlc@gmail.com> * @author Gerardo Zamudio <gerardo@gerardozamudio.net> * @author Mauricio Segura <maose38@yahoo.es> + * @author Romano <romanocl@outlook.com> */ $lang['domain'] = 'Dominio de inicio'; $lang['authpwdexpire'] = 'Su contraseña caducara en %d días, debería cambiarla lo antes posible'; $lang['passchangefail'] = 'Error al cambiar la contraseña. ¿Tal vez no se cumplió la directiva de contraseñas?'; +$lang['userchangefail'] = 'Falló al intentar modificar los atributos del usuario. Puede ser que su cuenta no tiene permisos para realizar cambios?'; $lang['connectfail'] = 'Error al conectar con el servidor de Active Directory.'; diff --git a/lib/plugins/authad/lang/fa/lang.php b/lib/plugins/authad/lang/fa/lang.php index 646142331..ca1c8e807 100644 --- a/lib/plugins/authad/lang/fa/lang.php +++ b/lib/plugins/authad/lang/fa/lang.php @@ -5,6 +5,10 @@ * * @author Hamid <zarrabi@sharif.edu> * @author Milad DZand <M.DastanZand@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> */ $lang['domain'] = 'دامنهی ورود'; $lang['authpwdexpire'] = 'کلمه عبور شما در %d روز منقضی خواهد شد ، شما باید آن را زود تغییر دهید'; +$lang['passchangefail'] = 'تغیر رمزعبور با خطا مواجه شد. شاید سیاستهای مربوط به گذاشتن نام کاربری درست رعایت نشده است.'; +$lang['userchangefail'] = 'تغییر ویژگیهای کابر با خطا مواجه شد. شاید حساب کاربری شما مجاز به انجام این تغییرات نیست.'; +$lang['connectfail'] = 'ارتباط با سرور Active Directory با خطا مواجه شد.'; diff --git a/lib/plugins/authad/lang/fa/settings.php b/lib/plugins/authad/lang/fa/settings.php index 161479afb..fdf9479bd 100644 --- a/lib/plugins/authad/lang/fa/settings.php +++ b/lib/plugins/authad/lang/fa/settings.php @@ -4,7 +4,21 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Omid Hezaveh <hezpublic@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ +$lang['account_suffix'] = 'پسوند حساب کاربری شما. به عنوان مثال <code>@my.domain.org</code>'; +$lang['base_dn'] = 'DN پایه شما. به عنوان مثال <code>DC=my,DC=domain,DC=org</code>'; +$lang['domain_controllers'] = 'لیست کنترل کنندههای دامنه که با کاما ازهم جدا شده اند. به عنوان مثال <code>srv1.domain.org,srv2.domain.org</code'; +$lang['admin_username'] = 'کاربر دارای دسترسی Active Directory که دارای دسترسی به تمام اطلاعات کاربران است. اختیاریست ولی برای برخی فعالیتها مثل ایمیلهای عضویت لازم است.'; $lang['admin_password'] = 'رمز کاربر بالایی '; +$lang['sso'] = 'آیا Single-Sign-On از طریق Kerberos یا NTLM استفاده شود؟'; +$lang['sso_charset'] = 'کدبندی نویسهای که وبسرورتان نام کاربری NTLM یا Kerberos را به آن منتقل میکند. برای انتخاب UTF-8 یا latin-1 خالی بگذارید. لازم است که افزونهٔ iconv نصب باشد.'; +$lang['real_primarygroup'] = 'باید گروه اصلی به جای "دامنهٔ کاربران" برگردد. (کندتر)'; $lang['use_ssl'] = 'از اساسال استفاده میکنید؟ در این صورت تیالاس را در پایین فعال نکنید. '; $lang['use_tls'] = 'از تیالاس استفاده میکنید؟ در این صورت اساسال را در بالا فعال نکنید. '; +$lang['debug'] = 'دادههای اضافی خروجی دیباگ در هنگام بروز خطا نمایش داده شود؟'; +$lang['expirywarn'] = 'تعداد روزهایی که پس گذشتن آن برای تغییر رمزعبور به شما هشدار داده شود. باری غیرفعال سازی از مقدار 0 استفاده کنید.'; +$lang['additional'] = 'لیست صفات اضافی AD برای گرفتن از اطلاعات کاربر که توسط برخی از افزونهها استفاده میشود. با کاما جدا شود.'; +$lang['update_name'] = 'به کاربران اجازهٔ به روزرسانی نام AD داده شود؟'; +$lang['update_mail'] = 'به کاربران اجازهٔ به روزرسانی ایمیلشان داده شود؟'; diff --git a/lib/plugins/authad/lang/fr/lang.php b/lib/plugins/authad/lang/fr/lang.php index 8b3b95b54..1ab523ff1 100644 --- a/lib/plugins/authad/lang/fr/lang.php +++ b/lib/plugins/authad/lang/fr/lang.php @@ -6,8 +6,10 @@ * @author ggallon <gwenael.gallon@mac.com> * @author Yannick Aure <yannick.aure@gmail.com> * @author Pietroni <pietroni@informatique.univ-paris-diderot.fr> + * @author Schplurtz le Déboulonné <Schplurtz@laposte.net> */ $lang['domain'] = 'Domaine de connexion'; $lang['authpwdexpire'] = 'Votre mot de passe expirera dans %d jours, vous devriez le changer bientôt.'; $lang['passchangefail'] = 'Impossible de changer le mot de passe. Il est possible que les règles de sécurité des mots de passe n\'aient pas été respectées.'; +$lang['userchangefail'] = 'Impossible de modifier les attributs de l\'utilisateur. Votre compte n\'a peut-être pas les permissions d\'effectuer des changements.'; $lang['connectfail'] = 'Impossible de se connecter au serveur Active Directory.'; diff --git a/lib/plugins/authad/lang/he/lang.php b/lib/plugins/authad/lang/he/lang.php index ac8fbcb5c..5b193ed5f 100644 --- a/lib/plugins/authad/lang/he/lang.php +++ b/lib/plugins/authad/lang/he/lang.php @@ -2,7 +2,7 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author tomer <tomercarolldergicz@gmail.com> * @author Menashe Tomer <menashesite@gmail.com> */ diff --git a/lib/plugins/authad/lang/it/lang.php b/lib/plugins/authad/lang/it/lang.php index 28eb8ff28..a30cd7cea 100644 --- a/lib/plugins/authad/lang/it/lang.php +++ b/lib/plugins/authad/lang/it/lang.php @@ -9,4 +9,5 @@ $lang['domain'] = 'Dominio di accesso'; $lang['authpwdexpire'] = 'La tua password scadrà in %d giorni, dovresti cambiarla quanto prima.'; $lang['passchangefail'] = 'Cambio password fallito. Forse non sono state rispettate le regole adottate per le password'; +$lang['userchangefail'] = 'Cambio attributi utente fallito. Forse il tuo account non ha i permessi per eseguire delle modifiche?'; $lang['connectfail'] = 'Connessione fallita al server Active Directory'; diff --git a/lib/plugins/authad/lang/ko/lang.php b/lib/plugins/authad/lang/ko/lang.php index 7e9b22f40..97abb31ed 100644 --- a/lib/plugins/authad/lang/ko/lang.php +++ b/lib/plugins/authad/lang/ko/lang.php @@ -4,8 +4,10 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Myeongjin <aranet100@gmail.com> + * @author Erial <erial2@gmail.com> */ $lang['domain'] = '로그온 도메인'; $lang['authpwdexpire'] = '비밀번호를 바꾼지 %d일이 지났으며, 비밀번호를 곧 바꿔야 합니다.'; -$lang['passchangefail'] = '비밀번호를 바꾸는 데 실패했습니다. 비밀번호 정책을 따르지 않았나요?'; +$lang['passchangefail'] = '비밀번호를 바꾸는 데 실패했습니다. 비밀번호 정책을 따르지 않은 건 아닐까요?'; +$lang['userchangefail'] = '사용자 특성을 바꾸는 데 실패했습니다. 당신의 계정에 바꿀 권한이 없는 건 아닐까요?'; $lang['connectfail'] = 'Active Directory 서버에 연결하는 데 실패했습니다.'; diff --git a/lib/plugins/authad/lang/ko/settings.php b/lib/plugins/authad/lang/ko/settings.php index b104371fe..4ee7c084f 100644 --- a/lib/plugins/authad/lang/ko/settings.php +++ b/lib/plugins/authad/lang/ko/settings.php @@ -19,3 +19,5 @@ $lang['use_tls'] = 'TLS 연결을 사용합니까? 사용한다면 $lang['debug'] = '오류에 대한 추가적인 디버그 정보를 보이겠습니까?'; $lang['expirywarn'] = '미리 비밀번호 만료를 사용자에게 경고할 날짜. 0일 경우 비활성화합니다.'; $lang['additional'] = '사용자 데이터에서 가져올 추가적인 AD 속성의 쉼표로 구분한 목록. 일부 플러그인이 사용합니다.'; +$lang['update_name'] = '사용자가 자신의 AD 표시 이름을 업데이트할 수 있도록 하겠습니까?'; +$lang['update_mail'] = '사용자가 자신의 이메일 주소를 업데이트할 수 있도록 하겠습니까?'; diff --git a/lib/plugins/authad/lang/nl/lang.php b/lib/plugins/authad/lang/nl/lang.php index 341a4036e..4e873201f 100644 --- a/lib/plugins/authad/lang/nl/lang.php +++ b/lib/plugins/authad/lang/nl/lang.php @@ -6,8 +6,10 @@ * @author Rene <wllywlnt@yahoo.com> * @author Dion Nicolaas <dion@nicolaas.net> * @author Hugo Smet <hugo.smet@scarlet.be> + * @author Wesley de Weerd <wesleytiel@gmail.com> */ $lang['domain'] = 'Inlog Domein'; $lang['authpwdexpire'] = 'Je wachtwoord verloopt in %d dagen, je moet het binnenkort veranderen'; $lang['passchangefail'] = 'Wijziging van het paswoord is mislukt. Wellicht beantwoord het paswoord niet aan de voorwaarden. '; +$lang['userchangefail'] = 'Kan gebruiker attributen veranderen . Misschien heeft uw account geen rechten om wijzigingen aan te brengen?'; $lang['connectfail'] = 'Connectie met Active Directory server mislukt.'; diff --git a/lib/plugins/authad/lang/pt-br/lang.php b/lib/plugins/authad/lang/pt-br/lang.php index 16fc39638..ddcfaa875 100644 --- a/lib/plugins/authad/lang/pt-br/lang.php +++ b/lib/plugins/authad/lang/pt-br/lang.php @@ -5,8 +5,10 @@ * * @author Felipe Castro <fefcas@gmail.com> * @author Frederico Gonçalves Guimarães <frederico@teia.bio.br> + * @author Guilherme Cardoso <guicardoso@gmail.com> */ $lang['domain'] = 'Domínio de "Logon"'; $lang['authpwdexpire'] = 'Sua senha vai expirar em %d dias. Você deve mudá-la assim que for possível.'; $lang['passchangefail'] = 'Não foi possível alterar a senha. Pode ser algum conflito com a política de senhas.'; +$lang['userchangefail'] = 'Falha ao mudar os atributos do usuário. Talvez a sua conta não tenha permissões para fazer mudanças.'; $lang['connectfail'] = 'Não foi possível conectar ao servidor Active Directory.'; diff --git a/lib/plugins/authad/lang/pt-br/settings.php b/lib/plugins/authad/lang/pt-br/settings.php index cdc748055..27ce09b36 100644 --- a/lib/plugins/authad/lang/pt-br/settings.php +++ b/lib/plugins/authad/lang/pt-br/settings.php @@ -6,6 +6,7 @@ * @author Victor Westmann <victor.westmann@gmail.com> * @author Frederico Guimarães <frederico@teia.bio.br> * @author Juliano Marconi Lanigra <juliano.marconi@gmail.com> + * @author Viliam Dias <viliamjr@gmail.com> */ $lang['account_suffix'] = 'Sufixo de sua conta. Eg. <code>@meu.domínio.org</code>'; $lang['base_dn'] = 'Sua base DN. Eg. <code>DC=meu,DC=domínio,DC=org</code>'; @@ -20,3 +21,5 @@ $lang['use_tls'] = 'Usar conexão TLS? se usar, não habilitar SSL $lang['debug'] = 'Mostrar saída adicional de depuração em mensagens de erros?'; $lang['expirywarn'] = 'Dias com antecedência para avisar o usuário de uma senha que vai expirar. 0 para desabilitar.'; $lang['additional'] = 'Uma lista separada de vírgulas de atributos adicionais AD para pegar dados de usuários. Usados por alguns plugins.'; +$lang['update_name'] = 'Permitir aos usuários que atualizem seus nomes de exibição AD?'; +$lang['update_mail'] = 'Permitir aos usuários que atualizem seu endereço de e-mail?'; diff --git a/lib/plugins/authad/lang/ro/lang.php b/lib/plugins/authad/lang/ro/lang.php index 28a0e1e64..65df92f7f 100644 --- a/lib/plugins/authad/lang/ro/lang.php +++ b/lib/plugins/authad/lang/ro/lang.php @@ -4,5 +4,8 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Razvan Deaconescu <razvan.deaconescu@cs.pub.ro> + * @author Adrian Vesa <adrianvesa@dotwikis.com> */ $lang['authpwdexpire'] = 'Parola va expira în %d zile, ar trebui să o schimbi în curând.'; +$lang['passchangefail'] = 'Parola nu a putu fi schimbata. Poate politica pentru parole nu a fost indeplinita ?'; +$lang['userchangefail'] = 'Nu am putu schimba atributiile pentru acest utilizator. Poate nu ai permisiunea sa faci aceste schimbari ?'; diff --git a/lib/plugins/authad/lang/ru/lang.php b/lib/plugins/authad/lang/ru/lang.php index fe56be2bf..ebce005c0 100644 --- a/lib/plugins/authad/lang/ru/lang.php +++ b/lib/plugins/authad/lang/ru/lang.php @@ -5,8 +5,10 @@ * * @author Aleksandr Selivanov <alexgearbox@yandex.ru> * @author Takumo <9206984@mail.ru> + * @author dimsharav <dimsharav@gmail.com> */ $lang['domain'] = 'Домен'; $lang['authpwdexpire'] = 'Действие вашего пароля истекает через %d дней. Вы должны изменить его как можно скорее'; $lang['passchangefail'] = 'Не удалось изменить пароль. Возможно, он не соответствует требованиям к паролю.'; +$lang['userchangefail'] = 'Ошибка при изменении атрибутов пользователя. Возможно, у Вашей учетной записи недостаточно прав?'; $lang['connectfail'] = 'Невозможно соединиться с сервером AD.'; diff --git a/lib/plugins/authad/lang/zh/lang.php b/lib/plugins/authad/lang/zh/lang.php index df1a7a7f7..30d504515 100644 --- a/lib/plugins/authad/lang/zh/lang.php +++ b/lib/plugins/authad/lang/zh/lang.php @@ -9,4 +9,5 @@ $lang['domain'] = '登录域'; $lang['authpwdexpire'] = '您的密码将在 %d 天内过期,请尽快更改'; $lang['passchangefail'] = '密码更改失败。是不是密码规则不符合?'; +$lang['userchangefail'] = '更改用户属性失败。或许您的帐号没有做此更改的权限?'; $lang['connectfail'] = '无法连接到Active Directory服务器。'; diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 247a0fec2..4c9c17786 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -60,7 +60,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { // indirect user bind if($this->getConf('binddn') && $this->getConf('bindpw')) { // use superuser credentials - if(!@ldap_bind($this->con, $this->getConf('binddn'), $this->getConf('bindpw'))) { + if(!@ldap_bind($this->con, $this->getConf('binddn'), conf_decodeString($this->getConf('bindpw')))) { $this->_debug('LDAP bind as superuser: '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); return false; } @@ -165,7 +165,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { // force superuser bind if wanted and not bound as superuser yet if($this->getConf('binddn') && $this->getConf('bindpw') && $this->bound < 2) { // use superuser credentials - if(!@ldap_bind($this->con, $this->getConf('binddn'), $this->getConf('bindpw'))) { + if(!@ldap_bind($this->con, $this->getConf('binddn'), conf_decodeString($this->getConf('bindpw')))) { $this->_debug('LDAP bind as superuser: '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); return false; } @@ -307,7 +307,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { } elseif ($this->getConf('binddn') && $this->getConf('bindpw')) { // we are changing the password on behalf of the user (eg: forgotten password) // bind with the superuser ldap - if (!@ldap_bind($this->con, $this->getConf('binddn'), $this->getConf('bindpw'))){ + if (!@ldap_bind($this->con, $this->getConf('binddn'), conf_decodeString($this->getConf('bindpw')))){ $this->_debug('LDAP bind as superuser: '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); return false; } @@ -463,9 +463,12 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { * @return string */ protected function _filterEscape($string) { - return preg_replace( - '/([\x00-\x1F\*\(\)\\\\])/e', - '"\\\\\".join("",unpack("H2","$1"))', + // see https://github.com/adldap/adLDAP/issues/22 + return preg_replace_callback( + '/([\x00-\x1F\*\(\)\\\\])/', + function ($matches) { + return "\\".join("", unpack("H2", $matches[1])); + }, $string ); } @@ -479,6 +482,10 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { protected function _openLDAP() { if($this->con) return true; // connection already established + if($this->getConf('debug')) { + ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7); + } + $this->bound = 0; $port = $this->getConf('port'); @@ -543,7 +550,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { } if($this->getConf('binddn') && $this->getConf('bindpw')) { - $bound = @ldap_bind($this->con, $this->getConf('binddn'), $this->getConf('bindpw')); + $bound = @ldap_bind($this->con, $this->getConf('binddn'), conf_decodeString($this->getConf('bindpw'))); $this->bound = 2; } else { $bound = @ldap_bind($this->con); @@ -555,6 +562,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { if(!$bound) { msg("LDAP: couldn't connect to LDAP server", -1); + $this->_debug(ldap_error($this->con), 0, __LINE__, __FILE__); return false; } diff --git a/lib/plugins/authldap/conf/metadata.php b/lib/plugins/authldap/conf/metadata.php index a67b11ca6..f32aed191 100644 --- a/lib/plugins/authldap/conf/metadata.php +++ b/lib/plugins/authldap/conf/metadata.php @@ -10,7 +10,7 @@ $meta['starttls'] = array('onoff','_caution' => 'danger'); $meta['referrals'] = array('multichoice','_choices' => array(-1,0,1),'_caution' => 'danger'); $meta['deref'] = array('multichoice','_choices' => array(0,1,2,3),'_caution' => 'danger'); $meta['binddn'] = array('string','_caution' => 'danger'); -$meta['bindpw'] = array('password','_caution' => 'danger'); +$meta['bindpw'] = array('password','_caution' => 'danger','_code'=>'base64'); //$meta['mapping']['name'] unsupported in config manager //$meta['mapping']['grps'] unsupported in config manager $meta['userscope'] = array('multichoice','_choices' => array('sub','one','base'),'_caution' => 'danger'); diff --git a/lib/plugins/authldap/lang/cy/lang.php b/lib/plugins/authldap/lang/cy/lang.php new file mode 100644 index 000000000..f6c5cf6bd --- /dev/null +++ b/lib/plugins/authldap/lang/cy/lang.php @@ -0,0 +1,11 @@ +<?php +/** + * Welsh language file for authldap plugin + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + */ + +$lang['connectfail'] = 'LDAP yn methu cysylltu: %s'; +$lang['domainfail'] = 'LDAP yn methu darganfod eich defnyddiwr dn'; + +//Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/authldap/lang/cy/settings.php b/lib/plugins/authldap/lang/cy/settings.php new file mode 100644 index 000000000..91c9bfdee --- /dev/null +++ b/lib/plugins/authldap/lang/cy/settings.php @@ -0,0 +1,29 @@ +<?php +$lang['server'] = 'Eich gweinydd LDAP. Naill ai enw\'r gweinydd (<code>localhost</code>) neu\'r URL llawn (<code>ldap://server.tld:389</code>)'; +$lang['port'] = 'Porth gweinydd LDAP os nac oes URL llawn wedi\'i gyflwyno uchod'; +$lang['usertree'] = 'Ble i ddarganfod cyfrifon defnyddwyr. Ee. <code>ou=People, dc=server, dc=tld</code>'; +$lang['grouptree'] = 'Ble i ddarganfod y grwpiau defnyddiwr. Eg. <code>ou=Group, dc=server, dc=tld</code>'; +$lang['userfilter'] = 'Hidlydd LDAP i ddarganfod cyfrifon defnyddwyr. Eg. <code>(&(uid=%{user})(objectClass=posixAccount))</code>'; +$lang['groupfilter'] = 'Hidlydd LDAP i chwilio am grwpiau. Eg. <code>(&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))</code>'; +$lang['version'] = 'Y fersiwn protocol i\'w ddefnyddio. Efallai bydd angen gosod hwn i <code>3</code>'; +$lang['starttls'] = 'Defnyddio cysylltiadau TLS?'; +$lang['referrals'] = 'Dilyn cyfeiriadau (referrals)?'; +$lang['deref'] = 'Sut i ddadgyfeirio alias?'; //alias - enw arall? +$lang['binddn'] = 'DN rhwymiad defnyddiwr opsiynol os ydy rhwymiad anhysbys yn annigonol. Ee. <code>cn=admin, dc=my, dc=home</code>'; +$lang['bindpw'] = 'Cyfrinair y defnyddiwr uchod'; +$lang['userscope'] = 'Cyfyngu sgôp chwiliadau ar gyfer chwiliad defnyddwyr'; +$lang['groupscope'] = 'Cyfyngu sgôp chwiliadau ar gyfer chwiliad grwpiau'; +$lang['userkey'] = 'Priodoledd yn denodi\'r defnyddair; rhaid iddo fod yn gyson i \'r hidlydd defnyddwyr.'; +$lang['groupkey'] = 'Aelodaeth grŵp o unrhyw briodoledd defnyddiwr (yn hytrach na grwpiau AD safonol) e.e. grŵp o adran neu rif ffôn'; +$lang['modPass'] = 'Gall cyfrinair LDAP gael ei newid gan DokuWiki?'; +$lang['debug'] = 'Dangos gwybodaeth dadfygio ychwanegol gyda gwallau'; + + +$lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; +$lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; +$lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; +$lang['deref_o_3'] = 'LDAP_DEREF_ALWAYS'; + +$lang['referrals_o_-1'] = 'defnyddio\'r diofyn'; +$lang['referrals_o_0'] = 'peidio dilyn cyfeiriadau'; +$lang['referrals_o_1'] = 'dilyn cyfeiriadau';
\ No newline at end of file diff --git a/lib/plugins/authldap/lang/fa/lang.php b/lib/plugins/authldap/lang/fa/lang.php new file mode 100644 index 000000000..fdf4f6da9 --- /dev/null +++ b/lib/plugins/authldap/lang/fa/lang.php @@ -0,0 +1,9 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> + */ +$lang['connectfail'] = 'LDAP نمیتواند وصل شود: %s'; +$lang['domainfail'] = 'LDAP نمیتواند کاربر شما را پیدا کند'; diff --git a/lib/plugins/authldap/lang/fa/settings.php b/lib/plugins/authldap/lang/fa/settings.php index 49d485afd..72eccb0ef 100644 --- a/lib/plugins/authldap/lang/fa/settings.php +++ b/lib/plugins/authldap/lang/fa/settings.php @@ -5,6 +5,32 @@ * * @author Mohammad Sadegh <msdn2013@gmail.com> * @author Omid Hezaveh <hezpublic@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ +$lang['server'] = 'سرور LDAP شما. چه به صورت '; +$lang['port'] = 'درگاه سرور LDAP اگر که URL کامل در بالا نوشته نشده'; +$lang['usertree'] = 'محل حسابهای کاربری. برای مثال <code>ou=People, dc=server, dc=tld</code>'; +$lang['grouptree'] = 'محل گروههای کاربری. برای مثال <code>ou=Group, dc=server, dc=tld</code>'; +$lang['userfilter'] = 'فیتلرهای LDAP برای جستجوی حسابهای کاربری. برای مثال <code>(&(uid=%{user})(objectClass=posixAccount))</code>'; +$lang['groupfilter'] = 'فیلتر LDAP برای جستجوی گروهها. برای مثال <code>(&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))</code>'; +$lang['version'] = 'نسخهٔ پروتوکل برای استفاده. احتمالا این را باید <code>3</code> وارد کنید.'; $lang['starttls'] = 'از تیالاس (TLS) استفاده میکنید؟'; +$lang['referrals'] = 'آیا ارجاعات باید دنبال شوند؟'; +$lang['deref'] = 'نامهای مستعار چطور ارجاع یابی شوند؟'; +$lang['binddn'] = ' DN برای کاربر اتصال اگر اتصال ناشناخته کافی نیست. مثال +<code>cn=admin, dc=my, dc=home</code>'; $lang['bindpw'] = 'رمزعبور کاربر بالا'; +$lang['userscope'] = 'محدود کردن محدودهٔ جستجو به جستجوی کاربر'; +$lang['groupscope'] = 'محدود کردن محدودهٔ جستجو به جستجوی گروه'; +$lang['userkey'] = 'صفتی که نشاندهندهٔ نام کاربر است؛ باید با userfilter نامتناقض باشد.'; +$lang['groupkey'] = 'عضویت در گروه برمبنای هر کدام از صفات کاربر (به جای گروههای استاندارد AD) برای مثال گروه برمبنای دپارتمان یا شماره تلفن'; +$lang['modPass'] = 'آیا پسورد LDAP میتواند توسط داکو ویکی تغییر کند؟'; +$lang['debug'] = 'نمایش اطلاعات بیشتر برای خطایابی در ارورها'; +$lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; +$lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; +$lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; +$lang['deref_o_3'] = 'LDAP_DEREF_ALWAYS'; +$lang['referrals_o_-1'] = 'استفاده از پیشفرض'; +$lang['referrals_o_0'] = 'ارجاعات را دنبال نکن'; +$lang['referrals_o_1'] = 'ارجاعات را دنبال کن'; diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index 1b7d0bfa4..999542a3d 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -874,7 +874,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { */ protected function _openDB() { if(!$this->dbcon) { - $con = @mysql_connect($this->getConf('server'), $this->getConf('user'), $this->getConf('password')); + $con = @mysql_connect($this->getConf('server'), $this->getConf('user'), conf_decodeString($this->getConf('password'))); if($con) { if((mysql_select_db($this->getConf('database'), $con))) { if((preg_match('/^(\d+)\.(\d+)\.(\d+).*/', mysql_get_server_info($con), $result)) == 1) { diff --git a/lib/plugins/authmysql/conf/metadata.php b/lib/plugins/authmysql/conf/metadata.php index 54d6f1404..bad34e669 100644 --- a/lib/plugins/authmysql/conf/metadata.php +++ b/lib/plugins/authmysql/conf/metadata.php @@ -2,7 +2,7 @@ $meta['server'] = array('string','_caution' => 'danger'); $meta['user'] = array('string','_caution' => 'danger'); -$meta['password'] = array('password','_caution' => 'danger'); +$meta['password'] = array('password','_caution' => 'danger','_code' => 'base64'); $meta['database'] = array('string','_caution' => 'danger'); $meta['charset'] = array('string','_caution' => 'danger'); $meta['debug'] = array('multichoice','_choices' => array(0,1,2),'_caution' => 'security'); @@ -31,4 +31,4 @@ $meta['UpdateEmail'] = array('string','_caution' => 'danger'); $meta['UpdateName'] = array('string','_caution' => 'danger'); $meta['UpdateTarget'] = array('string','_caution' => 'danger'); $meta['delUserGroup'] = array('','_caution' => 'danger'); -$meta['getGroupID'] = array('','_caution' => 'danger');
\ No newline at end of file +$meta['getGroupID'] = array('','_caution' => 'danger'); diff --git a/lib/plugins/authmysql/lang/cy/lang.php b/lib/plugins/authmysql/lang/cy/lang.php new file mode 100644 index 000000000..a96715c12 --- /dev/null +++ b/lib/plugins/authmysql/lang/cy/lang.php @@ -0,0 +1,13 @@ +<?php +/** + * Welsh language file for authmysql plugin + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + */ + +$lang['connectfail'] = 'Method y cysylltiad i\'r databas.'; +$lang['userexists'] = 'Sori, mae defnyddiwr gyda\'r enw mewngofnodi hwn eisoes yn bodoli.'; +$lang['usernotexists'] = 'Sori, \'dyw\'r defnyddiwr hwnnw ddim yn bodoli.'; +$lang['writefail'] = 'Methu â newid data defnyddiwr. Rhowch wybod i Weinyddwr y Wici'; + +//Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/authmysql/lang/cy/settings.php b/lib/plugins/authmysql/lang/cy/settings.php new file mode 100644 index 000000000..526cffa61 --- /dev/null +++ b/lib/plugins/authmysql/lang/cy/settings.php @@ -0,0 +1,39 @@ +<?php + +$lang['server'] = 'Eich gweinydd MySQL'; +$lang['user'] = 'Defnyddair MySQL'; +$lang['password'] = 'Cyfrinair y defnyddiwr uchod'; +$lang['database'] = 'Databas i\'w ddefnyddio'; +$lang['charset'] = 'Set nodau i\'w defnyddio gyda\'r databas'; +$lang['debug'] = 'Dangos gwybodaeth dadfygio ychwanegol'; +$lang['forwardClearPass'] = 'Pasio cyfrineiriau defnyddwyr fel \'cleartext\' i\'r datganiadau SQL isod, yn hytrach na defnyddio\'r opsiwn \'passcrypt\''; +$lang['TablesToLock'] = 'Rhestr a wahanwyd gan goma o dablau sydd angen eu cloi yn ystod gweithredoedd ysgrifennu'; +$lang['checkPass'] = 'Datganiad SQL i wirio cyfrineiriau'; +$lang['getUserInfo'] = 'Datganiad SQL i nôl gwybodaeth defnyddiwr'; +$lang['getGroups'] = 'Datganiad SQL i nôl aelodaeth grŵp y defnyddiwr'; +$lang['getUsers'] = 'Datganiad SQL i restru pob defnyddiwr'; +$lang['FilterLogin'] = 'Cymal SQL i hidlo defnyddwyr gan enw mewngofnodi'; +$lang['FilterName'] = 'Cymal SQL i hidlo defnyddwyr gan enw llawn'; +$lang['FilterEmail'] = 'Cymal SQL i hidlo defnyddwyr gan gyfeiriad ebost'; +$lang['FilterGroup'] = 'Cymal SQL i hidlo defnyddwyr gan aelodaeth grŵp'; +$lang['SortOrder'] = 'Cymal SQL i drefnu defnyddwyr'; +$lang['addUser'] = 'Datganiad SQL i ychwanegu defnyddiwr newydd'; +$lang['addGroup'] = 'Datganiad SQL i ychwanegu grŵp newydd'; +$lang['addUserGroup'] = 'Datganiad SQL i ychwanegu defnyddiwr newydd i grŵp sy\'n bodoli eisoes'; +$lang['delGroup'] = 'Datganiad SQL i dynnu grŵp'; +$lang['getUserID'] = 'Datganiad SQL i nôl prif allwedd y defnyddiwr'; +$lang['delUser'] = 'Datganiad SQL i ddileu defnyddiwr'; +$lang['delUserRefs'] = 'Datganiad SQL i dynnu defnyddiwr o bob grŵp'; +$lang['updateUser'] = 'Datganiad SQL i ddiweddaru proffil defnyddiwr'; +$lang['UpdateLogin'] = 'Cymal Diweddaru i ddiweddaru enw mewngofnodi defnyddiwr'; +$lang['UpdatePass'] = 'Cymal Diweddaru i ddiweddaru cyfrinair defnyddiwr'; +$lang['UpdateEmail'] = 'Cymal Diweddaru i ddiweddaru cyfeiriad ebost defnyddiwr'; +$lang['UpdateName'] = 'Cymal Diweddaru i ddiweddaru enw llawn defnyddiwr'; +$lang['UpdateTarget'] = 'Cymal Cyfyngu i adnabod y defnyddiwr wrth ddiweddaru'; +$lang['delUserGroup'] = 'Datganiad SQL i dynnu defnyddiwr oddi ar grŵp'; +$lang['getGroupID'] = 'Datganiad SQL i nôl prif allwedd grŵp penodol'; + + +$lang['debug_o_0'] = 'dim'; +$lang['debug_o_1'] = 'gyda gwallau yn unig'; +$lang['debug_o_2'] = 'pob ymholiad SQL'; diff --git a/lib/plugins/authmysql/lang/fa/lang.php b/lib/plugins/authmysql/lang/fa/lang.php new file mode 100644 index 000000000..c73c053b1 --- /dev/null +++ b/lib/plugins/authmysql/lang/fa/lang.php @@ -0,0 +1,12 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> + */ +$lang['connectfail'] = 'خطا در اتصال به دیتابیس'; +$lang['userexists'] = 'با عرض پوزش، یک کاربر با این نام از قبل وجود دارد.'; +$lang['usernotexists'] = 'با عرض پوزش، آن کاربر وجود نداشت.'; +$lang['writefail'] = 'امکان تغییر داده کاربر وجود نداشت. لطفا مسئول Wiki را آگاه کنید.'; diff --git a/lib/plugins/authmysql/lang/fa/settings.php b/lib/plugins/authmysql/lang/fa/settings.php index 68ad5ce83..bca4bbf07 100644 --- a/lib/plugins/authmysql/lang/fa/settings.php +++ b/lib/plugins/authmysql/lang/fa/settings.php @@ -4,7 +4,40 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Mohamad Mehdi Habibi <habibi.esf@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> */ $lang['server'] = 'سرور MySQL'; $lang['user'] = 'نام کاربری MySQL'; +$lang['password'] = 'رمزعبور کاربر بالا'; $lang['database'] = 'پایگاه داده مورد استفاده'; +$lang['charset'] = 'مجموعه کاراکترهایی (Character set) که در پایگاه داده بکار رفته'; +$lang['debug'] = 'نمایش اطلاعات بیشتر برای دیباگ'; +$lang['forwardClearPass'] = 'بجای استفاده از گزینه passcrypt، رمزعبورهای کاربر را بصورت آشکار به دستور SQL زیر پاس دهید.'; +$lang['TablesToLock'] = 'لیست جدولهایی که هنگام عملیات نوشتن باید قفل شود که با کاما از هم جدا شده اند'; +$lang['checkPass'] = 'دستور SQL برای بررسی رمزعبورها'; +$lang['getUserInfo'] = 'دستور SQL برای دریافت اطلاعات نام کاربری'; +$lang['getGroups'] = 'دستور SQL برای دریافت گروههای عضویت یک کاربر'; +$lang['getUsers'] = 'دستور SQL برای گرفتن لیست تمامی کاربران'; +$lang['FilterLogin'] = 'عبارت SQL برای فیلتر کردن کاربران با نام کاربری (login name)'; +$lang['FilterName'] = 'عبارت SQL برای فیلتر کردن کاربران با نام کامل'; +$lang['FilterEmail'] = 'عبارت SQL برای فیلتر کردن کابران با آدرس ایمیل'; +$lang['FilterGroup'] = 'عبارت SQL برای فیلتر کاربران با گروه عضویتشان'; +$lang['SortOrder'] = 'عبارت SQL برای مرتب کردن کاربران'; +$lang['addUser'] = 'دستور SQL برای اضافه کردن کاربر جدید'; +$lang['addGroup'] = 'دستور SQL برای اضافه کردن گروه جدید'; +$lang['addUserGroup'] = 'دستور SQL برای اضافه کردن یک کاربر به یک گروه موجود از قبل'; +$lang['delGroup'] = 'دستور SQL برای حذف یک گروه'; +$lang['getUserID'] = 'دستور SQL برای گرفتن کلید اصلی (primary key) یک کاربر'; +$lang['delUser'] = 'دستور SQL برای حذف یک کاربر'; +$lang['delUserRefs'] = 'دستور SQL برای حذف یک کابر از تمامی گروهها'; +$lang['updateUser'] = 'دستور SQL برای بروزرسانی پروفایل یک کاربر'; +$lang['UpdateLogin'] = 'عبارت Update برای بروزرسانی نام کاربری (login name)'; +$lang['UpdatePass'] = 'عبارت Update برای بروزرسانی رمزعبور کاربر'; +$lang['UpdateEmail'] = 'عبارت Update برای بروزرسانی ادرسی ایمیل کاربر'; +$lang['UpdateName'] = 'عبارت Update برای بروزرسانی نام کامل کاربر'; +$lang['UpdateTarget'] = 'عبارت Limit برای شناسایی کابر هنگام بروزرسانی'; +$lang['delUserGroup'] = 'دستور SQL برای حذف یک کاربر '; +$lang['getGroupID'] = 'دستور SQL برای گرفتن کلید اصلی (primary key) گروه داده شده'; +$lang['debug_o_0'] = 'هیچ'; +$lang['debug_o_1'] = 'فقط هنگام خطا'; +$lang['debug_o_2'] = 'تمام پرسوجوهای SQL'; diff --git a/lib/plugins/authpgsql/auth.php b/lib/plugins/authpgsql/auth.php index 4cb280aae..7b677d3d7 100644 --- a/lib/plugins/authpgsql/auth.php +++ b/lib/plugins/authpgsql/auth.php @@ -303,7 +303,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { $dsn .= ' port='.$this->conf['port']; $dsn .= ' dbname='.$this->conf['database']; $dsn .= ' user='.$this->conf['user']; - $dsn .= ' password='.$this->conf['password']; + $dsn .= ' password='.conf_decodeString($this->conf['password']); $con = @pg_connect($dsn); if($con) { @@ -428,4 +428,4 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { } return $string; } -}
\ No newline at end of file +} diff --git a/lib/plugins/authpgsql/conf/metadata.php b/lib/plugins/authpgsql/conf/metadata.php index fbd051270..cb9c45643 100644 --- a/lib/plugins/authpgsql/conf/metadata.php +++ b/lib/plugins/authpgsql/conf/metadata.php @@ -3,7 +3,7 @@ $meta['server'] = array('string','_caution' => 'danger'); $meta['port'] = array('numeric','_caution' => 'danger'); $meta['user'] = array('string','_caution' => 'danger'); -$meta['password'] = array('password','_caution' => 'danger'); +$meta['password'] = array('password','_caution' => 'danger','_code'=>'base64'); $meta['database'] = array('string','_caution' => 'danger'); $meta['debug'] = array('onoff','_caution' => 'security'); $meta['forwardClearPass'] = array('onoff','_caution' => 'danger'); @@ -30,4 +30,4 @@ $meta['UpdateEmail'] = array('string','_caution' => 'danger'); $meta['UpdateName'] = array('string','_caution' => 'danger'); $meta['UpdateTarget'] = array('string','_caution' => 'danger'); $meta['delUserGroup'] = array('','_caution' => 'danger'); -$meta['getGroupID'] = array('','_caution' => 'danger');
\ No newline at end of file +$meta['getGroupID'] = array('','_caution' => 'danger'); diff --git a/lib/plugins/authpgsql/lang/cy/settings.php b/lib/plugins/authpgsql/lang/cy/settings.php new file mode 100644 index 000000000..0c32ad7b2 --- /dev/null +++ b/lib/plugins/authpgsql/lang/cy/settings.php @@ -0,0 +1,33 @@ +<?php + +$lang['server'] = 'Eich gweinydd PostgreSQL'; +$lang['port'] = 'Porth eich gweinydd PostgreSQL'; +$lang['user'] = 'Defnyddair PostgreSQL'; +$lang['password'] = 'Cyfrinair y defnyddiwr uchod'; +$lang['database'] = 'Databas i\'w ddefnyddio'; +$lang['debug'] = 'angos gwybodaeth dadfygio ychwanegol'; +$lang['forwardClearPass'] = 'Pasio cyfrineiriau defnyddwyr fel \'cleartext\' i\'r datganiadau SQL isod, yn hytrach na defnyddio\'r opsiwn \'passcrypt\''; +$lang['checkPass'] = 'Datganiad SQL i wirio cyfrineiriau'; +$lang['getUserInfo'] = 'Datganiad SQL i nôl gwybodaeth defnyddiwr'; +$lang['getGroups'] = 'Datganiad SQL i nôl aelodaeth grŵp y defnyddiwr'; +$lang['getUsers'] = 'Datganiad SQL i restru pob defnyddiwr'; +$lang['FilterLogin'] = 'Cymal SQL i hidlo defnyddwyr gan enw mewngofnodi'; +$lang['FilterName'] = 'Cymal SQL i hidlo defnyddwyr gan enw llawn'; +$lang['FilterEmail'] = 'Cymal SQL i hidlo defnyddwyr gan gyfeiriad ebost'; +$lang['FilterGroup'] = 'Cymal SQL i hidlo defnyddwyr gan aelodaeth grŵp'; +$lang['SortOrder'] = 'Cymal SQL i drefnu defnyddwyr'; +$lang['addUser'] = 'Datganiad SQL i ychwanegu defnyddiwr newydd'; +$lang['addGroup'] = 'Datganiad SQL i ychwanegu grŵp newydd'; +$lang['addUserGroup'] = 'Datganiad SQL i ychwanegu defnyddiwr newydd i grŵp sy\'n bodoli eisoes'; +$lang['delGroup'] = 'Datganiad SQL i dynnu grŵp'; +$lang['getUserID'] = 'Datganiad SQL i nôl prif allwedd y defnyddiwr'; +$lang['delUser'] = 'Datganiad SQL i ddileu defnyddiwr'; +$lang['delUserRefs'] = 'Datganiad SQL i dynnu defnyddiwr o bob grŵp'; +$lang['updateUser'] = 'Datganiad SQL i ddiweddaru proffil defnyddiwr'; +$lang['UpdateLogin'] = 'Cymal Diweddaru i ddiweddaru enw mewngofnodi defnyddiwr'; +$lang['UpdatePass'] = 'Cymal Diweddaru i ddiweddaru cyfrinair defnyddiwr'; +$lang['UpdateEmail'] = 'Cymal Diweddaru i ddiweddaru cyfeiriad ebost defnyddiwr'; +$lang['UpdateName'] = 'Cymal Diweddaru i ddiweddaru enw llawn defnyddiwr'; +$lang['UpdateTarget'] = 'Cymal Cyfyngu i adnabod y defnyddiwr wrth ddiweddaru'; +$lang['delUserGroup'] = 'Datganiad SQL i dynnu defnyddiwr oddi ar grŵp'; +$lang['getGroupID'] = 'Datganiad SQL i nôl prif allwedd grŵp penodol'; diff --git a/lib/plugins/authpgsql/lang/fa/settings.php b/lib/plugins/authpgsql/lang/fa/settings.php index 813493967..5afe81182 100644 --- a/lib/plugins/authpgsql/lang/fa/settings.php +++ b/lib/plugins/authpgsql/lang/fa/settings.php @@ -4,5 +4,37 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Mohamad Mehdi Habibi <habibi.esf@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ +$lang['server'] = 'سرور PostgreSQL شما'; +$lang['port'] = 'پورت سرور PostgreSQL شما'; +$lang['user'] = 'نام کاربری PostgreSQL'; +$lang['password'] = 'رمزعبور کابر بالا'; $lang['database'] = 'پایگاه داده مورد استفاده'; +$lang['debug'] = 'نمایش اطلاعات بیشتر برای خطایابی'; +$lang['forwardClearPass'] = 'به جای استفاده از امکان رمزنگاری، پسورد کاربران به صورت متنی به دستورات SQL ارسال شود'; +$lang['checkPass'] = 'دستور SQL برای چک کردن پسورد'; +$lang['getUserInfo'] = 'دستور SQL برای دریافت اطلاعات کاربران'; +$lang['getGroups'] = 'دستور SQL برای دریافت گروههای یک کاربر'; +$lang['getUsers'] = 'دستور SQL برای فهرست کردن تمام کاربران'; +$lang['FilterLogin'] = 'کلاز SQL برای فیلتر کردن کاربران با نام کاربری'; +$lang['FilterName'] = 'کلاز SQL برای فیلتر کردن کاربران با نام کامل'; +$lang['FilterEmail'] = 'کلاز SQL برای فیلتر کردن کاربران با آدرس ایمیل'; +$lang['FilterGroup'] = 'کلاز SQL برای فیلتر کردن کاربران با عضویت در گروه'; +$lang['SortOrder'] = 'کلاز SQL برای مرتب کردن کاربران'; +$lang['addUser'] = 'دستور SQL برای افزودن کاربر جدید'; +$lang['addGroup'] = 'دستور SQL برای افزودن گروه جدید'; +$lang['addUserGroup'] = 'دستور SQL برای افزودن یک کاربر به یک گروه موجود'; +$lang['delGroup'] = 'دستور SQL برای پاک کردن یک گروه'; +$lang['getUserID'] = 'دستور SQL برای گرفتن کلید اصلی یک کاربر'; +$lang['delUser'] = 'دستور SQL برای حذف یک کاربر'; +$lang['delUserRefs'] = 'دستور SQL برای پاک کردن یک کاربر از تمام گروهها'; +$lang['updateUser'] = 'دستور SQL برای بهروزرسانی پروفایل کاربر'; +$lang['UpdateLogin'] = 'کلاز Update برای به روز کردن نام کاربری'; +$lang['UpdatePass'] = 'کلاز Update برای به روز کردن پسورد کاربر'; +$lang['UpdateEmail'] = 'کلاز Update برای به روز کردن ایمیل کاربر'; +$lang['UpdateName'] = 'کلاز Update برای به روز کردن نام کامل کاربر'; +$lang['UpdateTarget'] = 'کلاز Limit برای شناسایی کاربر هنگام به روز رسانی'; +$lang['delUserGroup'] = 'دستور SQL برای حذف یک کاربر از یک گروه'; +$lang['getGroupID'] = 'دستور SQL برای گرفتن کلید اصلی یک گروه'; diff --git a/lib/plugins/authplain/lang/cy/lang.php b/lib/plugins/authplain/lang/cy/lang.php new file mode 100644 index 000000000..7f789e529 --- /dev/null +++ b/lib/plugins/authplain/lang/cy/lang.php @@ -0,0 +1,8 @@ +<?php +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + */ +$lang['userexists'] = 'Sori, mae defnyddiwr gyda\'r enw hwnnw eisoes yn bodoli.'; +$lang['usernotexists'] = 'Sori, \'dyw\'r defnyddiwr hwnnw ddim yn bodoli.'; +$lang['writefail'] = 'Methu â newid data defnyddiwr. Rhowch wybod i Weinydd y Wici'; diff --git a/lib/plugins/authplain/lang/fa/lang.php b/lib/plugins/authplain/lang/fa/lang.php index 49083ad60..c222927db 100644 --- a/lib/plugins/authplain/lang/fa/lang.php +++ b/lib/plugins/authplain/lang/fa/lang.php @@ -1,6 +1,10 @@ <?php + /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ -$lang['userexists'] = 'نام کاربریای که وارد کردید قبلن استفاده شده است. خواهشمندیم یک نام دیگر انتخاب کنید.'; +$lang['userexists'] = 'نام کاربریای که وارد کردید قبلن استفاده شده است. خواهشمندیم یک نام دیگر انتخاب کنید.'; +$lang['usernotexists'] = 'متاسفانه این کاربر وجود ندارد.'; +$lang['writefail'] = 'امکان ویرایش اطلاعات کاربر وجود ندارد. لطفا ادمین ویکی را مطلع نمایید.'; diff --git a/lib/plugins/authplain/lang/he/lang.php b/lib/plugins/authplain/lang/he/lang.php index 01d877b62..160968edd 100644 --- a/lib/plugins/authplain/lang/he/lang.php +++ b/lib/plugins/authplain/lang/he/lang.php @@ -1,6 +1,7 @@ <?php + /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * */ -$lang['userexists'] = 'משתמש בשם זה כבר נרשם, עמך הסליחה.'; +$lang['userexists'] = 'משתמש בשם זה כבר נרשם, עמך הסליחה.'; diff --git a/lib/plugins/authplain/lang/ro/lang.php b/lib/plugins/authplain/lang/ro/lang.php index eb243a12f..ece72b182 100644 --- a/lib/plugins/authplain/lang/ro/lang.php +++ b/lib/plugins/authplain/lang/ro/lang.php @@ -1,6 +1,7 @@ <?php + /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * */ -$lang['userexists'] = 'Ne pare rău, un utilizator cu acest nume este deja autentificat.'; +$lang['userexists'] = 'Ne pare rău, un utilizator cu acest nume este deja autentificat.'; diff --git a/lib/plugins/authplain/lang/th/lang.php b/lib/plugins/authplain/lang/th/lang.php index c7aaf68dd..463a27992 100644 --- a/lib/plugins/authplain/lang/th/lang.php +++ b/lib/plugins/authplain/lang/th/lang.php @@ -1,6 +1,7 @@ <?php + /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * */ -$lang['userexists'] = 'ชื่อบัญชีที่ใส่นั้นมีผู้อื่นได้ใช้แล้ว กรุณาเลือกชื่อผู้ใช้อื่น'; +$lang['userexists'] = 'ชื่อบัญชีที่ใส่นั้นมีผู้อื่นได้ใช้แล้ว กรุณาเลือกชื่อผู้ใช้อื่น'; diff --git a/lib/plugins/authplain/lang/uk/lang.php b/lib/plugins/authplain/lang/uk/lang.php index d8f0a32b2..8a796870f 100644 --- a/lib/plugins/authplain/lang/uk/lang.php +++ b/lib/plugins/authplain/lang/uk/lang.php @@ -1,6 +1,7 @@ <?php + /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * */ -$lang['userexists'] = 'Користувач з таким іменем вже існує.'; +$lang['userexists'] = 'Користувач з таким іменем вже існує.'; diff --git a/lib/plugins/config/lang/cs/lang.php b/lib/plugins/config/lang/cs/lang.php index d7a7362ae..05d2d52f7 100644 --- a/lib/plugins/config/lang/cs/lang.php +++ b/lib/plugins/config/lang/cs/lang.php @@ -204,6 +204,7 @@ $lang['xsendfile_o_2'] = 'Standardní hlavička X-Sendfile'; $lang['xsendfile_o_3'] = 'Proprietární hlavička Nginx X-Accel-Redirect'; $lang['showuseras_o_loginname'] = 'Přihlašovací jméno'; $lang['showuseras_o_username'] = 'Celé jméno uživatele'; +$lang['showuseras_o_username_link'] = 'Celé uživatelské jméno jako odkaz mezi wiki'; $lang['showuseras_o_email'] = 'E-mailová adresa uživatele ("zamaskována" aktuálně nastavenou metodou)'; $lang['showuseras_o_email_link'] = 'E-mailová adresa uživatele jako mailto: odkaz'; $lang['useheading_o_0'] = 'Nikdy'; diff --git a/lib/plugins/config/lang/cy/intro.txt b/lib/plugins/config/lang/cy/intro.txt new file mode 100644 index 000000000..02ccec586 --- /dev/null +++ b/lib/plugins/config/lang/cy/intro.txt @@ -0,0 +1,7 @@ +====== Rheolwr Ffurfwedd ====== + +Defnyddiwch y dudalen hon i reoli gosodiadau eich arsefydliad DokuWiki. Am gymorth ar osodiadau unigol ewch i [[doku>config]]. Am wybodaeth bellach ar yr ategyn hwn ewch i [[doku>plugin:config]]. + +Mae gosodiadau gyda chefndir coch golau wedi\'u hamddiffyn a \'sdim modd eu newid gyda\'r ategyn hwn. Mae gosodiaadau gyda chefndir glas yn dynodi gwerthoedd diofyn ac mae gosodiadau gyda chefndir gwyn wedi\'u gosod yn lleol ar gyfer yr arsefydliad penodol hwn. Mae modd newid gosodiadau gwyn a glas. + +Cofiwch bwyso y botwm **Cadw** cyn gadael y dudalen neu caiff eich newidiadau eu colli. diff --git a/lib/plugins/config/lang/cy/lang.php b/lib/plugins/config/lang/cy/lang.php new file mode 100644 index 000000000..54f3b4ceb --- /dev/null +++ b/lib/plugins/config/lang/cy/lang.php @@ -0,0 +1,262 @@ +<?php +/** + * welsh language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Christopher Smith <chris@jalakai.co.uk> + * @author Matthias Schulte <dokuwiki@lupo49.de> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +// for admin plugins, the menu prompt to be displayed in the admin menu +// if set here, the plugin doesn't need to override the getMenuText() method +$lang['menu'] = 'Gosodiadau Ffurwedd'; + +$lang['error'] = 'Gosodiadau heb eu diweddaru oherwydd gwerth annilys, gwiriwch eich newidiadau ac ailgyflwyno. + <br />Caiff y gwerth(oedd) anghywir ei/eu dangos gydag ymyl coch.'; +$lang['updated'] = 'Diweddarwyd gosodiadau\'n llwyddiannus.'; +$lang['nochoice'] = '(dim dewisiadau eraill ar gael)'; +$lang['locked'] = '\'Sdim modd diweddaru\'r ffeil osodiadau, os ydy hyn yn anfwriadol, <br /> + sicrhewch fod enw\'r ffeil osodiadau a\'r hawliau lleol yn gywir.'; + +$lang['danger'] = 'Perygl: Gall newid yr opsiwn hwn wneud eich wici a\'r ddewislen ffurfwedd yn anghyraeddadwy.'; +$lang['warning'] = 'Rhybudd: Gall newid yr opsiwn hwn achosi ymddygiad anfwriadol.'; +$lang['security'] = 'Rhybudd Diogelwch: Gall newid yr opsiwn hwn achosi risg diogelwch.'; + +/* --- Config Setting Headers --- */ +$lang['_configuration_manager'] = 'Rheolwr Ffurfwedd'; //same as heading in intro.txt +$lang['_header_dokuwiki'] = 'DokuWiki'; +$lang['_header_plugin'] = 'Ategyn'; +$lang['_header_template'] = 'Templed'; +$lang['_header_undefined'] = 'Gosodiadau Amhenodol'; + +/* --- Config Setting Groups --- */ +$lang['_basic'] = 'Sylfaenol'; +$lang['_display'] = 'Dangos'; +$lang['_authentication'] = 'Dilysiad'; +$lang['_anti_spam'] = 'Gwrth-Sbam'; +$lang['_editing'] = 'Yn Golygu'; +$lang['_links'] = 'Dolenni'; +$lang['_media'] = 'Cyfrwng'; +$lang['_notifications'] = 'Hysbysiad'; +$lang['_syndication'] = 'Syndication (RSS)'; //angen newid +$lang['_advanced'] = 'Uwch'; +$lang['_network'] = 'Rhwydwaith'; + +/* --- Undefined Setting Messages --- */ +$lang['_msg_setting_undefined'] = 'Dim gosodiad metadata.'; +$lang['_msg_setting_no_class'] = 'Dim gosodiad dosbarth.'; +$lang['_msg_setting_no_default'] = 'Dim gwerth diofyn.'; + +/* -------------------- Config Options --------------------------- */ + +/* Basic Settings */ +$lang['title'] = 'Teitl y wici h.y. enw\'ch wici'; +$lang['start'] = 'Enw\'r dudalen i\'w defnyddio fel man cychwyn ar gyfer pob namespace'; //namespace +$lang['lang'] = 'Iaith y rhyngwyneb'; +$lang['template'] = 'Templed h.y. dyluniad y wici.'; +$lang['tagline'] = 'Taglinell (os yw\'r templed yn ei gynnal)'; +$lang['sidebar'] = 'Enw tudalen y bar ochr (os yw\'r templed yn ei gynnal), Mae maes gwag yn analluogi\'r bar ochr'; +$lang['license'] = 'O dan ba drwydded dylai\'ch cynnwys gael ei ryddhau?'; +$lang['savedir'] = 'Ffolder ar gyfer cadw data'; +$lang['basedir'] = 'Llwybr y gweinydd (ee. <code>/dokuwiki/</code>). Gadewch yn wag ar gyfer awtoddatgeliad.'; +$lang['baseurl'] = 'URL y gweinydd (ee. <code>http://www.yourserver.com</code>). Gadewch yn wag ar gyfer awtoddatgeliad.'; +$lang['cookiedir'] = 'Llwybr cwcis. Gadewch yn wag i ddefnyddio \'baseurl\'.'; +$lang['dmode'] = 'Modd creu ffolderi'; +$lang['fmode'] = 'Modd creu ffeiliau'; +$lang['allowdebug'] = 'Caniatáu dadfygio. <b>Analluogwch os nac oes angen hwn!</b>'; + +/* Display Settings */ +$lang['recent'] = 'Nifer y cofnodion y dudalen yn y newidiadau diweddar'; +$lang['recent_days'] = 'Sawl newid diweddar i\'w cadw (diwrnodau)'; +$lang['breadcrumbs'] = 'Nifer y briwsion "trywydd". Gosodwch i 0 i analluogi.'; +$lang['youarehere'] = 'Defnyddiwch briwsion hierarchaidd (byddwch chi yn debygol o angen analluogi\'r opsiwn uchod wedyn)'; +$lang['fullpath'] = 'Datgelu llwybr llawn y tudalennau yn y troedyn'; +$lang['typography'] = 'Gwnewch amnewidiadau argraffyddol'; +$lang['dformat'] = 'Fformat dyddiad (gweler swyddogaeth <a href="http://www.php.net/strftime">strftime</a> PHP)'; +$lang['signature'] = 'Yr hyn i\'w mewnosod gyda\'r botwm llofnod yn y golygydd'; +$lang['showuseras'] = 'Yr hyn i\'w harddangos wrth ddangos y defnyddiwr a wnaeth olygu\'r dudalen yn olaf'; +$lang['toptoclevel'] = 'Lefel uchaf ar gyfer tabl cynnwys'; +$lang['tocminheads'] = 'Isafswm y penawdau sy\'n penderfynu os ydy\'r tabl cynnwys yn cael ei adeiladu'; +$lang['maxtoclevel'] = 'Lefel uchaf ar gyfer y tabl cynnwys'; +$lang['maxseclevel'] = 'Lefel uchaf adran olygu'; +$lang['camelcase'] = 'Defnyddio CamelCase ar gyfer dolenni'; +$lang['deaccent'] = 'Sut i lanhau enwau tudalennau'; +$lang['useheading'] = 'Defnyddio\'r pennawd cyntaf ar gyfer enwau tudalennau'; +$lang['sneaky_index'] = 'Yn ddiofyn, bydd DokuWiki yn dangos pob namespace yn y map safle. Bydd galluogi yr opsiwn hwn yn cuddio\'r rheiny lle \'sdim hawliau darllen gan y defnyddiwr. Gall hwn achosi cuddio subnamespaces cyraeddadwy a fydd yn gallu peri\'r indecs i beidio â gweithio gyda gosodiadau ACL penodol.'; //namespace +$lang['hidepages'] = 'Cuddio tudalennau sy\'n cydweddu gyda\'r mynegiad rheolaidd o\'r chwiliad, y map safle ac indecsau awtomatig eraill'; + +/* Authentication Settings */ +$lang['useacl'] = 'Defnyddio rhestrau rheoli mynediad'; +$lang['autopasswd'] = 'Awtogeneradu cyfrineiriau'; +$lang['authtype'] = 'Ôl-brosesydd dilysu'; +$lang['passcrypt'] = 'Dull amgryptio cyfrineiriau'; +$lang['defaultgroup']= 'Grŵp diofyn, caiff pob defnyddiwr newydd ei osod yn y grŵp hwn'; +$lang['superuser'] = 'Uwchddefnyddiwr - grŵp, defnyddiwr neu restr gwahanwyd gan goma defnyddiwr1,@group1,defnyddiwr2 gyda mynediad llawn i bob tudalen beth bynnag y gosodiadau ACL'; +$lang['manager'] = 'Rheolwr - grŵp, defnyddiwr neu restr gwahanwyd gan goma defnyddiwr1,@group1,defnyddiwr2 gyda mynediad i swyddogaethau rheoli penodol'; +$lang['profileconfirm'] = 'Cadrnhau newidiadau proffil gyda chyfrinair'; +$lang['rememberme'] = 'Caniatáu cwcis mewngofnodi parhaol (cofio fi)'; +$lang['disableactions'] = 'Analluogi gweithredoedd DokuWiki'; +$lang['disableactions_check'] = 'Gwirio'; +$lang['disableactions_subscription'] = 'Tanysgrifio/Dad-tanysgrifio'; +$lang['disableactions_wikicode'] = 'Dangos ffynhonnell/Allforio Crai'; +$lang['disableactions_profile_delete'] = 'Dileu Cyfrif Eu Hunain'; +$lang['disableactions_other'] = 'Gweithredoedd eraill (gwahanu gan goma)'; +$lang['disableactions_rss'] = 'XML Syndication (RSS)'; //angen newid hwn +$lang['auth_security_timeout'] = 'Terfyn Amser Diogelwch Dilysiad (eiliadau)'; +$lang['securecookie'] = 'A ddylai cwcis sydd wedi cael eu gosod gan HTTPS gael eu hanfon trwy HTTPS yn unig gan y porwr? Analluogwch yr opsiwn hwn dim ond pan fydd yr unig mewngofnodiad i\'ch wici wedi\'i ddiogelu gydag SSL ond mae pori\'r wici yn cael ei wneud heb ddiogelu.'; +$lang['remote'] = 'Galluogi\'r system API pell. Mae hwn yn galluogi apps eraill i gael mynediad i\'r wici trwy XML-RPC neu fecanweithiau eraill.'; +$lang['remoteuser'] = 'Cyfyngu mynediad API pell i grwpiau neu ddefnydwyr wedi\'u gwahanu gan goma yma. Gadewch yn wag i roi mynediad i bawb.'; + +/* Anti-Spam Settings */ +$lang['usewordblock']= 'Blocio sbam wedi selio ar restr eiriau'; +$lang['relnofollow'] = 'Defnyddio rel="nofollow" ar ddolenni allanol'; +$lang['indexdelay'] = 'Oediad cyn indecsio (eil)'; +$lang['mailguard'] = 'Tywyllu cyfeiriadau ebost'; +$lang['iexssprotect']= 'Gwirio ffeiliau a lanlwythwyd am JavaScript neu god HTML sydd efallai\'n faleisis'; + +/* Editing Settings */ +$lang['usedraft'] = 'Cadw drafft yn awtomatig wrth olygu'; +$lang['htmlok'] = 'Caniatáu HTML wedi\'i fewnosod'; +$lang['phpok'] = 'Caniatáu PHP wedi\'i fewnosod'; +$lang['locktime'] = 'Oed mwyaf ar gyfer cloi ffeiliau (eil)'; +$lang['cachetime'] = 'Oed mwyaf ar gyfer y storfa (eil)'; + +/* Link settings */ +$lang['target____wiki'] = 'Ffenestr darged ar gyfer dolenni mewnol'; +$lang['target____interwiki'] = 'Ffenestr darged ar gyfer dolenni interwiki'; +$lang['target____extern'] = 'Ffenestr darged ar gyfer dolenni allanol'; +$lang['target____media'] = 'Ffenestr darged ar gyfer dolenni cyfrwng'; +$lang['target____windows'] = 'Ffenestr darged ar gyfer dolenni ffenestri'; + +/* Media Settings */ +$lang['mediarevisions'] = 'Galluogi Mediarevisions?'; +$lang['refcheck'] = 'Gwirio os ydy ffeil gyfrwng yn dal yn cael ei defnydio cyn ei dileu hi'; +$lang['gdlib'] = 'Fersiwn GD Lib'; +$lang['im_convert'] = 'Llwybr i declyn trosi ImageMagick'; +$lang['jpg_quality'] = 'Ansawdd cywasgu JPG (0-100)'; +$lang['fetchsize'] = 'Uchafswm maint (beit) gall fetch.php lawlwytho o URL allanol, ee. i storio ac ailfeintio delweddau allanol.'; + +/* Notification Settings */ +$lang['subscribers'] = 'Caniatáu defnyddwyr i danysgrifio i newidiadau tudalen gan ebost'; +$lang['subscribe_time'] = 'Yr amser cyn caiff rhestrau tanysgrifio a chrynoadau eu hanfon (eil); Dylai hwn fod yn llai na\'r amser wedi\'i gosod mewn recent_days.'; +$lang['notify'] = 'Wastad anfon hysbysiadau newidiadau i\'r cyfeiriad ebost hwn'; +$lang['registernotify'] = 'Wastad anfon gwybodaeth ar ddefnyddwyr newydd gofrestru i\'r cyfeiriad ebost hwn'; +$lang['mailfrom'] = 'Cyfeiriad anfon ebyst i\'w ddefnyddio ar gyfer pyst awtomatig'; +$lang['mailprefix'] = 'Rhagddodiad testun ebyst i\'w ddefnyddio ar gyfer pyst awtomatig. Gadewch yn wag i ddefnyddio teitl y wici'; +$lang['htmlmail'] = 'Anfonwch ebyst aml-ddarn HTML sydd yn edrych yn well, ond sy\'n fwy mewn maint. Analluogwch ar gyfer pyst testun plaen yn unig.'; + +/* Syndication Settings */ +$lang['sitemap'] = 'Generadu map safle Google mor aml â hyn (mewn diwrnodau). 0 i anallogi'; +$lang['rss_type'] = 'Math y ffrwd XML'; +$lang['rss_linkto'] = 'Ffrwd XML yn cysylltu â'; +$lang['rss_content'] = 'Beth i\'w ddangos mewn eitemau\'r ffrwd XML?'; +$lang['rss_update'] = 'Cyfnod diwedaru ffrwd XML (eil)'; +$lang['rss_show_summary'] = 'Dangos crynodeb mewn teitl y ffrwd XML'; +$lang['rss_media'] = 'Pa fath newidiadau a ddylai cael eu rhestru yn y ffrwd XML??'; + +/* Advanced Options */ +$lang['updatecheck'] = 'Gwirio am ddiweddariadau a rhybuddion diogelwch? Mae\'n rhaid i DokuWiki gysylltu ag update.dokuwiki.org ar gyfer y nodwedd hon.'; +$lang['userewrite'] = 'Defnyddio URLs pert'; +$lang['useslash'] = 'Defnyddio slaes fel gwahanydd namespace mewn URL'; +$lang['sepchar'] = 'Gwanahydd geiriau mewn enw tudalennau'; +$lang['canonical'] = 'Defnyddio URLs canonaidd llawn'; +$lang['fnencode'] = 'Dull amgodio enw ffeiliau \'non-ASCII\'.'; +$lang['autoplural'] = 'Gwirio am ffurfiau lluosog mewn dolenni'; +$lang['compression'] = 'Dull cywasgu ar gyfer ffeiliau llofft (hen adolygiadau)'; +$lang['gzip_output'] = 'Defnyddio gzip Content-Encoding ar gyfer xhtml'; //pwy a wyr +$lang['compress'] = 'Cywasgu allbwn CSS a javascript'; +$lang['cssdatauri'] = 'Uchafswm maint mewn beitiau ar gyfer delweddau i\'w cyfeirio atynt mewn ffeiliau CSS a ddylai cael eu mewnosod i\'r ddalen arddull i leihau gorbenion pennyn cais HTTP. \'Dyw\'r dechneg hon ddim yn gweithio mewn IE 7 ac is! Mae <code>400</code> i <code>600</code> beit yn werth da. Gosodwch i <code>0</code> i\'w analluogi.'; +$lang['send404'] = 'Anfon "HTTP 404/Page Not Found" ar gyfer tudalennau sy ddim yn bodoli'; +$lang['broken_iua'] = 'Ydy\'r swyddogaeth ignore_user_abort wedi torri ar eich system? Gall hwn achosi\'r indecs chwilio i beidio â gweithio. Rydym yn gwybod bod IIS+PHP/CGI wedi torri. Gweler <a href="http://bugs.dokuwiki.org/?do=details&task_id=852">Bug 852</a> am wybodaeth bellach.'; +$lang['xsendfile'] = 'Defnyddio\'r pennyn X-Sendfile i ganiatáu\'r gweinydd gwe i ddanfon ffeiliau statig? Mae\'n rhaid bod eich gweinydd gwe yn caniatáu hyn.'; +$lang['renderer_xhtml'] = 'Cyflwynydd i ddefnyddio ar gyfer prif allbwn (xhtml) y wici'; +$lang['renderer__core'] = '%s (craidd dokuwiki)'; +$lang['renderer__plugin'] = '%s (ategyn)'; + +/* Network Options */ +$lang['dnslookups'] = 'Bydd DokuWiki yn edrych i fyny enwau gwesteiwyr ar gyfer cyfeiriadau IP pell y defnyddwyr hynny sy\'n golygu tudalennau. Os oes gweinydd DNS sy\'n araf neu sy ddim yn gweithio \'da chi neu \'dych chi ddim am ddefnyddio\'r nodwedd hon, analluogwch yr opsiwn hwn.'; + +/* Proxy Options */ +$lang['proxy____host'] = 'Enw\'r gweinydd procsi'; +$lang['proxy____port'] = 'Porth procsi'; +$lang['proxy____user'] = 'Defnyddair procsi'; +$lang['proxy____pass'] = 'Cyfrinair procsi'; +$lang['proxy____ssl'] = 'Defnyddio SSL i gysylltu â\'r procsi'; +$lang['proxy____except'] = 'Mynegiad rheolaidd i gydweddu URL ar gyfer y procsi a ddylai cael eu hanwybyddu.'; + +/* Safemode Hack */ +$lang['safemodehack'] = 'Galluogi safemode hack'; +$lang['ftp____host'] = 'Gweinydd FTP safemode hack'; +$lang['ftp____port'] = 'Porth FTP safemode hack'; +$lang['ftp____user'] = 'Defnyddair FTP safemode hack'; +$lang['ftp____pass'] = 'Cyfrinair FTP safemode hack'; +$lang['ftp____root'] = 'Gwraiddffolder FTP safemode hack'; + +/* License Options */ +$lang['license_o_'] = 'Dim wedi\'i ddewis'; + +/* typography options */ +$lang['typography_o_0'] = 'dim'; +$lang['typography_o_1'] = 'eithrio dyfynodau sengl'; +$lang['typography_o_2'] = 'cynnwys dyfynodau sengl (efallai ddim yn gweithio pob tro)'; + +/* userewrite options */ +$lang['userewrite_o_0'] = 'dim'; +$lang['userewrite_o_1'] = '.htaccess'; +$lang['userewrite_o_2'] = 'DokuWiki mewnol'; + +/* deaccent options */ +$lang['deaccent_o_0'] = 'bant'; +$lang['deaccent_o_1'] = 'tynnu acenion'; +$lang['deaccent_o_2'] = 'rhufeinio'; + +/* gdlib options */ +$lang['gdlib_o_0'] = 'GD Lib ddim ar gael'; +$lang['gdlib_o_1'] = 'Fersiwn 1.x'; +$lang['gdlib_o_2'] = 'Awtoddatgeliad'; + +/* rss_type options */ +$lang['rss_type_o_rss'] = 'RSS 0.91'; +$lang['rss_type_o_rss1'] = 'RSS 1.0'; +$lang['rss_type_o_rss2'] = 'RSS 2.0'; +$lang['rss_type_o_atom'] = 'Atom 0.3'; +$lang['rss_type_o_atom1'] = 'Atom 1.0'; + +/* rss_content options */ +$lang['rss_content_o_abstract'] = 'Crynodeb'; +$lang['rss_content_o_diff'] = 'Gwahan. Unedig'; +$lang['rss_content_o_htmldiff'] = 'Gwahaniaethau ar ffurf tabl HTML'; +$lang['rss_content_o_html'] = 'Cynnwys tudalen HTML llawn'; + +/* rss_linkto options */ +$lang['rss_linkto_o_diff'] = 'golwg gwahaniaethau'; +$lang['rss_linkto_o_page'] = 'y dudalen a adolygwyd'; +$lang['rss_linkto_o_rev'] = 'rhestr adolygiadau'; +$lang['rss_linkto_o_current'] = 'y dudalen gyfredol'; + +/* compression options */ +$lang['compression_o_0'] = 'dim'; +$lang['compression_o_gz'] = 'gzip'; +$lang['compression_o_bz2'] = 'bz2'; + +/* xsendfile header */ +$lang['xsendfile_o_0'] = "peidio â defnyddio"; +$lang['xsendfile_o_1'] = 'Pennyn perchnogol lighttpd (cyn rhyddhad 1.5)'; +$lang['xsendfile_o_2'] = 'Pennyn safonol X-Sendfile'; +$lang['xsendfile_o_3'] = 'Pennyn perchnogol Nginx X-Accel-Redirect'; + +/* Display user info */ +$lang['showuseras_o_loginname'] = 'Enw mewngofnodi'; +$lang['showuseras_o_username'] = "Enw llawn y defnyddiwr"; +$lang['showuseras_o_username_link'] = "Enw llawn y defnyddiwr fel dolen defnyddiwr interwiki"; +$lang['showuseras_o_email'] = "Cyfeiriad e-bost y defnyddiwr (tywyllu yn ôl gosodiad mailguard)"; +$lang['showuseras_o_email_link'] = "Cyfeiriad e-bost y defnyddiwr fel dolen mailto:"; + +/* useheading options */ +$lang['useheading_o_0'] = 'Byth'; +$lang['useheading_o_navigation'] = 'Llywio yn Unig'; +$lang['useheading_o_content'] = 'Cynnwys Wici yn Unig'; +$lang['useheading_o_1'] = 'Wastad'; + +$lang['readdircache'] = 'Uchafswm amser ar gyfer storfa readdir (eil)'; diff --git a/lib/plugins/config/lang/fa/lang.php b/lib/plugins/config/lang/fa/lang.php index dd97f716e..00b60f062 100644 --- a/lib/plugins/config/lang/fa/lang.php +++ b/lib/plugins/config/lang/fa/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Persian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author behrad eslamifar <behrad_es@yahoo.com) * @author Mohsen Firoozmandan <info@mambolearn.com> * @author omidmr@gmail.com @@ -9,6 +10,8 @@ * @author Mohammad Reza Shoaei <shoaei@gmail.com> * @author Milad DZand <M.DastanZand@gmail.com> * @author AmirH Hassaneini <mytechmix@gmail.com> + * @author Mohmmad Razavi <sepent@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ $lang['menu'] = 'تنظیمات پیکربندی'; $lang['error'] = 'به دلیل ایراد در مقادیر وارد شده، تنظیمات اعمال نشد، خواهشمندیم تغییرات را مجددن کنترل نمایید و دوباره ارسال کنید.<br/> مقادیر مشکلدار با کادر قرمز مشخص شدهاند.'; @@ -82,7 +85,9 @@ $lang['disableactions'] = 'غیرفعال کردن فعالیتهای $lang['disableactions_check'] = 'بررسی'; $lang['disableactions_subscription'] = 'عضویت/عدم عضویت'; $lang['disableactions_wikicode'] = 'نمایش سورس/برونبری خام'; +$lang['disableactions_profile_delete'] = 'حذف حساب کاربری خود.'; $lang['disableactions_other'] = 'فعالیتهای دیگر (با ویرگول انگلیسی «,» از هم جدا کنید)'; +$lang['disableactions_rss'] = 'خبرخوان (RSS)'; $lang['auth_security_timeout'] = 'زمان انقضای معتبرسازی به ثانیه'; $lang['securecookie'] = 'آیا کوکیها باید با قرارداد HTTPS ارسال شوند؟ این گزینه را زمانی که فقط صفحهی ورود ویکیتان با SSL امن شده است، اما ویکی را ناامن مرور میکنید، غیرفعال نمایید.'; $lang['remote'] = 'سیستم API راه دور را فعال کنید . این به سایر کاربردها اجازه می دهد که به ویکی از طریق XML-RPC یا سایر مکانیزم ها دسترسی داشته باشند.'; @@ -188,6 +193,7 @@ $lang['xsendfile_o_2'] = 'هدر استاندارد X-Sendfile'; $lang['xsendfile_o_3'] = 'هدر اختصاصی X-Accel-Redirect در وب سرور Nginx'; $lang['showuseras_o_loginname'] = 'نام کاربری'; $lang['showuseras_o_username'] = 'نام کامل کاربران'; +$lang['showuseras_o_username_link'] = 'نام کامل کاربر به عنوان لینک داخلی ویکی'; $lang['showuseras_o_email'] = 'آدرس ایمیل کاربران (با تنظیمات «نگهبان ایمیل» مبهم میشود)'; $lang['showuseras_o_email_link'] = 'نمایش ایمیل کاربران با افزودن mailto'; $lang['useheading_o_0'] = 'هرگز'; diff --git a/lib/plugins/config/lang/fr/lang.php b/lib/plugins/config/lang/fr/lang.php index 69e58f731..88f78f425 100644 --- a/lib/plugins/config/lang/fr/lang.php +++ b/lib/plugins/config/lang/fr/lang.php @@ -6,17 +6,16 @@ * @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 <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 Samuel Dorsaz <samuel.dorsaz@novelion.net> * @author Johan Guilbaud <guilbaud.johan@gmail.com> - * @author schplurtz@laposte.net - * @author skimpax@gmail.com + * @author <skimpax@gmail.com> * @author Yannick Aure <yannick.aure@gmail.com> * @author Olivier DUVAL <zorky00@gmail.com> * @author Anael Mobilia <contrib@anael.eu> @@ -24,6 +23,8 @@ * @author Carbain Frédéric <fcarbain@yahoo.fr> * @author Nicolas Friedli <nicolas@theologique.ch> * @author Floriang <antispam@floriang.eu> + * @author Schplurtz le Déboulonné <Schplurtz@laposte.net> + * @author Simon DELAGE <simon.geekitude@gmail.com> */ $lang['menu'] = 'Paramètres de configuration'; $lang['error'] = 'Paramètres non modifiés en raison d\'une valeur invalide, vérifiez vos réglages puis réessayez. <br />Les valeurs erronées sont entourées d\'une bordure rouge.'; @@ -36,7 +37,7 @@ $lang['security'] = 'Avertissement de sécurité : modifier cette o $lang['_configuration_manager'] = 'Gestionnaire de configuration'; $lang['_header_dokuwiki'] = 'Paramètres de DokuWiki'; $lang['_header_plugin'] = 'Paramètres des extensions'; -$lang['_header_template'] = 'Paramètres des modèles'; +$lang['_header_template'] = 'Paramètres du modèle'; $lang['_header_undefined'] = 'Paramètres indéfinis'; $lang['_basic'] = 'Paramètres de base'; $lang['_display'] = 'Paramètres d\'affichage'; diff --git a/lib/plugins/config/lang/he/lang.php b/lib/plugins/config/lang/he/lang.php index bddfd90af..416d775d0 100644 --- a/lib/plugins/config/lang/he/lang.php +++ b/lib/plugins/config/lang/he/lang.php @@ -1,13 +1,14 @@ <?php + /** - * hebrew language file - * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author DoK <kamberd@yahoo.com> * @author Dotan Kamber <kamberd@yahoo.com> * @author Moshe Kaplan <mokplan@gmail.com> * @author Yaron Yogev <yaronyogev@gmail.com> * @author Yaron Shahrabani <sh.yaron@gmail.com> + * @author sagi <sagiyosef@gmail.com> */ $lang['menu'] = 'הגדרות תצורה'; $lang['error'] = 'ההגדרות לא עודכנו בגלל ערך לא תקף, נא לעיין בשינויים ולשלוח שנית. @@ -33,22 +34,22 @@ $lang['_network'] = 'הגדרות רשת'; $lang['_msg_setting_undefined'] = 'אין מידע-על להגדרה.'; $lang['_msg_setting_no_class'] = 'אין קבוצה להגדרה.'; $lang['_msg_setting_no_default'] = 'אין ערך ברירת מחדל.'; -$lang['fmode'] = 'מצב יצירת קובץ'; -$lang['dmode'] = 'מצב יצירת ספריה'; +$lang['title'] = 'כותרת הויקי'; +$lang['start'] = 'שם דף הפתיחה'; $lang['lang'] = 'שפה'; +$lang['template'] = 'תבנית'; +$lang['savedir'] = 'ספריה לשמירת מידע'; $lang['basedir'] = 'ספרית בסיס'; $lang['baseurl'] = 'כתובת URL בסיסית'; -$lang['savedir'] = 'ספריה לשמירת מידע'; -$lang['start'] = 'שם דף הפתיחה'; -$lang['title'] = 'כותרת הויקי'; -$lang['template'] = 'תבנית'; -$lang['fullpath'] = 'הצגת נתיב מלא לדפים בתחתית'; +$lang['dmode'] = 'מצב יצירת ספריה'; +$lang['fmode'] = 'מצב יצירת קובץ'; +$lang['allowdebug'] = 'אפשר דיבוג <b>יש לבטל אם אין צורך!</b>'; $lang['recent'] = 'שינויים אחרונים'; +$lang['recent_days'] = 'כמה שינויים אחרונים לשמור (ימים)'; $lang['breadcrumbs'] = 'מספר עקבות להיסטוריה'; $lang['youarehere'] = 'עקבות היררכיות להיסטוריה'; +$lang['fullpath'] = 'הצגת נתיב מלא לדפים בתחתית'; $lang['typography'] = 'שימוש בחלופות טיפוגרפיות'; -$lang['htmlok'] = 'אישור שיבוץ HTML'; -$lang['phpok'] = 'אישור שיבוץ PHP'; $lang['dformat'] = 'תסדיר תאריך (נא לפנות לפונקציה <a href="http://www.php.net/strftime">strftime</a> של PHP)'; $lang['signature'] = 'חתימה'; $lang['toptoclevel'] = 'רמה עליונה בתוכן הענינים'; @@ -57,13 +58,8 @@ $lang['maxseclevel'] = 'רמה מירבית בעריכת קטעים'; $lang['camelcase'] = 'השתמש בראשיות גדולות לקישורים'; $lang['deaccent'] = 'נקה שמות דפים'; $lang['useheading'] = 'השתמש בכותרת הראשונה לשם הדף'; -$lang['refcheck'] = 'בדוק שיוך מדיה'; -$lang['allowdebug'] = 'אפשר דיבוג <b>יש לבטל אם אין צורך!</b>'; -$lang['usewordblock'] = 'חסימת דואר זבל לפי רשימת מילים'; -$lang['indexdelay'] = 'השהיה בטרם הכנסה לאינדקס (שניות)'; -$lang['relnofollow'] = 'השתמש ב- rel="nofollow" לקישורים חיצוניים'; -$lang['mailguard'] = 'הגן על כתובות דוא"ל'; -$lang['iexssprotect'] = 'בדוק את הדפים המועלים לחשד ל-JavaScript או קוד HTML זדוני'; +$lang['sneaky_index'] = 'כברירת מחדל, דוקוויקי יציג את כל מרחבי השמות בתצוגת תוכן הענינים. בחירה באפשרות זאת תסתיר את אלו שבהם למשתמש אין הרשאות קריאה. התוצאה עלולה להיות הסתרת תת מרחבי שמות אליהם יש למשתמש גישה. באופן זה תוכן הענינים עלול להפוך לחסר תועלת עם הגדרות ACL מסוימות'; +$lang['hidepages'] = 'הסתר דפים תואמים (ביטויים רגולריים)'; $lang['useacl'] = 'השתמש ברשימות בקרת גישה'; $lang['autopasswd'] = 'צור סיסמאות באופן אוטומטי'; $lang['authtype'] = 'מנוע הזדהות'; @@ -77,47 +73,52 @@ $lang['disableactions_check'] = 'בדיקה'; $lang['disableactions_subscription'] = 'הרשמה/הסרה מרשימה'; $lang['disableactions_wikicode'] = 'הצגת המקור/יצוא גולמי'; $lang['disableactions_other'] = 'פעולות אחרות (מופרדות בפסיק)'; -$lang['sneaky_index'] = 'כברירת מחדל, דוקוויקי יציג את כל מרחבי השמות בתצוגת תוכן הענינים. בחירה באפשרות זאת תסתיר את אלו שבהם למשתמש אין הרשאות קריאה. התוצאה עלולה להיות הסתרת תת מרחבי שמות אליהם יש למשתמש גישה. באופן זה תוכן הענינים עלול להפוך לחסר תועלת עם הגדרות ACL מסוימות'; $lang['auth_security_timeout'] = 'מגבלת אבטח פסק הזמן להזדהות (שניות)'; +$lang['usewordblock'] = 'חסימת דואר זבל לפי רשימת מילים'; +$lang['relnofollow'] = 'השתמש ב- rel="nofollow" לקישורים חיצוניים'; +$lang['indexdelay'] = 'השהיה בטרם הכנסה לאינדקס (שניות)'; +$lang['mailguard'] = 'הגן על כתובות דוא"ל'; +$lang['iexssprotect'] = 'בדוק את הדפים המועלים לחשד ל-JavaScript או קוד HTML זדוני'; +$lang['usedraft'] = 'שמור טיוטות באופן אוטומטי בעת עריכה'; +$lang['htmlok'] = 'אישור שיבוץ HTML'; +$lang['phpok'] = 'אישור שיבוץ PHP'; +$lang['locktime'] = 'גיל מירבי לקבצי נעילה (שניות)'; +$lang['cachetime'] = 'גיל מירבי לזכרון מטמון (שניות)'; +$lang['target____wiki'] = 'חלון יעד לקישורים פנימיים'; +$lang['target____interwiki'] = 'חלון יעד לקישורים בין מערכות ויקי'; +$lang['target____extern'] = 'חלון יעד לקישורים חיצוניים'; +$lang['target____media'] = 'חלון יעד לקישור למדיה'; +$lang['target____windows'] = 'חלון יעד לתיקיות משותפות'; +$lang['refcheck'] = 'בדוק שיוך מדיה'; +$lang['gdlib'] = 'גרסת ספרית ה-GD'; +$lang['im_convert'] = 'נתיב לכלי ה-convert של ImageMagick'; +$lang['jpg_quality'] = 'איכות הדחיסה של JPG (0-100)'; +$lang['fetchsize'] = 'גודל הקובץ המירבי (bytes) ש-fetch.php יכול להוריד מבחוץ'; +$lang['subscribers'] = 'התר תמיכה ברישום לדפים'; +$lang['notify'] = 'שלח התראות על שינויים לכתובת דוא"ל זו'; +$lang['registernotify'] = 'שלח מידע על משתמשים רשומים חדשים לכתובת דוא"ל זו'; +$lang['mailfrom'] = 'כתובת הדוא"ל לשימוש בדברי דוא"ל אוטומטיים'; +$lang['sitemap'] = 'צור מפת אתר של Google (ימים)'; +$lang['rss_type'] = 'סוג פלט XML'; +$lang['rss_linkto'] = 'פלט ה-XML מקשר אל'; +$lang['rss_content'] = 'מה להציג בפרטי פלט ה-XML'; +$lang['rss_update'] = 'פלט ה-XML מתעדכן כל (שניות)'; +$lang['rss_show_summary'] = 'פלט ה-XML מציג תקציר בכותרת'; $lang['updatecheck'] = 'בדיקת עידכוני אבטחה והתראות? על DokuWiki להתקשר אל update.dokuwiki.org לצורך כך.'; $lang['userewrite'] = 'השתמש בכתובות URL יפות'; $lang['useslash'] = 'השתמש בלוכסן להגדרת מרחבי שמות בכתובות'; -$lang['usedraft'] = 'שמור טיוטות באופן אוטומטי בעת עריכה'; $lang['sepchar'] = 'מפריד בין מילות שם-דף'; $lang['canonical'] = 'השתמש בכתובות URL מלאות'; $lang['autoplural'] = 'בדוק לצורת רבים בקישורים'; $lang['compression'] = 'אופן דחיסת קבצים ב-attic'; -$lang['cachetime'] = 'גיל מירבי לזכרון מטמון (שניות)'; -$lang['locktime'] = 'גיל מירבי לקבצי נעילה (שניות)'; -$lang['fetchsize'] = 'גודל הקובץ המירבי (bytes) ש-fetch.php יכול להוריד מבחוץ'; -$lang['notify'] = 'שלח התראות על שינויים לכתובת דוא"ל זו'; -$lang['registernotify'] = 'שלח מידע על משתמשים רשומים חדשים לכתובת דוא"ל זו'; -$lang['mailfrom'] = 'כתובת הדוא"ל לשימוש בדברי דוא"ל אוטומטיים'; $lang['gzip_output'] = 'השתמש בקידוד תוכן של gzip עבור xhtml'; -$lang['gdlib'] = 'גרסת ספרית ה-GD'; -$lang['im_convert'] = 'נתיב לכלי ה-convert של ImageMagick'; -$lang['jpg_quality'] = 'איכות הדחיסה של JPG (0-100)'; -$lang['subscribers'] = 'התר תמיכה ברישום לדפים'; $lang['compress'] = 'פלט קומפקטי של CSS ו-javascript'; -$lang['hidepages'] = 'הסתר דפים תואמים (ביטויים רגולריים)'; $lang['send404'] = 'שלח "HTTP 404/Page Not Found" עבור דפים שאינם קיימים'; -$lang['sitemap'] = 'צור מפת אתר של Google (ימים)'; $lang['broken_iua'] = 'האם הפעולה ignore_user_abort תקולה במערכת שלך? הדבר עלול להביא לתוכן חיפוש שאינו תקין. IIS+PHP/CGI ידוע כתקול. ראה את <a href="http://bugs.splitbrain.org/?do=details&task_id=852">באג 852</a> למידע נוסף'; $lang['xsendfile'] = 'להשתמש בכותר X-Sendfile כדי לאפשר לשרת לספק קבצים סטטיים? על השרת שלך לתמוך באפשרות זאת.'; $lang['renderer_xhtml'] = 'מחולל לשימוש עבור פלט הויקי העיקרי (xhtml)'; $lang['renderer__core'] = '%s (ליבת דוקוויקי)'; $lang['renderer__plugin'] = '%s (הרחבות)'; -$lang['rss_type'] = 'סוג פלט XML'; -$lang['rss_linkto'] = 'פלט ה-XML מקשר אל'; -$lang['rss_content'] = 'מה להציג בפרטי פלט ה-XML'; -$lang['rss_update'] = 'פלט ה-XML מתעדכן כל (שניות)'; -$lang['recent_days'] = 'כמה שינויים אחרונים לשמור (ימים)'; -$lang['rss_show_summary'] = 'פלט ה-XML מציג תקציר בכותרת'; -$lang['target____wiki'] = 'חלון יעד לקישורים פנימיים'; -$lang['target____interwiki'] = 'חלון יעד לקישורים בין מערכות ויקי'; -$lang['target____extern'] = 'חלון יעד לקישורים חיצוניים'; -$lang['target____media'] = 'חלון יעד לקישור למדיה'; -$lang['target____windows'] = 'חלון יעד לתיקיות משותפות'; $lang['proxy____host'] = 'שם השרת המתווך'; $lang['proxy____port'] = 'שער השרת המתווך'; $lang['proxy____user'] = 'שם המשתמש בשרת המתווך'; diff --git a/lib/plugins/config/lang/ko/lang.php b/lib/plugins/config/lang/ko/lang.php index 420946f84..fbec5167b 100644 --- a/lib/plugins/config/lang/ko/lang.php +++ b/lib/plugins/config/lang/ko/lang.php @@ -9,6 +9,7 @@ * @author Seung-Chul Yoo <dryoo@live.com> * @author erial2@gmail.com * @author Myeongjin <aranet100@gmail.com> + * @author Erial <erial2@gmail.com> */ $lang['menu'] = '환경 설정'; $lang['error'] = '잘못된 값 때문에 설정을 바꿀 수 없습니다, 바뀜을 검토하고 다시 제출하세요. @@ -112,7 +113,7 @@ $lang['gdlib'] = 'GD 라이브러리 버전'; $lang['im_convert'] = 'ImageMagick의 변환 도구의 경로'; $lang['jpg_quality'] = 'JPG 압축 품질 (0-100)'; $lang['fetchsize'] = 'fetch.php가 바깥 URL에서 다운로드할 수 있는 최대 크기 (바이트), 예를 들어 바깥 그림을 캐시하고 크기 조절할 때.'; -$lang['subscribers'] = '사용자가 이메일로 문서 바뀜을 구독하는 것을 허용'; +$lang['subscribers'] = '사용자가 이메일로 문서 바뀜을 구독할 수 있도록 하기'; $lang['subscribe_time'] = '구독 목록과 요약이 보내질 경과 시간 (초); recent_days에 지정된 시간보다 작아야 합니다.'; $lang['notify'] = '항상 이 이메일 주소로 바뀜 알림을 보냄'; $lang['registernotify'] = '항상 이 이메일 주소로 새로 등록한 사용자의 정보를 보냄'; diff --git a/lib/plugins/config/lang/pt-br/lang.php b/lib/plugins/config/lang/pt-br/lang.php index 625dc6a25..0d13991ae 100644 --- a/lib/plugins/config/lang/pt-br/lang.php +++ b/lib/plugins/config/lang/pt-br/lang.php @@ -18,6 +18,8 @@ * @author Isaias Masiero Filho <masiero@masiero.org> * @author Balaco Baco <balacobaco@imap.cc> * @author Victor Westmann <victor.westmann@gmail.com> + * @author Guilherme Cardoso <guicardoso@gmail.com> + * @author Viliam Dias <viliamjr@gmail.com> */ $lang['menu'] = 'Configurações do DokuWiki'; $lang['error'] = 'As configurações não foram atualizadas devido a um valor inválido. Por favor, reveja suas alterações e reenvie-as.<br />O(s) valor(es) incorreto(s) serão exibidos contornados por uma borda vermelha.'; diff --git a/lib/plugins/config/lang/pt/lang.php b/lib/plugins/config/lang/pt/lang.php index c95349265..509ccc6a7 100644 --- a/lib/plugins/config/lang/pt/lang.php +++ b/lib/plugins/config/lang/pt/lang.php @@ -9,6 +9,7 @@ * @author André Neves <drakferion@gmail.com> * @author José Campos zecarlosdecampos@gmail.com * @author Paulo Carmino <contato@paulocarmino.com> + * @author Alfredo Silva <alfredo.silva@sky.com> */ $lang['menu'] = 'Configuração'; $lang['error'] = 'Parâmetros de Configuração não actualizados devido a valores inválidos. Por favor, reveja as modificações que pretende efectuar antes de re-submetê-las.<br /> Os valores incorrectos serão mostrados dentro de uma "moldura" vermelha.'; @@ -32,6 +33,7 @@ $lang['_editing'] = 'Configuração de Edição'; $lang['_links'] = 'Configuração de Ligações'; $lang['_media'] = 'Configuração de Media'; $lang['_notifications'] = 'Notificação'; +$lang['_syndication'] = 'Sindicação (RSS)'; $lang['_advanced'] = 'Configurações Avançadas'; $lang['_network'] = 'Configuração de Rede'; $lang['_msg_setting_undefined'] = 'Nenhum metadado configurado.'; @@ -81,6 +83,7 @@ $lang['disableactions_subscription'] = 'Subscrever/Não Subscrver'; $lang['disableactions_wikicode'] = 'Ver fonte/Exportar em bruto'; $lang['disableactions_profile_delete'] = 'Deletar Sua Conta.'; $lang['disableactions_other'] = 'Outras acções (separadas por vírgula)'; +$lang['disableactions_rss'] = 'Sindicação XML (RSS)'; $lang['auth_security_timeout'] = 'Tempo limite de segurança para autenticações (seg)'; $lang['securecookie'] = 'Os cookies definidos via HTTPS deverão ser enviados para o navegador somente via HTTPS? Desabilite essa opção quando somente a autenticação do seu wiki for realizada de maneira segura via SSL e a navegação de maneira insegura.'; $lang['usewordblock'] = 'Bloquear spam baseado em lista de palavras (wordlist)'; @@ -98,6 +101,7 @@ $lang['target____interwiki'] = 'Parâmetro "target" para links entre wikis'; $lang['target____extern'] = 'Parâmetro "target" para links externos'; $lang['target____media'] = 'Parâmetro "target" para links de media'; $lang['target____windows'] = 'Parâmetro "target" para links do Windows'; +$lang['mediarevisions'] = 'Ativar Mediarevisions?'; $lang['refcheck'] = 'Verificação de referência da media'; $lang['gdlib'] = 'Versão GD Lib'; $lang['im_convert'] = 'Caminho para a ferramenta "convert" do ImageMagick'; diff --git a/lib/plugins/config/lang/ro/lang.php b/lib/plugins/config/lang/ro/lang.php index e95c551e7..30f543fd1 100644 --- a/lib/plugins/config/lang/ro/lang.php +++ b/lib/plugins/config/lang/ro/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Romanian language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Sergiu Baltariu <s_baltariu@yahoo.com> * @author s_baltariu@yahoo.com * @author Emanuel-Emeric Andrasi <n30@mandrivausers.ro> @@ -37,28 +38,29 @@ $lang['_network'] = 'Setări Reţea'; $lang['_msg_setting_undefined'] = 'Nesetat metadata'; $lang['_msg_setting_no_class'] = 'Nesetat class'; $lang['_msg_setting_no_default'] = 'Nici o valoare implicită'; -$lang['fmode'] = 'Mod creare fişier'; -$lang['dmode'] = 'Mod creare director'; -$lang['lang'] = 'Limbă'; -$lang['basedir'] = 'Director bază'; -$lang['baseurl'] = 'URL bază '; -$lang['savedir'] = 'Director pentru salvarea datelor'; -$lang['cookiedir'] = 'Cale Cookie. Lăsați gol pentru a utiliza baseurl.'; -$lang['start'] = 'Numele paginii de start'; $lang['title'] = 'Titlul wiki'; +$lang['start'] = 'Numele paginii de start'; +$lang['lang'] = 'Limbă'; $lang['template'] = 'Şablon'; $lang['tagline'] = 'Slogan (dacă templateul suportă opțiunea)'; $lang['sidebar'] = 'Numele paginii barei laterale (dacă templateul suportă opțiunea), câmpul lăsat gol dezactivează bara laterală'; $lang['license'] = 'Sub ce licenţă va fi publicat conţinutul?'; -$lang['fullpath'] = 'Arată calea completă a paginii în subsol'; +$lang['savedir'] = 'Director pentru salvarea datelor'; +$lang['basedir'] = 'Director bază'; +$lang['baseurl'] = 'URL bază '; +$lang['cookiedir'] = 'Cale Cookie. Lăsați gol pentru a utiliza baseurl.'; +$lang['dmode'] = 'Mod creare director'; +$lang['fmode'] = 'Mod creare fişier'; +$lang['allowdebug'] = 'Permite depanarea <b>dezactivaţi dacă cu e necesar!</b>'; $lang['recent'] = 'Modificări recente'; +$lang['recent_days'] = 'Câte modificări recente să se păstreze?'; $lang['breadcrumbs'] = 'Numărul de "urme" lăsate'; $lang['youarehere'] = 'Structura ierarhică a "urmelor" lăsate'; +$lang['fullpath'] = 'Arată calea completă a paginii în subsol'; $lang['typography'] = 'Fă înlocuiri topografice'; -$lang['htmlok'] = 'Permite intercalare cod HTML'; -$lang['phpok'] = 'Permite intercalare cod PHP'; $lang['dformat'] = 'Format dată (vezi funcţia PHP <a href="http://www.php.net/strftime">strftime</a>)'; $lang['signature'] = 'Semnătura'; +$lang['showuseras'] = 'Ce se afişează la indicarea utilizatorului care a editat ultimul o pagină'; $lang['toptoclevel'] = 'Primul nivel pentru cuprins'; $lang['tocminheads'] = 'Numărul minim de titluri ce determină dacă se alcătuieşte Tabelul de Cuprins (TOC)'; $lang['maxtoclevel'] = 'Nivelul maxim pentru cuprins'; @@ -66,15 +68,8 @@ $lang['maxseclevel'] = 'Nivelul maxim de editare al secţiunii'; $lang['camelcase'] = 'Foloseşte CamelCase pentru legături'; $lang['deaccent'] = 'numedepagină curate'; $lang['useheading'] = 'Foloseşte primul titlu pentru numele paginii'; -$lang['refcheck'] = 'Verificare referinţă media'; -$lang['allowdebug'] = 'Permite depanarea <b>dezactivaţi dacă cu e necesar!</b>'; -$lang['mediarevisions'] = 'Activare Revizii Media?'; -$lang['usewordblock'] = 'Blochează spam-ul pe baza listei de cuvinte'; -$lang['indexdelay'] = 'Timpul de întârziere înainte de indexare (sec)'; -$lang['relnofollow'] = 'Folosiţi rel="nofollow" pentru legăturile externe'; -$lang['mailguard'] = 'Adrese de email acoperite'; -$lang['iexssprotect'] = 'Verifică fişierele încărcate pentru posibil cod periculos JavaScript sau HTML'; -$lang['showuseras'] = 'Ce se afişează la indicarea utilizatorului care a editat ultimul o pagină'; +$lang['sneaky_index'] = 'Implicit, DokuWiki va arăta toate numele de spaţii la vizualizarea indexului. Activând această opţiune vor fi ascunse acelea la care utilizatorul nu are drepturi de citire. Aceasta poate determina ascunderea sub-numelor de spaţii accesibile. Aceasta poate face index-ul inutilizabil cu anumite setări ale ACL'; +$lang['hidepages'] = 'Ascunde paginile pereche (expresii regulate)'; $lang['useacl'] = 'Utilizează liste de control al accesului'; $lang['autopasswd'] = 'Parole autogenerate'; $lang['authtype'] = 'Autentificare backend'; @@ -83,61 +78,67 @@ $lang['defaultgroup'] = 'Grup implicit'; $lang['superuser'] = 'Superuser - un grup sau un utilizator cu acces complet la toate paginile şi funcţiile indiferent de setările ACL'; $lang['manager'] = 'Manager - un grup sau un utilizator cu acces la anumite funcţii de management'; $lang['profileconfirm'] = 'Confirmă schimbarea profilului cu parola'; +$lang['rememberme'] = 'Permiteţi cookies permanente la login (ţine-mă minte)'; $lang['disableactions'] = 'Dezactivează acţiunile DokuWiki'; $lang['disableactions_check'] = 'Verifică'; $lang['disableactions_subscription'] = 'Subscrie/Anulează subscrierea'; $lang['disableactions_wikicode'] = 'Vizualizează sursa/Export Raw'; $lang['disableactions_other'] = 'Alte acţiuni (separate prin virgulă)'; -$lang['sneaky_index'] = 'Implicit, DokuWiki va arăta toate numele de spaţii la vizualizarea indexului. Activând această opţiune vor fi ascunse acelea la care utilizatorul nu are drepturi de citire. Aceasta poate determina ascunderea sub-numelor de spaţii accesibile. Aceasta poate face index-ul inutilizabil cu anumite setări ale ACL'; $lang['auth_security_timeout'] = 'Timpul de expirare al Autentificării Securizate (secunde)'; $lang['securecookie'] = 'Cookies-urile setate via HTTPS să fie trimise doar via HTTPS de către browser? Dezactivaţi această opţiune numai când login-ul wiki-ului este securizat cu SSL dar navigarea wiki-ului se realizează nesecurizat.'; $lang['remote'] = 'Activează sistemul remote API. Acesta permite altor aplicații să acceseze wiki-ul via XML-RPC sau alte mecanisme.'; $lang['remoteuser'] = 'Restricționează accesul sistemului remote API la grupurile sau utilizatorii următori (separați prin virgulă). Lăsați câmpul gol pentru a da acces către toți.'; +$lang['usewordblock'] = 'Blochează spam-ul pe baza listei de cuvinte'; +$lang['relnofollow'] = 'Folosiţi rel="nofollow" pentru legăturile externe'; +$lang['indexdelay'] = 'Timpul de întârziere înainte de indexare (sec)'; +$lang['mailguard'] = 'Adrese de email acoperite'; +$lang['iexssprotect'] = 'Verifică fişierele încărcate pentru posibil cod periculos JavaScript sau HTML'; +$lang['usedraft'] = 'Salvează automat o schiţă în timpul editării'; +$lang['htmlok'] = 'Permite intercalare cod HTML'; +$lang['phpok'] = 'Permite intercalare cod PHP'; +$lang['locktime'] = 'Durata maximă pentru blocarea fişierelor (secunde)'; +$lang['cachetime'] = 'Durata maximă pentru cache (secunde)'; +$lang['target____wiki'] = 'Fereastra ţintă pentru legăturile interne'; +$lang['target____interwiki'] = 'Fereastra ţintă pentru legăturile interwiki'; +$lang['target____extern'] = 'Fereastra ţintă pentru legăturile externe'; +$lang['target____media'] = 'Fereastra ţintă pentru legăturile media'; +$lang['target____windows'] = 'Fereastra ţintă pentru legăturile windows'; +$lang['mediarevisions'] = 'Activare Revizii Media?'; +$lang['refcheck'] = 'Verificare referinţă media'; +$lang['gdlib'] = 'Versiunea GD Lib'; +$lang['im_convert'] = 'Calea către instrumentul de conversie ImageMagick'; +$lang['jpg_quality'] = 'Calitatea compresiei JPG (0-100)'; +$lang['fetchsize'] = 'Dimensiunea maximă (byte) pe care fetch.php poate să descarce din exterior'; +$lang['subscribers'] = 'Activează suportul pentru subscrierea paginii'; +$lang['subscribe_time'] = 'Timpul după care lista de abonare şi digestie sunt trimise (sec); Aceasta ar trebui să fie mai mic decât timpul specificat în recent_days.'; +$lang['notify'] = 'Trimite notificări privind modificările pe această adresă de email'; +$lang['registernotify'] = 'Trimite informare noilor utilizatori înregistraţi pe această adresă de email'; +$lang['mailfrom'] = 'Adresa de email utilizată pentru mailuri automate'; +$lang['mailprefix'] = 'Prefix subiect e-mail de folosit pentru mail-uri automate'; +$lang['sitemap'] = 'Generează Google sitemap (zile)'; +$lang['rss_type'] = 'Tip flux XML'; +$lang['rss_linkto'] = 'Fluxul XML se leagă la'; +$lang['rss_content'] = 'Ce să afişez în obiectele fluxurilor XML'; +$lang['rss_update'] = 'Intervalul de actualizare a fluxului XML (sec)'; +$lang['rss_show_summary'] = 'Fluxul XML arată rezumat în titlu'; +$lang['rss_media'] = 'Ce fel de modificări ar trebui afișate în fluxul XML?'; $lang['updatecheck'] = 'Verificare actualizări şi avertismente privind securitatea? DokuWiki trebuie să contacteze update.dokuwiki.org pentru această facilitate.'; $lang['userewrite'] = 'Folosire URL-uri "nice"'; $lang['useslash'] = 'Foloseşte slash-ul ca separator de spaţii de nume în URL-uri'; -$lang['usedraft'] = 'Salvează automat o schiţă în timpul editării'; $lang['sepchar'] = 'Separator cuvinte în numele paginii'; $lang['canonical'] = 'Foloseşte URL-uri canonice'; $lang['fnencode'] = 'Metoda de encodare a numelor fişierelor non-ASCII.'; $lang['autoplural'] = 'Verifică formele de plural în legături'; $lang['compression'] = 'Metoda de criptare a fişierelor pod'; -$lang['cachetime'] = 'Durata maximă pentru cache (secunde)'; -$lang['locktime'] = 'Durata maximă pentru blocarea fişierelor (secunde)'; -$lang['fetchsize'] = 'Dimensiunea maximă (byte) pe care fetch.php poate să descarce din exterior'; -$lang['notify'] = 'Trimite notificări privind modificările pe această adresă de email'; -$lang['registernotify'] = 'Trimite informare noilor utilizatori înregistraţi pe această adresă de email'; -$lang['mailfrom'] = 'Adresa de email utilizată pentru mailuri automate'; -$lang['mailprefix'] = 'Prefix subiect e-mail de folosit pentru mail-uri automate'; $lang['gzip_output'] = 'Foloseşte gzip pentru codarea conţinutului xhtml'; -$lang['gdlib'] = 'Versiunea GD Lib'; -$lang['im_convert'] = 'Calea către instrumentul de conversie ImageMagick'; -$lang['jpg_quality'] = 'Calitatea compresiei JPG (0-100)'; -$lang['subscribers'] = 'Activează suportul pentru subscrierea paginii'; -$lang['subscribe_time'] = 'Timpul după care lista de abonare şi digestie sunt trimise (sec); Aceasta ar trebui să fie mai mic decât timpul specificat în recent_days.'; $lang['compress'] = 'Compactează codul CSS şi javascript produs'; $lang['cssdatauri'] = 'Dimensiunea în octeți până la care imaginile regasite în fișierele CSS ar trebui să fie incluse direct în stylesheet pentru a reduce supraîncărcarea antetului cererii HTTP. Această tehnică nu va funcționa în IE < 8! <code>400</code> până la <code>600</code> octeți sunt suficienți. Introduceți <code>0</code> pentru a dezactiva această opțiune.'; -$lang['hidepages'] = 'Ascunde paginile pereche (expresii regulate)'; $lang['send404'] = 'Trimite mesajul "HTTP 404/Page Not Found" pentru paginile inexistente'; -$lang['sitemap'] = 'Generează Google sitemap (zile)'; $lang['broken_iua'] = 'Funcţia ignore_user_abort nu funcţionează pe sistemul dumneavoastră? Aceasta poate determina nefuncţionarea indexului de căutare. IIS+PHP/CGI sunt cunoscute ca fiind nefuncţionale. Mai multe detalii găsiţi la <a href="http://bugs.splitbrain.org/?do=details&task_id=852">Bug 852</a>'; $lang['xsendfile'] = 'Folosiţi header-ul X-Send pentru a-i permite serverului web să trimită fişiere statice? Serverul web trebuie să permită aceasta.'; $lang['renderer_xhtml'] = 'Motorul de randare principal folosit pentru afişarea wiki în format xhtml'; $lang['renderer__core'] = '%s (nucleu dokuwiki)'; $lang['renderer__plugin'] = '%s (plugin)'; -$lang['rememberme'] = 'Permiteţi cookies permanente la login (ţine-mă minte)'; -$lang['rss_type'] = 'Tip flux XML'; -$lang['rss_linkto'] = 'Fluxul XML se leagă la'; -$lang['rss_content'] = 'Ce să afişez în obiectele fluxurilor XML'; -$lang['rss_update'] = 'Intervalul de actualizare a fluxului XML (sec)'; -$lang['recent_days'] = 'Câte modificări recente să se păstreze?'; -$lang['rss_show_summary'] = 'Fluxul XML arată rezumat în titlu'; -$lang['rss_media'] = 'Ce fel de modificări ar trebui afișate în fluxul XML?'; -$lang['target____wiki'] = 'Fereastra ţintă pentru legăturile interne'; -$lang['target____interwiki'] = 'Fereastra ţintă pentru legăturile interwiki'; -$lang['target____extern'] = 'Fereastra ţintă pentru legăturile externe'; -$lang['target____media'] = 'Fereastra ţintă pentru legăturile media'; -$lang['target____windows'] = 'Fereastra ţintă pentru legăturile windows'; $lang['proxy____host'] = 'Nume server Proxy'; $lang['proxy____port'] = 'Port Proxy'; $lang['proxy____user'] = 'Nume utilizator Proxy'; diff --git a/lib/plugins/config/lang/sk/lang.php b/lib/plugins/config/lang/sk/lang.php index 65a1e1707..f56353680 100644 --- a/lib/plugins/config/lang/sk/lang.php +++ b/lib/plugins/config/lang/sk/lang.php @@ -140,7 +140,7 @@ $lang['renderer__plugin'] = '%s (plugin)'; $lang['dnslookups'] = 'DokuWiki hľadá mená vzdialených IP adries používateľov editujúcich stránky. Ak máte pomalý alebo nefunkčný DNS server alebo nechcete túto možnosť, deaktivujte túto voľbu'; $lang['proxy____host'] = 'Proxy server - názov'; $lang['proxy____port'] = 'Proxy server - port'; -$lang['proxy____user'] = 'Proxy server - užívateľské meno'; +$lang['proxy____user'] = 'Proxy server - používateľské meno'; $lang['proxy____pass'] = 'Proxy server - heslo'; $lang['proxy____ssl'] = 'Proxy server - použiť SSL'; $lang['proxy____except'] = 'Regulárny výraz popisujúci URL odkazy, pre ktoré by proxy nemala byť použitá.'; diff --git a/lib/plugins/config/lang/th/lang.php b/lib/plugins/config/lang/th/lang.php index 68ee8b8a2..ce1d30d62 100644 --- a/lib/plugins/config/lang/th/lang.php +++ b/lib/plugins/config/lang/th/lang.php @@ -1,7 +1,8 @@ <?php + /** - * Thai language file - * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Komgrit Niyomrath <n.komgrit@gmail.com> * @author Kittithat Arnontavilas mrtomyum@gmail.com * @author Arthit Suriyawongkul <arthit@gmail.com> @@ -23,48 +24,48 @@ $lang['_links'] = 'การตั้งค่าลิงก์' $lang['_media'] = 'การตั้งค่าภาพ-เสียง'; $lang['_advanced'] = 'การตั้งค่าขั้นสูง'; $lang['_network'] = 'การตั้งค่าเครือข่าย'; +$lang['start'] = 'ชื่อหน้าเริ่มต้น'; $lang['lang'] = 'ภาษา'; +$lang['savedir'] = 'ไดเรคทอรีที่บันทึกข้อมูล'; $lang['basedir'] = 'ไดเรคทอรีพื้นฐาน'; $lang['baseurl'] = 'URL พื้นฐาน'; -$lang['savedir'] = 'ไดเรคทอรีที่บันทึกข้อมูล'; -$lang['start'] = 'ชื่อหน้าเริ่มต้น'; $lang['recent'] = 'การเปลี่ยนแปลงล่าสุด'; -$lang['htmlok'] = 'อนุญาตให้ใช้ HTML'; -$lang['phpok'] = 'อนุญาตให้ใช้ PHP'; +$lang['recent_days'] = 'จำนวนวันที่เก็บรายการที่ถูกแก้ไขล่าสุด'; $lang['signature'] = 'ลายเซนต์'; -$lang['usewordblock'] = 'คำที่จะถือว่าเป็นสแปม'; -$lang['relnofollow'] = 'ใช้ rel="nofollow" สำหรับลิงก์ภายนอก'; +$lang['hidepages'] = 'ซ่อนหน้าที่เข้ากันได้ (regular expressions)'; $lang['autopasswd'] = 'สร้างรหัสผ่านให้อัตโนมัติ'; $lang['passcrypt'] = 'กระบวนการเข้ารหัส สำหรับเก็บบันทึกรหัสผ่าน'; $lang['defaultgroup'] = 'กลุ่มมาตรฐาน'; $lang['profileconfirm'] = 'ใส่รหัสผ่านเพื่อยืนยันการเปลี่ยนแปลงข้อมูล'; +$lang['rememberme'] = 'อนุญาตให้จดจำการ login แบบถาวร'; $lang['disableactions_check'] = 'ตรวจสอบ'; $lang['auth_security_timeout'] = 'ระยะเวลาที่จะตัดการเชื่อมต่อแบบการใช้งานด้วยสิทธิ์ผู้ใช้ (วินาที)'; -$lang['userewrite'] = 'แสดงที่อยู่เว็บ (URL) แบบอ่านเข้าใจง่าย'; -$lang['cachetime'] = 'ระยะเวลาสำหรับการเก็บแคช (วินาที)'; +$lang['usewordblock'] = 'คำที่จะถือว่าเป็นสแปม'; +$lang['relnofollow'] = 'ใช้ rel="nofollow" สำหรับลิงก์ภายนอก'; +$lang['htmlok'] = 'อนุญาตให้ใช้ HTML'; +$lang['phpok'] = 'อนุญาตให้ใช้ PHP'; $lang['locktime'] = 'ระยะเวลานานสุด ที่จะล็อคไม่ให้แก้ไขไฟล์ (วินาที)'; +$lang['cachetime'] = 'ระยะเวลาสำหรับการเก็บแคช (วินาที)'; +$lang['target____wiki'] = 'เปิดแสดงลิงก์ภายใน ในหน้าเว็บแบบใด'; +$lang['target____interwiki'] = 'เปิดแสดงลิงก์ interwiki ในหน้าเว็บแบบใด'; +$lang['target____extern'] = 'เปิดแสดงลิงก์ภายนอก ในหน้าเว็บแบบใด'; +$lang['target____media'] = 'เปิดแสดงลิงก์ของมีเดีย ในหน้าเว็บแบบใด'; +$lang['target____windows'] = 'เปิดแสดงลิงก์ของวินโดวส์ ในหน้าเว็บแบบใด'; +$lang['gdlib'] = 'เลขรุ่นของ GD Library'; $lang['fetchsize'] = 'ขนาดไฟล์ใหญ่สุด (bytes) fetch.php ที่จะดาวน์โหลดจากภายนอก'; $lang['notify'] = 'ส่งการแจ้งเตือนไปยังที่อยู่อีเมลนี้'; -$lang['gzip_output'] = 'ใช้ gzip Content-Encoding สำหรับ xhtml'; -$lang['gdlib'] = 'เลขรุ่นของ GD Library'; -$lang['compress'] = 'บีบย่อ CSS และ javascript (เพื่อให้แสดงหน้าเว็บเร็วขึ้น)'; -$lang['hidepages'] = 'ซ่อนหน้าที่เข้ากันได้ (regular expressions)'; -$lang['send404'] = 'ให้แสดง "HTTP 404/Page Not Found" เมื่อไม่พบข้อมูลหน้านั้น'; $lang['sitemap'] = 'สร้าง กูเกิ้ล ไซต์แมพ (จำนวนวัน)'; -$lang['renderer__core'] = '%s (แกนหลักของ dokuwiki)'; -$lang['renderer__plugin'] = '%s (โปรแกรมเสริม - plugin)'; -$lang['rememberme'] = 'อนุญาตให้จดจำการ login แบบถาวร'; $lang['rss_type'] = 'ชนิดของ XML feed'; $lang['rss_linkto'] = 'ลิงก์เชื่อมโยงไปยัง XML feed'; $lang['rss_content'] = 'ต้องการให้มีอะไรแสดงอยู่ใน XML feed บ้าง?'; $lang['rss_update'] = 'ความถี่ในการอัพเดท XML feed (เป็นวินาที)'; -$lang['recent_days'] = 'จำนวนวันที่เก็บรายการที่ถูกแก้ไขล่าสุด'; $lang['rss_show_summary'] = 'ไตเติ้ลของบทสรุปย่อของ XML feed'; -$lang['target____wiki'] = 'เปิดแสดงลิงก์ภายใน ในหน้าเว็บแบบใด'; -$lang['target____interwiki'] = 'เปิดแสดงลิงก์ interwiki ในหน้าเว็บแบบใด'; -$lang['target____extern'] = 'เปิดแสดงลิงก์ภายนอก ในหน้าเว็บแบบใด'; -$lang['target____media'] = 'เปิดแสดงลิงก์ของมีเดีย ในหน้าเว็บแบบใด'; -$lang['target____windows'] = 'เปิดแสดงลิงก์ของวินโดวส์ ในหน้าเว็บแบบใด'; +$lang['userewrite'] = 'แสดงที่อยู่เว็บ (URL) แบบอ่านเข้าใจง่าย'; +$lang['gzip_output'] = 'ใช้ gzip Content-Encoding สำหรับ xhtml'; +$lang['compress'] = 'บีบย่อ CSS และ javascript (เพื่อให้แสดงหน้าเว็บเร็วขึ้น)'; +$lang['send404'] = 'ให้แสดง "HTTP 404/Page Not Found" เมื่อไม่พบข้อมูลหน้านั้น'; +$lang['renderer__core'] = '%s (แกนหลักของ dokuwiki)'; +$lang['renderer__plugin'] = '%s (โปรแกรมเสริม - plugin)'; $lang['proxy____host'] = 'ชื่อ server ของ proxy'; $lang['proxy____port'] = 'port ของ proxy'; $lang['proxy____user'] = 'user name ของ proxy'; diff --git a/lib/plugins/config/lang/uk/lang.php b/lib/plugins/config/lang/uk/lang.php index dea9203e8..02c327367 100644 --- a/lib/plugins/config/lang/uk/lang.php +++ b/lib/plugins/config/lang/uk/lang.php @@ -1,8 +1,8 @@ <?php + /** - * ukrainian language file - * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * * @author Oleksiy Voronin <ovoronin@gmail.com> * @author serg_stetsuk@ukr.net * @author okunia@gmail.com @@ -10,6 +10,7 @@ * @author Uko uko@uar.net * @author Ulrikhe Lukoie <lukoie@gmail>.com * @author Kate Arzamastseva pshns@ukr.net + * @author Maksim <nikropol@yandex.ru> */ $lang['menu'] = 'Налаштування Вікі'; $lang['error'] = 'Параметри не збережено через помилкові значення. Будь ласка, перегляньте ваші зміни та спробуйте ще раз diff --git a/lib/plugins/config/lang/zh/lang.php b/lib/plugins/config/lang/zh/lang.php index 5de24692e..4ae3a01fd 100644 --- a/lib/plugins/config/lang/zh/lang.php +++ b/lib/plugins/config/lang/zh/lang.php @@ -15,6 +15,7 @@ * @author caii, patent agent in China <zhoucaiqi@gmail.com> * @author lainme993@gmail.com * @author Shuo-Ting Jian <shoting@gmail.com> + * @author Garfield <garfield_550@outlook.com> */ $lang['menu'] = '配置设置'; $lang['error'] = '由于非法参数,设置没有更新。请检查您做的改动并重新提交。 diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php index 9d0ad2c4e..0942a6d23 100644 --- a/lib/plugins/config/settings/config.class.php +++ b/lib/plugins/config/settings/config.class.php @@ -101,7 +101,12 @@ if (!class_exists('configuration')) { } $this->setting[$key] = new $class($key,$param); - $this->setting[$key]->initialize($default[$key],$local[$key],$protected[$key]); + + $d = array_key_exists($key, $default) ? $default[$key] : null; + $l = array_key_exists($key, $local) ? $local[$key] : null; + $p = array_key_exists($key, $protected) ? $protected[$key] : null; + + $this->setting[$key]->initialize($d,$l,$p); } $this->_loaded = true; @@ -1186,6 +1191,7 @@ if (!class_exists('setting_multicheckbox')) { var $_choices = array(); var $_combine = array(); + var $_other = 'always'; /** * update changed setting with user provided value $input @@ -1219,7 +1225,7 @@ if (!class_exists('setting_multicheckbox')) { * Build html for label and input of setting * * @param DokuWiki_Plugin $plugin object of config plugin - * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @param bool $echo true: show input value, when error occurred, otherwise the stored setting * @return string[] with content array(string $label_html, string $input_html) */ function html(&$plugin, $echo=false) { @@ -1269,16 +1275,21 @@ if (!class_exists('setting_multicheckbox')) { } // handle any remaining values - $other = join(',',$value); - - $class = ((count($default) == count($value)) && (count($value) == count(array_intersect($value,$default)))) ? - " selectiondefault" : ""; - - $input .= '<div class="other'.$class.'">'."\n"; - $input .= '<label for="config___'.$key.'_other">'.$plugin->getLang($key.'_other')."</label>\n"; - $input .= '<input id="config___'.$key.'_other" name="config['.$key.'][other]" type="text" class="edit" value="'.htmlspecialchars($other).'" '.$disable." />\n"; - $input .= "</div>\n"; - + if ($this->_other != 'never'){ + $other = join(',',$value); + // test equivalent to ($this->_other == 'always' || ($other && $this->_other == 'exists') + // use != 'exists' rather than == 'always' to ensure invalid values default to 'always' + if ($this->_other != 'exists' || $other) { + + $class = ((count($default) == count($value)) && (count($value) == count(array_intersect($value,$default)))) ? + " selectiondefault" : ""; + + $input .= '<div class="other'.$class.'">'."\n"; + $input .= '<label for="config___'.$key.'_other">'.$plugin->getLang($key.'_other')."</label>\n"; + $input .= '<input id="config___'.$key.'_other" name="config['.$key.'][other]" type="text" class="edit" value="'.htmlspecialchars($other).'" '.$disable." />\n"; + $input .= "</div>\n"; + } + } $label = '<label>'.$this->prompt($plugin).'</label>'; return array($label,$input); } diff --git a/lib/plugins/config/settings/config.metadata.php b/lib/plugins/config/settings/config.metadata.php index aaa32cd70..5323e71f6 100644 --- a/lib/plugins/config/settings/config.metadata.php +++ b/lib/plugins/config/settings/config.metadata.php @@ -70,6 +70,12 @@ * '_pregflags' - string, default 'ui', valid preg pattern modifiers used when testing regex input values, for more * information see http://uk1.php.net/manual/en/reference.pcre.pattern.modifiers.php * '_multiple' - bool, allow multiple comma separated email values; optional for 'email', ignored by others + * '_other' - how to handle other values (not listed in _choices). accepted values: 'always','exists','never' + * default value 'always'. 'exists' only shows 'other' input field when the setting contains value(s) + * not listed in choices (e.g. due to manual editing or update changing _choices). This is safer than + * 'never' as it will not discard unknown/other values. + * optional for 'multicheckbox', ignored by others + * * * @author Chris Smith <chris@jalakai.co.uk> */ @@ -131,7 +137,10 @@ $meta['_authentication'] = array('fieldset'); $meta['useacl'] = array('onoff','_caution' => 'danger'); $meta['autopasswd'] = array('onoff'); $meta['authtype'] = array('authtype','_caution' => 'danger'); -$meta['passcrypt'] = array('multichoice','_choices' => array('smd5','md5','apr1','sha1','ssha','lsmd5','crypt','mysql','my411','kmd5','pmd5','hmd5','mediawiki','bcrypt','djangomd5','djangosha1','sha512')); +$meta['passcrypt'] = array('multichoice','_choices' => array( + 'smd5','md5','apr1','sha1','ssha','lsmd5','crypt','mysql','my411','kmd5','pmd5','hmd5', + 'mediawiki','bcrypt','djangomd5','djangosha1','djangopbkdf2_sha1','djangopbkdf2_sha256','sha512' +)); $meta['defaultgroup']= array('string'); $meta['superuser'] = array('string','_caution' => 'danger'); $meta['manager'] = array('string'); diff --git a/lib/plugins/extension/lang/cy/intro_install.txt b/lib/plugins/extension/lang/cy/intro_install.txt new file mode 100644 index 000000000..2bc933ec7 --- /dev/null +++ b/lib/plugins/extension/lang/cy/intro_install.txt @@ -0,0 +1 @@ +Gallwch chi arsefydlu ategion a thempledau gan law yma, naill ai gan eu lanlwytho neu gan gyflwyno URL lawrlwytho uniongyrchol. diff --git a/lib/plugins/extension/lang/cy/intro_plugins.txt b/lib/plugins/extension/lang/cy/intro_plugins.txt new file mode 100644 index 000000000..dd49a7a6b --- /dev/null +++ b/lib/plugins/extension/lang/cy/intro_plugins.txt @@ -0,0 +1 @@ +Dyma'r ategion sydd wedi\'u harsefydlu yn eich DokuWiki yn bresennol. Gallwch chi eu galluogi neu eu hanalluogi nhw neu hyd yn oed eu dad-arsefydlu yn llwyr yma. Caiff diweddariadau'r ategion eu dangos yma hefyd, sicrhewch eich bod chi'n darllen dogfennaeth yr ategyn cyn diweddaru. diff --git a/lib/plugins/extension/lang/cy/intro_search.txt b/lib/plugins/extension/lang/cy/intro_search.txt new file mode 100644 index 000000000..8aef96039 --- /dev/null +++ b/lib/plugins/extension/lang/cy/intro_search.txt @@ -0,0 +1 @@ +Mae'r tab hwn yn rhoi mynediad i bob ategyn a thempled 3ydd parti ar gael ar gyfer DokuWiki. Sylwch fod arsefydlu cod 3ydd parti yn achosi **risg diogelwch**. Efallai hoffech chi ddarllen mwy ar [[doku>security#plugin_security|ddiogelwch ategion]] yn gyntaf.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/cy/intro_templates.txt b/lib/plugins/extension/lang/cy/intro_templates.txt new file mode 100644 index 000000000..49471451f --- /dev/null +++ b/lib/plugins/extension/lang/cy/intro_templates.txt @@ -0,0 +1 @@ +Dyma'r templedau sydd wedi'u harsefydlu yn eich DokuWiki yn bresennol. Gallwch chi ddewis y templed i'w ddefnyddio yn y [[?do=admin&page=config|Rheolwr Ffurfwedd]]. diff --git a/lib/plugins/extension/lang/cy/lang.php b/lib/plugins/extension/lang/cy/lang.php new file mode 100644 index 000000000..2a2a8c8fa --- /dev/null +++ b/lib/plugins/extension/lang/cy/lang.php @@ -0,0 +1,111 @@ +<?php +/** + * Welsh language file for extension plugin + * + * @author Michael Hamann <michael@content-space.de> + * @author Christopher Smith <chris@jalakai.co.uk> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +$lang['menu'] = 'Rheolwr Estyniadau'; + +$lang['tab_plugins'] = 'Ategion a Arsefydlwyd'; +$lang['tab_templates'] = 'Templedau a Arsefydlwyd'; +$lang['tab_search'] = 'Chwilio ac Arsefydlu'; +$lang['tab_install'] = 'Arsefydlu gan Law'; + +$lang['notimplemented'] = '\'Dyw\'r nodwedd hon heb ei rhoi ar waith eto'; +$lang['notinstalled'] = '\'Dyw\'r estyniad hwn heb ei arsefydlu'; +$lang['alreadyenabled'] = 'Cafodd yr estyniad hwn ei alluogi'; +$lang['alreadydisabled'] = 'Cafodd yr estyniad hwn ei analluogi'; +$lang['pluginlistsaveerror'] = 'Roedd gwall wrth gadw\'r rhestr ategion'; +$lang['unknownauthor'] = 'Awdur anhysbys'; +$lang['unknownversion'] = 'Fersiwn anhysbys'; + +$lang['btn_info'] = 'Dangos wybodaeth bellach'; +$lang['btn_update'] = 'Diweddaru'; +$lang['btn_uninstall'] = 'Dad-arsefydlu'; +$lang['btn_enable'] = 'Galluogi'; +$lang['btn_disable'] = 'Analluogi'; +$lang['btn_install'] = 'Arsyfydlu'; +$lang['btn_reinstall'] = 'Ail-arsefydlu'; + +$lang['js']['reallydel'] = 'Ydych chi wir am ddad-arsefydlu\'r estyniad hwn?'; + +$lang['search_for'] = 'Chwilio Estyniadau:'; +$lang['search'] = 'Chwilio'; + +$lang['extensionby'] = '<strong>%s</strong> gan %s'; +$lang['screenshot'] = 'Sgrinlun %s'; +$lang['popularity'] = 'Poblogrwydd: %s%%'; +$lang['homepage_link'] = 'Dogfennau'; +$lang['bugs_features'] = 'Bygiau'; +$lang['tags'] = 'Tagiau:'; +$lang['author_hint'] = 'Chwilio estyniadau gan awdur'; +$lang['installed'] = 'Arsefydlwyd:'; +$lang['downloadurl'] = 'URL Lawlwytho:'; +$lang['repository'] = 'Ystorfa:'; +$lang['unknown'] = '<em>anhysbys</em>'; +$lang['installed_version'] = 'Fersiwn a arsefydlwyd:'; +$lang['install_date'] = 'Eich diweddariad diwethaf:'; +$lang['available_version'] = 'Fersiwn ar gael:'; +$lang['compatible'] = 'Yn gydnaws â:'; +$lang['depends'] = 'Yn dibynnu ar:'; +$lang['similar'] = 'Yn debyg i:'; +$lang['conflicts'] = 'Y gwrthdaro â:'; +$lang['donate'] = 'Fel hwn?'; +$lang['donate_action'] = 'Prynwch goffi i\'r awdur!'; +$lang['repo_retry'] = 'Ailgeisio'; +$lang['provides'] = 'Darparu:'; +$lang['status'] = 'Statws:'; +$lang['status_installed'] = 'arsefydlwyd'; +$lang['status_not_installed'] = 'heb ei arsefydlu'; +$lang['status_protected'] = 'amddiffynwyd'; +$lang['status_enabled'] = 'galluogwyd'; +$lang['status_disabled'] = 'analluogwyd'; +$lang['status_unmodifiable'] = 'methu addasu'; +$lang['status_plugin'] = 'ategyn'; +$lang['status_template'] = 'templed'; +$lang['status_bundled'] = 'bwndlwyd'; + +$lang['msg_enabled'] = 'Galluogwyd ategyn %s'; +$lang['msg_disabled'] = 'Analluogwyd ategyn %s'; +$lang['msg_delete_success'] = 'Dad-arsefydlwyd estyniad %s'; +$lang['msg_delete_failed'] = 'Methodd dad-arsefydlu estyniad %s'; +$lang['msg_template_install_success'] = 'Arsefydlwyd templed %s yn llwyddiannus'; +$lang['msg_template_update_success'] = 'Diweddarwyd templed %s yn llwyddiannus'; +$lang['msg_plugin_install_success'] = 'Arsefydlwyd ategyn %s yn llwyddiannus'; +$lang['msg_plugin_update_success'] = 'Diweddarwyd ategyn %s yn llwyddiannus'; +$lang['msg_upload_failed'] = 'Methodd lanlwytho\'r ffeil'; + +$lang['missing_dependency'] = '<strong>Missing or disabled dependency:</strong> %s'; +$lang['security_issue'] = '<strong>Mater Diogelwch:</strong> %s'; +$lang['security_warning'] = '<strong>Rhybudd Diogelwch:</strong> %s'; +$lang['update_available'] = '<strong>Diweddariad:</strong> Mae fersiwn newydd %s ar gael.'; +$lang['wrong_folder'] = '<strong>Ategyn wedi\'i arsefydlu\'n anghywir:</strong> Ailenwch ffolder yr ategyn o "%s" i "%s".'; +$lang['url_change'] = '<strong>Newid i\'r URL:</strong> Newidiodd yr URL lawlwytho ers y diweddariad diwethaf. Gwiriwch i weld os yw\'r URL newydd yn ddilys cyn diweddaru\'r estyniad.<br />Newydd: %s<br />Hen: %s'; + +$lang['error_badurl'] = 'Dylai URL ddechrau gyda http neu https'; +$lang['error_dircreate'] = 'Methu â chreu ffolder dros dro er mwyn derbyn y lawrlwythiad'; +$lang['error_download'] = 'Methu lawrlwytho\'r ffeil: %s'; +$lang['error_decompress'] = 'Methu datgywasgu\'r ffeil a lawrlwythwyd. Gall hwn fod o ganlyniad i lawrlwythiad gwael, felly ceisiwch eto; neu gall fod fformat y cywasgiad fod yn anhysbys, felly bydd yn rhaid i chi lawlwytho ac arsefydlu gan law.'; +$lang['error_findfolder'] = 'Methu ag adnabod ffolder yr estyniad, bydd angen lawrlwytho ac arsefydlu gan law'; +$lang['error_copy'] = 'Roedd gwall copïo ffeil wrth geisio arsefydlu ffeiliau i\'r ffolder <em>%s</em>: gall fod y ddisgen yn llawn neu gall hawliau mynediad i ffeiliau fod yn anghywir. Gall hwn fod wedi achosi ategyn sydd wedi arsefydlu\'n rhannol ac sydd wedi ansefydlogi\'ch arsefydliad wici'; + +$lang['noperms'] = '\'Sdim modd ysgrifennu i\'r ffolder estyniadau'; +$lang['notplperms'] = '\'Sdim modd ysgrifennu i\'r ffolder templedau'; + +$lang['nopluginperms'] = '\'Sdim modd ysgrifennu i\'r ffolder ategion'; +$lang['git'] = 'Cafodd yr estyniad hwn ei arsefydlu gan git, mae\'n bosib na fyddwch chi am ei ddiweddaru yma.'; +$lang['auth'] = '\'Dyw\'r ategyn dilysu hwn heb ei alluogi yn y ffurfwedd, ystyriwch ei analluogi.'; + +$lang['install_url'] = 'Arsefydlu o URL:'; +$lang['install_upload'] = 'Lanlwytho Estyniad:'; + +$lang['repo_error'] = 'Doedd dim modd cysylltu â\'r ystorfa ategion. Sicrhewch fod hawl gan eich gweinydd i gysylltu â www.dokuwiki.org a gwiriwch eich gosodiadau procsi.'; +$lang['nossl'] = 'Mae\'n debyg \'dyw eich PHP ddim yn cynnal SSL. Na fydd lawrlwytho yn gweithio ar gyfer nifer o estyniadau DokuWiki.'; + +$lang['js']['display_viewoptions'] = 'Opsiynau Golwg:'; +$lang['js']['display_enabled'] = 'galluogwyd'; +$lang['js']['display_disabled'] = 'analluogwyd'; +$lang['js']['display_updatable'] = 'gallu diweddaru'; diff --git a/lib/plugins/extension/lang/fa/intro_install.txt b/lib/plugins/extension/lang/fa/intro_install.txt new file mode 100644 index 000000000..93c2b9734 --- /dev/null +++ b/lib/plugins/extension/lang/fa/intro_install.txt @@ -0,0 +1 @@ +در اینجا میتوانید افزونهها و قالبها را به صورت دستی از طریق آپلودشان یا با ارائهٔ لینک مستقیم دانلود نصب کنید.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/fa/intro_plugins.txt b/lib/plugins/extension/lang/fa/intro_plugins.txt new file mode 100644 index 000000000..7d7d331b3 --- /dev/null +++ b/lib/plugins/extension/lang/fa/intro_plugins.txt @@ -0,0 +1 @@ +اینها افزونههایی است که اکنون روی داکو ویکی شما نصب میباشند. از اینجا میتوانید آنها را غیرفعال، فعال یا به طور کامل حذف نمایید. بهروزرسانی افزونهها نیز در اینجا نمایش داده میشود. پیش از بهروزرسانی مطمئن شوید که مستندات افزونه را مطالعه نمودهاید.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/fa/intro_search.txt b/lib/plugins/extension/lang/fa/intro_search.txt new file mode 100644 index 000000000..07fde76c1 --- /dev/null +++ b/lib/plugins/extension/lang/fa/intro_search.txt @@ -0,0 +1 @@ +این شاخه به تمام افزونهها و قالبهای نسل سوم داکو ویکی دسترسی میدهد. لطفا دقت کنید که نصب کد نسل سوم یک **ریسک امنیتی** است برای همین بهتر است که ابتدا [[doku>security#plugin_security|امنیت افزونه]] را مطالعه نمایید.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/fa/intro_templates.txt b/lib/plugins/extension/lang/fa/intro_templates.txt new file mode 100644 index 000000000..1a127c0ce --- /dev/null +++ b/lib/plugins/extension/lang/fa/intro_templates.txt @@ -0,0 +1 @@ +اینها قالبهاییست که اکنون در داکو ویکی شما نصب میباشد. شما میتوانید قالبی که میخواهید استفاده شود را در [[?do=admin&page=config|تنظیمات پیکربندی]] انتخاب نمایید.
\ No newline at end of file diff --git a/lib/plugins/extension/lang/fa/lang.php b/lib/plugins/extension/lang/fa/lang.php index 95c3e9652..aa0613f91 100644 --- a/lib/plugins/extension/lang/fa/lang.php +++ b/lib/plugins/extension/lang/fa/lang.php @@ -4,37 +4,93 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Mohamad Mehdi Habibi <habibi.esf@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ $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['js']['display_viewoptions'] = 'نمایش گزینهها:'; +$lang['js']['display_enabled'] = 'فعال'; +$lang['js']['display_disabled'] = 'غیرفعال'; +$lang['js']['display_updatable'] = 'قابل بهروزرسانی'; $lang['search_for'] = 'جستجوی افزونه:'; $lang['search'] = 'جستجو'; +$lang['extensionby'] = '<strong>%s</strong> به وسیلهٔ %s'; +$lang['screenshot'] = 'اسکرینشات %s'; +$lang['popularity'] = 'محبوبیت: %s%%'; +$lang['homepage_link'] = 'مستندات'; +$lang['bugs_features'] = 'اشکالات'; $lang['tags'] = 'برچسب ها:'; +$lang['author_hint'] = 'جستجوی افزونههای این نویسنده'; +$lang['installed'] = 'نصب شده:'; +$lang['downloadurl'] = 'لینک دانلود:'; +$lang['repository'] = 'مخزن:'; +$lang['unknown'] = '<em>ناشناخته</em>'; $lang['installed_version'] = 'نسخه نصب شده:'; +$lang['install_date'] = 'آخرین بهروزرسانی شما:'; $lang['available_version'] = 'نسخه در دسترس:'; +$lang['compatible'] = 'سازگار با:'; +$lang['depends'] = 'وابسته به:'; +$lang['similar'] = 'شبیه به:'; +$lang['conflicts'] = 'تداخل دارد با:'; +$lang['donate'] = 'به این علاقهمندید؟'; +$lang['donate_action'] = 'برای نویسنده یک فنجان قهوه بخرید!'; $lang['repo_retry'] = 'دوباره'; +$lang['provides'] = 'شامل میشود:'; $lang['status'] = 'وضعیت'; $lang['status_installed'] = 'نصب شده'; $lang['status_not_installed'] = 'نصب نشده'; +$lang['status_protected'] = 'محافظت شده'; $lang['status_enabled'] = 'فعال'; $lang['status_disabled'] = 'غیرفعال'; +$lang['status_unmodifiable'] = 'غیرقابل تغییر'; $lang['status_plugin'] = 'پلاگین'; $lang['status_template'] = 'قالب'; +$lang['status_bundled'] = 'باندل شده'; +$lang['msg_enabled'] = 'افزونه %s فعال شده'; +$lang['msg_disabled'] = 'افزونه %s غیرفعال شده'; +$lang['msg_delete_success'] = 'افزونه %s حذف شده'; +$lang['msg_delete_failed'] = 'حذف افزونه %s ناموفق بود'; +$lang['msg_template_install_success'] = 'قالب %s با موفقیت نصب شد'; +$lang['msg_template_update_success'] = 'قالب %s با موفقیت بهروزرسانی شد'; +$lang['msg_plugin_install_success'] = 'افزونهٔ %s با موفقیت نصب شد'; +$lang['msg_plugin_update_success'] = 'افزونهٔ %s با موفقیت نصب شد'; +$lang['msg_upload_failed'] = 'بارگذاری فایل ناموفق بود'; +$lang['missing_dependency'] = '<strong>نیازمندی وجود ندارد یا غیرفعال است:</strong> %s'; +$lang['security_issue'] = '<strong>اشکال امنیتی:</strong> %s'; +$lang['security_warning'] = '<strong>اخطار امنیتی:</strong> %s'; +$lang['update_available'] = '<strong>بهروزرسانی</strong> نسخهٔ جدید %s موجود است.'; +$lang['wrong_folder'] = '<strong>افزونه اشتباه نصب شده:</strong> نام پوشهٔ افزونه را از "%s" به "%s" تغییر دهید.'; +$lang['url_change'] = '<strong>لینک تغییر کرد:</strong> لینک دانلود از آخرین دانلود تغییر کرد. پیش از بهروزرسانی افزونه، چک کنید که لینک جدید درست باشد.<br />جدید: %s<br />قدیمی: %s'; +$lang['error_badurl'] = 'لینکها باید با http یا https شروع شوند'; +$lang['error_dircreate'] = 'امکان ایجاد پوشهٔ موقت برای دریافت دانلود وجود ندارد'; +$lang['error_download'] = 'امکان دانلود فایل وجود ندارد: %s'; +$lang['error_decompress'] = 'امکان خارج کردن فایل دانلود شده از حالت فشرده وجود ندارد. این میتوانید در اثر دانلود ناقص باشد که در اینصورت باید دوباره تلاش کنید؛ یا اینکه فرمت فشردهسازی نامعلوم است که در اینصورت باید به صورت دستی دانلود و نصب نمایید.'; +$lang['error_findfolder'] = 'امکان تشخیص پوشهٔ افزونه وجود ندارد. باید به صورت دستی دانلود و نصب کنید.'; +$lang['error_copy'] = 'هنگام تلاش برای نصب فایلها برای پوشهٔ <em>%s</em> خطای کپی فایل وجود دارد: رسانه ذخیرهسازی میتواند پر باشد یا پرمیشنهای فایل نادرست است. این میتواند باعث نصب بخشی از افزونه شده باشد و ویکی را ناپایدار نماید.'; $lang['noperms'] = 'پوشه افزونه ها قابل نوشتن نیست'; $lang['notplperms'] = 'پوشه قالب ها قابل نوشتن نیست'; $lang['nopluginperms'] = 'پوشه پلاگین ها قابل نوشتن نیست'; +$lang['git'] = 'این افزونه از طریق گیت نصب شده، شما نباید آن را از اینجا بهروزرسانی کنید.'; +$lang['auth'] = 'این افزونهٔ auth در بخش تنظیمات فعال نشده، غیرفعالش کنید.'; $lang['install_url'] = 'نصب از آدرس:'; $lang['install_upload'] = 'بارگذاری افزونه:'; +$lang['repo_error'] = 'امکان ارتباط با مخزن افزونهها وجود ندارد. مطمئن شوید که سرور شما اجازهٔ ارتباط با www.dokuwiki.org را دارد و تنظیمات پراکسی را چک کنید.'; +$lang['nossl'] = 'به نظر میآید که PHP شما از SSL پشتیبانی نمیکند. دانلود کردن برای بسیاری از افزونههای داکو ویکی کار نمیکند.'; diff --git a/lib/plugins/extension/lang/fr/lang.php b/lib/plugins/extension/lang/fr/lang.php index 4cb6f0d25..e3dff4912 100644 --- a/lib/plugins/extension/lang/fr/lang.php +++ b/lib/plugins/extension/lang/fr/lang.php @@ -38,12 +38,12 @@ $lang['extensionby'] = '<strong>%s</strong> de %s'; $lang['screenshot'] = 'Aperçu de %s'; $lang['popularity'] = 'Popularité : %s%%'; $lang['homepage_link'] = 'Documents'; -$lang['bugs_features'] = 'Bugs'; +$lang['bugs_features'] = 'Bogues'; $lang['tags'] = 'Étiquettes :'; $lang['author_hint'] = 'Chercher les extensions de cet auteur'; $lang['installed'] = 'Installés :'; $lang['downloadurl'] = 'URL de téléchargement :'; -$lang['repository'] = 'Entrepôt : '; +$lang['repository'] = 'Dépôt : '; $lang['unknown'] = '<em>inconnu</em>'; $lang['installed_version'] = 'Version installée :'; $lang['install_date'] = 'Votre dernière mise à jour :'; @@ -69,7 +69,7 @@ $lang['status_bundled'] = 'fourni'; $lang['msg_enabled'] = 'Greffon %s activé'; $lang['msg_disabled'] = 'Greffon %s désactivé'; $lang['msg_delete_success'] = 'Extension %s désinstallée.'; -$lang['msg_delete_failed'] = 'Echec de la désinstallation de l\'extension %s'; +$lang['msg_delete_failed'] = 'Échec de la désinstallation de l\'extension %s'; $lang['msg_template_install_success'] = 'Thème %s installé avec succès'; $lang['msg_template_update_success'] = 'Thème %s mis à jour avec succès'; $lang['msg_plugin_install_success'] = 'Greffon %s installé avec succès'; @@ -77,16 +77,16 @@ $lang['msg_plugin_update_success'] = 'Greffon %s mis à jour avec succès'; $lang['msg_upload_failed'] = 'Téléversement échoué'; $lang['missing_dependency'] = '<strong>Dépendance absente ou désactivée :</strong> %s'; $lang['security_issue'] = '<strong>Problème de sécurité :</strong> %s'; -$lang['security_warning'] = '<strong>Avertissement deSécurité :</strong> %s'; -$lang['update_available'] = '<strong>Mise à jour :</strong> La version %s est disponible.'; -$lang['wrong_folder'] = '<strong>Greffon installé incorrectement :</strong> Renomer le dossier du greffon "%s" en "%s".'; +$lang['security_warning'] = '<strong>Avertissement de sécurité :</strong> %s'; +$lang['update_available'] = '<strong>Mise à jour :</strong> la version %s est disponible.'; +$lang['wrong_folder'] = '<strong>Greffon installé incorrectement :</strong> renommer le dossier du greffon "%s" en "%s".'; $lang['url_change'] = '<strong>URL modifié :</strong> L\'URL de téléchargement a changé depuis le dernier téléchargement. Vérifiez si l\'URL est valide avant de mettre à jour l\'extension.<br />Nouvel URL : %s<br />Ancien : %s'; $lang['error_badurl'] = 'Les URL doivent commencer par http ou https'; $lang['error_dircreate'] = 'Impossible de créer le dossier temporaire pour le téléchargement.'; $lang['error_download'] = 'Impossible de télécharger le fichier : %s'; $lang['error_decompress'] = 'Impossible de décompresser le fichier téléchargé. C\'est peut être le résultat d\'une erreur de téléchargement, auquel cas vous devriez réessayer. Le format de compression est peut-être inconnu. Dans ce cas il vous faudra procéder à une installation manuelle.'; -$lang['error_findfolder'] = 'Impossible d\'identifier le dossier de l\'extension. vous devez procéder à une installation manuelle.'; -$lang['error_copy'] = 'Une erreur de copie de fichier s\'est produite lors de l\'installation des fichiers dans le dossier <em>%s</em>. Il se peut que le disque soit plein, ou que les permissions d\'accès aux fichiers soient incorrectes. Il est possible que le greffon soit partiellement installé et que cela laisse votre installation de DoluWiki instable.'; +$lang['error_findfolder'] = 'Impossible d\'identifier le dossier de l\'extension. Vous devez procéder à une installation manuelle.'; +$lang['error_copy'] = 'Une erreur de copie de fichier s\'est produite lors de l\'installation des fichiers dans le dossier <em>%s</em>. Il se peut que le disque soit plein, ou que les permissions d\'accès aux fichiers soient incorrectes. Il est possible que le greffon soit partiellement installé et que cela laisse votre installation de DokuWiki instable.'; $lang['noperms'] = 'Impossible d\'écrire dans le dossier des extensions.'; $lang['notplperms'] = 'Impossible d\'écrire dans le dossier des thèmes.'; $lang['nopluginperms'] = 'Impossible d\'écrire dans le dossier des greffons.'; @@ -94,5 +94,5 @@ $lang['git'] = 'Cette extension a été installé via git, vou $lang['auth'] = 'Votre configuration n\'utilise pas ce greffon d\'authentification. Vous devriez songer à le désactiver.'; $lang['install_url'] = 'Installez depuis l\'URL :'; $lang['install_upload'] = 'Téléversez l\'extension :'; -$lang['repo_error'] = 'L\'entrepôt d\'extensions est injoignable. Veuillez vous assurer que le server web est autorisé à contacter www.dokuwiki.org et vérifier les réglages de proxy.'; +$lang['repo_error'] = 'Le dépôt d\'extensions est injoignable. Veuillez vous assurer que le server web est autorisé à contacter www.dokuwiki.org et vérifier les réglages de proxy.'; $lang['nossl'] = 'Votre version de PHP semble ne pas prendre en charge SSL. Le téléchargement de nombreuses extensions va échouer.'; diff --git a/lib/plugins/extension/lang/pt/lang.php b/lib/plugins/extension/lang/pt/lang.php index 1a36b4ede..9713f91f3 100644 --- a/lib/plugins/extension/lang/pt/lang.php +++ b/lib/plugins/extension/lang/pt/lang.php @@ -6,6 +6,7 @@ * @author Guido Salatino <guidorafael23@gmail.com> * @author Romulo Pereira <romuloccomp@gmail.com> * @author Paulo Carmino <contato@paulocarmino.com> + * @author Alfredo Silva <alfredo.silva@sky.com> */ $lang['menu'] = 'Gerenciador de Extensões'; $lang['tab_plugins'] = 'Plugins Instalados'; @@ -28,6 +29,9 @@ $lang['btn_install'] = 'Instalar'; $lang['btn_reinstall'] = 'Reinstalar'; $lang['js']['reallydel'] = 'Confirma a desinstalação desta extensão?'; $lang['js']['display_viewoptions'] = 'Ver Opções:'; +$lang['js']['display_enabled'] = 'ativado'; +$lang['js']['display_disabled'] = 'desativado'; +$lang['js']['display_updatable'] = 'atualizável'; $lang['search_for'] = 'Pesquisar Extensão:'; $lang['search'] = 'Pesquisar'; $lang['extensionby'] = '<strong>%s</strong> by %s'; diff --git a/lib/plugins/extension/lang/ru/lang.php b/lib/plugins/extension/lang/ru/lang.php index 238d44ebb..6df783cc8 100644 --- a/lib/plugins/extension/lang/ru/lang.php +++ b/lib/plugins/extension/lang/ru/lang.php @@ -34,7 +34,7 @@ $lang['js']['display_viewoptions'] = 'Показать как:'; $lang['js']['display_enabled'] = 'включён'; $lang['js']['display_disabled'] = 'отключён'; $lang['js']['display_updatable'] = 'обновление'; -$lang['search_for'] = 'Поиск дополнения:'; +$lang['search_for'] = 'Поиск дополнения'; $lang['search'] = 'Найти'; $lang['extensionby'] = '<strong>%s</strong> %s'; $lang['screenshot'] = 'Скриншот: %s'; diff --git a/lib/plugins/popularity/lang/cy/intro.txt b/lib/plugins/popularity/lang/cy/intro.txt new file mode 100644 index 000000000..187dfe0b7 --- /dev/null +++ b/lib/plugins/popularity/lang/cy/intro.txt @@ -0,0 +1,11 @@ +====== Adborth Poblogrwydd ====== + +Mae'r [[doku>popularity|teclyn]] hwn yn casglu data anhysbys am eich wici ac yn eich galluogi chi i'w anfon yn ôl i ddatblygwyr DokuWiki. Mae hwn yn eu helpu nhw i ddeall sut mae DokuWiki yn cael ei ddefnyddio gan ei ddefnyddwyr ac mae\'n sicrhau bod penderfyniadau datblygu yn y dyfodol yn cael eu cefnogi gan ystadegau defnydd go iawn. + +Cewch eich annog i ailadrodd y cam hwn o dro i dro er mwyn hysbysu datblygwyr wrth i'ch wici dyfu. Caiff eich setiau data eilfydd eu hadnabod gan ID anhysbys. + +Mae'r data sy'n cael ei gasglu yn cynnwys pethau fel fersiwn eich DokuWiki, nifer a maint eich tudalennau a'ch ffeiliau chi, ategion sydd wedi'u harsefydlu a gwybodaeth parthed eich arsefydliad PHP. + +Caiff y data crai i'w anfon ei ddangos isod. Pwyswch fotwm "Anfon Data" i drosglwyddo'r wybodaeth. + + diff --git a/lib/plugins/popularity/lang/cy/lang.php b/lib/plugins/popularity/lang/cy/lang.php new file mode 100644 index 000000000..7bee7bdf2 --- /dev/null +++ b/lib/plugins/popularity/lang/cy/lang.php @@ -0,0 +1,9 @@ +<?php + +$lang['name'] = 'Adborth Poblogrwydd (gall gymryd ychydig o amser i lwytho)'; +$lang['submit'] = 'Anfon Data'; +$lang['autosubmit'] = 'Anfon data yn awtomatig unwaith y mis'; +$lang['submissionFailed'] = 'Doedd dim modd anfon y data oherwydd y gwall canlynol:'; +$lang['submitDirectly'] = 'Gallwch chi anfon y data gan law gan gyflwyno\'r ffurflen ganlynol.'; +$lang['autosubmitError'] = 'Methodd yr awtogyflwyniad diwethaf oherwydd y gwall canlynol: '; +$lang['lastSent'] = 'Anfonwyd y data'; diff --git a/lib/plugins/popularity/lang/cy/submitted.txt b/lib/plugins/popularity/lang/cy/submitted.txt new file mode 100644 index 000000000..eb6fd815a --- /dev/null +++ b/lib/plugins/popularity/lang/cy/submitted.txt @@ -0,0 +1,3 @@ +====== Adborth Poblogrwydd ====== + +Cafodd y data ei anfon yn llwyddiannus. diff --git a/lib/plugins/remote.php b/lib/plugins/remote.php index 47f954ee6..c2253dbd5 100644 --- a/lib/plugins/remote.php +++ b/lib/plugins/remote.php @@ -17,10 +17,82 @@ abstract class DokuWiki_Remote_Plugin extends DokuWiki_Plugin { /** * Get all available methods with remote access. * - * @abstract + * By default it exports all public methods of a remote plugin. Methods beginning + * with an underscore are skipped. + * * @return array Information about all provided methods. {@see RemoteAPI}. */ - public abstract function _getMethods(); + public function _getMethods() { + $result = array(); + + $reflection = new \ReflectionClass($this); + foreach($reflection->getMethods(ReflectionMethod::IS_PUBLIC) as $method) { + // skip parent methods, only methods further down are exported + $declaredin = $method->getDeclaringClass()->name; + if($declaredin == 'DokuWiki_Plugin' || $declaredin == 'DokuWiki_Remote_Plugin') continue; + $method_name = $method->name; + if(substr($method_name, 0, 1) == '_') continue; + + // strip asterisks + $doc = $method->getDocComment(); + $doc = preg_replace( + array('/^[ \t]*\/\*+[ \t]*/m', '/[ \t]*\*+[ \t]*/m', '/\*+\/\s*$/m','/\s*\/\s*$/m'), + array('', '', '', ''), + $doc + ); + + // prepare data + $data = array(); + $data['name'] = $method_name; + $data['public'] = 0; + $data['doc'] = $doc; + $data['args'] = array(); + + // get parameter type from doc block type hint + foreach($method->getParameters() as $parameter) { + $name = $parameter->name; + $type = 'string'; // we default to string + if(preg_match('/^@param[ \t]+([\w|\[\]]+)[ \t]\$'.$name.'/m', $doc, $m)){ + $type = $this->cleanTypeHint($m[1]); + } + $data['args'][] = $type; + } + + // get return type from doc block type hint + if(preg_match('/^@return[ \t]+([\w|\[\]]+)/m', $doc, $m)){ + $data['return'] = $this->cleanTypeHint($m[1]); + } else { + $data['return'] = 'string'; + } + + // add to result + $result[$method_name] = $data; + } + + return $result; + } + + /** + * Matches the given type hint against the valid options for the remote API + * + * @param string $hint + * @return string + */ + protected function cleanTypeHint($hint) { + $types = explode('|', $hint); + foreach($types as $t) { + if(substr($t, -2) == '[]') { + return 'array'; + } + if($t == 'boolean') { + return 'bool'; + } + if(in_array($t, array('array', 'string', 'int', 'double', 'bool', 'null', 'date', 'file'))) { + return $t; + } + } + return 'string'; + } /** * @return RemoteAPI diff --git a/lib/plugins/revert/lang/cy/intro.txt b/lib/plugins/revert/lang/cy/intro.txt new file mode 100644 index 000000000..0e09bab09 --- /dev/null +++ b/lib/plugins/revert/lang/cy/intro.txt @@ -0,0 +1,3 @@ +====== Rheolwr Troi'n Ôl ====== + +Mae'r dudalen hon yn eich helpu chi i droi'n ôl yn awtomatig yn dilyn ymosodiad sbam. Er mwyn darganfod rhestr o dudalennau sbamllyd, rhowch linyn chwilio (ee. URL sbamllyd), yna cadarnhewch fod y tudalennau a ddarganfuwyd wir yn sbamllyd a throwch y golygiadau'n ôl. diff --git a/lib/plugins/revert/lang/cy/lang.php b/lib/plugins/revert/lang/cy/lang.php new file mode 100644 index 000000000..ce4f005c1 --- /dev/null +++ b/lib/plugins/revert/lang/cy/lang.php @@ -0,0 +1,22 @@ +<?php +/** + * welsh language file + */ + +// for admin plugins, the menu prompt to be displayed in the admin menu +// if set here, the plugin doesn't need to override the getMenuText() method +$lang['menu'] = 'Rheolwr Troi\'n Ôl'; + +// custom language strings for the plugin + +$lang['filter'] = 'Chwilio tudalennau sbamllyd'; +$lang['revert'] = 'Troi tudalennau a ddewiswyd yn ôl'; +$lang['reverted'] = 'Trowyd %s yn ôl i adolygiad %s'; +$lang['removed'] = '%s wedi\'i dynnu'; +$lang['revstart'] = 'Mae\'r broses troi\'n ôl wedi dechrau. Gall hwn gymryd amser hir. Os yw\'r + sgript yn bwrw\'r terfyn amser cyn gorffen, bydd angen troi\n ôl mewn dognau llai.'; +$lang['revstop'] = 'Gwnaeth y broses troi\'n ôl gwblhau\'n llwyddiannus.'; +$lang['note1'] = 'Sylw: mae\'r chwiliad yn sensitif i nodau uwch/is'; +$lang['note2'] = 'Sylw: caiff y dudalen ei throi\'n ôl i\'r fersiwn diwethaf sy ddim yn cynnwys y term sbamllyd <i>%s</i>.'; + +//Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/revert/lang/ko/lang.php b/lib/plugins/revert/lang/ko/lang.php index f99b0ab23..263537203 100644 --- a/lib/plugins/revert/lang/ko/lang.php +++ b/lib/plugins/revert/lang/ko/lang.php @@ -9,6 +9,7 @@ * @author Seung-Chul Yoo <dryoo@live.com> * @author erial2@gmail.com * @author Myeongjin <aranet100@gmail.com> + * @author Erial <erial2@gmail.com> */ $lang['menu'] = '되돌리기 관리자'; $lang['filter'] = '스팸 문서 검색'; diff --git a/lib/plugins/styling/lang/cs/intro.txt b/lib/plugins/styling/lang/cs/intro.txt new file mode 100644 index 000000000..00365a091 --- /dev/null +++ b/lib/plugins/styling/lang/cs/intro.txt @@ -0,0 +1,2 @@ +Tento nástroj umožňuje změnu určitých nastavení stylu právě používané šablony vzhledu. +Všechny změny jsou uloženy v lokálním konfiguračním souboru a tím chráněny před smazáním při aktualizaci.
\ No newline at end of file diff --git a/lib/plugins/styling/lang/cy/intro.txt b/lib/plugins/styling/lang/cy/intro.txt new file mode 100644 index 000000000..7c825967b --- /dev/null +++ b/lib/plugins/styling/lang/cy/intro.txt @@ -0,0 +1,2 @@ +Mae'r teclyn hwn yn eich galluogi chi newid gosodiadau arddull penodol y templed rydych chi'n defnyddio'n bresennol. +Caiff pob newid ei storio mewn ffeil ffurfwedd leol sy'n uwchradd-ddiogel.
\ No newline at end of file diff --git a/lib/plugins/styling/lang/cy/lang.php b/lib/plugins/styling/lang/cy/lang.php new file mode 100644 index 000000000..4d22a59f0 --- /dev/null +++ b/lib/plugins/styling/lang/cy/lang.php @@ -0,0 +1,36 @@ +<?php +/** + * Welsh language file for styling plugin + * + * @author Andreas Gohr <andi@splitbrain.org> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +// menu entry for admin plugins +$lang['menu'] = 'Gosodiadau Arddull Templed'; + +$lang['js']['loader'] = 'Rhagolwg yn llwytho...<br />os \'dyw hwn ddim yn diflannu, efallai bod eich gwerthoedd yn annilys'; +$lang['js']['popup'] = 'Agor fel ffurflen naid'; + +// custom language strings for the plugin +$lang['error'] = 'Sori, \'dyw\'r templed hwn ddim yn cynnal y swyddogaethedd hwn.'; + +$lang['btn_preview'] = 'Rhagolwg newidiadau'; +$lang['btn_save'] = 'Cadw newidiadau'; +$lang['btn_reset'] = 'Ailosod newidiadau cyfredol'; +$lang['btn_revert'] = 'Troi arddulliau\'n ôl i ddiofyn y templed'; + +// default guaranteed placeholders +$lang['__text__'] = 'Lliw\'r prif destun'; +$lang['__background__'] = 'Lliw\'r prif gefndir'; +$lang['__text_alt__'] = 'Lliw testun amgen'; +$lang['__background_alt__'] = 'Lliw cefndir amgen'; +$lang['__text_neu__'] = 'lliw testun niwtral'; +$lang['__background_neu__'] = 'Lliw cefndir niwtral'; +$lang['__border__'] = 'Lliw border'; +$lang['__highlight__'] = 'Lliw uwcholeuad (am ganlyniadau chwiliad yn bennaf)'; + + + + +//Setup VIM: ex: et ts=4 : diff --git a/lib/plugins/styling/lang/fa/intro.txt b/lib/plugins/styling/lang/fa/intro.txt new file mode 100644 index 000000000..428a25130 --- /dev/null +++ b/lib/plugins/styling/lang/fa/intro.txt @@ -0,0 +1,2 @@ +این ابزار این امکان را فراهم میسازد که برخی تنظیمات مشخص از قالبی که انتخاب کردید را تغییر دهید. +تمام تغییرات در فایل داخلی تنظیمات ذخیره میشود و بهروزرسانی هم ایمن است.
\ No newline at end of file diff --git a/lib/plugins/styling/lang/fa/lang.php b/lib/plugins/styling/lang/fa/lang.php new file mode 100644 index 000000000..c8d1bd60e --- /dev/null +++ b/lib/plugins/styling/lang/fa/lang.php @@ -0,0 +1,23 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> + */ +$lang['menu'] = 'تنظیمات ظاهری تمپلیت'; +$lang['js']['loader'] = 'پیشنمایش در حال باز شدن است... <br />اگر این پیش نرفت یعنی مقادیرتان اشکال دارد'; +$lang['js']['popup'] = 'باز کردن به صورت popup'; +$lang['error'] = 'ببخشید، این قالب از این قابلیت پشتیبانی نمیکند'; +$lang['btn_preview'] = 'نمایش تغییرات'; +$lang['btn_save'] = 'ذخیره تغییرات'; +$lang['btn_reset'] = 'بازگردانی تغییر فعلی'; +$lang['btn_revert'] = 'بازگردانی ظاهر به پیشفرض قالب'; +$lang['__text__'] = 'رنگ اصلی متن'; +$lang['__background__'] = 'رنگ اصلی زمینه'; +$lang['__text_alt__'] = 'رنگ ثانویه متن'; +$lang['__background_alt__'] = 'رنگ ثانویه زمینه'; +$lang['__text_neu__'] = 'رنگ خنثی متن'; +$lang['__background_neu__'] = 'رنگ خنثی زمینه'; +$lang['__border__'] = 'رنگ حاشیه'; +$lang['__highlight__'] = 'رنگ برجستهسازی (برای نتیجه جستجو)'; diff --git a/lib/plugins/styling/lang/pt/lang.php b/lib/plugins/styling/lang/pt/lang.php new file mode 100644 index 000000000..6929a40dc --- /dev/null +++ b/lib/plugins/styling/lang/pt/lang.php @@ -0,0 +1,13 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Alfredo Silva <alfredo.silva@sky.com> + */ +$lang['js']['popup'] = 'Abrir como uma janela extra'; +$lang['error'] = 'Desculpe, este modelo não suporta esta funcionalidade.'; +$lang['btn_preview'] = 'Pré-visualizar alterações'; +$lang['btn_save'] = 'Guardar alterações'; +$lang['btn_reset'] = 'Reiniciar alterações atuais'; +$lang['__text__'] = 'Cor do texto principal'; diff --git a/lib/plugins/usermanager/admin.php b/lib/plugins/usermanager/admin.php index ca954db68..f90a172b3 100644 --- a/lib/plugins/usermanager/admin.php +++ b/lib/plugins/usermanager/admin.php @@ -329,12 +329,12 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { ptln(" </thead>",$indent); ptln(" <tbody>",$indent); - $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); + $this->_htmlInputField($cmd."_userid", "userid", $this->lang["user_id"], $user, $this->_auth->canDo("modLogin"), true, $indent+6); + $this->_htmlInputField($cmd."_userpass", "userpass", $this->lang["user_pass"], "", $this->_auth->canDo("modPass"), false, $indent+6); + $this->_htmlInputField($cmd."_userpass2", "userpass2", $lang["passchk"], "", $this->_auth->canDo("modPass"), false, $indent+6); + $this->_htmlInputField($cmd."_username", "username", $this->lang["user_name"], $name, $this->_auth->canDo("modName"), true, $indent+6); + $this->_htmlInputField($cmd."_usermail", "usermail", $this->lang["user_mail"], $mail, $this->_auth->canDo("modMail"), true, $indent+6); + $this->_htmlInputField($cmd."_usergroups","usergroups",$this->lang["user_groups"],$groups,$this->_auth->canDo("modGroups"), false, $indent+6); if ($this->_auth->canDo("modPass")) { if ($cmd == 'add') { @@ -385,9 +385,10 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { * @param string $label * @param string $value * @param bool $cando whether auth backend is capable to do this action + * @param bool $required is this field required? * @param int $indent */ - protected function _htmlInputField($id, $name, $label, $value, $cando, $indent=0) { + protected function _htmlInputField($id, $name, $label, $value, $cando, $required, $indent=0) { $class = $cando ? '' : ' class="disabled"'; echo str_pad('',$indent); @@ -407,7 +408,9 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { echo "<td><label for=\"$id\" >$label: </label></td>"; echo "<td>"; if($cando){ - echo "<input type=\"$fieldtype\" id=\"$id\" name=\"$name\" value=\"$value\" class=\"edit\" $autocomp />"; + $req = ''; + if($required) $req = 'required="required"'; + echo "<input type=\"$fieldtype\" id=\"$id\" name=\"$name\" value=\"$value\" class=\"edit\" $autocomp $req />"; }else{ echo "<input type=\"hidden\" name=\"$name\" value=\"$value\" />"; echo "<input type=\"$fieldtype\" id=\"$id\" name=\"$name\" value=\"$value\" class=\"edit disabled\" disabled=\"disabled\" />"; @@ -518,16 +521,20 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { $pass = auth_pwgen($user); } else { msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_missing_pass'], -1); return false; } } else { if (!$this->_verifyPassword($pass,$passconfirm)) { + msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_pass_not_identical'], -1); return false; } } } else { if (!empty($pass)){ msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_modPass_disabled'], -1); return false; } } @@ -535,10 +542,13 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { if ($this->_auth->canDo('modName')){ if (empty($name)){ msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_name_missing'], -1); return false; } } else { if (!empty($name)){ + msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_modName_disabled'], -1); return false; } } @@ -546,10 +556,13 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { if ($this->_auth->canDo('modMail')){ if (empty($mail)){ msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_mail_missing'], -1); return false; } } else { if (!empty($mail)){ + msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_modMail_disabled'], -1); return false; } } @@ -563,6 +576,7 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin { } } else { msg($this->lang['add_fail'], -1); + msg($this->lang['addUser_error_create_event_failed'], -1); } return $ok; diff --git a/lib/plugins/usermanager/lang/cs/lang.php b/lib/plugins/usermanager/lang/cs/lang.php index 6130fccd8..3cd42efcb 100644 --- a/lib/plugins/usermanager/lang/cs/lang.php +++ b/lib/plugins/usermanager/lang/cs/lang.php @@ -76,3 +76,11 @@ $lang['import_error_readfail'] = 'Import selhal. Nelze číst nahraný soubor.'; $lang['import_error_create'] = 'Nelze vytvořit uživatele'; $lang['import_notify_fail'] = 'Importovanému uživateli %s s e-mailem %s nemohlo být zasláno upozornění.'; $lang['import_downloadfailures'] = 'Stáhnout chyby pro nápravu jako CVS'; +$lang['addUser_error_missing_pass'] = 'Buď prosím nastavte heslo nebo aktivujte upozorňování uživatel aby fungovalo vytváření hesel.'; +$lang['addUser_error_pass_not_identical'] = 'Zadaná hesla nebyla shodná.'; +$lang['addUser_error_modPass_disabled'] = 'Změna hesel je momentálně zákázána.'; +$lang['addUser_error_name_missing'] = 'Zadejte prosím jméno nového uživatele.'; +$lang['addUser_error_modName_disabled'] = 'Změna jmen je momentálně zákázána.'; +$lang['addUser_error_mail_missing'] = 'Zadejte prosím emailovou adresu nového uživatele.'; +$lang['addUser_error_modMail_disabled'] = 'Změna emailové adresy je momentálně zákázána.'; +$lang['addUser_error_create_event_failed'] = 'Zásuvný modul zabránil přidání nového uživatele. Pro více informací si prohlédněte další možné zprávy.'; diff --git a/lib/plugins/usermanager/lang/cy/add.txt b/lib/plugins/usermanager/lang/cy/add.txt new file mode 100644 index 000000000..c804e531d --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/add.txt @@ -0,0 +1 @@ +===== Ychwanegu defnyddiwr ===== diff --git a/lib/plugins/usermanager/lang/cy/delete.txt b/lib/plugins/usermanager/lang/cy/delete.txt new file mode 100644 index 000000000..a81f3a989 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/delete.txt @@ -0,0 +1 @@ +===== Dileu defnyddiwr ===== diff --git a/lib/plugins/usermanager/lang/cy/edit.txt b/lib/plugins/usermanager/lang/cy/edit.txt new file mode 100644 index 000000000..3fcb6d1d2 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/edit.txt @@ -0,0 +1 @@ +===== Golygu defnyddiwr ===== diff --git a/lib/plugins/usermanager/lang/cy/import.txt b/lib/plugins/usermanager/lang/cy/import.txt new file mode 100644 index 000000000..211e8cf24 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/import.txt @@ -0,0 +1,9 @@ +===== Swmp Mewnforio Defnyddwyr ===== + +Mae hwn angen ffeil CSV o ddefnyddwyr gydag o leiaf pedair colofn. +Mae'n rhaid i'r colofnau gynnwys, mewn trefn: id-defnyddiwr, enw llawn, cyfeiriad ebost a grwpiau. +Dylai'r meysydd CSV gael eu gwahanu gan goma (,) a llinynnau eu hamffinio gan ddyfynodau (%%""%%). Gall ôl-slaes (\) ei ddefnyddio ar gyfer glanhau (escaping). +Am enghraifft o ffeil addas, ceisiwch y swyddogaeth "Allforio Defnyddwyr" uchod. +Caiff id-defnyddiwr dyblygiedig eu hanwybyddu. + +Generadwyd cyfrinair a'i ebostio i bob defnyddiwr sydd wedi'i fewnforio'n llwyddiannus. diff --git a/lib/plugins/usermanager/lang/cy/intro.txt b/lib/plugins/usermanager/lang/cy/intro.txt new file mode 100644 index 000000000..a381a3076 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/intro.txt @@ -0,0 +1 @@ +====== Rheolwr Defnyddwyr ====== diff --git a/lib/plugins/usermanager/lang/cy/lang.php b/lib/plugins/usermanager/lang/cy/lang.php new file mode 100644 index 000000000..5120d39e2 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/lang.php @@ -0,0 +1,87 @@ +<?php +/** + * Welsh language file + * + * @author Chris Smith <chris@jalakai.co.uk> + * @author Alan Davies <ben.brynsadler@gmail.com> + */ + +$lang['menu'] = 'Rheolwr Defnyddwyr'; + +// custom language strings for the plugin +$lang['noauth'] = '(dilysiad defnddwyr ddim ar gael)'; +$lang['nosupport'] = '(rheolaeth defnyddwyr heb ei chynnal)'; + +$lang['badauth'] = 'mecanwaith dilysu annilys'; // should never be displayed! + +$lang['user_id'] = 'Defnyddiwr'; +$lang['user_pass'] = 'Cyfrinair'; +$lang['user_name'] = 'Enw Cywir'; +$lang['user_mail'] = 'Ebost'; +$lang['user_groups'] = 'Grwpiau'; + +$lang['field'] = 'Maes'; +$lang['value'] = 'Gwerth'; +$lang['add'] = 'Ychwanegu'; +$lang['delete'] = 'Dileu'; +$lang['delete_selected'] = 'Dileu\'r Dewisiadau'; +$lang['edit'] = 'Golygu'; +$lang['edit_prompt'] = 'Golygu\'r defnyddiwr hwn'; +$lang['modify'] = 'Cadw Newidiadau'; +$lang['search'] = 'Chwilio'; +$lang['search_prompt'] = 'Perfformio chwiliad'; +$lang['clear'] = 'Ailosod Hidlydd Chwilio'; +$lang['filter'] = 'Hidlo'; +$lang['export_all'] = 'Allforio Pob Defnyddiwr (CSV)'; +$lang['export_filtered'] = 'Allforio Rhestr Defnyddwyr wedi\'u Hidlo (CSV)'; +$lang['import'] = 'Mewnforio Defnyddwyr Newydd'; +$lang['line'] = 'Llinell rhif'; +$lang['error'] = 'Gwallneges'; + +$lang['summary'] = 'Yn dangos %1$d-%2$d defnyddiwr allan o %3$d wedi\'u darganfod. %4$d defnyddiwr yn gyfan gwbl.'; +$lang['nonefound'] = 'Dim defnyddwyr wedi\'u darganfod. %d defnyddiwr yn gyfan gwbl.'; +$lang['delete_ok'] = 'Dilëwyd %d defnyddiwr'; +$lang['delete_fail'] = 'Dileu %d wedi methu.'; +$lang['update_ok'] = 'Diweddarwyd y defnyddiwr yn llwyddiannus'; +$lang['update_fail'] = 'Methodd diweddariad y defnyddiwr'; +$lang['update_exists'] = 'Methodd newid y defnyddair, mae\'r defnyddair hwnnw (%s) yn bodoli eisoes (caiff pob newid arall ei gyflwyno).'; + +$lang['start'] = 'dechrau'; +$lang['prev'] = 'blaenorol'; +$lang['next'] = 'nesaf'; +$lang['last'] = 'diwethaf'; + +// added after 2006-03-09 release +$lang['edit_usermissing'] = 'Methu darganfod y defnyddiwr hwn. Efallai bod y defnyddair hwn wedi\'i ddileu neu wedi\'i newid mewn man arall.'; +$lang['user_notify'] = 'Hysbysu defnyddiwr'; +$lang['note_notify'] = 'Bydd ebyst hysbysu eu hanfon dim ond os ydy defnyddiwr yn derbyn cyfrinair newydd.'; +$lang['note_group'] = 'Bydd defnyddwyr newydd yn cael eu hychwanegu i\'r grŵp diofyn (%s) os na chaiff grŵp ei enwi.'; +$lang['note_pass'] = 'Caiff y cyfrinair ei generadu\'n awtomatig os caiff y maes ei adael yn wag a bod hysbysu\'r defnyddiwr wedi\'i alluogi.'; +$lang['add_ok'] = 'Ychwanegwyd y defnyddiwr yn llwyddiannus'; +$lang['add_fail'] = 'Methodd ychwanegu defnyddiwr'; +$lang['notify_ok'] = 'Anfonwyd yr ebost hysbysu'; +$lang['notify_fail'] = 'Doedd dim modd anfon yr ebost hysbysu'; + +// import & errors +$lang['import_userlistcsv'] = 'Ffeil rhestr defnyddwyr (CSV): '; +$lang['import_header'] = 'Mewnforiad Diweddaraf - Methiannau'; +$lang['import_success_count'] = 'Mewnforio Defnyddwyr: darganfuwyd %d defnyddiwr, mewnforiwyd %d yn llwyddiannus.'; +$lang['import_failure_count'] = 'Mewnforio Defnyddwyr: methodd %d. Rhestrwyd y methiannau isod.'; +$lang['import_error_fields'] = "Meysydd annigonol, darganfuwyd %d, angen 4."; +$lang['import_error_baduserid'] = "Id-defnyddiwr ar goll"; +$lang['import_error_badname'] = 'Enw gwael'; +$lang['import_error_badmail'] = 'Cyfeiriad ebost gwael'; +$lang['import_error_upload'] = 'Methodd y Mewnforiad. Doedd dim modd lanlwytho\'r ffeil neu roedd yn wag.'; +$lang['import_error_readfail'] = 'Methodd y Mewnforiad. Methu â darllen y ffeil a lanlwythwyd.'; +$lang['import_error_create'] = 'Methu â chreu\'r defnyddiwr'; +$lang['import_notify_fail'] = 'Doedd dim modd anfon neges hysbysu i\'r defyddiwr a fewnforiwyd, %s gydag ebost %s.'; +$lang['import_downloadfailures'] = 'Lawlwytho Methiannau fel CSV er mwyn cywiro'; + +$lang['addUser_error_missing_pass'] = 'Gosodwch gyfrinair neu trowch hysbysu defnyddwyr ymlaen i alluogi generadu cyfrineiriau.'; +$lang['addUser_error_pass_not_identical'] = '\'Dyw\'r cyfrineiriau hyn ddim yn cydweddu.'; +$lang['addUser_error_modPass_disabled'] = 'Mae newid cyfrineiriau wedi\'i analluogi\'n bresennol.'; +$lang['addUser_error_name_missing'] = 'Rhowch enw ar gyfer y defnyddiwr newydd.'; +$lang['addUser_error_modName_disabled'] = 'Mae newid enwau wedi\'i analluogi\'n bresennol.'; +$lang['addUser_error_mail_missing'] = 'Rhowch gyfeiriad ebost ar gyfer y defnyddiwr newydd.'; +$lang['addUser_error_modMail_disabled'] = 'Mae newid cyfeiriadau ebost wedi\'i analluogi\'n bresennol.'; +$lang['addUser_error_create_event_failed'] = 'Mae ategyn wedi atal ychwanegu\'r defnyddiwr newydd. Adolygwch negeseuon ychwanegol bosib am wybodaeth bellach.'; diff --git a/lib/plugins/usermanager/lang/cy/list.txt b/lib/plugins/usermanager/lang/cy/list.txt new file mode 100644 index 000000000..653177491 --- /dev/null +++ b/lib/plugins/usermanager/lang/cy/list.txt @@ -0,0 +1 @@ +===== Rhestr Defnyddwyr ===== diff --git a/lib/plugins/usermanager/lang/de/lang.php b/lib/plugins/usermanager/lang/de/lang.php index 4b297b0dc..a388eb531 100644 --- a/lib/plugins/usermanager/lang/de/lang.php +++ b/lib/plugins/usermanager/lang/de/lang.php @@ -22,6 +22,8 @@ * @author christian studer <cstuder@existenz.ch> * @author Ben Fey <benedikt.fey@beck-heun.de> * @author Jonas Gröger <jonas.groeger@gmail.com> + * @author Uwe Benzelrath <uwebenzelrath@gmail.com> + * @author ms <msocial@posteo.de> */ $lang['menu'] = 'Benutzerverwaltung'; $lang['noauth'] = '(Authentifizierungssystem nicht verfügbar)'; @@ -82,3 +84,10 @@ $lang['import_error_readfail'] = 'Import fehlgeschlagen. Die hochgeladene Datei $lang['import_error_create'] = 'User konnte nicht angelegt werden'; $lang['import_notify_fail'] = 'Notifikation konnte nicht an den importierten Benutzer %s (E-Mail: %s) gesendet werden.'; $lang['import_downloadfailures'] = 'Fehler als CSV-Datei zur Korrektur herunterladen'; +$lang['addUser_error_pass_not_identical'] = 'Die eingegebenen Passwörter stimmen nicht überein.'; +$lang['addUser_error_modPass_disabled'] = 'Das bearbeiten von Passwörtern ist momentan deaktiviert'; +$lang['addUser_error_name_missing'] = 'Bitte geben sie den Namen des neuen Benutzer ein.'; +$lang['addUser_error_modName_disabled'] = 'Das bearbeiten von Namen ist momentan deaktiviert.'; +$lang['addUser_error_mail_missing'] = 'Bitte geben sie die E-Mail-Adresse des neuen Benutzer ein.'; +$lang['addUser_error_modMail_disabled'] = 'Das bearbeiten von E-Mailadressen ist momentan deaktiviert.'; +$lang['addUser_error_create_event_failed'] = 'Ein Plug-in hat das hinzufügen des neuen Benutzers verhindert. Für weitere Informationen, sehen Sie sich mögliche andere Meldungen an.'; diff --git a/lib/plugins/usermanager/lang/en/lang.php b/lib/plugins/usermanager/lang/en/lang.php index b55ecc998..5f47673f3 100644 --- a/lib/plugins/usermanager/lang/en/lang.php +++ b/lib/plugins/usermanager/lang/en/lang.php @@ -76,3 +76,11 @@ $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'; +$lang['addUser_error_missing_pass'] = 'Please either set a password or activate user notification to enable password generation.'; +$lang['addUser_error_pass_not_identical'] = 'The entered passwords were not identical.'; +$lang['addUser_error_modPass_disabled'] = 'Modifing passwords is currently disabled'; +$lang['addUser_error_name_missing'] = 'Please enter a name for the new user.'; +$lang['addUser_error_modName_disabled'] = 'Modifing names is currently disabled.'; +$lang['addUser_error_mail_missing'] = 'Please enter an Email-Adress for the new user.'; +$lang['addUser_error_modMail_disabled'] = 'Modifing Email-Adresses is currently disabled.'; +$lang['addUser_error_create_event_failed'] = 'A plugin prevented the new user being added. Review possible other messages for more information.'; diff --git a/lib/plugins/usermanager/lang/es/lang.php b/lib/plugins/usermanager/lang/es/lang.php index 284d50f34..57752de06 100644 --- a/lib/plugins/usermanager/lang/es/lang.php +++ b/lib/plugins/usermanager/lang/es/lang.php @@ -28,6 +28,7 @@ * @author Antonio Castilla <antoniocastilla@trazoide.com> * @author Jonathan Hernández <me@jhalicea.com> * @author Domingo Redal <docxml@gmail.com> + * @author solohazlo <solohhazlo@gmail.com> */ $lang['menu'] = 'Administración de usuarios'; $lang['noauth'] = '(la autenticación de usuarios no está disponible)'; @@ -88,3 +89,6 @@ $lang['import_error_readfail'] = 'Error al importar. No se puede leer el archivo $lang['import_error_create'] = 'No se puede crear el usuario'; $lang['import_notify_fail'] = 'Mensaje de notificación no se ha podido enviar por el usuario importado,%s con el email %s.'; $lang['import_downloadfailures'] = 'Descarga errores en archivo CSV para la corrección'; +$lang['addUser_error_pass_not_identical'] = 'Las contraseñas no coinciden'; +$lang['addUser_error_modPass_disabled'] = 'Está desactivado por ahora modificar contraseñas.'; +$lang['addUser_error_name_missing'] = 'Por favor teclea el nombre del nuevo usuario.'; diff --git a/lib/plugins/usermanager/lang/fa/import.txt b/lib/plugins/usermanager/lang/fa/import.txt new file mode 100644 index 000000000..562a28aa5 --- /dev/null +++ b/lib/plugins/usermanager/lang/fa/import.txt @@ -0,0 +1,6 @@ + ===== اضافه کردن کاربر ===== + +برای اینکار یک فایل CSV با حداقل چهار ستون لازم است. ستونها به ترتیب باید شامل id کاربر، نام کامل کاربر، آدرس ایمیل و گروههای کاربری او باشند. +خانههای جدول CSV باید به وسیلهٔ کاما (,) و رشتهها با علامت نقل قول (%%""%%) از هم جدا شوند. علامت واکجخط (\) میتواند برای غیرفعال کردن معنای کاراکترها استفاده شود. برای دیدن یک نمونه از فایل مناسب، از گزینهٔ "خروجی کاربران" در بالا استفاده کنید. id های تکراری در جدول در نظر گرفته نمیشوند. + +به ازای هر کاربری که با موفقیت اضافه شود یک رمز تولید و ایمیل میشود.
\ No newline at end of file diff --git a/lib/plugins/usermanager/lang/fa/lang.php b/lib/plugins/usermanager/lang/fa/lang.php index bb2505a27..cfa14f23b 100644 --- a/lib/plugins/usermanager/lang/fa/lang.php +++ b/lib/plugins/usermanager/lang/fa/lang.php @@ -12,6 +12,7 @@ * @author AmirH Hassaneini <mytechmix@gmail.com> * @author Hamid <zarrabi@sharif.edu> * @author Mohamad Mehdi Habibi <habibi.esf@gmail.com> + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> */ $lang['menu'] = 'مدیریت کاربر'; $lang['noauth'] = '(معتبرسازی کاربر ممکن نیست)'; @@ -34,7 +35,10 @@ $lang['search'] = 'جستجو'; $lang['search_prompt'] = 'انجام جستجو'; $lang['clear'] = 'بازنویسی فیلترهای جستجو'; $lang['filter'] = 'فیلتر'; +$lang['export_all'] = 'خروجی گرفتن از تمام کاربران (CSV):'; +$lang['export_filtered'] = 'خروجی لیست فیلتر شده کاربران (CSV):'; $lang['import'] = 'ورود کاربران جدید'; +$lang['line'] = 'شماره خط.'; $lang['error'] = 'متن خطا'; $lang['summary'] = 'نمایش کاربر %1$d-%2$d از %3$d. در کل %4$d کاربر.'; $lang['nonefound'] = 'هیچ کاربری یافت نشد. در کل %d کاربر.'; @@ -56,3 +60,24 @@ $lang['add_ok'] = 'کاربر با موفقیت افزوده شد $lang['add_fail'] = 'افزودن کاربر با مشکل مواجه شد'; $lang['notify_ok'] = 'ایمیل آگاهیدهنده ارسال شد'; $lang['notify_fail'] = 'ارسال ایمیل آگاهیدهنده با مشکل مواجه شد'; +$lang['import_userlistcsv'] = 'فایل لیست کاربران (CSV):'; +$lang['import_header'] = 'آخرین ایمپورت - خطا'; +$lang['import_success_count'] = 'ایمپورت کاربران: %d کاربر پیدا شد، %d با موفقیت وارد شد.'; +$lang['import_failure_count'] = 'ایمپورت کاربران: %d ناموفق. موارد ناموفق در پایین فهرست شده.'; +$lang['import_error_fields'] = 'فیلدهای ناکافی. %d تا پیدا شد ولی ۴ تا لازم است.'; +$lang['import_error_baduserid'] = 'id کاربر وارد نشده'; +$lang['import_error_badname'] = 'نام نامناسب'; +$lang['import_error_badmail'] = 'ایمیل نامناسب'; +$lang['import_error_upload'] = 'ایمپورت ناموفق. امکان ایمپورت فایل csv وجود ندارد یا خالی است.'; +$lang['import_error_readfail'] = 'ایمپورت ناموفق. امکان خواندن فایل آپلود شده وجود ندارد.'; +$lang['import_error_create'] = 'امکان ساخت کاربر وجود ندارد.'; +$lang['import_notify_fail'] = 'امکان ارسال پیغام آگاهیرسان برای کاربر ایمپورت شده وجود ندارد، %s با ایمیل %s.'; +$lang['import_downloadfailures'] = 'دانلود خطاها به صورت CSV برای اصلاح'; +$lang['addUser_error_missing_pass'] = 'لطفا یک پسورد وارد کنید یا آگاهیرسان کاربر را فعال کنید تا امکان تولید پسورد ایجاد شود'; +$lang['addUser_error_pass_not_identical'] = 'پسورد وارد شده معتبر نیست.'; +$lang['addUser_error_modPass_disabled'] = 'پسوردهای تغییریافتنی غیرفعال است.'; +$lang['addUser_error_name_missing'] = 'لطفا یک نام برای کاربر جدید وارد کنید.'; +$lang['addUser_error_modName_disabled'] = 'نامهای تغییریافتنی غیر فعال است.'; +$lang['addUser_error_mail_missing'] = 'لطفا یک نشانی ایمیل برای کاربر جدید وارد نمایید.'; +$lang['addUser_error_modMail_disabled'] = 'ایمیلهای تغییریافتنی غیر فعال است.'; +$lang['addUser_error_create_event_failed'] = 'افزونه از اضافه شدن کاربر جدید جلوگیری کرد. برای اطلاعات بیشتر پیغامهای احتمالی دیگر را مطالعه کنید.'; diff --git a/lib/plugins/usermanager/lang/fr/lang.php b/lib/plugins/usermanager/lang/fr/lang.php index dd0e64fc4..eef81c6c5 100644 --- a/lib/plugins/usermanager/lang/fr/lang.php +++ b/lib/plugins/usermanager/lang/fr/lang.php @@ -15,15 +15,15 @@ * @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> * @author Antoine Turmel <geekshadow@gmail.com> - * @author schplurtz <Schplurtz@laposte.net> * @author Jérôme Brandt <jeromebrandt@gmail.com> + * @author Schplurtz le Déboulonné <Schplurtz@laposte.net> + * @author Olivier Humbert <trebmuh@tuxfamily.org> */ $lang['menu'] = 'Gestion des utilisateurs'; $lang['noauth'] = '(authentification de l\'utilisateur non disponible)'; @@ -84,3 +84,11 @@ $lang['import_error_readfail'] = 'L\'import a échoué. Impossible de lire le fi $lang['import_error_create'] = 'Impossible de créer l\'utilisateur'; $lang['import_notify_fail'] = 'Impossible d\'expédier une notification à l\'utilisateur importé %s, adresse %s.'; $lang['import_downloadfailures'] = 'Télécharger les erreurs au format CSV pour correction'; +$lang['addUser_error_missing_pass'] = 'Veuillez saisir un mot de passe ou activer la notification à l\'utilisateur pour permettre la génération d\'un mot de passe.'; +$lang['addUser_error_pass_not_identical'] = 'Les mots de passe saisis diffèrent.'; +$lang['addUser_error_modPass_disabled'] = 'La modification des mots de passe est actuellement désactivée.'; +$lang['addUser_error_name_missing'] = 'Veuillez saisir un nom pour le nouvel utilisateur.'; +$lang['addUser_error_modName_disabled'] = 'La modification des noms est actuellement désactivée.'; +$lang['addUser_error_mail_missing'] = 'Veuillez saisir une adressse de courriel pour le nouvel utilisateur.'; +$lang['addUser_error_modMail_disabled'] = 'La modification des adresses de courriel est actuellement désactivée.'; +$lang['addUser_error_create_event_failed'] = 'Un greffon a empêché l\'ajout du nouvel utilisateur. Examinez les autres messages potentiels pour obtenir de plus amples informations.'; diff --git a/lib/plugins/usermanager/lang/it/lang.php b/lib/plugins/usermanager/lang/it/lang.php index 2b6a17499..fe52d5e91 100644 --- a/lib/plugins/usermanager/lang/it/lang.php +++ b/lib/plugins/usermanager/lang/it/lang.php @@ -79,3 +79,11 @@ $lang['import_error_readfail'] = 'Importazione in errore. Impossibile leggere i $lang['import_error_create'] = 'Impossibile creare l\'utente'; $lang['import_notify_fail'] = 'Non è stato possibile inviare un messaggio di notifica per l\'utente importato %s con e-mail %s.'; $lang['import_downloadfailures'] = 'Scarica operazioni non riuscite come CSV per correzione'; +$lang['addUser_error_missing_pass'] = 'Imposta una password oppure attiva la notifica utente per abilitare la generazione password.'; +$lang['addUser_error_pass_not_identical'] = 'Le password inserite non sono identiche.'; +$lang['addUser_error_modPass_disabled'] = 'La modifica delle password è al momento disabilitata.'; +$lang['addUser_error_name_missing'] = 'Inserire un nome per il nuovo utente.'; +$lang['addUser_error_modName_disabled'] = 'La modifica dei nomi è al momento disabilitata.'; +$lang['addUser_error_mail_missing'] = 'Inserire un indirizzo e-mail per il nuovo utente.'; +$lang['addUser_error_modMail_disabled'] = 'La modifica degli indirizzi e-mail è al momento disabilitata.'; +$lang['addUser_error_create_event_failed'] = 'Un plugin ha impedito che il nuovo utente venisse aggiunto. Rivedere gli altri messaggi per maggiori informazioni.'; diff --git a/lib/plugins/usermanager/lang/ja/lang.php b/lib/plugins/usermanager/lang/ja/lang.php index c7952d8f0..ad55a3e8a 100644 --- a/lib/plugins/usermanager/lang/ja/lang.php +++ b/lib/plugins/usermanager/lang/ja/lang.php @@ -72,3 +72,11 @@ $lang['import_error_readfail'] = 'インポートが失敗しました。アッ $lang['import_error_create'] = 'ユーザーが作成できません。'; $lang['import_notify_fail'] = '通知メッセージがインポートされたユーザー(%s)・電子メールアドレス(%s)に送信できませんでした。'; $lang['import_downloadfailures'] = '修正用に失敗を CSVファイルとしてダウンロードする。'; +$lang['addUser_error_missing_pass'] = 'パスワードを設定するかパスワードの自動生成できるようにユーザーへの通知を有効にして下さい。'; +$lang['addUser_error_pass_not_identical'] = '入力されたパスワードは同一ではありません。'; +$lang['addUser_error_modPass_disabled'] = 'パスワードの変更は現在無効になっています。'; +$lang['addUser_error_name_missing'] = '新規ユーザーのフルネームを入力してください。'; +$lang['addUser_error_modName_disabled'] = 'フルネームの変更は現在無効になっています。'; +$lang['addUser_error_mail_missing'] = '新規ユーザーのメールアドレスを入力してください。'; +$lang['addUser_error_modMail_disabled'] = 'メールアドレスの変更は現在無効になっています。'; +$lang['addUser_error_create_event_failed'] = 'プラグインが新規ユーザーの追加を抑止しました。詳細については、他のメッセージで確認できます。'; diff --git a/lib/plugins/usermanager/lang/ko/import.txt b/lib/plugins/usermanager/lang/ko/import.txt index 6d077dfb8..b5801e662 100644 --- a/lib/plugins/usermanager/lang/ko/import.txt +++ b/lib/plugins/usermanager/lang/ko/import.txt @@ -1,9 +1,9 @@ ===== 대량 사용자 가져오기 ===== 적어도 열 네 개가 있는 사용자의 CSV 파일이 필요합니다. -열은 다음과 같이 포함해야 합니다: 사용자 id, 실명, 이메일 주소와 그룹. +열은 다음과 같이 포함해야 합니다: 사용자 ID, 실명, 이메일 주소와 그룹. CSV 필드는 인용 부호(%%""%%)로 쉼표(,)와 구분된 문자열로 구분해야 합니다. 백슬래시(\)는 탈출에 사용할 수 있습니다. 적절한 파일의 예를 들어, 위의 "사용자 목록 내보내기"를 시도하세요. -중복된 사용자 id는 무시됩니다. +중복된 사용자 ID는 무시됩니다. 비밀번호는 생성되고 각 성공적으로 가져온 사용자에게 이메일로 보내집니다.
\ No newline at end of file diff --git a/lib/plugins/usermanager/lang/ko/lang.php b/lib/plugins/usermanager/lang/ko/lang.php index ec55d5586..5f92d643f 100644 --- a/lib/plugins/usermanager/lang/ko/lang.php +++ b/lib/plugins/usermanager/lang/ko/lang.php @@ -11,6 +11,7 @@ * @author Myeongjin <aranet100@gmail.com> * @author Gerrit Uitslag <klapinklapin@gmail.com> * @author Garam <rowain8@gmail.com> + * @author Erial <erial2@gmail.com> */ $lang['menu'] = '사용자 관리자'; $lang['noauth'] = '(사용자 인증을 사용할 수 없습니다)'; @@ -49,7 +50,7 @@ $lang['start'] = '시작'; $lang['prev'] = '이전'; $lang['next'] = '다음'; $lang['last'] = '마지막'; -$lang['edit_usermissing'] = '선택된 사용자를 찾을 수 없습니다. 사용자 이름이 삭제되거나 바뀌었을 수도 있습니다.'; +$lang['edit_usermissing'] = '선택된 사용자를 찾을 수 없습니다, 사용자 이름이 삭제되거나 바뀌었을 수도 있습니다.'; $lang['user_notify'] = '사용자에게 알림'; $lang['note_notify'] = '사용자에게 새로운 비밀번호를 준 경우에만 알림 이메일이 보내집니다.'; $lang['note_group'] = '새로운 사용자는 어떤 그룹도 설정하지 않은 경우에 기본 그룹(%s)에 추가됩니다.'; @@ -63,11 +64,19 @@ $lang['import_header'] = '가장 최근 가져오기 - 실패'; $lang['import_success_count'] = '사용자 가져오기: 사용자 %d명을 찾았고, %d명을 성공적으로 가져왔습니다.'; $lang['import_failure_count'] = '사용자 가져오기: %d명을 가져오지 못했습니다. 실패는 아래에 나타나 있습니다.'; $lang['import_error_fields'] = '충분하지 않은 필드로, %d개를 찾았고, 4개가 필요합니다.'; -$lang['import_error_baduserid'] = '사용자 id 없음'; +$lang['import_error_baduserid'] = '사용자 ID 없음'; $lang['import_error_badname'] = '잘못된 이름'; $lang['import_error_badmail'] = '잘못된 이메일 주소'; -$lang['import_error_upload'] = '가져오기를 실패했습니다. csv 파일을 올릴 수 없거나 비어 있습니다.'; +$lang['import_error_upload'] = '가져오기를 실패했습니다. CSV 파일을 올릴 수 없거나 비어 있습니다.'; $lang['import_error_readfail'] = '가져오기를 실패했습니다. 올린 파일을 읽을 수 없습니다.'; $lang['import_error_create'] = '사용자를 만들 수 없습니다'; $lang['import_notify_fail'] = '알림 메시지를 가져온 %s (이메일: %s) 사용자에게 보낼 수 없습니다.'; $lang['import_downloadfailures'] = '교정을 위한 CSV로 다운로드 실패'; +$lang['addUser_error_missing_pass'] = '비밀번호를 설정하거나 비밀번호 생성을 활성화하려면 사용자 알림을 활성화해주시기 바랍니다.'; +$lang['addUser_error_pass_not_identical'] = '입력된 비밀번호가 일치하지 않습니다.'; +$lang['addUser_error_modPass_disabled'] = '비밀번호를 수정하는 것은 현재 비활성화되어 있습니다.'; +$lang['addUser_error_name_missing'] = '새 사용자의 이름을 입력하세요.'; +$lang['addUser_error_modName_disabled'] = '이름을 수정하는 것은 현재 비활성화되어 있습니다.'; +$lang['addUser_error_mail_missing'] = '새 사용자의 이메일 주소를 입력하세요.'; +$lang['addUser_error_modMail_disabled'] = '이메일 주소를 수정하는 것은 현재 비활성화되어 있습니다.'; +$lang['addUser_error_create_event_failed'] = '플러그인이 새 사용자가 추가되는 것을 막았습니다. 자세한 정보에 대해서는 가능한 다른 메시지를 검토하세요.'; diff --git a/lib/plugins/usermanager/lang/nl/lang.php b/lib/plugins/usermanager/lang/nl/lang.php index 3f9902e14..ea85d0f7b 100644 --- a/lib/plugins/usermanager/lang/nl/lang.php +++ b/lib/plugins/usermanager/lang/nl/lang.php @@ -16,6 +16,7 @@ * @author Ricardo Guijt <ricardoguijt@gmail.com> * @author Gerrit Uitslag <klapinklapin@gmail.com> * @author Rene <wllywlnt@yahoo.com> + * @author Wesley de Weerd <wesleytiel@gmail.com> */ $lang['menu'] = 'Gebruikersbeheer'; $lang['noauth'] = '(gebruikersauthenticatie niet beschikbaar)'; @@ -76,3 +77,11 @@ $lang['import_error_readfail'] = 'Importeren mislukt. Lezen van het geüploade b $lang['import_error_create'] = 'Aanmaken van de gebruiker was niet mogelijk.'; $lang['import_notify_fail'] = 'Notificatiebericht kon niet naar de geïmporteerde gebruiker worden verstuurd, %s met e-mail %s.'; $lang['import_downloadfailures'] = 'Download de gevonden fouten als CSV voor correctie'; +$lang['addUser_error_missing_pass'] = 'Vul een wachtwoord in of activeer de gebruikers notificatie om een wachtwoord te genereren.'; +$lang['addUser_error_pass_not_identical'] = 'De ingevulde wachtwoorden komen niet overeen'; +$lang['addUser_error_modPass_disabled'] = 'Het aanpassen van wachtwoorden is momenteel uitgeschakeld'; +$lang['addUser_error_name_missing'] = 'Vul een naam in voor de nieuwe gebruiker'; +$lang['addUser_error_modName_disabled'] = 'Het aanpassen van namen is momenteel uitgeschakeld'; +$lang['addUser_error_mail_missing'] = 'Vul een email adres in voor de nieuwe gebruiker'; +$lang['addUser_error_modMail_disabled'] = 'Het aanpassen van uw email adres is momenteel uitgeschakeld'; +$lang['addUser_error_create_event_failed'] = 'Een plugin heeft voorkomen dat de nieuwe gebruiker wordt toegevoegd . Bekijk mogelijke andere berichten voor meer informatie.'; diff --git a/lib/plugins/usermanager/lang/pt-br/lang.php b/lib/plugins/usermanager/lang/pt-br/lang.php index 356d139eb..425424711 100644 --- a/lib/plugins/usermanager/lang/pt-br/lang.php +++ b/lib/plugins/usermanager/lang/pt-br/lang.php @@ -21,6 +21,8 @@ * @author Leone Lisboa Magevski <leone1983@gmail.com> * @author Dário Estevão <darioems@gmail.com> * @author Juliano Marconi Lanigra <juliano.marconi@gmail.com> + * @author Guilherme Cardoso <guicardoso@gmail.com> + * @author Viliam Dias <viliamjr@gmail.com> */ $lang['menu'] = 'Gerenciamento de Usuários'; $lang['noauth'] = '(o gerenciamento de usuários não está disponível)'; @@ -81,3 +83,11 @@ $lang['import_error_readfail'] = 'Falha na Importação: Habilitar para ler o ar $lang['import_error_create'] = 'Habilitar para criar o usuário.'; $lang['import_notify_fail'] = 'Mensagem de notificação não pode ser enviada para o usuário importado, %s com email %s.'; $lang['import_downloadfailures'] = 'Falhas no Download como CSV para correção'; +$lang['addUser_error_missing_pass'] = 'Por favor coloque uma senha ou ative as notificações do usuário para habilitar a geração de senhas.'; +$lang['addUser_error_pass_not_identical'] = 'As senhas fornecidas não são idênticas.'; +$lang['addUser_error_modPass_disabled'] = 'A alteração de senhas está atualmente desabilitada.'; +$lang['addUser_error_name_missing'] = 'Por favor entre com um nome para o novo usuário.'; +$lang['addUser_error_modName_disabled'] = 'Alteração de nomes está desabilitada no momento.'; +$lang['addUser_error_mail_missing'] = 'Por favor entre com um endereço de e-mail para o novo usuário.'; +$lang['addUser_error_modMail_disabled'] = 'Alteração de endereço de e-mail está desabilitada no momento.'; +$lang['addUser_error_create_event_failed'] = 'Uma extensão impediu que um novo usuário seja adicionado. Reveja outras mensagens para mais informações.'; diff --git a/lib/plugins/usermanager/lang/pt/lang.php b/lib/plugins/usermanager/lang/pt/lang.php index a0b70d2d9..86885e415 100644 --- a/lib/plugins/usermanager/lang/pt/lang.php +++ b/lib/plugins/usermanager/lang/pt/lang.php @@ -11,6 +11,7 @@ * @author Guido Salatino <guidorafael23@gmail.com> * @author Romulo Pereira <romuloccomp@gmail.com> * @author Paulo Carmino <contato@paulocarmino.com> + * @author Alfredo Silva <alfredo.silva@sky.com> */ $lang['menu'] = 'Gestor de Perfis'; $lang['noauth'] = '(autenticação indisponível)'; diff --git a/lib/plugins/usermanager/lang/ru/lang.php b/lib/plugins/usermanager/lang/ru/lang.php index de650d681..ca39b8795 100644 --- a/lib/plugins/usermanager/lang/ru/lang.php +++ b/lib/plugins/usermanager/lang/ru/lang.php @@ -22,6 +22,7 @@ * @author Aleksandr Selivanov <alexgearbox@yandex.ru> * @author Igor Degraf <igordegraf@gmail.com> * @author Vitaly Filatenko <kot@hacktest.net> + * @author dimsharav <dimsharav@gmail.com> */ $lang['menu'] = 'Управление пользователями'; $lang['noauth'] = '(авторизация пользователей недоступна)'; @@ -45,8 +46,8 @@ $lang['search_prompt'] = 'Искать'; $lang['clear'] = 'Сброс фильтра поиска'; $lang['filter'] = 'Фильтр'; $lang['export_all'] = 'Экспорт всех пользователей (CSV)'; -$lang['export_filtered'] = 'Экспорт пользователей с фильтрацией списка (CSV)'; -$lang['import'] = 'Импорт новых пользователей'; +$lang['export_filtered'] = 'Экспорт отфильтрованного списка пользователей (CSV)'; +$lang['import'] = 'импортировать новых пользователей'; $lang['line'] = 'Строка №'; $lang['error'] = 'Ошибка'; $lang['summary'] = 'Показаны пользователи %1$d–%2$d из %3$d найденных. Всего пользователей: %4$d.'; @@ -60,11 +61,11 @@ $lang['start'] = 'в начало'; $lang['prev'] = 'назад'; $lang['next'] = 'вперёд'; $lang['last'] = 'в конец'; -$lang['edit_usermissing'] = 'Выбранный пользователь не найден. Возможно, указанный логин был удалён или изменён извне.'; -$lang['user_notify'] = 'Сообщить пользователю'; -$lang['note_notify'] = 'Письма с уведомлением высылаются только в случае получения нового пароля.'; -$lang['note_group'] = 'Если группа не указана, новые пользователи будут добавлены в группу по умолчанию (%s).'; -$lang['note_pass'] = 'Пароль будет сгенерирован автоматически, если поле оставлено пустым и включено уведомление пользователя.'; +$lang['edit_usermissing'] = 'Выбранный пользователь не найден. Возможно, указанный логин был удалён или изменён извне.'; +$lang['user_notify'] = 'Оповестить пользователя'; +$lang['note_notify'] = 'Письма с уведомлением высылаются только в случае получения нового пароля.'; +$lang['note_group'] = 'Если группа не указана, новые пользователи будут добавлены в группу по умолчанию (%s).'; +$lang['note_pass'] = 'Пароль будет сгенерирован автоматически, если поле оставлено пустым и включено уведомление пользователя.'; $lang['add_ok'] = 'Пользователь успешно добавлен'; $lang['add_fail'] = 'Не удалось добавить пользователя'; $lang['notify_ok'] = 'Письмо с уведомлением отправлено'; @@ -72,7 +73,7 @@ $lang['notify_fail'] = 'Не удалось отправить пис $lang['import_userlistcsv'] = 'Файл со списком пользователей (CSV):'; $lang['import_header'] = 'Последний импорт — список ошибок'; $lang['import_success_count'] = 'Импорт пользователей: %d пользователей найдено, %d импортировано успешно.'; -$lang['import_failure_count'] = 'Импорт пользователей: %d не удалось. Список ошибок прочтите ниже.'; +$lang['import_failure_count'] = 'Импорт пользователей: %d не удалось. Ошибки перечислены ниже.'; $lang['import_error_fields'] = 'Не все поля заполнены. Найдено %d, а нужно: 4.'; $lang['import_error_baduserid'] = 'Отсутствует идентификатор пользователя'; $lang['import_error_badname'] = 'Имя не годится'; @@ -82,3 +83,10 @@ $lang['import_error_readfail'] = 'Импорт не удался. Невозмо $lang['import_error_create'] = 'Невозможно создать пользователя'; $lang['import_notify_fail'] = 'Оповещение не может быть отправлено импортированному пользователю %s по электронной почте %s.'; $lang['import_downloadfailures'] = 'Скачать ошибки в формате CSV для исправления'; +$lang['addUser_error_missing_pass'] = 'Для возможности генерации пароля, пожалуйста, установите пароль или активируйте оповещения.'; +$lang['addUser_error_pass_not_identical'] = 'Введённые ппароли не совпадают.'; +$lang['addUser_error_modPass_disabled'] = 'Изменение пароля в настоящее время невозможно.'; +$lang['addUser_error_name_missing'] = 'Укажите имя нового пользователя.'; +$lang['addUser_error_modName_disabled'] = 'Изменение имени в настоящее время невозможно.'; +$lang['addUser_error_mail_missing'] = 'Укажите адрес эл. почты нового пользователя.'; +$lang['addUser_error_modMail_disabled'] = 'Изменение e-mail в настоящее время невозможно.'; diff --git a/lib/plugins/usermanager/lang/sk/lang.php b/lib/plugins/usermanager/lang/sk/lang.php index 535f77972..a3ae71395 100644 --- a/lib/plugins/usermanager/lang/sk/lang.php +++ b/lib/plugins/usermanager/lang/sk/lang.php @@ -40,7 +40,7 @@ $lang['delete_ok'] = '%d užívateľov zmazaných'; $lang['delete_fail'] = '%d chýb vymazania.'; $lang['update_ok'] = 'Užívateľ úspešne zmenený'; $lang['update_fail'] = 'Chyba zmeny užívateľa'; -$lang['update_exists'] = 'Chyba zmeny užívateľa, užívateľské meno (%s) už existuje (iné zmeny budú zaznamenané).'; +$lang['update_exists'] = 'Chyba zmeny mena používateľa, používateľské meno (%s) už existuje (iné zmeny budú zaznamenané).'; $lang['start'] = 'prvé'; $lang['prev'] = 'predošlé'; $lang['next'] = 'ďalšie'; diff --git a/lib/plugins/usermanager/lang/zh/lang.php b/lib/plugins/usermanager/lang/zh/lang.php index b833c6ce4..69d0c8189 100644 --- a/lib/plugins/usermanager/lang/zh/lang.php +++ b/lib/plugins/usermanager/lang/zh/lang.php @@ -18,6 +18,7 @@ * @author Rachel <rzhang0802@gmail.com> * @author Yangyu Huang <yangyu.huang@gmail.com> * @author oott123 <ip.192.168.1.1@qq.com> + * @author Garfield <garfield_550@outlook.com> */ $lang['menu'] = '用户管理器'; $lang['noauth'] = '(用户认证不可用)'; @@ -78,3 +79,11 @@ $lang['import_error_readfail'] = '导入失败。无法读取上传的文件。' $lang['import_error_create'] = '不能创建新用户'; $lang['import_notify_fail'] = '通知消息无法发送到导入的用户 %s,电子邮件地址是 %s。'; $lang['import_downloadfailures'] = '下载CSV的错误信息以修正。'; +$lang['addUser_error_missing_pass'] = '请设置一个密码或者激活用户通知来启用密码生成。'; +$lang['addUser_error_pass_not_identical'] = '输入的密码不相同。'; +$lang['addUser_error_modPass_disabled'] = '修改密码已禁用'; +$lang['addUser_error_name_missing'] = '请为新用户输入一个名字。'; +$lang['addUser_error_modName_disabled'] = '修改名字已禁用'; +$lang['addUser_error_mail_missing'] = '请为新用户输入一个电子邮件地址。'; +$lang['addUser_error_modMail_disabled'] = '修改邮件地址已禁用'; +$lang['addUser_error_create_event_failed'] = '一个插件阻止了添加新用户。请查看其它可能的消息来获取更多信息。'; diff --git a/lib/scripts/media.js b/lib/scripts/media.js index 2995addfd..dc0191d49 100644 --- a/lib/scripts/media.js +++ b/lib/scripts/media.js @@ -214,14 +214,12 @@ var dw_mediamanager = { * @author Pierre Spring <pierre.spring@caillou.ch> */ insert: function (id) { - var opts, alignleft, alignright, edid, s; + var opts, cb, edid, s; // set syntax options dw_mediamanager.$popup.dialog('close'); opts = ''; - alignleft = ''; - alignright = ''; if ({img: 1, swf: 1}[dw_mediamanager.ext] === 1) { @@ -254,16 +252,14 @@ var dw_mediamanager = { } } } - if (dw_mediamanager.align !== '1') { - alignleft = dw_mediamanager.align === '2' ? '' : ' '; - alignright = dw_mediamanager.align === '4' ? '' : ' '; - } } } edid = String.prototype.match.call(document.location, /&edid=([^&]+)/); - opener.insertTags(edid ? edid[1] : 'wiki__text', - '{{'+alignleft+id+opts+alignright+'|','}}',''); + edid = edid ? edid[1] : 'wiki__text'; + cb = String.prototype.match.call(document.location, /&onselect=([^&]+)/); + cb = cb ? cb[1].replace(/[^\w]+/, '') : 'dw_mediamanager_item_select'; + opener[cb](edid, id, opts, dw_mediamanager.align); if(!dw_mediamanager.keepopen) { window.close(); } @@ -271,6 +267,8 @@ var dw_mediamanager = { return false; }, + + /** * Prefills the wikiname. * @@ -921,4 +919,25 @@ var dw_mediamanager = { } }; +/** + * Default implementation for the media manager's select action + * + * Can be overriden with the onselect URL parameter. Is called on the opener context + * + * @param {string} edid + * @param {string} mediaid + * @param {string} opts + * @param {string} align [none, left, center, right] + */ +function dw_mediamanager_item_select(edid, mediaid, opts, align) { + var alignleft = ''; + var alignright = ''; + if (align !== '1') { + alignleft = align === '2' ? '' : ' '; + alignright = align === '4' ? '' : ' '; + } + + insertTags(edid, '{{' + alignleft + mediaid + opts + alignright + '|', '}}', ''); +} + jQuery(dw_mediamanager.init); diff --git a/lib/scripts/qsearch.js b/lib/scripts/qsearch.js index 95c632e45..56cf8df25 100644 --- a/lib/scripts/qsearch.js +++ b/lib/scripts/qsearch.js @@ -45,6 +45,7 @@ jQuery.fn.dw_qsearch = function (overrides) { dw_qsearch.clear_results(); return; } + dw_qsearch.$inObj.parents('form').addClass('searching'); dw_qsearch.curRequest = jQuery.post( DOKU_BASE + 'lib/exe/ajax.php', { @@ -81,6 +82,7 @@ jQuery.fn.dw_qsearch = function (overrides) { * Empty and hide the output div */ clear_results: function () { + dw_qsearch.$inObj.parents('form').removeClass('searching'); dw_qsearch.$outObj.hide(); dw_qsearch.$outObj.text(''); }, @@ -95,6 +97,7 @@ jQuery.fn.dw_qsearch = function (overrides) { */ onCompletion: function (data) { var max, $links, too_big; + dw_qsearch.$inObj.parents('form').removeClass('searching'); dw_qsearch.curRequest = null; diff --git a/lib/tpl/dokuwiki/css/_tabs.css b/lib/tpl/dokuwiki/css/_tabs.css index 860545a27..c4576c5ab 100644 --- a/lib/tpl/dokuwiki/css/_tabs.css +++ b/lib/tpl/dokuwiki/css/_tabs.css @@ -67,6 +67,7 @@ .dokuwiki ul.tabs li a:hover, .dokuwiki ul.tabs li a:active, .dokuwiki ul.tabs li a:focus, +.dokuwiki ul.tabs li.active a, .dokuwiki ul.tabs li strong { background-color: @ini_background_alt; color: @ini_text; @@ -76,6 +77,8 @@ .dokuwiki .tabs > ul li .curid a, .dokuwiki .tabs > ul li .active a, +.dokuwiki .tabs > ul li .active a, +.dokuwiki ul.tabs li.active a, .dokuwiki ul.tabs li strong { z-index: 2; border-bottom-color: @ini_background_alt; diff --git a/lib/tpl/dokuwiki/lang/cs/lang.php b/lib/tpl/dokuwiki/lang/cs/lang.php index 0f03ba491..6599c73cb 100644 --- a/lib/tpl/dokuwiki/lang/cs/lang.php +++ b/lib/tpl/dokuwiki/lang/cs/lang.php @@ -5,6 +5,11 @@ * * @author Jaroslav Lichtblau <jlichtblau@seznam.cz> */ +$lang['__background_site__'] = 'Barva hlavního pozadí (pod kontextovým boxem)'; $lang['__link__'] = 'Hlavní barva odkazů'; $lang['__existing__'] = 'Barva odkazů na existující stránky'; $lang['__missing__'] = 'Barva odkazů na neexistující stránky'; +$lang['__site_width__'] = 'Šířka plné stránky (jakákoliv jednotka délky: %, px, em, ...)'; +$lang['__sidebar_width__'] = 'Šířka postranního panelu, pokud je použit (jakákoliv jednotka délky: %, px, em, ...)'; +$lang['__tablet_width__'] = 'Přepnout stránku do módu pro tablet pro velikost obrazovky menší než'; +$lang['__phone_width__'] = 'Přepnout stránku do módu pro telefon pro velikost obrazovky menší než'; diff --git a/lib/tpl/dokuwiki/lang/cs/style.txt b/lib/tpl/dokuwiki/lang/cs/style.txt new file mode 100644 index 000000000..e2ebe22b3 --- /dev/null +++ b/lib/tpl/dokuwiki/lang/cs/style.txt @@ -0,0 +1,2 @@ +Pokud chcete upravit logo, jednoduše použijte Media Manager pro nahrání obrázku "logo.png" do kořenového jmenného prostoru "wiki" a ten bude poté použit jako logo. Můžete nahrát také ikonu "favicon.ico". +Pokud používáte neveřejnou wiki, doporučujeme udělit plná práva pro čtení prostoru "wiki" (nebo root) v nastavení ACL, jinak nebude vlastní logo zobrazeno nepřihlášeným uživatelům.
\ No newline at end of file diff --git a/lib/tpl/dokuwiki/lang/cy/lang.php b/lib/tpl/dokuwiki/lang/cy/lang.php new file mode 100644 index 000000000..860ce8f15 --- /dev/null +++ b/lib/tpl/dokuwiki/lang/cy/lang.php @@ -0,0 +1,12 @@ +<?php + +// style.ini values + +$lang['__background_site__'] = 'Lliw am y cefndir (tu ôl y blwch cynnwys)'; +$lang['__link__'] = 'Lliw dolenni cyffredinol'; +$lang['__existing__'] = 'Lliw dolenni i dudalennau sy\'n bodoli'; +$lang['__missing__'] = 'Lliw dolenni i dudalennau sy ddim yn bodoli'; +$lang['__site_width__'] = 'Lled y safle cyfan (unrhyw uned: %, px, em, ...)'; +$lang['__sidebar_width__'] = 'Lled y bar ochr, os oes un (unrhyw uned: %, px, em, ...)'; +$lang['__tablet_width__'] = 'O dan y lled sgrin hwn, bydd y safle yn newid i fodd tabled'; +$lang['__phone_width__'] = 'O dan y lled sgrin hwn, bydd y safle yn newid i fodd ffôn'; diff --git a/lib/tpl/dokuwiki/lang/cy/style.txt b/lib/tpl/dokuwiki/lang/cy/style.txt new file mode 100644 index 000000000..ce87798a0 --- /dev/null +++ b/lib/tpl/dokuwiki/lang/cy/style.txt @@ -0,0 +1,4 @@ +Os ydych chi am newid y logo, defnyddiwch y Rheolwr Cyfrwng i lanlwytho ''logo.png'' i ''wici'' neu wraidd y namespace +a chaiff ei ddefnyddio'n awtomatig. Gallwch chi hefyd lanlwytho ''favicon.ico'' yna. Os ydych chi'n defnyddio +wici caeedig, awgrymwyd eich bod chi'n gwneud y ''wici'' (new wraidd) y namespace yn ddarllenadwy i bawb yn y +gosodiadau ACL neu na chaiff eich logo chi ei weld gan ddefnyddwyr sydd heb fewngofnodi. diff --git a/lib/tpl/dokuwiki/lang/fa/lang.php b/lib/tpl/dokuwiki/lang/fa/lang.php new file mode 100644 index 000000000..cb2e95ee4 --- /dev/null +++ b/lib/tpl/dokuwiki/lang/fa/lang.php @@ -0,0 +1,15 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Masoud Sadrnezhaad <masoud@sadrnezhaad.ir> + */ +$lang['__background_site__'] = 'رنگ پسزمینه (پشت جعبهٔ متن)'; +$lang['__link__'] = 'رنگ لینک معمول'; +$lang['__existing__'] = 'رنگ برای لینک به صفحات موجود'; +$lang['__missing__'] = 'رنگ برای لینک به صفحات ناموجود'; +$lang['__site_width__'] = 'عرض کل سایت (از واحدهای طول شامل % یا px یا em و ... میشود استفاده کرد)'; +$lang['__sidebar_width__'] = 'عرض نوار کناری درصورت وجود (از واحدهای طول شامل % یا px یا em و ... میشود استفاده کرد)'; +$lang['__tablet_width__'] = 'در پایین اندازههای صفحه با این عرض وقتی که در تبلت باز میشود'; +$lang['__phone_width__'] = 'در پایین اندازههای صفحه با این عرض وقتی که در تلفن موبایل باز میشود'; diff --git a/lib/tpl/dokuwiki/lang/fa/style.txt b/lib/tpl/dokuwiki/lang/fa/style.txt new file mode 100644 index 000000000..f9009fd08 --- /dev/null +++ b/lib/tpl/dokuwiki/lang/fa/style.txt @@ -0,0 +1 @@ +اگر میخواهید یک لوگو تنظیم کنید، به راحتی مدیریت رسانهها را باز کنید و یک تصویر با نام ''logo.png'' در فضای نام اصلی یا ''wiki'' آپلود کنید. سپس لوگو به صورت اتوماتیک مورد استفاده قرار میگیرد. همچنین میتوانید یک ''favicon.ico'' در آنجا آپلود کنید. اگر از ویکی بسته استفاده میکنید پیشنهاد میشود که فضای نام ویکی (یا اصلی) در تنظیمات خواندنی به همه باشد یا درغیر اینصورت لوگو به کاربرانی که وارد نشده باشند نمایش داده نمیشود.
\ No newline at end of file diff --git a/lib/tpl/dokuwiki/lang/ru/style.txt b/lib/tpl/dokuwiki/lang/ru/style.txt index 94f0a5d0d..43bdcd162 100644 --- a/lib/tpl/dokuwiki/lang/ru/style.txt +++ b/lib/tpl/dokuwiki/lang/ru/style.txt @@ -1 +1 @@ -Если вы хотите изменить логотип, просто используйте «Управление медиафайлами» для загрузки файла logo.png в корневое пространство имён или wiki, и тогда он будет использоваться автоматически. Туда же вы можете загрузить favicon.ico. Если у вас «закрытая» вики, рекомендуется указать права на «чтение» в списках контроля доступа для пространства имён wiki (или корневое), иначе логотип не будет показываться незалогинившимся пользователям.
\ No newline at end of file +Если вы хотите изменить логотип, просто используйте «Управление медиафайлами» для загрузки файла ''logo.png'' в корневое пространство имён или ''wiki'', и тогда он будет использоваться автоматически. Туда же вы можете загрузить ''favicon.ico''. Если у вас «закрытая» вики, рекомендуется указать права на «чтение» в списках контроля доступа для пространства имён ''wiki'' (или корневое), иначе логотип не будет показываться незалогинившимся пользователям.
\ No newline at end of file |