From f05a1cc5fcdb4c2b6ee3cbf499f980f800dbd105 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Thu, 17 Oct 2013 23:11:33 +0200 Subject: Wrap thead around 1st row, when 1st cell at 1st row is tableheader. Implements FS#1764 --- _test/tests/inc/parser/parser_table.test.php | 51 ++++++++++++++++++++++++++++ inc/parser/handler.php | 19 +++++++++-- inc/parser/renderer.php | 4 +++ inc/parser/xhtml.php | 8 +++++ 4 files changed, 80 insertions(+), 2 deletions(-) diff --git a/_test/tests/inc/parser/parser_table.test.php b/_test/tests/inc/parser/parser_table.test.php index 542a307b8..5258afe3d 100644 --- a/_test/tests/inc/parser/parser_table.test.php +++ b/_test/tests/inc/parser/parser_table.test.php @@ -125,6 +125,7 @@ def'); array('cdata',array("\n\nabc")), array('p_close',array()), array('table_open',array(3, 1, 6)), + array('tablethead_open',array()), array('tablerow_open',array()), array('tableheader_open',array(1,NULL,1)), array('cdata',array(' X ')), @@ -136,6 +137,7 @@ def'); array('cdata',array(' Z ')), array('tableheader_close',array()), array('tablerow_close',array()), + array('tablethead_close',array()), array('table_close',array(19)), array('p_open',array()), array('cdata',array('def')), @@ -146,6 +148,55 @@ def'); $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); } + + function testTableHeadersMultilines() { + $this->P->addMode('table',new Doku_Parser_Mode_Table()); + $this->P->parse(' +abc +^ X | Y ^ Z | +| A | B | C | +def'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n\nabc")), + array('p_close',array()), + array('table_open',array(3, 2, 6)), + array('tablethead_open',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X ')), + array('tableheader_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' Y ')), + array('tablecell_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablethead_close',array()), + array('tablerow_open',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' A ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' B ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' C ')), + array('tablecell_close',array()), + array('tablerow_close',array()), + array('table_close',array(33)), + array('p_open',array()), + array('cdata',array('def')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + + } function testCellAlignment() { $this->P->addMode('table',new Doku_Parser_Mode_Table()); diff --git a/inc/parser/handler.php b/inc/parser/handler.php index 1de981b48..55f344994 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -1278,6 +1278,7 @@ class Doku_Handler_Table { $lastRow = 0; $lastCell = 0; + $isThead = false; $cellKey = array(); $toDelete = array(); @@ -1292,6 +1293,14 @@ class Doku_Handler_Table { $lastRow++; $lastCell = 0; + + if($lastRow === 1 && $this->tableCalls[$key+1][0] == 'tableheader_open') { + $isThead = true; + + array_splice($this->tableCalls, $key, 0, array( + array('tablethead_open', array(), $call[2]))); + $key += 1; + } break; case 'tablecell_open': @@ -1396,6 +1405,12 @@ class Doku_Handler_Table { $key += 3; } + if($isThead) { + array_splice($this->tableCalls, $key+1, 0, array( + array('tablethead_close', array(), $call[2]))); + + $isThead = false; + } break; } @@ -1437,7 +1452,7 @@ class Doku_Handler_Block { var $blockOpen = array( 'header', 'listu_open','listo_open','listitem_open','listcontent_open', - 'table_open','tablerow_open','tablecell_open','tableheader_open', + 'table_open','tablerow_open','tablecell_open','tableheader_open','tablethead_open', 'quote_open', 'code','file','hr','preformatted','rss', 'htmlblock','phpblock', @@ -1447,7 +1462,7 @@ class Doku_Handler_Block { var $blockClose = array( 'header', 'listu_close','listo_close','listitem_close','listcontent_close', - 'table_close','tablerow_close','tablecell_close','tableheader_close', + 'table_close','tablerow_close','tablecell_close','tableheader_close','tablethead_close', 'quote_close', 'code','file','hr','preformatted','rss', 'htmlblock','phpblock', diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index c697e990c..ee0b2344d 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -245,6 +245,10 @@ class Doku_Renderer extends DokuWiki_Plugin { function table_close($pos = null){} + function tablethead_open(){} + + function tablethead_close(){} + function tablerow_open(){} function tablerow_close(){} diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php index fd02c0ce0..e9f2cc037 100644 --- a/inc/parser/xhtml.php +++ b/inc/parser/xhtml.php @@ -946,6 +946,14 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } } + function tablethead_open(){ + $this->doc .= DOKU_TAB . '' . DOKU_LF; + } + + function tablethead_close(){ + $this->doc .= DOKU_TAB . '' . DOKU_LF; + } + function tablerow_open(){ // initialize the cell counter used for classes $this->_counter['cell_counter'] = 0; -- cgit v1.2.3 From 9060b8b02222ada7d08f4f6b77b4dd1e125fe5a2 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Fri, 18 Oct 2013 14:34:55 +0100 Subject: add to top rows of tables when all cells are --- inc/parser/handler.php | 45 +++++++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 18 deletions(-) diff --git a/inc/parser/handler.php b/inc/parser/handler.php index 55f344994..196cafc57 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -1149,6 +1149,8 @@ class Doku_Handler_Table { var $currentCols = 0; var $firstCell = false; var $lastCellType = 'tablecell'; + var $inTableHead = true; + var $countTableHeadRows = 0; function Doku_Handler_Table(& $CallWriter) { $this->CallWriter = & $CallWriter; @@ -1219,6 +1221,9 @@ class Doku_Handler_Table { } function tableRowClose($call) { + if ($this->inTableHead) { + $this->countTableHeadRows++; + } // Strip off final cell opening and anything after it while ( $discard = array_pop($this->tableCalls ) ) { @@ -1234,6 +1239,9 @@ class Doku_Handler_Table { } function tableCell($call) { + if ($call[0] != 'tableheader') { + $this->inTableHead = false; + } if ( !$this->firstCell ) { // Increase the span @@ -1278,7 +1286,6 @@ class Doku_Handler_Table { $lastRow = 0; $lastCell = 0; - $isThead = false; $cellKey = array(); $toDelete = array(); @@ -1289,18 +1296,18 @@ class Doku_Handler_Table { $call = $this->tableCalls[$key]; switch ($call[0]) { + case 'table_open' : + if($this->countTableHeadRows) { + array_splice($this->tableCalls, $key+1, 0, array( + array('tablethead_open', array(), $call[2])) + ); + } + break; + case 'tablerow_open': $lastRow++; $lastCell = 0; - - if($lastRow === 1 && $this->tableCalls[$key+1][0] == 'tableheader_open') { - $isThead = true; - - array_splice($this->tableCalls, $key, 0, array( - array('tablethead_open', array(), $call[2]))); - $key += 1; - } break; case 'tablecell_open': @@ -1366,15 +1373,19 @@ class Doku_Handler_Table { } else { $spanning_cell = null; - for($i = $lastRow-1; $i > 0; $i--) { - if ( $this->tableCalls[$cellKey[$i][$lastCell]][0] == 'tablecell_open' || $this->tableCalls[$cellKey[$i][$lastCell]][0] == 'tableheader_open' ) { + // can't cross thead/tbody boundary + if (!$this->countTableHeadRows || ($lastRow-1 != $this->countTableHeadRows)) { + for($i = $lastRow-1; $i > 0; $i--) { - if ($this->tableCalls[$cellKey[$i][$lastCell]][1][2] >= $lastRow - $i) { - $spanning_cell = $i; - break; - } + if ( $this->tableCalls[$cellKey[$i][$lastCell]][0] == 'tablecell_open' || $this->tableCalls[$cellKey[$i][$lastCell]][0] == 'tableheader_open' ) { + if ($this->tableCalls[$cellKey[$i][$lastCell]][1][2] >= $lastRow - $i) { + $spanning_cell = $i; + break; + } + + } } } if (is_null($spanning_cell)) { @@ -1405,11 +1416,9 @@ class Doku_Handler_Table { $key += 3; } - if($isThead) { + if($this->countTableHeadRows == $lastRow) { array_splice($this->tableCalls, $key+1, 0, array( array('tablethead_close', array(), $call[2]))); - - $isThead = false; } break; -- cgit v1.2.3 From 688ce8d8ab7995792e25b09b8481dc04c8363aab Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Fri, 18 Oct 2013 14:38:10 +0100 Subject: update tests for use with changes --- _test/tests/inc/parser/parser_table.test.php | 195 +++++++++++++++++++++++++-- 1 file changed, 183 insertions(+), 12 deletions(-) diff --git a/_test/tests/inc/parser/parser_table.test.php b/_test/tests/inc/parser/parser_table.test.php index 5258afe3d..6961d568c 100644 --- a/_test/tests/inc/parser/parser_table.test.php +++ b/_test/tests/inc/parser/parser_table.test.php @@ -125,7 +125,6 @@ def'); array('cdata',array("\n\nabc")), array('p_close',array()), array('table_open',array(3, 1, 6)), - array('tablethead_open',array()), array('tablerow_open',array()), array('tableheader_open',array(1,NULL,1)), array('cdata',array(' X ')), @@ -137,7 +136,6 @@ def'); array('cdata',array(' Z ')), array('tableheader_close',array()), array('tablerow_close',array()), - array('tablethead_close',array()), array('table_close',array(19)), array('p_open',array()), array('cdata',array('def')), @@ -145,16 +143,15 @@ def'); array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } - function testTableHeadersMultilines() { + function testTableHead() { $this->P->addMode('table',new Doku_Parser_Mode_Table()); $this->P->parse(' abc -^ X | Y ^ Z | -| A | B | C | +^ X ^ Y ^ Z ^ def'); $calls = array ( @@ -162,20 +159,70 @@ def'); array('p_open',array()), array('cdata',array("\n\nabc")), array('p_close',array()), - array('table_open',array(3, 2, 6)), + array('table_open',array(3, 1, 6)), array('tablethead_open',array()), array('tablerow_open',array()), array('tableheader_open',array(1,NULL,1)), array('cdata',array(' X ')), array('tableheader_close',array()), - array('tablecell_open',array(1,NULL,1)), + array('tableheader_open',array(1,NULL,1)), array('cdata',array(' Y ')), - array('tablecell_close',array()), + array('tableheader_close',array()), array('tableheader_open',array(1,NULL,1)), array('cdata',array(' Z ')), array('tableheader_close',array()), array('tablerow_close',array()), array('tablethead_close',array()), + array('table_close',array(19)), + array('p_open',array()), + array('cdata',array('def')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); + + } + + function testTableHeadMultiline() { + $this->P->addMode('table',new Doku_Parser_Mode_Table()); + $this->P->parse(' +abc +^ X1 ^ Y1 ^ Z1 ^ +^ X2 ^ Y2 ^ Z2 ^ +| A | B | C | +def'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n\nabc")), + array('p_close',array()), + array('table_open',array(3, 3, 6)), + array('tablethead_open',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Y1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z1 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X2 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Y2 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z2 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablethead_close',array()), array('tablerow_open',array()), array('tablecell_open',array(1,NULL,1)), array('cdata',array(' A ')), @@ -187,14 +234,14 @@ def'); array('cdata',array(' C ')), array('tablecell_close',array()), array('tablerow_close',array()), - array('table_close',array(33)), + array('table_close',array(53)), array('p_open',array()), array('cdata',array('def')), array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } @@ -380,6 +427,131 @@ def'); $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); } + function testRowSpanTableHead() { + $this->P->addMode('table',new Doku_Parser_Mode_Table()); + $this->P->parse(' +abc +^ X1 ^ Y1 ^ Z1 ^ +^ X2 ^ ::: ^ Z2 ^ +| A3 | B3 | C3 | +def'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n\nabc")), + array('p_close',array()), + array('table_open',array(3, 3, 6)), + array('tablethead_open',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,2)), + array('cdata',array(' Y1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z1 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X2 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z2 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablethead_close',array()), + array('tablerow_open',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' A3 ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' B3 ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' C3 ')), + array('tablecell_close',array()), + array('tablerow_close',array()), + array('table_close',array(57)), + array('p_open',array()), + array('cdata',array('def')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); + + } + + function testRowSpanAcrossTableHeadBoundary() { + $this->P->addMode('table',new Doku_Parser_Mode_Table()); + $this->P->parse(' +abc +^ X1 ^ Y1 ^ Z1 ^ +^ X2 ^ ::: ^ Z2 ^ +| A3 | ::: | C3 | +| A4 | ::: | C4 | +def'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n\nabc")), + array('p_close',array()), + array('table_open',array(3, 4, 6)), + array('tablethead_open',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,2)), + array('cdata',array(' Y1 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z1 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X2 ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z2 ')), + array('tableheader_close',array()), + array('tablerow_close',array()), + array('tablethead_close',array()), + array('tablerow_open',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' A3 ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,2)), + array('cdata',array('')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' C3 ')), + array('tablecell_close',array()), + array('tablerow_close',array()), + array('tablerow_open',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' A4 ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' C4 ')), + array('tablecell_close',array()), + array('tablerow_close',array()), + array('table_close',array(76)), + array('p_open',array()), + array('cdata',array('def')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); + + } + function testCellAlignmentFormatting() { $this->P->addMode('table',new Doku_Parser_Mode_Table()); $this->P->addMode('strong',new Doku_Parser_Mode_Formatting('strong')); @@ -678,4 +850,3 @@ def'); $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); } } - -- cgit v1.2.3 From e0328e30d24321e319e2733192bf829b9000c5eb Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Fri, 18 Oct 2013 14:42:46 +0100 Subject: swap order ot test parameters to match expected,actual as per documentation & test output --- _test/tests/inc/parser/parser_table.test.php | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/_test/tests/inc/parser/parser_table.test.php b/_test/tests/inc/parser/parser_table.test.php index 6961d568c..d4596bc8a 100644 --- a/_test/tests/inc/parser/parser_table.test.php +++ b/_test/tests/inc/parser/parser_table.test.php @@ -44,7 +44,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testTableWinEOL() { @@ -84,7 +84,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testEmptyTable() { @@ -109,7 +109,7 @@ def'); array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testTableHeaders() { @@ -276,7 +276,7 @@ def'); array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testCellSpan() { @@ -318,7 +318,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testCellRowSpan() { @@ -366,7 +366,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testCellRowSpanFirstRow() { @@ -424,7 +424,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testRowSpanTableHead() { @@ -588,7 +588,7 @@ def'); array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } @@ -634,7 +634,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } // This is really a failing test - formatting able to spread across cols @@ -689,7 +689,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } // This is really a failing test - unformatted able to spread across cols @@ -740,7 +740,7 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } function testTableLinebreak() { @@ -788,7 +788,7 @@ def'); array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } // This is really a failing test - footnote able to spread across cols @@ -847,6 +847,6 @@ def'); array('p_close',array()), array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); } } -- cgit v1.2.3 From d397e6da631cb6d262ad14ec7b46b75d1b60fbcf Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 15:25:18 +0000 Subject: Restore correct public interface of getUserData() for authldap plugin The outer/public getUserData() implemented as a wrapper for the previous fn which is now protected. --- lib/plugins/authldap/auth.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 6c3637e15..9d03afd7f 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -103,7 +103,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { return true; } else { // See if we can find the user - $info = $this->getUserData($user, true); + $info = $this->_getUserData($user, true); if(empty($info['dn'])) { return false; } else { @@ -145,11 +145,19 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { * @author Stephane Chazelas * @author Steffen Schoch * + * @param string $user + * @return array containing user data or false + */ + public function getUserData($user) { + return $this->_getUserData($user); + } + + /** * @param string $user * @param bool $inbind authldap specific, true if in bind phase * @return array containing user data or false */ - public function getUserData($user, $inbind = false) { + protected function _getUserData($user, $inbind = false) { global $conf; if(!$this->_openLDAP()) return false; -- cgit v1.2.3 From 2046a6546c8ed62b9a7b33305b6201458f2f8291 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 15:38:28 +0000 Subject: Allow user info to be retrieved without groups Some parts of dokuwiki (e.g. recent changes, old revisions) can requests lots of user info (to provide editor names) without requiring any group information. This change also implements caching of user info by authmysql & authpgsql plugins to avoid repeated querying of the DB to retrieve the same user information. --- inc/auth.php | 6 +- inc/common.php | 2 +- lib/plugins/auth.php | 6 +- lib/plugins/authad/auth.php | 3 +- lib/plugins/authldap/auth.php | 3 +- lib/plugins/authmysql/auth.php | 147 +++++++++++++++++++++++++++++++++++------ lib/plugins/authpgsql/auth.php | 8 ++- lib/plugins/authplain/auth.php | 3 +- 8 files changed, 147 insertions(+), 31 deletions(-) diff --git a/inc/auth.php b/inc/auth.php index 2bdc3eb00..cbdd7163b 100644 --- a/inc/auth.php +++ b/inc/auth.php @@ -922,7 +922,7 @@ function auth_sendPassword($user, $password) { if(!$auth) return false; $user = $auth->cleanUser($user); - $userinfo = $auth->getUserData($user); + $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); if(!$userinfo['mail']) return false; @@ -1184,7 +1184,7 @@ function act_resendpwd() { } $user = io_readfile($tfile); - $userinfo = $auth->getUserData($user); + $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); if(!$userinfo['mail']) { msg($lang['resendpwdnouser'], -1); return false; @@ -1236,7 +1236,7 @@ function act_resendpwd() { $user = trim($auth->cleanUser($INPUT->post->str('login'))); } - $userinfo = $auth->getUserData($user); + $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); if(!$userinfo['mail']) { msg($lang['resendpwdnouser'], -1); return false; diff --git a/inc/common.php b/inc/common.php index 9fbebde94..6851cdea3 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1467,7 +1467,7 @@ function editorinfo($username) { case 'username': case 'email': case 'email_link': - if($auth) $info = $auth->getUserData($username); + if($auth) $info = $auth->getUserData($username, DokuWiki_Auth_Plugin::IGNORE_GROUPS); break; default: return hsc($username); diff --git a/lib/plugins/auth.php b/lib/plugins/auth.php index b04735639..f9e5cded9 100644 --- a/lib/plugins/auth.php +++ b/lib/plugins/auth.php @@ -15,6 +15,9 @@ if(!defined('DOKU_INC')) die(); class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { public $success = true; + const IGNORE_GROUPS = false; + const REQUIRE_GROUPS = true; + /** * Possible things an auth backend module may be able to * do. The things a backend can do need to be set to true @@ -234,9 +237,10 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * * @author Andreas Gohr * @param string $user the user name + * @param bool $requireGroups whether or not the returned data must include groups * @return array containing user data or false */ - public function getUserData($user) { + public function getUserData($user, $requireGroups=true) { if(!$this->cando['external']) msg("no valid authorisation system in use", -1); return false; } diff --git a/lib/plugins/authad/auth.php b/lib/plugins/authad/auth.php index 0860e5756..a3119dda6 100644 --- a/lib/plugins/authad/auth.php +++ b/lib/plugins/authad/auth.php @@ -177,9 +177,10 @@ class auth_plugin_authad extends DokuWiki_Auth_Plugin { * * @author James Van Lommel * @param string $user + * @param bool $requireGroups (optional) - ignored, groups are always supplied by this plugin * @return array */ - public function getUserData($user) { + public function getUserData($user, $requireGroups=true) { global $conf; global $lang; global $ID; diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 9d03afd7f..eaa2d160a 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -146,9 +146,10 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { * @author Steffen Schoch * * @param string $user + * @param bool $requireGroups (optional) - ignored, groups are always supplied by this plugin * @return array containing user data or false */ - public function getUserData($user) { + public function getUserData($user, $requireGroups=true) { return $this->_getUserData($user); } diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index 1e6e6a4a9..774fce01f 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -21,6 +21,9 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { /** @var int database subrevision */ protected $dbsub = 0; + /** @var array cache to avoid re-reading user info data */ + protected $cacheUserInfo = array(); + /** * Constructor * @@ -174,12 +177,18 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @author Matthias Grimm * * @param string $user user login to get data for + * @param bool $requireGroups when true, group membership information should be included in the returned array; + * when false, it maybe included, but is not required by the caller * @return array|bool */ - public function getUserData($user) { + public function getUserData($user, $requireGroups=true) { + if($this->_cacheExists($user, $requireGroups)) { + return $this->cacheUserInfo[$user]; + } + if($this->_openDB()) { $this->_lockTables("READ"); - $info = $this->_getUserInfo($user); + $info = $this->_getUserInfo($user, $requireGroups); $this->_unlockTables(); $this->_closeDB(); } else @@ -262,21 +271,23 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { if($this->_openDB()) { $this->_lockTables("WRITE"); - if(($uid = $this->_getUserID($user))) { - $rc = $this->_updateUserInfo($changes, $uid); + $rc = $this->_updateUserInfo($user, $changes); - if($rc && isset($changes['grps']) && $this->cando['modGroups']) { - $groups = $this->_getGroups($user); - $grpadd = array_diff($changes['grps'], $groups); - $grpdel = array_diff($groups, $changes['grps']); + if($rc && isset($changes['grps']) && $this->cando['modGroups']) { + $groups = $this->_getGroups($user); + $grpadd = array_diff($changes['grps'], $groups); + $grpdel = array_diff($groups, $changes['grps']); - foreach($grpadd as $group) - if(($this->_addUserToGroup($user, $group, 1)) == false) - $rc = false; + foreach($grpadd as $group) { + if(($this->_addUserToGroup($user, $group, 1)) == false) { + $rc = false; + } + } - foreach($grpdel as $group) - if(($this->_delUserFromGroup($user, $group)) == false) - $rc = false; + foreach($grpdel as $group) { + if(($this->_delUserFromGroup($user, $group)) == false) { + $rc = false; + } } } @@ -466,7 +477,10 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $sql = str_replace('%{user}', $this->_escape($user), $sql); $sql = str_replace('%{gid}', $this->_escape($gid), $sql); $sql = str_replace('%{group}', $this->_escape($group), $sql); - if($this->_modifyDB($sql) !== false) return true; + if($this->_modifyDB($sql) !== false) { + $this->_flushUserInfoCache($user); + return true; + } if($newgroup) { // remove previously created group on error $sql = str_replace('%{gid}', $this->_escape($gid), $this->getConf('delGroup')); @@ -501,6 +515,10 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $sql = str_replace('%{gid}', $this->_escape($gid), $sql); $sql = str_replace('%{group}', $this->_escape($group), $sql); $rc = $this->_modifyDB($sql) == 0 ? true : false; + + if ($rc) { + $this->_flushUserInfoCache($user); + } } } return $rc; @@ -590,6 +608,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { } if($gid !== false){ + $this->_flushUserInfoCache($user); return true; } else { /* remove the new user and all group relations if a group can't @@ -626,16 +645,96 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $sql = str_replace('%{uid}', $this->_escape($uid), $this->getConf('delUser')); $sql = str_replace('%{user}', $this->_escape($user), $sql); $this->_modifyDB($sql); + $this->_flushUserInfoCache($user); + return true; + } + } + return false; + } + + /** + * Flush cached user information + * + * @author Christopher Smith + * + * @param string $user username of the user whose data is to be removed from the cache + * if null, empty the whole cache + * @return none + */ + protected function _flushUserInfoCache($user=null) { + if (is_null($user)) { + $this->cacheUserInfo = array(); + } else { + unset($this->cacheUserInfo[$user]); + } + } + + /** + * Quick lookup to see if a user's information has been cached + * + * This test does not need a database connection or read lock + * + * @author Christopher Smith + * + * @param string $user username to be looked up in the cache + * @param bool $requireGroups true, if cached info should include group memberships + * + * @return bool existence of required user information in the cache + */ + protected function _cacheExists($user, $requireGroups=true) { + if (isset($this->cacheUserInfo[$user])) { + if (!is_array($this->cacheUserInfo[$user])) { + return true; // user doesn't exist + } + + if (!$requireGroups || isset($this->cacheUserInfo[$user]['grps'])) { return true; } } + return false; } /** - * getUserInfo + * Get a user's information + * + * The database connection must already be established for this function to work. + * + * @author Christopher Smith + * + * @param string $user username of the user whose information is being reterieved + * @param bool $requireGroups true if group memberships should be included + * @param bool $useCache true if ok to return cached data & to cache returned data + * + * @return mixed false|array false if the user doesn't exist + * array containing user information if user does exist + */ + protected function _getUserInfo($user, $requireGroups=true, $useCache=true) { + $info = null; + + if ($useCache && isset($this->cacheUserInfo[$user])) { + $info = $this->cacheUserInfo[$user]; + } + + if (is_null($info)) { + $info = $this->_retrieveUserInfo($user); + } + + if ($requireGroups && $info && !isset($info['grps'])) { + $info['grps'] = $this->_getGroups($user); + } + + if ($useCache) { + $this->cacheUserInfo[$user] = $info; + } + + return $info; + } + + /** + * retrieveUserInfo * - * Gets the data for a specific user The database connection + * Gets the data for a specific user. The database connection * must already be established for this function to work. * Otherwise it will return 'false'. * @@ -644,12 +743,11 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @param string $user user's nick to get data for * @return bool|array false on error, user info on success */ - protected function _getUserInfo($user) { + protected function _retrieveUserInfo($user) { $sql = str_replace('%{user}', $this->_escape($user), $this->getConf('getUserInfo')); $result = $this->_queryDB($sql); if($result !== false && count($result)) { $info = $result[0]; - $info['grps'] = $this->_getGroups($user); return $info; } return false; @@ -666,20 +764,26 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * The database connection has already to be established for this * function to work. Otherwise it will return 'false'. * - * The password will be crypted if necessary. + * The password will be encrypted if necessary. * + * @param string $user user's nick being updated * @param array $changes array of items to change as pairs of item and value * @param mixed $uid user id of dataset to change, must be unique in DB * @return bool true on success or false on error * * @author Matthias Grimm */ - protected function _updateUserInfo($changes, $uid) { + protected function _updateUserInfo($user, $changes) { $sql = $this->getConf('updateUser')." "; $cnt = 0; $err = 0; if($this->dbcon) { + $uid = $this->_getUserID($user); + if ($uid === false) { + return false; + } + foreach($changes as $item => $value) { if($item == 'user') { if(($this->_getUserID($changes['user']))) { @@ -707,6 +811,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $sql .= " ".str_replace('%{uid}', $uid, $this->getConf('UpdateTarget')); if(get_class($this) == 'auth_mysql') $sql .= " LIMIT 1"; //some PgSQL inheritance comp. $this->_modifyDB($sql); + $this->_flushUserInfoCache($user); } return true; } diff --git a/lib/plugins/authpgsql/auth.php b/lib/plugins/authpgsql/auth.php index e51b39858..99f3ed443 100644 --- a/lib/plugins/authpgsql/auth.php +++ b/lib/plugins/authpgsql/auth.php @@ -160,7 +160,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { $result = $this->_queryDB($sql); foreach($result as $user) - if(($info = $this->_getUserInfo($user['user']))) + if(($info = $this->_getCachedUserInfo($user['user']))) $out[$user['user']] = $info; $this->_unlockTables(); @@ -212,7 +212,10 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { $sql = str_replace('%{user}', addslashes($user), $sql); $sql = str_replace('%{gid}', addslashes($gid), $sql); $sql = str_replace('%{group}', addslashes($group), $sql); - if($this->_modifyDB($sql) !== false) return true; + if($this->_modifyDB($sql) !== false) { + $this->_flushUserInfoCache($user); + return true; + } if($newgroup) { // remove previously created group on error $sql = str_replace('%{gid}', addslashes($gid), $this->conf['delGroup']); @@ -267,6 +270,7 @@ class auth_plugin_authpgsql extends auth_plugin_authmysql { } if($gid !== false){ + $this->_flushUserInfoCache($user); return true; } else { /* remove the new user and all group relations if a group can't diff --git a/lib/plugins/authplain/auth.php b/lib/plugins/authplain/auth.php index 8c4ce0dd9..16ecaa147 100644 --- a/lib/plugins/authplain/auth.php +++ b/lib/plugins/authplain/auth.php @@ -76,9 +76,10 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { * * @author Andreas Gohr * @param string $user + * @param bool $requireGroups (optional) ignored by this plugin, grps info always supplied * @return array|bool */ - public function getUserData($user) { + public function getUserData($user, $requireGroups=true) { if($this->users === null) $this->_loadUserData(); return isset($this->users[$user]) ? $this->users[$user] : false; } -- cgit v1.2.3 From 3fb3173756af152604d5d7bb3f1713a95eab5b52 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 17:56:55 +0000 Subject: code styling - add missing braces --- lib/plugins/authmysql/auth.php | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index 774fce01f..a5300c604 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -160,10 +160,11 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $result = $this->_queryDB($sql); if($result !== false && count($result) == 1) { - if($this->getConf('forwardClearPass') == 1) + if($this->getConf('forwardClearPass') == 1) { $rc = true; - else + } else { $rc = auth_verifyPassword($pass, $result[0]['pass']); + } } $this->_closeDB(); } @@ -191,8 +192,9 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $info = $this->_getUserInfo($user, $requireGroups); $this->_unlockTables(); $this->_closeDB(); - } else + } else { $info = false; + } return $info; } @@ -218,12 +220,14 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { global $conf; if($this->_openDB()) { - if(($info = $this->_getUserInfo($user)) !== false) + if(($info = $this->_getUserInfo($user)) !== false) { return false; // user already exists + } // set defaultgroup if no groups were given - if($grps == null) + if($grps == null) { $grps = array($conf['defaultgroup']); + } $this->_lockTables("WRITE"); $pwd = $this->getConf('forwardClearPass') ? $pwd : auth_cryptPassword($pwd); @@ -265,8 +269,9 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { public function modifyUser($user, $changes) { $rc = false; - if(!is_array($changes) || !count($changes)) + if(!is_array($changes) || !count($changes)) { return true; // nothing to change + } if($this->_openDB()) { $this->_lockTables("WRITE"); @@ -315,8 +320,9 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { if(is_array($users) && count($users)) { $this->_lockTables("WRITE"); foreach($users as $user) { - if($this->_delUser($user)) + if($this->_delUser($user)) { $count++; + } } $this->_unlockTables(); } @@ -378,9 +384,11 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $result = $this->_queryDB($sql); if(!empty($result)) { - foreach($result as $user) - if(($info = $this->_getUserInfo($user['user']))) + foreach($result as $user) { + if(($info = $this->_getUserInfo($user['user']))) { $out[$user['user']] = $info; + } + } } $this->_unlockTables(); @@ -544,8 +552,9 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $result = $this->_queryDB($sql); if($result !== false && count($result)) { - foreach($result as $row) + foreach($result as $row) { $groups[] = $row['group']; + } } return $groups; } -- cgit v1.2.3 From 792883c4aaba64146ea38cd62287c96cb8121c1f Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 17:57:34 +0000 Subject: fix comment errors, sp. & grammar --- lib/plugins/authmysql/auth.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index a5300c604..0ddbff99b 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -247,17 +247,17 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * The dataset update will be rejected if the user name should be changed * to an already existing one. * - * The password must be provides unencrypted. Pasword cryption is done + * The password must be provided unencrypted. Pasword encryption is done * automatically if configured. * - * If one or more groups could't be updated, an error would be set. In + * If one or more groups can't be updated, an error will be set. In * this case the dataset might already be changed and we can't rollback - * the changes. Transactions would be really usefull here. + * the changes. Transactions would be really useful here. * * modifyUser() may be called without SQL statements defined that are * needed to change group membership (for example if only the user profile - * should be modified). In this case we asure that we don't touch groups - * even $changes['grps'] is set by mistake. + * should be modified). In this case we assure that we don't touch groups + * even when $changes['grps'] is set by mistake. * * @author Chris Smith * @author Matthias Grimm @@ -642,7 +642,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @author Matthias Grimm * - * @param string $user user whose id is desired + * @param string $user username of the user to be deleted * @return bool */ protected function _delUser($user) { -- cgit v1.2.3 From 7ec53b177159137ba25d9a02a6551f7a5c870827 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 18:19:04 +0000 Subject: fix io_rmdir_test::test_nopes() for symlinks in paths --- _test/tests/inc/io_rmdir.test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_test/tests/inc/io_rmdir.test.php b/_test/tests/inc/io_rmdir.test.php index 3de57fa86..1c0eccb38 100644 --- a/_test/tests/inc/io_rmdir.test.php +++ b/_test/tests/inc/io_rmdir.test.php @@ -4,7 +4,7 @@ class io_rmdir_test extends DokuWikiTest { function test_nopes(){ // set up test dir - $dir = io_mktmpdir(); + $dir = realpath(io_mktmpdir()); $top = dirname($dir); $this->assertTrue($dir !== false); $this->assertTrue(is_dir($dir)); -- cgit v1.2.3 From c6568d42d53cab0d8fef498f00a3b9f30d7403ad Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Wed, 12 Mar 2014 18:20:33 +0000 Subject: Refactor updateTuple() The existing function was difficult to follow. It worked when adding a new tuple, but not in the most sensible manner. --- inc/indexer.php | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/inc/indexer.php b/inc/indexer.php index a167db47f..5ca2f0bb1 100644 --- a/inc/indexer.php +++ b/inc/indexer.php @@ -1218,19 +1218,18 @@ class Doku_Indexer { * @author Tom N Harris */ protected function updateTuple($line, $id, $count) { - $newLine = $line; - if ($newLine !== ''){ - $newLine = preg_replace('/(^|:)'.preg_quote($id,'/').'\*\d*/', '', $newLine); + if ($line != ''){ + $line = preg_replace('/(^|:)'.preg_quote($id,'/').'\*\d*/', '', $line); } - $newLine = trim($newLine, ':'); + $line = trim($line, ':'); if ($count) { - if (strlen($newLine) > 0) { - return "$id*$count:".$newLine; + if ($line) { + return "$id*$count:".$line; } else { - return "$id*$count".$newLine; + return "$id*$count"; } } - return $newLine; + return $line; } /** -- cgit v1.2.3 From e950d12fe605bb70cca7a030eab49f5e29719f0b Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 13 Mar 2014 17:55:21 +0000 Subject: improvements to double quote matching --- _test/tests/inc/parser/parser_quotes.test.php | 131 ++++++++++++++++++++------ inc/parser/handler.php | 9 +- 2 files changed, 111 insertions(+), 29 deletions(-) diff --git a/_test/tests/inc/parser/parser_quotes.test.php b/_test/tests/inc/parser/parser_quotes.test.php index b82328212..6f174ddae 100644 --- a/_test/tests/inc/parser/parser_quotes.test.php +++ b/_test/tests/inc/parser/parser_quotes.test.php @@ -10,8 +10,9 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { } function testSingleQuoteOpening() { + $raw = "Foo 'hello Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo 'hello Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -23,12 +24,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testSingleQuoteOpeningSpecial() { + $raw = "Foo said:'hello Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo said:'hello Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -40,12 +42,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testSingleQuoteClosing() { + $raw = "Foo hello' Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo hello' Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -57,12 +60,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testSingleQuoteClosingSpecial() { + $raw = "Foo hello') Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo hello') Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -74,12 +78,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testSingleQuotes() { + $raw = "Foo 'hello' Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo 'hello' Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -93,12 +98,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testApostrophe() { + $raw = "hey it's fine weather today"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("hey it's fine weather today"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -110,13 +116,14 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testSingleQuotesSpecial() { + $raw = "Foo ('hello') Bar"; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse("Foo ('hello') Bar"); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -130,12 +137,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuoteOpening() { + $raw = 'Foo "hello Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo "hello Bar'); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -147,12 +155,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuoteOpeningSpecial() { + $raw = 'Foo said:"hello Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo said:"hello Bar'); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -164,12 +173,14 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuoteClosing() { + $raw = 'Foo hello" Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo hello" Bar'); + $this->H->status['doublequote'] = 1; + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -181,12 +192,14 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuoteClosingSpecial() { + $raw = 'Foo hello") Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo hello") Bar'); + $this->H->status['doublequote'] = 1; + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -198,12 +211,31 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); + } + function testDoubleQuoteClosingSpecial2() { + $raw = 'Foo hello") Bar'; + $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); + $this->H->status['doublequote'] = 0; + $this->P->parse($raw); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n".'Foo hello')), + array('doublequoteopening',array()), + array('cdata',array(') Bar')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuotes() { + $raw = 'Foo "hello" Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo "hello" Bar'); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -217,12 +249,13 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); } function testDoubleQuotesSpecial() { + $raw = 'Foo ("hello") Bar'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('Foo ("hello") Bar'); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -236,12 +269,54 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls, 'wikitext => '.$raw); + } + + function testDoubleQuotesEnclosingBrackets() { + $raw = 'Foo "{hello}" Bar'; + $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); + $this->P->parse($raw); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n".'Foo ')), + array('doublequoteopening',array()), + array('cdata',array('{hello}')), + array('doublequoteclosing',array()), + array('cdata',array(' Bar')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls,'wikitext - '.$raw); + } + + function testDoubleQuotesEnclosingLink() { + $raw = 'Foo "[[www.domain.com]]" Bar'; + $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); + $this->P->parse($raw); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n".'Foo ')), + array('doublequoteopening',array()), + array('cdata',array('[[www.domain.com]]')), + array('doublequoteclosing',array()), + array('cdata',array(' Bar')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls,'wikitext => '.$raw); } + function testAllQuotes() { + $raw = 'There was written "He thought \'It\'s a man\'s world\'".'; $this->P->addMode('quotes',new Doku_Parser_Mode_Quotes()); - $this->P->parse('There was written "He thought \'It\'s a man\'s world\'".'); + $this->P->parse($raw); $calls = array ( array('document_start',array()), @@ -262,7 +337,7 @@ class TestOfDoku_Parser_Quotes extends TestOfDoku_Parser { array('document_end',array()), ); - $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls); + $this->assertEquals(array_map('stripbyteindex',$this->H->calls),$calls,'wikitext => '.$raw); } } diff --git a/inc/parser/handler.php b/inc/parser/handler.php index 8ae991209..dfaf1adaa 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -12,6 +12,7 @@ class Doku_Handler { var $status = array( 'section' => false, + 'doublequote' => 0, ); var $rewriteBlocks = true; @@ -401,11 +402,17 @@ class Doku_Handler { function doublequoteopening($match, $state, $pos) { $this->_addCall('doublequoteopening',array(), $pos); + $this->status['doublequote']++; return true; } function doublequoteclosing($match, $state, $pos) { - $this->_addCall('doublequoteclosing',array(), $pos); + if ($this->status['doublequote'] <= 0) { + $this->doublequoteopening($match, $state, $pos); + } else { + $this->_addCall('doublequoteclosing',array(), $pos); + $this->status['doublequote'] = max(0, --$this->status['doublequote']); + } return true; } -- cgit v1.2.3 From 88945224671d69f8fae0a3d4ab1acf003d7d747d Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 13 Mar 2014 19:43:33 +0000 Subject: Add encoding fix to tpl_img_getTag() Run jpeg meta tags through cleanText for a conversion to UTF-8 from latin-1 if possible. MediaManager already uses this conversion. Addresses a side issue of FS#1988 --- inc/template.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/template.php b/inc/template.php index 88964fada..ddbce8abb 100644 --- a/inc/template.php +++ b/inc/template.php @@ -1018,7 +1018,7 @@ function tpl_img_getTag($tags, $alt = '', $src = null) { static $meta = null; if(is_null($meta)) $meta = new JpegMeta($src); if($meta === false) return $alt; - $info = $meta->getField($tags); + $info = cleanText($meta->getField($tags)); if($info == false) return $alt; return $info; } -- cgit v1.2.3 From 6e6d16edde50ed56a86641e03a8df3885f95ae2e Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 13 Mar 2014 19:58:05 +0000 Subject: Fix a couple of issues with PR#571 1. renderer validity checks were too stringent for plugins, format should only need to be checked when mode is 'xhtml' 2. E_USER_WARNING message should now be obsolete, its previous use was to generate a warning when 'xhtml' rendering failed. PR#571 insures 'xhtml' rendering always succeeds. --- inc/parserutils.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/inc/parserutils.php b/inc/parserutils.php index 06bd6dbb8..8244837e1 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -636,9 +636,9 @@ function p_get_renderer($mode) { return $Renderer; } - // not bundled, see if its an enabled plugin for rendering $mode + // not bundled, see if its an enabled renderer plugin & when $mode is 'xhtml', the renderer can supply that format. $Renderer = $plugin_controller->load('renderer',$rname); - if ($Renderer && is_a($Renderer, 'Doku_Renderer') && ($mode == $Renderer->getFormat())) { + if ($Renderer && is_a($Renderer, 'Doku_Renderer') && ($mode != 'xhtml' || $mode == $Renderer->getFormat())) { return $Renderer; } @@ -660,7 +660,6 @@ function p_get_renderer($mode) { } // fallback failed, alert the world - trigger_error("Unable to resolve render class $rclass",E_USER_WARNING); msg("No renderer '$rname' found for mode '$mode'",-1); return null; } -- cgit v1.2.3 From 410c9c400f5c72e45e32761bf18d9816b62f865e Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 13 Mar 2014 20:05:58 +0000 Subject: remove test expectation for E_USER_WARNING --- _test/tests/inc/parserutils_get_renderer.test.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/_test/tests/inc/parserutils_get_renderer.test.php b/_test/tests/inc/parserutils_get_renderer.test.php index 69aeb3b19..0f373227d 100644 --- a/_test/tests/inc/parserutils_get_renderer.test.php +++ b/_test/tests/inc/parserutils_get_renderer.test.php @@ -45,10 +45,6 @@ class parserutils_get_renderer_test extends DokuWikiTest { } // test fallback fails - /** - * @expectedException PHPUnit_Framework_Error - * @expectedExceptionCode E_USER_WARNING - */ function test_p_get_renderer_fallback_fail() { global $conf; -- cgit v1.2.3 From 06e3e0c7b506a637df1ea27c6a8a439756e7139d Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Fri, 14 Mar 2014 17:58:53 +0000 Subject: use $requireGroups constants in auth classes; comments; code improvements --- inc/common.php | 9 +++++---- lib/plugins/auth.php | 4 ++-- lib/plugins/authmysql/auth.php | 10 +++++----- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/inc/common.php b/inc/common.php index 6851cdea3..9ed9e84d4 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1454,13 +1454,14 @@ function shorten($keep, $short, $max, $min = 9, $char = '…') { } /** - * Return the users realname or e-mail address for use + * Return the users real name or e-mail address for use * in page footer and recent changes pages * * @author Andy Webber */ function editorinfo($username) { global $conf; + /* @var DokuWiki_Auth_Plugin $auth */ global $auth; switch($conf['showuseras']) { @@ -1473,7 +1474,7 @@ function editorinfo($username) { return hsc($username); } - if(isset($info) && $info) { + if(!empty($info)) { switch($conf['showuseras']) { case 'username': return hsc($info['name']); @@ -1485,9 +1486,9 @@ function editorinfo($username) { default: return hsc($username); } - } else { - return hsc($username); } + + return hsc($username); } /** diff --git a/lib/plugins/auth.php b/lib/plugins/auth.php index f9e5cded9..9275611be 100644 --- a/lib/plugins/auth.php +++ b/lib/plugins/auth.php @@ -232,7 +232,7 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * at least these fields: * * name string full name of the user - * mail string email addres of the user + * mail string email address of the user * grps array list of groups the user is in * * @author Andreas Gohr @@ -240,7 +240,7 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * @param bool $requireGroups whether or not the returned data must include groups * @return array containing user data or false */ - public function getUserData($user, $requireGroups=true) { + public function getUserData($user, $requireGroups=self::REQUIRE_GROUPS) { if(!$this->cando['external']) msg("no valid authorisation system in use", -1); return false; } diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index 0ddbff99b..d3906759b 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -182,7 +182,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * when false, it maybe included, but is not required by the caller * @return array|bool */ - public function getUserData($user, $requireGroups=true) { + public function getUserData($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS) { if($this->_cacheExists($user, $requireGroups)) { return $this->cacheUserInfo[$user]; } @@ -690,13 +690,13 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @return bool existence of required user information in the cache */ - protected function _cacheExists($user, $requireGroups=true) { + protected function _cacheExists($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS) { if (isset($this->cacheUserInfo[$user])) { if (!is_array($this->cacheUserInfo[$user])) { return true; // user doesn't exist } - if (!$requireGroups || isset($this->cacheUserInfo[$user]['grps'])) { + if ($requireGroups == DokuWiki_Auth_Plugin::IGNORE_GROUPS || isset($this->cacheUserInfo[$user]['grps'])) { return true; } } @@ -718,7 +718,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @return mixed false|array false if the user doesn't exist * array containing user information if user does exist */ - protected function _getUserInfo($user, $requireGroups=true, $useCache=true) { + protected function _getUserInfo($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS, $useCache=true) { $info = null; if ($useCache && isset($this->cacheUserInfo[$user])) { @@ -729,7 +729,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $info = $this->_retrieveUserInfo($user); } - if ($requireGroups && $info && !isset($info['grps'])) { + if (($requireGroups == DokuWiki_Auth_Plugin::REQUIRE_GROUPS) && $info && !isset($info['grps'])) { $info['grps'] = $this->_getGroups($user); } -- cgit v1.2.3 From b23560022e3a99310a04296b3c385325e7abb747 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Sun, 16 Mar 2014 18:32:07 +0000 Subject: Fix longstanding issue with cache class & cachetime setting 1. cachetime setting should only be applied to the cache_renderer class. Previously it was applied to cache_parser (and by extension cache_handler). 2. two special cachetime values, -1 & 0, weren't handled, per FS#2183 To handle the cachetime setting, -1, disable caching, a new property _nocache is added. When that property is true, any cache file must not be used and storecache() should not store any values --- _test/tests/inc/cache_use.test.php | 56 ++++++++++++++++++++++++++++++++++---- inc/cache.php | 26 ++++++++++++++---- 2 files changed, 70 insertions(+), 12 deletions(-) diff --git a/_test/tests/inc/cache_use.test.php b/_test/tests/inc/cache_use.test.php index f5349df13..292f5c975 100644 --- a/_test/tests/inc/cache_use.test.php +++ b/_test/tests/inc/cache_use.test.php @@ -6,22 +6,22 @@ * Tests if caching can actually be used */ class cache_use_test extends DokuWikiTest { - /** @var cache_renderer $cache */ + /** @var cache_parser $cache */ private $cache; function setUp() { - global $ID; + global $ID, $conf; parent::setUp(); $ID = 'cached'; $file = wikiFN($ID); + $conf['cachetime'] = 0; // ensure the value is not -1, which disables caching saveWikiText($ID, 'Content', 'Created'); // set the modification time a second in the past in order to ensure that the cache is newer than the page touch($file, time()-1); - # Create cache. Note that the metadata cache is used as the xhtml cache triggers metadata rendering - $this->cache = new cache_renderer($ID, $file, 'metadata'); + $this->cache = new cache_renderer($ID, $file, 'xhtml'); $this->cache->storeCache('Test'); } @@ -29,8 +29,52 @@ class cache_use_test extends DokuWikiTest { $this->assertTrue($this->cache->useCache()); } - + /** + * In all the following tests the cache should not be usable + * as such, they are meaningless if test_use didn't pass. + * + * @depends test_use + */ function test_purge() { - $this->assertFalse($this->cache->useCache(array('purge' => true))); + /* @var Input $INPUT */ + global $INPUT; + $INPUT->set('purge',1); + + $this->assertFalse($this->cache->useCache()); + $this->assertNotEmpty($this->cache->depends['purge']); + } + + /** + * @depends test_use + */ + function test_filedependency() { + // give the dependent src file the same mtime as the cache + touch($this->cache->file, filemtime($this->cache->cache)); + $this->assertFalse($this->cache->useCache()); + } + + /** + * @depends test_use + */ + function test_age() { + // need to age both our source file & the cache + $age = 10; + $time = time() - $age - 1; // older than age + + touch($this->cache->file, $time - 1); + touch($this->cache->cache, $time); + + $this->assertFalse($this->cache->useCache(array('age' => $age))); + } + + /** + * @depends test_use + */ + function test_confnocaching() { + global $conf; + $conf['cachetime'] = -1; // disables renderer caching + + $this->assertFalse($this->cache->useCache()); + $this->assertNotEmpty($this->cache->_nocache); } } \ No newline at end of file diff --git a/inc/cache.php b/inc/cache.php index 56c5b65f2..7a66049f4 100644 --- a/inc/cache.php +++ b/inc/cache.php @@ -16,10 +16,11 @@ class cache { public $ext = ''; // file ext for cache data, secondary identifier for this item public $cache = ''; // cache file name public $depends = array(); // array containing cache dependency information, - // used by _useCache to determine cache validity + // used by _useCache to determine cache validity var $_event = ''; // event to be triggered during useCache var $_time; + var $_nocache = false; // if set to true, cache will not be used or stored /** * @param string $key primary identifier @@ -34,7 +35,7 @@ class cache { /** * public method to determine whether the cache can be used * - * to assist in cetralisation of event triggering and calculation of cache statistics, + * to assist in centralisation of event triggering and calculation of cache statistics, * don't override this function override _useCache() * * @param array $depends array of cache dependencies, support dependecies: @@ -71,6 +72,7 @@ class cache { */ public function _useCache() { + if ($this->_nocache) return false; // caching turned off if (!empty($this->depends['purge'])) return false; // purge requested? if (!($this->_time = @filemtime($this->cache))) return false; // cache exists? @@ -115,6 +117,8 @@ class cache { * @return bool true on success, false otherwise */ public function storeCache($data) { + if ($this->_nocache) return false; + return io_savefile($this->cache, $data); } @@ -203,10 +207,6 @@ class cache_parser extends cache { } protected function _addDependencies() { - global $conf; - - $this->depends['age'] = isset($this->depends['age']) ? - min($this->depends['age'],$conf['cachetime']) : $conf['cachetime']; // parser cache file dependencies ... $files = array($this->file, // ... source @@ -265,6 +265,18 @@ class cache_renderer extends cache_parser { } protected function _addDependencies() { + global $conf; + + // default renderer cache file 'age' is dependent on 'cachetime' setting, two special values: + // -1 : do not cache (should not be overridden) + // 0 : cache never expires (can be overridden) - no need to set depends['age'] + if ($conf['cachetime'] == -1) { + $this->_nocache = true; + return; + } elseif ($conf['cachetime'] > 0) { + $this->depends['age'] = isset($this->depends['age']) ? + min($this->depends['age'],$conf['cachetime']) : $conf['cachetime']; + } // renderer cache file dependencies ... $files = array( @@ -317,6 +329,8 @@ class cache_instructions extends cache_parser { * @return bool true on success, false otherwise */ public function storeCache($instructions) { + if ($this->_nocache) return false; + return io_savefile($this->cache,serialize($instructions)); } } -- cgit v1.2.3 From cef031c123914a2d88f125a8363c0917011e8ed0 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 13 Mar 2014 17:52:03 +0000 Subject: implement rules for when the top rows of a table qualify for a THEAD element 1. TD < 2 in a row 2. TD <= 50% of total cells 3. Not all table rows can be THEAD rows --- inc/parser/handler.php | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/inc/parser/handler.php b/inc/parser/handler.php index c4104dac9..d8382e7fc 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -1150,6 +1150,7 @@ class Doku_Handler_Table { var $firstCell = false; var $lastCellType = 'tablecell'; var $inTableHead = true; + var $currentRow = array('tableheader' => 0, 'tablecell' => 0); var $countTableHeadRows = 0; function Doku_Handler_Table(& $CallWriter) { @@ -1218,10 +1219,13 @@ class Doku_Handler_Table { $this->firstCell = true; $this->lastCellType = 'tablecell'; $this->maxRows++; + if ($this->inTableHead) { + $this->currentRow = array('tablecell' => 0, 'tableheader' => 0); + } } function tableRowClose($call) { - if ($this->inTableHead) { + if ($this->inTableHead && ($this->inTableHead = $this->isTableHeadRow())) { $this->countTableHeadRows++; } // Strip off final cell opening and anything after it @@ -1230,6 +1234,9 @@ class Doku_Handler_Table { if ( $discard[0] == 'tablecell_open' || $discard[0] == 'tableheader_open') { break; } + if (!empty($this->currentRow[$discard[0]])) { + $this->currentRow[$discard[0]]--; + } } $this->tableCalls[] = array('tablerow_close', array(), $call[2]); @@ -1238,9 +1245,19 @@ class Doku_Handler_Table { } } + function isTableHeadRow() { + $td = $this->currentRow['tablecell']; + $th = $this->currentRow['tableheader']; + + if (!$th || $td > 2) return false; + if (2*$td > $th) return false; + + return true; + } + function tableCell($call) { - if ($call[0] != 'tableheader') { - $this->inTableHead = false; + if ($this->inTableHead) { + $this->currentRow[$call[0]]++; } if ( !$this->firstCell ) { @@ -1289,6 +1306,13 @@ class Doku_Handler_Table { $cellKey = array(); $toDelete = array(); + // if still in tableheader, then there can be no table header + // as all rows can't be within + if ($this->inTableHead) { + $this->inTableHead = false; + $this->countTableHeadRows = 0; + } + // Look for the colspan elements and increment the colspan on the // previous non-empty opening cell. Once done, delete all the cells // that contain colspans -- cgit v1.2.3 From 5f3da53e253bc878946671173feef853a48604b8 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Sun, 16 Mar 2014 19:43:40 +0000 Subject: put PHPDocs comment back the way it should be --- _test/tests/inc/cache_use.test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_test/tests/inc/cache_use.test.php b/_test/tests/inc/cache_use.test.php index 292f5c975..c54a472a3 100644 --- a/_test/tests/inc/cache_use.test.php +++ b/_test/tests/inc/cache_use.test.php @@ -6,7 +6,7 @@ * Tests if caching can actually be used */ class cache_use_test extends DokuWikiTest { - /** @var cache_parser $cache */ + /** @var cache_renderer $cache */ private $cache; function setUp() { -- cgit v1.2.3 From c2a1d01e2e905ab3d7fa3009aeb140fcefc32f9e Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Sun, 16 Mar 2014 20:26:44 +0000 Subject: update unittests for THEAD rules --- _test/tests/inc/parser/parser_table.test.php | 49 +++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/_test/tests/inc/parser/parser_table.test.php b/_test/tests/inc/parser/parser_table.test.php index 3e9651d14..a9b4e284c 100644 --- a/_test/tests/inc/parser/parser_table.test.php +++ b/_test/tests/inc/parser/parser_table.test.php @@ -152,6 +152,7 @@ def'); $this->P->parse(' abc ^ X ^ Y ^ Z ^ +| x | y | z | def'); $calls = array ( @@ -159,7 +160,7 @@ def'); array('p_open',array()), array('cdata',array("\n\nabc")), array('p_close',array()), - array('table_open',array(3, 1, 6)), + array('table_open',array(3, 2, 6)), array('tablethead_open',array()), array('tablerow_open',array()), array('tableheader_open',array(1,NULL,1)), @@ -173,6 +174,52 @@ def'); array('tableheader_close',array()), array('tablerow_close',array()), array('tablethead_close',array()), + array('tablerow_open',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' x ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' y ')), + array('tablecell_close',array()), + array('tablecell_open',array(1,NULL,1)), + array('cdata',array(' z ')), + array('tablecell_close',array()), + array('tablerow_close',array()), + array('table_close',array(33)), + array('p_open',array()), + array('cdata',array('def')), + array('p_close',array()), + array('document_end',array()), + ); + + $this->assertEquals($calls,array_map('stripbyteindex',$this->H->calls)); + + } + + function testTableHeadOneRowTable() { + $this->P->addMode('table',new Doku_Parser_Mode_Table()); + $this->P->parse(' +abc +^ X ^ Y ^ Z ^ +def'); + + $calls = array ( + array('document_start',array()), + array('p_open',array()), + array('cdata',array("\n\nabc")), + array('p_close',array()), + array('table_open',array(3, 1, 6)), + array('tablerow_open',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' X ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Y ')), + array('tableheader_close',array()), + array('tableheader_open',array(1,NULL,1)), + array('cdata',array(' Z ')), + array('tableheader_close',array()), + array('tablerow_close',array()), array('table_close',array(19)), array('p_open',array()), array('cdata',array('def')), -- cgit v1.2.3 From 59b1d9181358f31d8d65c38a64fb43a68c0fadb1 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Mon, 17 Mar 2014 01:33:46 +0000 Subject: adjust logic of caching comments for _nocache --- inc/parserutils.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/inc/parserutils.php b/inc/parserutils.php index 06bd6dbb8..281a93967 100644 --- a/inc/parserutils.php +++ b/inc/parserutils.php @@ -112,8 +112,7 @@ function p_cached_output($file, $format='xhtml', $id='') { } else { $parsed = p_render($format, p_cached_instructions($file,false,$id), $info); - if ($info['cache']) { - $cache->storeCache($parsed); //save cachefile + if ($info['cache'] && $cache->storeCache($parsed)) { // storeCache() attempts to save cachefile if($conf['allowdebug'] && $format=='xhtml') $parsed .= "\n\n"; }else{ $cache->removeCache(); //try to delete cachefile -- cgit v1.2.3 From 496e3a6f34d97e44e44340c1fbd2d3cbc262c05c Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Mon, 17 Mar 2014 23:03:53 +0100 Subject: completely new base for CLI scripts This introduces an abstract base class that command line tools need to inherit from. It provides a simple framework for registering accepted command line options and provides commonly needed things like help output and colored text. Existing CLI scripts still need to be converted. --- _test/tests/inc/cli_options.test.php | 56 ++++ inc/cli.php | 590 +++++++++++++++++++++++++++++++++++ inc/load.php | 4 + 3 files changed, 650 insertions(+) create mode 100644 _test/tests/inc/cli_options.test.php create mode 100644 inc/cli.php diff --git a/_test/tests/inc/cli_options.test.php b/_test/tests/inc/cli_options.test.php new file mode 100644 index 000000000..1d121d7ce --- /dev/null +++ b/_test/tests/inc/cli_options.test.php @@ -0,0 +1,56 @@ +registerOption('exclude', 'exclude files', 'x', true); + + $args = array('-x', 'foo', 'bang'); + $options->parseOptions($args); + + $this->assertEquals('foo', $options->getOpt('exclude')); + $this->assertEquals(array('bang'), $args); + $this->assertFalse($options->getOpt('nothing')); + } + + function test_simplelong1() { + $options = new DokuCLI_Options(); + $options->registerOption('exclude', 'exclude files', 'x', true); + + $args = array('--exclude', 'foo', 'bang'); + $options->parseOptions($args); + + $this->assertEquals('foo', $options->getOpt('exclude')); + $this->assertEquals(array('bang'), $args); + $this->assertFalse($options->getOpt('nothing')); + } + + function test_simplelong2() { + $options = new DokuCLI_Options(); + $options->registerOption('exclude', 'exclude files', 'x', true); + + $args = array('--exclude=foo', 'bang'); + $options->parseOptions($args); + + $this->assertEquals('foo', $options->getOpt('exclude')); + $this->assertEquals(array('bang'), $args); + $this->assertFalse($options->getOpt('nothing')); + } + + function test_complex() { + $options = new DokuCLI_Options(); + + $options->registerOption('plugins', 'run on plugins only', 'p'); + $options->registerCommand('status', 'display status info'); + $options->registerOption('long', 'display long lines', 'l', false, 'status'); + + $args = array('-p', 'status', '--long', 'foo'); + $options->parseOptions($args); + + $this->assertEquals('status', $options->getCmd()); + $this->assertTrue($options->getOpt('plugins')); + $this->assertTrue($options->getOpt('long')); + $this->assertEquals(array('foo'), $args); + } +} \ No newline at end of file diff --git a/inc/cli.php b/inc/cli.php new file mode 100644 index 000000000..2827ae233 --- /dev/null +++ b/inc/cli.php @@ -0,0 +1,590 @@ + + */ +abstract class DokuCLI { + /** @var string the executed script itself */ + protected $bin; + /** @var array list of non-option arguments */ + protected $args; + /** @var DokuCLI_Options the option parser */ + protected $options; + /** @var DokuCLI_Colors */ + public $colors; + + /** + * constructor + * + * Initialize the arguments, set up helper classes and set up the CLI environment + */ + public function __construct() { + set_exception_handler(array($this, 'fatal')); + + $this->args = $this->readPHPArgv(); + $this->bin = basename(array_shift($this->args)); + + $this->options = new DokuCLI_Options(); + $this->colors = new DokuCLI_Colors(); + } + + /** + * Register options and arguments on the given $options object + * + * @param DokuCLI_Options $options + * @return void + */ + abstract protected function setup(DokuCLI_Options $options); + + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @param array $args + * @return void + */ + abstract protected function main(DokuCLI_Options $options, &$args); + + /** + * Execute the CLI program + * + * Executes the setup() routine, adds default options, initiate the options parsing and argument checking + * and finally executes main() + */ + public function run() { + if('cli' != php_sapi_name()) throw new DokuCLI_Exception('This has to be run from the command line'); + + // setup + $this->setup($this->options); + $this->options->registerOption( + 'no-colors', + 'Do not use any colors in output. Useful when piping output to other tools or files.' + ); + $this->options->registerOption( + 'help', + 'Display this help screen and exit immeadiately.', + 'h' + ); + + // parse + $this->options->parseOptions($this->args); + + // handle defaults + if($this->options->getOpt('no-colors')) { + $this->colors->disable(); + } + if($this->options->getOpt('help')) { + $this->options->help($this->bin); + exit(0); + } + + // check arguments + $this->options->checkArguments($this->args); + + // execute + $this->main($this->options, $this->args); + } + + /** + * Exits the program on a fatal error + * + * @param Exception|string $error either an exception or an error message + */ + public function fatal($error) { + $code = 0; + if(is_a($error, 'Exception')) { + /** @var Exception $error */ + $code = $error->getCode(); + $error = $error->getMessage(); + } + if(!$code) $code = DokuCLI_Exception::E_ANY; + + $this->colors->ptln($error, 'red'); + exit($code); + } + + /** + * Print an error message + * + * @param $string + */ + public function error($string) { + $this->colors->ptln("E: $string", 'red'); + } + + /** + * Print a success message + * + * @param $string + */ + public function success($string) { + $this->colors->ptln("S: $string", 'green'); + } + + /** + * Print an info message + * + * @param $string + */ + public function info($string) { + $this->colors->ptln("I: $string", 'cyan'); + } + + /** + * Safely read the $argv PHP array across different PHP configurations. + * Will take care on register_globals and register_argc_argv ini directives + * + * @throws DokuCLI_Exception + * @return array the $argv PHP array or PEAR error if not registered + */ + private function readPHPArgv() { + global $argv; + if(!is_array($argv)) { + if(!@is_array($_SERVER['argv'])) { + if(!@is_array($GLOBALS['HTTP_SERVER_VARS']['argv'])) { + throw new DokuCLI_Exception( + "Could not read cmd args (register_argc_argv=Off?)", + DOKU_CLI_OPTS_ARG_READ + ); + } + return $GLOBALS['HTTP_SERVER_VARS']['argv']; + } + return $_SERVER['argv']; + } + return $argv; + } +} + +/** + * Class DokuCLI_Colors + * + * Handles color output on (Linux) terminals + * + * @author Andreas Gohr + */ +class DokuCLI_Colors { + /** @var array known color names */ + protected $colors = array( + 'reset' => "\33[0m", + 'black' => "\33[0;30m", + 'darkgray' => "\33[1;30m", + 'blue' => "\33[0;34m", + 'lightblue' => "\33[1;34m", + 'green' => "\33[0;32m", + 'lightgreen' => "\33[1;32m", + 'cyan' => "\33[0;36m", + 'lightcyan' => "\33[1;36m", + 'red' => "\33[0;31m", + 'lightred' => "\33[1;31m", + 'purple' => "\33[0;35m", + 'lightpurple' => "\33[1;35m", + 'brown' => "\33[0;33m", + 'yellow' => "\33[1;33m", + 'lightgray' => "\33[0;37m", + 'white' => "\33[1;37m", + ); + + /** @var bool should colors be used? */ + protected $enabled = true; + + /** + * Constructor + * + * Tries to disable colors for non-terminals + */ + public function __construct() { + if(function_exists('posix_isatty') && !posix_isatty(STDOUT)) { + $this->enabled = false; + return; + } + if(!getenv('TERM')) { + $this->enabled = false; + return; + } + } + + /** + * enable color output + */ + public function enable() { + $this->enabled = true; + } + + /** + * disable color output + */ + public function disable() { + $this->enabled = false; + } + + /** + * Convenience function to print a line in a given color + * + * @param $line + * @param $color + */ + public function ptln($line, $color) { + $this->set($color); + echo rtrim($line) . "\n"; + $this->reset(); + } + + /** + * Set the given color for consecutive output + * + * @param string $color one of the supported color names + * @throws DokuCLI_Exception + */ + public function set($color) { + if(!$this->enabled) return; + if(!isset($this->colors[$color])) throw new DokuCLI_Exception("No such color $color"); + echo $this->colors[$color]; + } + + /** + * reset the terminal color + */ + public function reset() { + $this->set('reset'); + } +} + +/** + * Class DokuCLI_Options + * + * Parses command line options passed to the CLI script. Allows CLI scripts to easily register all accepted options and + * commands and even generates a help text from this setup. + * + * @author Andreas Gohr + */ +class DokuCLI_Options { + /** @var array $setup keeps the list of options to parse */ + protected $setup; + + /** @var array $options store parsed options */ + protected $options; + + protected $command = ''; + + public function __construct() { + $this->setup = array( + '' => array( + 'opts' => array(), + 'args' => array(), + 'help' => '' + ) + ); // default command + + $this->options = array(); + } + + /** + * Sets the help text for the tool itself + * + * @param string $help + */ + public function setHelp($help) { + $this->setup['']['help'] = $help; + } + + /** + * Register the names of arguments for help generation and number checking + * + * This has to be called in the order arguments are expected + * + * @param string $arg argument name (just for help) + * @param string $help help text + * @param bool $required is this a required argument + * @param string $command if theses apply to a sub command only + * @throws DokuCLI_Exception + */ + public function registerArgument($arg, $help, $required = true, $command = '') { + if(!isset($this->setup[$command])) throw new DokuCLI_Exception("Command $command not registered"); + + $this->setup[$command]['args'][] = array( + 'name' => $arg, + 'help' => $help, + 'required' => $required + ); + } + + /** + * This registers a sub command + * + * Sub commands have their own options and use their own function (not main()) + * + * @param string $command + * @param string $help + * @throws DokuCLI_Exception + */ + public function registerCommand($command, $help) { + if(isset($this->setup[$command])) throw new DokuCLI_Exception("Command $command already registered"); + + $this->setup[$command] = array( + 'opts' => array(), + 'args' => array(), + 'help' => $help + ); + + } + + /** + * Register an option for option parsing and help generation + * + * @param string $long multi character option (specified with --) + * @param string $help help text for this option + * @param string|null $short one character option (specified with -) + * @param bool $needsarg does this option require an argument? + * @param string $command what command does this option apply to + * @throws DokuCLI_Exception + */ + public function registerOption($long, $help, $short = null, $needsarg = false, $command = '') { + if(!isset($this->setup[$command])) throw new DokuCLI_Exception("Command $command not registered"); + + $this->setup[$command]['opts'][$long] = array( + 'needsarg' => $needsarg, + 'help' => $help, + 'short' => $short + ); + + if($short) { + if(strlen($short) > 1) throw new DokuCLI_Exception("Short options should be exactly one ASCII character"); + + $this->setup[$command]['short'][$short] = $long; + } + } + + /** + * Checks the actual number of arguments against the required number + * + * Throws an exception if arguments are missing. Called from parseOptions() + * + * @param array $args + * @throws DokuCLI_Exception + */ + public function checkArguments($args) { + $argc = count($args); + + $req = 0; + foreach($this->setup[$this->command]['args'] as $arg) { + if(!$args['required']) break; // last required arguments seen + $req++; + } + + if($req > $argc) throw new DokuCLI_Exception("Not enough arguments", DokuCLI_Exception::E_OPT_ARG_REQUIRED); + } + + /** + * Parses the given arguments for known options and command + * + * The given $args array should NOT contain the executed file as first item anymore! The $args + * array is stripped from any options and possible command. All found otions can be accessed via the + * getOpt() function + * + * Note that command options will overwrite any global options with the same name + * + * @param array $args + * @throws DokuCLI_Exception + */ + public function parseOptions(&$args) { + $non_opts = array(); + + $argc = count($args); + for($i = 0; $i < $argc; $i++) { + $arg = $args[$i]; + + // The special element '--' means explicit end of options. Treat the rest of the arguments as non-options + // and end the loop. + if($arg == '--') { + $non_opts = array_merge($non_opts, array_slice($args, $i + 1)); + break; + } + + // '-' is stdin - a normal argument + if($arg == '-') { + $non_opts = array_merge($non_opts, array_slice($args, $i)); + break; + } + + // first non-option + if($arg{0} != '-') { + $non_opts = array_merge($non_opts, array_slice($args, $i)); + break; + } + + // long option + if(strlen($arg) > 1 && $arg{1} == '-') { + list($opt, $val) = explode('=', substr($arg, 2), 2); + + if(!isset($this->setup[$this->command]['opts'][$opt])) { + throw new DokuCLI_Exception("No such option $arg", DokuCLI_Exception::E_UNKNOWN_OPT); + } + + // argument required? + if($this->setup[$this->command]['opts'][$opt]['needsarg']) { + if(is_null($val) && $i + 1 < $argc && !preg_match('/^--?[\w]/', $args[$i + 1])) { + $val = $args[++$i]; + } + if(is_null($val)) { + throw new DokuCLI_Exception("Option $arg requires an argument", DokuCLI_Exception::E_OPT_ARG_REQUIRED); + } + $this->options[$opt] = $val; + } else { + $this->options[$opt] = true; + } + + continue; + } + + // short option + $opt = substr($arg, 1); + if(!isset($this->setup[$this->command]['short'][$opt])) { + throw new DokuCLI_Exception("No such option $arg", DokuCLI_Exception::E_UNKNOWN_OPT); + } else { + $opt = $this->setup[$this->command]['short'][$opt]; // store it under long name + } + + // argument required? + if($this->setup[$this->command]['opts'][$opt]['needsarg']) { + $val = null; + if($i + 1 < $argc && !preg_match('/^--?[\w]/', $args[$i + 1])) { + $val = $args[++$i]; + } + if(is_null($val)) { + throw new DokuCLI_Exception("Option $arg requires an argument", DokuCLI_Exception::E_OPT_ARG_REQUIRED); + } + $this->options[$opt] = $val; + } else { + $this->options[$opt] = true; + } + } + + // parsing is now done, update args array + $args = $non_opts; + + // if not done yet, check if first argument is a command and reexecute argument parsing if it is + if(!$this->command && $args && isset($this->setup[$args[0]])) { + // it is a command! + $this->command = array_shift($args); + $this->parseOptions($args); // second pass + } + } + + /** + * Get the value of the given option + * + * Please note that all options are accessed by their long option names regardless of how they were + * specified on commandline. + * + * Can only be used after parseOptions() has been run + * + * @param $option + * @return mixed + */ + public function getOpt($option) { + if(isset($this->options[$option])) return $this->options[$option]; + return false; + } + + /** + * Return the found command if any + * + * @return string + */ + public function getCmd() { + return $this->command; + } + + /** + * Builds a help screen from the available options. You may want to call it from -h or on error + * + * @param string $bin name of the script itself + * @return string + */ + public function help($bin) { + $text = ''; + + $hascommands = (count($this->setup) > 1); + foreach($this->setup as $command => $config) { + $hasopts = (bool) $this->setup[$command]['opts']; + $hasargs = (bool) $this->setup[$command]['args']; + + if(!$command) { + $text .= 'USAGE: ' . $bin; + } else { + $text .= "\n$command"; + } + + if($hasopts) $text .= ' '; + foreach($this->setup[$command]['args'] as $arg) { + if($arg['required']) { + $text .= ' <' . $arg['name'] . '>'; + } else { + $text .= ' [<' . $arg['name'] . '>]'; + } + } + $text .= "\n\n"; + + if($this->setup[$command]['help']) { + $text .= ' ' . $this->setup[$command]['help'] . "\n\n"; + } + + if($hasopts) { + $text .= " OPTIONS\n\n"; + + foreach($this->setup[$command]['opts'] as $long => $opt) { + + $name = "--$long"; + if($opt['short']) $name = '-' . $opt['short'] . ' ' . $name; + if($opt['needsarg']) $name .= ' '; + + $text .= sprintf(" %-15s %s\n", $name, $opt['help']); + + } + } + + if($hasargs) { + $text .= " ARGUMENTS\n\n"; + foreach($this->setup[$command]['args'] as $arg) { + $name = '<' . $arg['name'] . '>'; + $text .= sprintf(" %-15s %s\n", $name, $arg['help']); + } + } + + if($command == '' && $hascommands){ + $text .= "\n\nThis tool accepts a command as first parameter as outlined below:\n"; + } + } + + return $text; + } + +} + +/** + * Class DokuCLI_Exception + * + * The code is used as exit code for the CLI tool. This should probably be extended. Many cases just fall back to the + * E_ANY code. + * + * @author Andreas Gohr + */ +class DokuCLI_Exception extends Exception { + const E_ANY = -1; // no error code specified + const E_UNKNOWN_OPT = 1; //Unrecognized option + const E_OPT_ARG_REQUIRED = 2; //Option requires argument + const E_OPT_ARG_DENIED = 3; //Option not allowed argument + const E_OPT_ABIGUOUS = 4; //Option abiguous + const E_ARG_READ = 5; //Could not read argv + + public function __construct($message = "", $code = 0, Exception $previous = null) { + if(!$code) $code = DokuCLI_Exception::E_ANY; + parent::__construct($message, $code, $previous); + } +} diff --git a/inc/load.php b/inc/load.php index f1deffe19..ac2812a0b 100644 --- a/inc/load.php +++ b/inc/load.php @@ -102,6 +102,10 @@ function load_autoload($name){ 'Doku_Renderer_xhtmlsummary' => DOKU_INC.'inc/parser/xhtmlsummary.php', 'Doku_Renderer_metadata' => DOKU_INC.'inc/parser/metadata.php', + 'DokuCLI' => DOKU_INC.'inc/cli.php', + 'DokuCLI_Options' => DOKU_INC.'inc/cli.php', + 'DokuCLI_Colors' => DOKU_INC.'inc/cli.php', + ); if(isset($classes[$name])){ -- cgit v1.2.3 From 54be1338e56b721dd24c049153eea295b6f386d5 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 18 Mar 2014 13:19:05 +0100 Subject: allow disabling the rss feed --- feed.php | 6 ++++++ inc/template.php | 22 ++++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/feed.php b/feed.php index 5bf1d2e85..6052e7cc6 100644 --- a/feed.php +++ b/feed.php @@ -15,6 +15,12 @@ require_once(DOKU_INC.'inc/init.php'); //close session session_write_close(); +//feed disabled? +if(!actionOK('rss')) { + echo 'RSS feed is disabled.'; + exit; +} + // get params $opt = rss_parseOptions(); diff --git a/inc/template.php b/inc/template.php index 8bd3234cc..a3808aa81 100644 --- a/inc/template.php +++ b/inc/template.php @@ -318,15 +318,17 @@ function tpl_metaheaders($alt = true) { } if($alt) { - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'application/rss+xml', - 'title'=> $lang['btn_recent'], 'href'=> DOKU_BASE.'feed.php' - ); - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'application/rss+xml', - 'title'=> $lang['currentns'], - 'href' => DOKU_BASE.'feed.php?mode=list&ns='.$INFO['namespace'] - ); + if(actionOK('rss')) { + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'application/rss+xml', + 'title'=> $lang['btn_recent'], 'href'=> DOKU_BASE.'feed.php' + ); + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'application/rss+xml', + 'title'=> $lang['currentns'], + 'href' => DOKU_BASE.'feed.php?mode=list&ns='.$INFO['namespace'] + ); + } if(($ACT == 'show' || $ACT == 'search') && $INFO['writable']) { $head['link'][] = array( 'rel' => 'edit', @@ -335,7 +337,7 @@ function tpl_metaheaders($alt = true) { ); } - if($ACT == 'search') { + if(actionOK('rss') && $ACT == 'search') { $head['link'][] = array( 'rel' => 'alternate', 'type'=> 'application/rss+xml', 'title'=> $lang['searchresult'], -- cgit v1.2.3 From faa5129227ac3bdf5f640402fd2e44f39c1f33c9 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Tue, 18 Mar 2014 13:43:18 +0100 Subject: added config stuff for disabling RSS --- lib/plugins/config/lang/en/lang.php | 1 + lib/plugins/config/settings/config.metadata.php | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/plugins/config/lang/en/lang.php b/lib/plugins/config/lang/en/lang.php index 66d4dc356..5e5218aff 100644 --- a/lib/plugins/config/lang/en/lang.php +++ b/lib/plugins/config/lang/en/lang.php @@ -101,6 +101,7 @@ $lang['disableactions_subscription'] = 'Subscribe/Unsubscribe'; $lang['disableactions_wikicode'] = 'View source/Export Raw'; $lang['disableactions_profile_delete'] = 'Delete Own Account'; $lang['disableactions_other'] = 'Other actions (comma separated)'; +$lang['disableactions_rss'] = 'XML Syndication (RSS)'; $lang['auth_security_timeout'] = 'Authentication Security Timeout (seconds)'; $lang['securecookie'] = 'Should cookies set via HTTPS only be sent via HTTPS by the browser? Disable this option when only the login of your wiki is secured with SSL but browsing the wiki is done unsecured.'; $lang['remote'] = 'Enable the remote API system. This allows other applications to access the wiki via XML-RPC or other mechanisms.'; diff --git a/lib/plugins/config/settings/config.metadata.php b/lib/plugins/config/settings/config.metadata.php index 69cc0df01..aaa32cd70 100644 --- a/lib/plugins/config/settings/config.metadata.php +++ b/lib/plugins/config/settings/config.metadata.php @@ -138,7 +138,7 @@ $meta['manager'] = array('string'); $meta['profileconfirm'] = array('onoff'); $meta['rememberme'] = array('onoff'); $meta['disableactions'] = array('disableactions', - '_choices' => array('backlink','index','recent','revisions','search','subscription','register','resendpwd','profile','profile_delete','edit','wikicode','check'), + '_choices' => array('backlink','index','recent','revisions','search','subscription','register','resendpwd','profile','profile_delete','edit','wikicode','check', 'rss'), '_combine' => array('subscription' => array('subscribe','unsubscribe'), 'wikicode' => array('source','export_raw'))); $meta['auth_security_timeout'] = array('numeric'); $meta['securecookie'] = array('onoff'); -- cgit v1.2.3 From b09b9f475dba5eb97b53387929b3830c852915ca Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 18 Mar 2014 14:02:01 +0100 Subject: add 404 status header to feed disabled --- feed.php | 1 + 1 file changed, 1 insertion(+) diff --git a/feed.php b/feed.php index 6052e7cc6..c1a5f4503 100644 --- a/feed.php +++ b/feed.php @@ -17,6 +17,7 @@ session_write_close(); //feed disabled? if(!actionOK('rss')) { + http_status(404); echo 'RSS feed is disabled.'; exit; } -- cgit v1.2.3 From 7ff009d9323a4431c9463fc8e5bfb3ada17f33e0 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 19 Mar 2014 00:37:58 +0100 Subject: add visibility and PHPDocs to config plugin class --- lib/plugins/config/settings/config.class.php | 152 ++++++++++++++++++++++----- 1 file changed, 125 insertions(+), 27 deletions(-) diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php index 05f8470f7..8dae23110 100644 --- a/lib/plugins/config/settings/config.class.php +++ b/lib/plugins/config/settings/config.class.php @@ -18,6 +18,7 @@ if (!class_exists('configuration')) { var $_heading = ''; // heading string written at top of config file - don't include comment indicators var $_loaded = false; // set to true after configuration files are loaded var $_metadata = array(); // holds metadata describing the settings + /** @var setting[] */ var $setting = array(); // array of setting objects var $locked = false; // configuration is considered locked if it can't be updated var $show_disabled_plugins = false; @@ -31,8 +32,10 @@ if (!class_exists('configuration')) { /** * constructor + * + * @param string $datafile path to config metadata file */ - function configuration($datafile) { + public function configuration($datafile) { global $conf, $config_cascade; if (!@file_exists($datafile)) { @@ -55,7 +58,10 @@ if (!class_exists('configuration')) { $this->retrieve_settings(); } - function retrieve_settings() { + /** + * Retrieve and stores settings in setting[] attribute + */ + public function retrieve_settings() { global $conf; $no_default_check = array('setting_fieldset', 'setting_undefined', 'setting_no_class'); @@ -100,7 +106,15 @@ if (!class_exists('configuration')) { } } - function save_settings($id, $header='', $backup=true) { + /** + * Stores setting[] array to file + * + * @param string $id Name of plugin, which saves the settings + * @param string $header Text at the top of the rewritten settings file + * @param bool $backup backup current file? (remove any existing backup) + * @return bool succesful? + */ + public function save_settings($id, $header='', $backup=true) { global $conf; if ($this->locked) return false; @@ -138,13 +152,19 @@ if (!class_exists('configuration')) { /** * Update last modified time stamp of the config file */ - function touch_settings(){ + public function touch_settings(){ if ($this->locked) return false; $file = end($this->_local_files); return @touch($file); } - function _read_config_group($files) { + /** + * Read and merge given config files + * + * @param array $files file paths + * @return array config settings + */ + protected function _read_config_group($files) { $config = array(); foreach ($files as $file) { $config = array_merge($config, $this->_read_config($file)); @@ -154,7 +174,10 @@ if (!class_exists('configuration')) { } /** - * return an array of config settings + * Return an array of config settings + * + * @param string $file file path + * @return array config settings */ function _read_config($file) { @@ -206,7 +229,14 @@ if (!class_exists('configuration')) { return $config; } - function _out_header($id, $header) { + /** + * Returns header of rewritten settings file + * + * @param string $id plugin name of which generated this output + * @param string $header additional text for at top of the file + * @return string text of header + */ + protected function _out_header($id, $header) { $out = ''; if ($this->_format == 'php') { $out .= '<'.'?php'."\n". @@ -221,7 +251,12 @@ if (!class_exists('configuration')) { return $out; } - function _out_footer() { + /** + * Returns footer of rewritten settings file + * + * @return string text of footer + */ + protected function _out_footer() { $out = ''; if ($this->_format == 'php') { $out .= "\n// end auto-generated content\n"; @@ -230,9 +265,13 @@ if (!class_exists('configuration')) { return $out; } - // configuration is considered locked if there is no local settings filename - // or the directory its in is not writable or the file exists and is not writable - function _is_locked() { + /** + * Configuration is considered locked if there is no local settings filename + * or the directory its in is not writable or the file exists and is not writable + * + * @return bool true: locked, false: writable + */ + protected function _is_locked() { if (!$this->_local_files) return true; $local = $this->_local_files[0]; @@ -247,7 +286,7 @@ if (!class_exists('configuration')) { * not used ... conf's contents are an array! * reduce any multidimensional settings to one dimension using CM_KEYMARKER */ - function _flatten($conf,$prefix='') { + protected function _flatten($conf,$prefix='') { $out = array(); @@ -264,6 +303,12 @@ if (!class_exists('configuration')) { return $out; } + /** + * Returns array of plugin names + * + * @return array plugin names + * @triggers PLUGIN_CONFIG_PLUGINLIST event + */ function get_plugin_list() { if (is_null($this->_plugin_list)) { $list = plugin_list('',$this->show_disabled_plugins); @@ -281,6 +326,9 @@ if (!class_exists('configuration')) { /** * load metadata for plugin and template settings + * + * @param string $tpl name of active template + * @return array metadata of settings */ function get_plugintpl_metadata($tpl){ $file = '/conf/metadata.php'; @@ -321,7 +369,10 @@ if (!class_exists('configuration')) { } /** - * load default settings for plugins and templates + * Load default settings for plugins and templates + * + * @param string $tpl name of active template + * @return array default settings */ function get_plugintpl_default($tpl){ $file = '/conf/default.php'; @@ -368,7 +419,11 @@ if (!class_exists('setting')) { static protected $_validCautions = array('warning','danger','security'); - function setting($key, $params=null) { + /** + * @param string $key + * @param array|null $params array with metadata of setting + */ + public function setting($key, $params=null) { $this->_key = $key; if (is_array($params)) { @@ -379,9 +434,13 @@ if (!class_exists('setting')) { } /** - * receives current values for the setting $key + * Receives current values for the setting $key + * + * @param mixed $default default setting value + * @param mixed $local local setting value + * @param mixed $protected protected setting value */ - function initialize($default, $local, $protected) { + public function initialize($default, $local, $protected) { if (isset($default)) $this->_default = $default; if (isset($local)) $this->_local = $local; if (isset($protected)) $this->_protected = $protected; @@ -395,7 +454,7 @@ if (!class_exists('setting')) { * @param mixed $input the new value * @return boolean true if changed, false otherwise (incl. on error) */ - function update($input) { + public function update($input) { if (is_null($input)) return false; if ($this->is_protected()) return false; @@ -413,9 +472,13 @@ if (!class_exists('setting')) { } /** - * @return array(string $label_html, string $input_html) + * Build html for label and input of setting + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @param bool $echo true: show inputted value, when error occurred, otherwise the stored setting + * @return array(string $label_html, string $input_html) */ - function html(&$plugin, $echo=false) { + public function html(&$plugin, $echo=false) { $value = ''; $disable = ''; @@ -439,9 +502,9 @@ if (!class_exists('setting')) { } /** - * generate string to save setting value to file according to $fmt + * Generate string to save setting value to file according to $fmt */ - function out($var, $fmt='php') { + public function out($var, $fmt='php') { if ($this->is_protected()) return ''; if (is_null($this->_local) || ($this->_default == $this->_local)) return ''; @@ -457,17 +520,45 @@ if (!class_exists('setting')) { return $out; } - function prompt(&$plugin) { + /** + * Returns the localized prompt + * + * @param DokuWiki_Plugin $plugin object of config plugin + * @return string text + */ + public function prompt(&$plugin) { $prompt = $plugin->getLang($this->_key); if (!$prompt) $prompt = htmlspecialchars(str_replace(array('____','_'),' ',$this->_key)); return $prompt; } - function is_protected() { return !is_null($this->_protected); } - function is_default() { return !$this->is_protected() && is_null($this->_local); } - function error() { return $this->_error; } + /** + * Is setting protected + * + * @return bool + */ + public function is_protected() { return !is_null($this->_protected); } + + /** + * Is setting the default? + * + * @return bool + */ + public function is_default() { return !$this->is_protected() && is_null($this->_local); } + + /** + * Has an error? + * + * @return bool + */ + public function error() { return $this->_error; } - function caution() { + /** + * Returns caution + * + * @return bool|string caution string, otherwise false for invalid caution + */ + public function caution() { if (!empty($this->_caution)) { if (!in_array($this->_caution, setting::$_validCautions)) { trigger_error('Invalid caution string ('.$this->_caution.') in metadata for setting "'.$this->_key.'"', E_USER_WARNING); @@ -486,7 +577,14 @@ if (!class_exists('setting')) { return false; } - function _out_key($pretty=false,$url=false) { + /** + * Returns setting key, eventually with referer to config: namespace at dokuwiki.org + * + * @param bool $pretty create nice key + * @param bool $url provide url to config: namespace + * @return string key + */ + public function _out_key($pretty=false,$url=false) { if($pretty){ $out = str_replace(CM_KEYMARKER,"»",$this->_key); if ($url && !strstr($out,'»')) {//provide no urls for plugins, etc. -- cgit v1.2.3 From c6571d58ba8f02fc1afaeb54319f4289da993d02 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 19 Mar 2014 11:53:11 +0100 Subject: fixed media icons in recent changes. closes #625 --- inc/media.php | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/inc/media.php b/inc/media.php index 2c1a3e8eb..b5347d145 100644 --- a/inc/media.php +++ b/inc/media.php @@ -1448,17 +1448,23 @@ function media_printfile($item,$auth,$jump,$display_namespace=false){ echo ''.NL; } -function media_printicon($filename){ +/** + * Display a media icon + * + * @param $filename + * @param string $size the size subfolder, if not specified 16x16 is used + * @return string + */ +function media_printicon($filename, $size=''){ list($ext) = mimetype(mediaFN($filename),false); - if (@file_exists(DOKU_INC.'lib/images/fileicons/32x32/'.$ext.'.png')) { - $icon = DOKU_BASE.'lib/images/fileicons/32x32/'.$ext.'.png'; + if (@file_exists(DOKU_INC.'lib/images/fileicons/'.$size.'/'.$ext.'.png')) { + $icon = DOKU_BASE.'lib/images/fileicons/'.$size.'/'.$ext.'.png'; } else { - $icon = DOKU_BASE.'lib/images/fileicons/32x32/file.png'; + $icon = DOKU_BASE.'lib/images/fileicons/'.$size.'/file.png'; } return ''.$filename.''; - } /** @@ -1482,7 +1488,7 @@ function media_printfile_thumbs($item,$auth,$jump=false,$display_namespace=false echo ''; - echo media_printicon($item['id']); + echo media_printicon($item['id'], '32x32'); echo ''; } echo ''.NL; -- cgit v1.2.3 From 9fb664942d6f51d48d02b592980455259907d9a5 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 19 Mar 2014 11:52:22 +0100 Subject: converted git tool to new CLI base --- bin/gittool.php | 231 ++++++++++++++++++++++++++++---------------------------- inc/cli.php | 125 +++++++++++++++--------------- 2 files changed, 181 insertions(+), 175 deletions(-) diff --git a/bin/gittool.php b/bin/gittool.php index f9f68ac94..b429c8d1a 100755 --- a/bin/gittool.php +++ b/bin/gittool.php @@ -3,78 +3,108 @@ if('cli' != php_sapi_name()) die(); ini_set('memory_limit', '128M'); -if(!defined('DOKU_INC')) define('DOKU_INC', realpath(dirname(__FILE__).'/../').'/'); +if(!defined('DOKU_INC')) define('DOKU_INC', realpath(dirname(__FILE__) . '/../') . '/'); define('NOSESSION', 1); -require_once(DOKU_INC.'inc/init.php'); +require_once(DOKU_INC . 'inc/init.php'); -$GitToolCLI = new GitToolCLI(); -array_shift($argv); -$command = array_shift($argv); - -switch($command) { - case '': - case 'help': - $GitToolCLI->cmd_help(); - break; - case 'clone': - $GitToolCLI->cmd_clone($argv); - break; - case 'install': - $GitToolCLI->cmd_install($argv); - break; - case 'repo': - case 'repos': - $GitToolCLI->cmd_repos(); - break; - default: - $GitToolCLI->cmd_git($command, $argv); -} /** * Easily manage DokuWiki git repositories * * @author Andreas Gohr */ -class GitToolCLI { - private $color = true; - - public function cmd_help() { - echo << [parameters] - -Manage git repositories for DokuWiki and its plugins and templates. - -EXAMPLE +class GitToolCLI extends DokuCLI { -$> ./bin/gittool.php clone gallery template:ach -$> ./bin/gittool.php repos -$> ./bin/gittool.php origin -v - -COMMANDS + /** + * Register options and arguments on the given $options object + * + * @param DokuCLI_Options $options + * @return void + */ + protected function setup(DokuCLI_Options $options) { + $options->setHelp( + "Manage git repositories for DokuWiki and its plugins and templates.\n\n" . + "EXAMPLE\n\n" . + "$> ./bin/gittool.php clone gallery template:ach\n" . + "$> ./bin/gittool.php repos\n" . + "$> ./bin/gittool.php origin -v\n" + ); -help - This help screen + $options->registerArgument( + 'command', + 'Command to execute. See below', + true + ); -clone - Tries to install a known plugin or template (prefix with template:) via - git. Uses the DokuWiki.org plugin repository to find the proper git - repository. Multiple extensions can be given as parameters + $options->registerCommand( + 'clone', + 'Tries to install a known plugin or template (prefix with template:) via git. Uses the DokuWiki.org ' . + 'plugin repository to find the proper git repository. Multiple extensions can be given as parameters' + ); + $options->registerArgument( + 'extension', + 'name of the extension to install, prefix with \'template:\' for templates', + true, + 'clone' + ); -install - The same as clone, but when no git source repository can be found, the - extension is installed via download + $options->registerCommand( + 'install', + 'The same as clone, but when no git source repository can be found, the extension is installed via ' . + 'download' + ); + $options->registerArgument( + 'extension', + 'name of the extension to install, prefix with \'template:\' for templates', + true, + 'install' + ); -repos - Lists all git repositories found in this DokuWiki installation + $options->registerCommand( + 'repos', + 'Lists all git repositories found in this DokuWiki installation' + ); - - Any unknown commands are assumed to be arguments to git and will be - executed in all repositories found within this DokuWiki installation + $options->registerCommand( + '*', + 'Any unknown commands are assumed to be arguments to git and will be executed in all repositories ' . + 'found within this DokuWiki installation' + ); + } -EOF; + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @return void + */ + protected function main(DokuCLI_Options $options) { + $command = $options->getCmd(); + if(!$command) $command = array_shift($options->args); + + switch($command) { + case '': + echo $options->help('foo'); + break; + case 'clone': + $this->cmd_clone($options->args); + break; + case 'install': + $this->cmd_install($options->args); + break; + case 'repo': + case 'repos': + $this->cmd_repos(); + break; + default: + $this->cmd_git($command, $options->args); + } } + /** * Tries to install the given extensions using git clone * @@ -88,7 +118,7 @@ EOF; $repo = $this->getSourceRepo($ext); if(!$repo) { - $this->msg_error("could not find a repository for $ext"); + $this->error("could not find a repository for $ext"); $errors[] = $ext; } else { if($this->cloneExtension($ext, $repo)) { @@ -100,8 +130,8 @@ EOF; } echo "\n"; - if($succeeded) $this->msg_success('successfully cloned the following extensions: '.join(', ', $succeeded)); - if($errors) $this->msg_error('failed to clone the following extensions: '.join(', ', $errors)); + if($succeeded) $this->success('successfully cloned the following extensions: ' . join(', ', $succeeded)); + if($errors) $this->error('failed to clone the following extensions: ' . join(', ', $errors)); } /** @@ -117,7 +147,7 @@ EOF; $repo = $this->getSourceRepo($ext); if(!$repo) { - $this->msg_info("could not find a repository for $ext"); + $this->info("could not find a repository for $ext"); if($this->downloadExtension($ext)) { $succeeded[] = $ext; } else { @@ -133,8 +163,8 @@ EOF; } echo "\n"; - if($succeeded) $this->msg_success('successfully installed the following extensions: '.join(', ', $succeeded)); - if($errors) $this->msg_error('failed to install the following extensions: '.join(', ', $errors)); + if($succeeded) $this->success('successfully installed the following extensions: ' . join(', ', $succeeded)); + if($errors) $this->error('failed to install the following extensions: ' . join(', ', $errors)); } /** @@ -152,19 +182,19 @@ EOF; foreach($repos as $repo) { if(!@chdir($repo)) { - $this->msg_error("Could not change into $repo"); + $this->error("Could not change into $repo"); continue; } echo "\n"; - $this->msg_info("executing $shell in $repo"); + $this->info("executing $shell in $repo"); $ret = 0; system($shell, $ret); if($ret == 0) { - $this->msg_success("git succeeded in $repo"); + $this->success("git succeeded in $repo"); } else { - $this->msg_error("git failed in $repo"); + $this->error("git failed in $repo"); } } } @@ -193,23 +223,23 @@ EOF; $url = $plugin->getDownloadURL(); if(!$url) { - $this->msg_error("no download URL for $ext"); + $this->error("no download URL for $ext"); return false; } $ok = false; try { - $this->msg_info("installing $ext via download from $url"); + $this->info("installing $ext via download from $url"); $ok = $plugin->installFromURL($url); } catch(Exception $e) { - $this->msg_error($e->getMessage()); + $this->error($e->getMessage()); } if($ok) { - $this->msg_success("installed $ext via download"); + $this->success("installed $ext via download"); return true; } else { - $this->msg_success("failed to install $ext via download"); + $this->success("failed to install $ext via download"); return false; } } @@ -223,19 +253,19 @@ EOF; */ private function cloneExtension($ext, $repo) { if(substr($ext, 0, 9) == 'template:') { - $target = fullpath(tpl_incdir().'../'.substr($ext, 9)); + $target = fullpath(tpl_incdir() . '../' . substr($ext, 9)); } else { - $target = DOKU_PLUGIN.$ext; + $target = DOKU_PLUGIN . $ext; } - $this->msg_info("cloning $ext from $repo to $target"); + $this->info("cloning $ext from $repo to $target"); $ret = 0; system("git clone $repo $target", $ret); if($ret === 0) { - $this->msg_success("cloning of $ext succeeded"); + $this->success("cloning of $ext succeeded"); return true; } else { - $this->msg_error("cloning of $ext failed"); + $this->error("cloning of $ext failed"); return false; } } @@ -248,17 +278,17 @@ EOF; * @return array */ private function findRepos() { - $this->msg_info('Looking for .git directories'); + $this->info('Looking for .git directories'); $data = array_merge( - glob(DOKU_INC.'.git', GLOB_ONLYDIR), - glob(DOKU_PLUGIN.'*/.git', GLOB_ONLYDIR), - glob(fullpath(tpl_incdir().'../').'/*/.git', GLOB_ONLYDIR) + glob(DOKU_INC . '.git', GLOB_ONLYDIR), + glob(DOKU_PLUGIN . '*/.git', GLOB_ONLYDIR), + glob(fullpath(tpl_incdir() . '../') . '/*/.git', GLOB_ONLYDIR) ); if(!$data) { - $this->msg_error('Found no .git directories'); + $this->error('Found no .git directories'); } else { - $this->msg_success('Found '.count($data).' .git directories'); + $this->success('Found ' . count($data) . ' .git directories'); } $data = array_map('fullpath', array_map('dirname', $data)); return $data; @@ -283,7 +313,7 @@ EOF; if(preg_match('/github\.com\/([^\/]+)\/([^\/]+)/i', $repourl, $m)) { $user = $m[1]; $repo = $m[2]; - return 'https://github.com/'.$user.'/'.$repo.'.git'; + return 'https://github.com/' . $user . '/' . $repo . '.git'; } // match gitorious repos @@ -292,49 +322,20 @@ EOF; $repo = $m[2]; if(!$repo) $repo = $user; - return 'https://git.gitorious.org/'.$user.'/'.$repo.'.git'; + return 'https://git.gitorious.org/' . $user . '/' . $repo . '.git'; } // match bitbucket repos - most people seem to use mercurial there though if(preg_match('/bitbucket\.org\/([^\/]+)\/([^\/]+)/i', $repourl, $m)) { $user = $m[1]; $repo = $m[2]; - return 'https://bitbucket.org/'.$user.'/'.$repo.'.git'; + return 'https://bitbucket.org/' . $user . '/' . $repo . '.git'; } return false; } +} - /** - * Print an error message - * - * @param $string - */ - private function msg_error($string) { - if($this->color) echo "\033[31m"; // red - echo "E: $string\n"; - if($this->color) echo "\033[37m"; // reset - } - /** - * Print a success message - * - * @param $string - */ - private function msg_success($string) { - if($this->color) echo "\033[32m"; // green - echo "S: $string\n"; - if($this->color) echo "\033[37m"; // reset - } - - /** - * Print an info message - * - * @param $string - */ - private function msg_info($string) { - if($this->color) echo "\033[36m"; // cyan - echo "I: $string\n"; - if($this->color) echo "\033[37m"; // reset - } -} \ No newline at end of file +$GitToolCLI = new GitToolCLI(); +$GitToolCLI->run(); \ No newline at end of file diff --git a/inc/cli.php b/inc/cli.php index 2827ae233..2cba828f0 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -10,8 +10,6 @@ abstract class DokuCLI { /** @var string the executed script itself */ protected $bin; - /** @var array list of non-option arguments */ - protected $args; /** @var DokuCLI_Options the option parser */ protected $options; /** @var DokuCLI_Colors */ @@ -25,8 +23,6 @@ abstract class DokuCLI { public function __construct() { set_exception_handler(array($this, 'fatal')); - $this->args = $this->readPHPArgv(); - $this->bin = basename(array_shift($this->args)); $this->options = new DokuCLI_Options(); $this->colors = new DokuCLI_Colors(); @@ -46,10 +42,9 @@ abstract class DokuCLI { * Arguments and options have been parsed when this is run * * @param DokuCLI_Options $options - * @param array $args * @return void */ - abstract protected function main(DokuCLI_Options $options, &$args); + abstract protected function main(DokuCLI_Options $options); /** * Execute the CLI program @@ -73,22 +68,24 @@ abstract class DokuCLI { ); // parse - $this->options->parseOptions($this->args); + $this->options->parseOptions(); // handle defaults if($this->options->getOpt('no-colors')) { $this->colors->disable(); } if($this->options->getOpt('help')) { - $this->options->help($this->bin); + echo $this->options->help($this->bin); exit(0); } // check arguments - $this->options->checkArguments($this->args); + $this->options->checkArguments(); // execute - $this->main($this->options, $this->args); + $this->main($this->options); + + exit(0); } /** @@ -98,7 +95,7 @@ abstract class DokuCLI { */ public function fatal($error) { $code = 0; - if(is_a($error, 'Exception')) { + if(is_object($error) && is_a($error, 'Exception')) { /** @var Exception $error */ $code = $error->getCode(); $error = $error->getMessage(); @@ -136,29 +133,6 @@ abstract class DokuCLI { $this->colors->ptln("I: $string", 'cyan'); } - /** - * Safely read the $argv PHP array across different PHP configurations. - * Will take care on register_globals and register_argc_argv ini directives - * - * @throws DokuCLI_Exception - * @return array the $argv PHP array or PEAR error if not registered - */ - private function readPHPArgv() { - global $argv; - if(!is_array($argv)) { - if(!@is_array($_SERVER['argv'])) { - if(!@is_array($GLOBALS['HTTP_SERVER_VARS']['argv'])) { - throw new DokuCLI_Exception( - "Could not read cmd args (register_argc_argv=Off?)", - DOKU_CLI_OPTS_ARG_READ - ); - } - return $GLOBALS['HTTP_SERVER_VARS']['argv']; - } - return $_SERVER['argv']; - } - return $argv; - } } /** @@ -264,14 +238,21 @@ class DokuCLI_Colors { * @author Andreas Gohr */ class DokuCLI_Options { - /** @var array $setup keeps the list of options to parse */ + /** @var array keeps the list of options to parse */ protected $setup; - /** @var array $options store parsed options */ - protected $options; + /** @var array store parsed options */ + protected $options = array(); + /** @var string current parsed command if any */ protected $command = ''; + /** @var array passed non-option arguments*/ + public $args = array(); + + /** @var string the executed script */ + protected $bin; + public function __construct() { $this->setup = array( '' => array( @@ -281,6 +262,9 @@ class DokuCLI_Options { ) ); // default command + $this->args = $this->readPHPArgv(); + $this->bin = basename(array_shift($this->args)); + $this->options = array(); } @@ -317,7 +301,7 @@ class DokuCLI_Options { /** * This registers a sub command * - * Sub commands have their own options and use their own function (not main()) + * Sub commands have their own options and use their own function (not main()). * * @param string $command * @param string $help @@ -365,15 +349,14 @@ class DokuCLI_Options { * * Throws an exception if arguments are missing. Called from parseOptions() * - * @param array $args * @throws DokuCLI_Exception */ - public function checkArguments($args) { - $argc = count($args); + public function checkArguments() { + $argc = count($this->args); $req = 0; foreach($this->setup[$this->command]['args'] as $arg) { - if(!$args['required']) break; // last required arguments seen + if(!$arg['required']) break; // last required arguments seen $req++; } @@ -389,32 +372,31 @@ class DokuCLI_Options { * * Note that command options will overwrite any global options with the same name * - * @param array $args * @throws DokuCLI_Exception */ - public function parseOptions(&$args) { + public function parseOptions() { $non_opts = array(); - $argc = count($args); + $argc = count($this->args); for($i = 0; $i < $argc; $i++) { - $arg = $args[$i]; + $arg = $this->args[$i]; // The special element '--' means explicit end of options. Treat the rest of the arguments as non-options // and end the loop. if($arg == '--') { - $non_opts = array_merge($non_opts, array_slice($args, $i + 1)); + $non_opts = array_merge($non_opts, array_slice($this->args, $i + 1)); break; } // '-' is stdin - a normal argument if($arg == '-') { - $non_opts = array_merge($non_opts, array_slice($args, $i)); + $non_opts = array_merge($non_opts, array_slice($this->args, $i)); break; } // first non-option if($arg{0} != '-') { - $non_opts = array_merge($non_opts, array_slice($args, $i)); + $non_opts = array_merge($non_opts, array_slice($this->args, $i)); break; } @@ -428,8 +410,8 @@ class DokuCLI_Options { // argument required? if($this->setup[$this->command]['opts'][$opt]['needsarg']) { - if(is_null($val) && $i + 1 < $argc && !preg_match('/^--?[\w]/', $args[$i + 1])) { - $val = $args[++$i]; + if(is_null($val) && $i + 1 < $argc && !preg_match('/^--?[\w]/', $this->args[$i + 1])) { + $val = $this->args[++$i]; } if(is_null($val)) { throw new DokuCLI_Exception("Option $arg requires an argument", DokuCLI_Exception::E_OPT_ARG_REQUIRED); @@ -453,8 +435,8 @@ class DokuCLI_Options { // argument required? if($this->setup[$this->command]['opts'][$opt]['needsarg']) { $val = null; - if($i + 1 < $argc && !preg_match('/^--?[\w]/', $args[$i + 1])) { - $val = $args[++$i]; + if($i + 1 < $argc && !preg_match('/^--?[\w]/', $this->args[$i + 1])) { + $val = $this->args[++$i]; } if(is_null($val)) { throw new DokuCLI_Exception("Option $arg requires an argument", DokuCLI_Exception::E_OPT_ARG_REQUIRED); @@ -466,13 +448,13 @@ class DokuCLI_Options { } // parsing is now done, update args array - $args = $non_opts; + $this->args = $non_opts; // if not done yet, check if first argument is a command and reexecute argument parsing if it is - if(!$this->command && $args && isset($this->setup[$args[0]])) { + if(!$this->command && $this->args && isset($this->setup[$this->args[0]]) ) { // it is a command! - $this->command = array_shift($args); - $this->parseOptions($args); // second pass + $this->command = array_shift($this->args); + $this->parseOptions(); // second pass } } @@ -504,10 +486,9 @@ class DokuCLI_Options { /** * Builds a help screen from the available options. You may want to call it from -h or on error * - * @param string $bin name of the script itself * @return string */ - public function help($bin) { + public function help() { $text = ''; $hascommands = (count($this->setup) > 1); @@ -516,7 +497,7 @@ class DokuCLI_Options { $hasargs = (bool) $this->setup[$command]['args']; if(!$command) { - $text .= 'USAGE: ' . $bin; + $text .= 'USAGE: ' . $this->bin; } else { $text .= "\n$command"; } @@ -565,6 +546,30 @@ class DokuCLI_Options { return $text; } + /** + * Safely read the $argv PHP array across different PHP configurations. + * Will take care on register_globals and register_argc_argv ini directives + * + * @throws DokuCLI_Exception + * @return array the $argv PHP array or PEAR error if not registered + */ + private function readPHPArgv() { + global $argv; + if(!is_array($argv)) { + if(!@is_array($_SERVER['argv'])) { + if(!@is_array($GLOBALS['HTTP_SERVER_VARS']['argv'])) { + throw new DokuCLI_Exception( + "Could not read cmd args (register_argc_argv=Off?)", + DOKU_CLI_OPTS_ARG_READ + ); + } + return $GLOBALS['HTTP_SERVER_VARS']['argv']; + } + return $_SERVER['argv']; + } + return $argv; + } + } /** -- cgit v1.2.3 From ae1ce4a68df467af30fafe2e47a3c11983d7f8be Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 19 Mar 2014 22:56:29 +0100 Subject: wrap help texts to fit typial terminal width --- bin/gittool.php | 5 +---- inc/cli.php | 67 +++++++++++++++++++++++++++++++++++++++++++++------------ 2 files changed, 54 insertions(+), 18 deletions(-) diff --git a/bin/gittool.php b/bin/gittool.php index b429c8d1a..cb4ef3484 100755 --- a/bin/gittool.php +++ b/bin/gittool.php @@ -8,7 +8,6 @@ define('NOSESSION', 1); require_once(DOKU_INC . 'inc/init.php'); - /** * Easily manage DokuWiki git repositories * @@ -25,10 +24,9 @@ class GitToolCLI extends DokuCLI { protected function setup(DokuCLI_Options $options) { $options->setHelp( "Manage git repositories for DokuWiki and its plugins and templates.\n\n" . - "EXAMPLE\n\n" . "$> ./bin/gittool.php clone gallery template:ach\n" . "$> ./bin/gittool.php repos\n" . - "$> ./bin/gittool.php origin -v\n" + "$> ./bin/gittool.php origin -v" ); $options->registerArgument( @@ -104,7 +102,6 @@ class GitToolCLI extends DokuCLI { } } - /** * Tries to install the given extensions using git clone * diff --git a/inc/cli.php b/inc/cli.php index 2cba828f0..6380c9174 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -23,7 +23,6 @@ abstract class DokuCLI { public function __construct() { set_exception_handler(array($this, 'fatal')); - $this->options = new DokuCLI_Options(); $this->colors = new DokuCLI_Colors(); } @@ -247,7 +246,7 @@ class DokuCLI_Options { /** @var string current parsed command if any */ protected $command = ''; - /** @var array passed non-option arguments*/ + /** @var array passed non-option arguments */ public $args = array(); /** @var string the executed script */ @@ -451,7 +450,7 @@ class DokuCLI_Options { $this->args = $non_opts; // if not done yet, check if first argument is a command and reexecute argument parsing if it is - if(!$this->command && $this->args && isset($this->setup[$this->args[0]]) ) { + if(!$this->command && $this->args && isset($this->setup[$this->args[0]])) { // it is a command! $this->command = array_shift($this->args); $this->parseOptions(); // second pass @@ -502,7 +501,6 @@ class DokuCLI_Options { $text .= "\n$command"; } - if($hasopts) $text .= ' '; foreach($this->setup[$command]['args'] as $arg) { if($arg['required']) { $text .= ' <' . $arg['name'] . '>'; @@ -510,36 +508,45 @@ class DokuCLI_Options { $text .= ' [<' . $arg['name'] . '>]'; } } - $text .= "\n\n"; + $text .= "\n"; if($this->setup[$command]['help']) { - $text .= ' ' . $this->setup[$command]['help'] . "\n\n"; + $text .= "\n"; + $text .= $this->tableFormat( + array(2, 72), + array('', $this->setup[$command]['help'] . "\n") + ); } if($hasopts) { - $text .= " OPTIONS\n\n"; - + $text .= "\n"; foreach($this->setup[$command]['opts'] as $long => $opt) { $name = "--$long"; if($opt['short']) $name = '-' . $opt['short'] . ' ' . $name; if($opt['needsarg']) $name .= ' '; - $text .= sprintf(" %-15s %s\n", $name, $opt['help']); - + $text .= $this->tableFormat( + array(2, 20, 52), + array('', $name, $opt['help']) + ); } } if($hasargs) { - $text .= " ARGUMENTS\n\n"; + $text .= "\n"; foreach($this->setup[$command]['args'] as $arg) { $name = '<' . $arg['name'] . '>'; - $text .= sprintf(" %-15s %s\n", $name, $arg['help']); + + $text .= $this->tableFormat( + array(2, 20, 52), + array('', $name, $arg['help']) + ); } } - if($command == '' && $hascommands){ - $text .= "\n\nThis tool accepts a command as first parameter as outlined below:\n"; + if($command == '' && $hascommands) { + $text .= "\nThis tool accepts a command as first parameter as outlined below:\n"; } } @@ -570,6 +577,38 @@ class DokuCLI_Options { return $argv; } + /** + * Displays text in multiple word wrapped columns + * + * @param array $widths list of column widths (in characters) + * @param array $texts list of texts for each column + * @return string + */ + private function tableFormat($widths, $texts) { + $wrapped = array(); + $maxlen = 0; + + foreach($widths as $col => $width) { + $wrapped[$col] = explode("\n", wordwrap($texts[$col], $width - 1, true)); // -1 char border + $len = count($wrapped[$col]); + if($len > $maxlen) $maxlen = $len; + + } + + $out = ''; + for($i = 0; $i < $maxlen; $i++) { + foreach($widths as $col => $width) { + if(isset($wrapped[$col][$i])) { + $val = $wrapped[$col][$i]; + } else { + $val = ''; + } + $out .= sprintf('%-' . $width . 's', $val); + } + $out .= "\n"; + } + return $out; + } } /** -- cgit v1.2.3 From 6dcc1e8f85ee46b2c7ed76d422523be1e27941c5 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Thu, 20 Mar 2014 15:39:57 +0100 Subject: Improve encoding dir in rssListNamespace() --- feed.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/feed.php b/feed.php index 5bf1d2e85..b0187476b 100644 --- a/feed.php +++ b/feed.php @@ -474,7 +474,7 @@ function rssListNamespace($opt) { global $conf; $ns = ':'.cleanID($opt['namespace']); - $ns = str_replace(':', '/', $ns); + $ns = utf8_encodeFN(str_replace(':', '/', $ns)); $data = array(); $search_opts = array( -- cgit v1.2.3 From 477e59988f5e90600b6fdcda7c055ab8ea001e03 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Thu, 20 Mar 2014 15:40:31 +0100 Subject: add date sort option for list mode of feed --- feed.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/feed.php b/feed.php index b0187476b..2ed2fce79 100644 --- a/feed.php +++ b/feed.php @@ -120,6 +120,8 @@ function rss_parseOptions() { 'items' => array('int', 'num', $conf['recent']), // Boolean, only used in rc mode 'show_minor' => array('bool', 'minor', false), + // String, only used in list mode + 'sort' => array('str', 'sort', 'natural'), // String, only used in search mode 'search_query' => array('str', 'q', null), // One of: pages, media, both @@ -131,6 +133,7 @@ function rss_parseOptions() { $opt['items'] = max(0, (int) $opt['items']); $opt['show_minor'] = (bool) $opt['show_minor']; + $opt['sort'] = valid_input_set('sort', array('default' => 'natural', 'date'), $opt); $opt['guardmail'] = ($conf['mailguard'] != '' && $conf['mailguard'] != 'none'); @@ -482,7 +485,7 @@ function rssListNamespace($opt) { 'pagesonly' => true, 'listfiles' => true ); - search($data, $conf['datadir'], 'search_universal', $search_opts, $ns); + search($data, $conf['datadir'], 'search_universal', $search_opts, $ns, $lvl = 1, $opt['sort']); return $data; } -- cgit v1.2.3 From 193eb41176fb95f01489814bcc879dc500257c84 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Thu, 20 Mar 2014 19:41:27 +0100 Subject: fixed broken wordwrapping --- inc/cli.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/cli.php b/inc/cli.php index 6380c9174..e8c2c9f3e 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -589,7 +589,7 @@ class DokuCLI_Options { $maxlen = 0; foreach($widths as $col => $width) { - $wrapped[$col] = explode("\n", wordwrap($texts[$col], $width - 1, true)); // -1 char border + $wrapped[$col] = explode("\n", wordwrap($texts[$col], $width - 1, "\n", true)); // -1 char border $len = count($wrapped[$col]); if($len > $maxlen) $maxlen = $len; -- cgit v1.2.3 From 99c6702358b65e9f98d1799d261b4dcc7b88d414 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Thu, 20 Mar 2014 19:43:48 +0100 Subject: removed superflous argument --- inc/cli.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/cli.php b/inc/cli.php index e8c2c9f3e..84aad3411 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -74,7 +74,7 @@ abstract class DokuCLI { $this->colors->disable(); } if($this->options->getOpt('help')) { - echo $this->options->help($this->bin); + echo $this->options->help(); exit(0); } -- cgit v1.2.3 From b0b7909bdd454e9614f4ffe34f384b0da0ce4585 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Thu, 20 Mar 2014 20:55:57 +0100 Subject: converted some more CLI tools, minor CLI class updates --- bin/gittool.php | 10 +--- bin/indexer.php | 176 ++++++++++++++++++++++++++++---------------------------- bin/render.php | 92 ++++++++++++++--------------- inc/cli.php | 25 +++++--- 4 files changed, 152 insertions(+), 151 deletions(-) diff --git a/bin/gittool.php b/bin/gittool.php index cb4ef3484..fca76768d 100755 --- a/bin/gittool.php +++ b/bin/gittool.php @@ -1,13 +1,9 @@ #!/usr/bin/php run(); \ No newline at end of file +// Main +$cli = new GitToolCLI(); +$cli->run(); \ No newline at end of file diff --git a/bin/indexer.php b/bin/indexer.php index 6f6b5d9fa..76269f95a 100755 --- a/bin/indexer.php +++ b/bin/indexer.php @@ -1,98 +1,100 @@ #!/usr/bin/php isError() ) { - fwrite( STDERR, $OPTS->getMessage() . "\n"); - _usage(); - exit(1); -} -$CLEAR = false; -$QUIET = false; -$INDEXER = null; -foreach ($OPTS->options as $key => $val) { - switch ($key) { - case 'h': - case 'help': - _usage(); - exit; - case 'c': - case 'clear': - $CLEAR = true; - break; - case 'q': - case 'quiet': - $QUIET = true; - break; +if(!defined('DOKU_INC')) define('DOKU_INC', realpath(dirname(__FILE__) . '/../') . '/'); +define('NOSESSION', 1); +require_once(DOKU_INC . 'inc/init.php'); + +class IndexerCLI extends DokuCLI { + + private $quiet = false; + private $clear = false; + + /** + * Register options and arguments on the given $options object + * + * @param DokuCLI_Options $options + * @return void + */ + protected function setup(DokuCLI_Options $options) { + $options->setHelp( + 'Updates the searchindex by indexing all new or changed pages. When the -c option is ' . + 'given the index is cleared first.' + ); + + $options->registerOption( + 'clear', + 'clear the index before updating', + 'c' + ); + $options->registerOption( + 'quiet', + 'don\'t produce any output', + 'q' + ); } -} - -#------------------------------------------------------------------------------ -# Action - -if($CLEAR) _clearindex(); -_update(); - - - -#------------------------------------------------------------------------------ - -function _usage() { - print "Usage: indexer.php - - Updates the searchindex by indexing all new or changed pages - when the -c option is given the index is cleared first. - OPTIONS - -h, --help show this help and exit - -c, --clear clear the index before updating - -q, --quiet don't produce any output -"; -} - -function _update(){ - global $conf; - $data = array(); - _quietecho("Searching pages... "); - search($data,$conf['datadir'],'search_allpages',array('skipacl' => true)); - _quietecho(count($data)." pages found.\n"); - - foreach($data as $val){ - _index($val['id']); + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @return void + */ + protected function main(DokuCLI_Options $options) { + $this->clear = $options->getOpt('clear'); + $this->quiet = $options->getOpt('quiet'); + + if($this->clear) $this->clearindex(); + + $this->update(); } -} -function _index($id){ - global $CLEAR; - global $QUIET; + /** + * Update the index + */ + function update() { + global $conf; + $data = array(); + $this->quietecho("Searching pages... "); + search($data, $conf['datadir'], 'search_allpages', array('skipacl' => true)); + $this->quietecho(count($data) . " pages found.\n"); + + foreach($data as $val) { + $this->index($val['id']); + } + } - _quietecho("$id... "); - idx_addPage($id, !$QUIET, $CLEAR); - _quietecho("done.\n"); -} + /** + * Index the given page + * + * @param string $id + */ + function index($id) { + $this->quietecho("$id... "); + idx_addPage($id, !$this->quiet, $this->clear); + $this->quietecho("done.\n"); + } -/** - * Clear all index files - */ -function _clearindex(){ - _quietecho("Clearing index... "); - idx_get_indexer()->clear(); - _quietecho("done.\n"); -} + /** + * Clear all index files + */ + function clearindex() { + $this->quietecho("Clearing index... "); + idx_get_indexer()->clear(); + $this->quietecho("done.\n"); + } -function _quietecho($msg) { - global $QUIET; - if(!$QUIET) echo $msg; + /** + * Print message if not supressed + * + * @param string $msg + */ + function quietecho($msg) { + if(!$this->quiet) echo $msg; + } } -//Setup VIM: ex: et ts=2 : +// Main +$cli = new IndexerCLI(); +$cli->run(); \ No newline at end of file diff --git a/bin/render.php b/bin/render.php index d30ef2958..01fd16cdd 100755 --- a/bin/render.php +++ b/bin/render.php @@ -1,5 +1,10 @@ #!/usr/bin/php */ -if ('cli' != php_sapi_name()) die(); - -ini_set('memory_limit','128M'); -if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../').'/'); -define('NOSESSION',1); -require_once(DOKU_INC.'inc/init.php'); -require_once(DOKU_INC.'inc/common.php'); -require_once(DOKU_INC.'inc/parserutils.php'); -require_once(DOKU_INC.'inc/cliopts.php'); +class RenderCLI extends DokuCLI { -// handle options -$short_opts = 'hr:'; -$long_opts = array('help','renderer:'); -$OPTS = Doku_Cli_Opts::getOptions(__FILE__,$short_opts,$long_opts); -if ( $OPTS->isError() ) { - fwrite( STDERR, $OPTS->getMessage() . "\n"); - _usage(); - exit(1); -} -$RENDERER = 'xhtml'; -foreach ($OPTS->options as $key => $val) { - switch ($key) { - case 'h': - case 'help': - _usage(); - exit; - case 'r': - case 'renderer': - $RENDERER = $val; + /** + * Register options and arguments on the given $options object + * + * @param DokuCLI_Options $options + * @return void + */ + protected function setup(DokuCLI_Options $options) { + $options->setHelp( + 'A simple commandline tool to render some DokuWiki syntax with a given renderer.' . + "\n\n" . + 'This may not work for plugins that expect a certain environment to be ' . + 'set up before rendering, but should work for most or even all standard ' . + 'DokuWiki markup' + ); + $options->registerOption('renderer', 'The renderer mode to use. Defaults to xhtml', 'r', 'mode'); } -} - -// do the action -$source = stream_get_contents(STDIN); -$info = array(); -$result = p_render($RENDERER,p_get_instructions($source),$info); -if(is_null($result)) die("No such renderer $RENDERER\n"); -echo $result; + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @throws DokuCLI_Exception + * @return void + */ + protected function main(DokuCLI_Options $options) { + $renderer = $options->getOpt('renderer', 'xhtml'); -/** - * Print usage info - */ -function _usage(){ - print "Usage: render.php - - Reads DokuWiki syntax from STDIN and renders it with the given renderer - to STDOUT - - OPTIONS - -h, --help show this help and exit - -r, --renderer the render mode (default: xhtml) -"; + // do the action + $source = stream_get_contents(STDIN); + $info = array(); + $result = p_render($renderer, p_get_instructions($source), $info); + if(is_null($result)) throw new DokuCLI_Exception("No such renderer $renderer"); + echo $result; + } } + +// Main +$cli = new RenderCLI(); +$cli->run(); \ No newline at end of file diff --git a/inc/cli.php b/inc/cli.php index 84aad3411..c51d9b7d2 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -323,7 +323,7 @@ class DokuCLI_Options { * @param string $long multi character option (specified with --) * @param string $help help text for this option * @param string|null $short one character option (specified with -) - * @param bool $needsarg does this option require an argument? + * @param bool|string $needsarg does this option require an argument? give it a name here * @param string $command what command does this option apply to * @throws DokuCLI_Exception */ @@ -465,12 +465,13 @@ class DokuCLI_Options { * * Can only be used after parseOptions() has been run * - * @param $option + * @param string $option + * @param mixed $default what to return if the option was not set * @return mixed */ - public function getOpt($option) { + public function getOpt($option, $default = false) { if(isset($this->options[$option])) return $this->options[$option]; - return false; + return $default; } /** @@ -501,6 +502,8 @@ class DokuCLI_Options { $text .= "\n$command"; } + if($hasopts) $text .= ' '; + foreach($this->setup[$command]['args'] as $arg) { if($arg['required']) { $text .= ' <' . $arg['name'] . '>'; @@ -519,17 +522,23 @@ class DokuCLI_Options { } if($hasopts) { - $text .= "\n"; + $text .= "\n OPTIONS\n\n"; foreach($this->setup[$command]['opts'] as $long => $opt) { - $name = "--$long"; - if($opt['short']) $name = '-' . $opt['short'] . ' ' . $name; - if($opt['needsarg']) $name .= ' '; + $name = ''; + if($opt['short']) { + $name .= '-' . $opt['short']; + if($opt['needsarg']) $name .= ' <'.$opt['needsarg'].'>'; + $name .= ', '; + } + $name .= "--$long"; + if($opt['needsarg']) $name .= ' <'.$opt['needsarg'].'>'; $text .= $this->tableFormat( array(2, 20, 52), array('', $name, $opt['help']) ); + $text .= "\n"; } } -- cgit v1.2.3 From d48bcdb42c1e80fa258ebbd70d9fe6f649237a78 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Thu, 20 Mar 2014 21:01:06 +0100 Subject: fixed tests --- _test/tests/inc/cli_options.test.php | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/_test/tests/inc/cli_options.test.php b/_test/tests/inc/cli_options.test.php index 1d121d7ce..ab03ee29b 100644 --- a/_test/tests/inc/cli_options.test.php +++ b/_test/tests/inc/cli_options.test.php @@ -4,37 +4,37 @@ class cli_options extends DokuWikiTest { function test_simpleshort() { $options = new DokuCLI_Options(); - $options->registerOption('exclude', 'exclude files', 'x', true); + $options->registerOption('exclude', 'exclude files', 'x', 'file'); - $args = array('-x', 'foo', 'bang'); - $options->parseOptions($args); + $options->args = array('-x', 'foo', 'bang'); + $options->parseOptions(); $this->assertEquals('foo', $options->getOpt('exclude')); - $this->assertEquals(array('bang'), $args); + $this->assertEquals(array('bang'), $options->args); $this->assertFalse($options->getOpt('nothing')); } function test_simplelong1() { $options = new DokuCLI_Options(); - $options->registerOption('exclude', 'exclude files', 'x', true); + $options->registerOption('exclude', 'exclude files', 'x', 'file'); - $args = array('--exclude', 'foo', 'bang'); - $options->parseOptions($args); + $options->args = array('--exclude', 'foo', 'bang'); + $options->parseOptions(); $this->assertEquals('foo', $options->getOpt('exclude')); - $this->assertEquals(array('bang'), $args); + $this->assertEquals(array('bang'), $options->args); $this->assertFalse($options->getOpt('nothing')); } function test_simplelong2() { $options = new DokuCLI_Options(); - $options->registerOption('exclude', 'exclude files', 'x', true); + $options->registerOption('exclude', 'exclude files', 'x', 'file'); - $args = array('--exclude=foo', 'bang'); - $options->parseOptions($args); + $options->args = array('--exclude=foo', 'bang'); + $options->parseOptions(); $this->assertEquals('foo', $options->getOpt('exclude')); - $this->assertEquals(array('bang'), $args); + $this->assertEquals(array('bang'), $options->args); $this->assertFalse($options->getOpt('nothing')); } @@ -45,12 +45,12 @@ class cli_options extends DokuWikiTest { $options->registerCommand('status', 'display status info'); $options->registerOption('long', 'display long lines', 'l', false, 'status'); - $args = array('-p', 'status', '--long', 'foo'); - $options->parseOptions($args); + $options->args = array('-p', 'status', '--long', 'foo'); + $options->parseOptions(); $this->assertEquals('status', $options->getCmd()); $this->assertTrue($options->getOpt('plugins')); $this->assertTrue($options->getOpt('long')); - $this->assertEquals(array('foo'), $args); + $this->assertEquals(array('foo'), $options->args); } } \ No newline at end of file -- cgit v1.2.3 From 8a288d68670a40b38f5fc655f9c76d815dad5cf0 Mon Sep 17 00:00:00 2001 From: Marcel Bischoff Date: Fri, 21 Mar 2014 16:34:01 +0100 Subject: Fixed spelling in lang.php Changed "Erweitertet" to "Erweitert" since the word "Erweitertet" does not exist, see: http://www.duden.de/suchen/dudenonline?s=erweitertet Also, see leo.org translation for "advanced" to german: http://dict.leo.org/ende/index_de.html#/search=advanced&searchLoc=0&resultOrder=basic&multiwordShowSingle=on --- lib/plugins/config/lang/de/lang.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/plugins/config/lang/de/lang.php b/lib/plugins/config/lang/de/lang.php index e55081a91..d398ebf84 100644 --- a/lib/plugins/config/lang/de/lang.php +++ b/lib/plugins/config/lang/de/lang.php @@ -41,7 +41,7 @@ $lang['_links'] = 'Links'; $lang['_media'] = 'Medien'; $lang['_notifications'] = 'Benachrichtigung'; $lang['_syndication'] = 'Syndication (RSS)'; -$lang['_advanced'] = 'Erweitertet'; +$lang['_advanced'] = 'Erweitert'; $lang['_network'] = 'Netzwerk'; $lang['_msg_setting_undefined'] = 'Keine Konfigurationsmetadaten.'; $lang['_msg_setting_no_class'] = 'Keine Konfigurationsklasse.'; -- cgit v1.2.3 From 352ec8ce2a661a326f2f6cb747d43bb60119fb3e Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 22 Mar 2014 16:45:54 +0100 Subject: refactored bin/striplangs.php to new CLI interface --- bin/striplangs.php | 215 ++++++++++++++++++++++------------------------------- 1 file changed, 87 insertions(+), 128 deletions(-) diff --git a/bin/striplangs.php b/bin/striplangs.php index 2bfddcea4..8567551ec 100755 --- a/bin/striplangs.php +++ b/bin/striplangs.php @@ -1,148 +1,107 @@ #!/usr/bin/php - */ -if ('cli' != php_sapi_name()) die(); - -#------------------------------------------------------------------------------ -if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../').'/'); -require_once DOKU_INC.'inc/cliopts.php'; - -#------------------------------------------------------------------------------ -function usage($show_examples = false) { - print "Usage: striplangs.php [-h [-x]] [-e] [-k lang1[,lang2]..[,langN]] - - Removes all languages from the installation, besides the ones - after the -k option. English language is never removed! - - OPTIONS - -h, --help get this help - -x, --examples get also usage examples - -k, --keep comma separated list of languages, -e is always implied - -e, --english keeps english, dummy to use without -k\n"; - if ( $show_examples ) { - print "\n - EXAMPLES - Strips all languages, but keeps 'en' and 'de': - striplangs -k de - - Strips all but 'en','ca-valencia','cs','de','is','sk': - striplangs --keep ca-valencia,cs,de,is,sk - - Strips all but 'en': - striplangs -e - - No option specified, prints usage and throws error: - striplangs\n"; - } -} - -function getSuppliedArgument($OPTS, $short, $long) { - $arg = $OPTS->get($short); - if ( is_null($arg) ) { - $arg = $OPTS->get($long); +if(!defined('DOKU_INC')) define('DOKU_INC', realpath(dirname(__FILE__) . '/../') . '/'); +define('NOSESSION', 1); +require_once(DOKU_INC . 'inc/init.php'); + + +class StripLangsCLI extends DokuCLI { + + /** + * Register options and arguments on the given $options object + * + * @param DokuCLI_Options $options + * @return void + */ + protected function setup(DokuCLI_Options $options) { + + $options->setHelp( + 'Remove all languages from the installation, besides the ones specified. English language ' . + 'is never removed!' + ); + + $options->registerOption( + 'keep', + 'Comma separated list of languages to keep in addition to English.', + 'k' + ); + $options->registerOption( + 'english-only', + 'Remove all languages except English', + 'e' + ); } - return $arg; -} - -function processPlugins($path, $keep_langs) { - if (is_dir($path)) { - $entries = scandir($path); - foreach ($entries as $entry) { - if ($entry != "." && $entry != "..") { - if ( is_dir($path.'/'.$entry) ) { + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @return void + */ + protected function main(DokuCLI_Options $options) { + if($options->getOpt('keep')) { + $keep = explode(',', $options->getOpt('keep')); + if(!in_array('en', $keep)) $keep[] = 'en'; + } elseif($options->getOpt('english-only')) { + $keep = array('en'); + } else { + echo $options->help(); + exit(0); + } - $plugin_langs = $path.'/'.$entry.'/lang'; + // Kill all language directories in /inc/lang and /lib/plugins besides those in $langs array + $this->stripDirLangs(realpath(dirname(__FILE__) . '/../inc/lang'), $keep); + $this->processExtensions(realpath(dirname(__FILE__) . '/../lib/plugins'), $keep); + $this->processExtensions(realpath(dirname(__FILE__) . '/../lib/tpl'), $keep); + } - if ( is_dir( $plugin_langs ) ) { - stripDirLangs($plugin_langs, $keep_langs); + /** + * Strip languages from extensions + * + * @param string $path path to plugin or template dir + * @param array $keep_langs languages to keep + */ + protected function processExtensions($path, $keep_langs) { + if(is_dir($path)) { + $entries = scandir($path); + + foreach($entries as $entry) { + if($entry != "." && $entry != "..") { + if(is_dir($path . '/' . $entry)) { + + $plugin_langs = $path . '/' . $entry . '/lang'; + + if(is_dir($plugin_langs)) { + $this->stripDirLangs($plugin_langs, $keep_langs); + } } } } } } -} - -function stripDirLangs($path, $keep_langs) { - $dir = dir($path); - while(($cur_dir = $dir->read()) !== false) { - if( $cur_dir != '.' and $cur_dir != '..' and is_dir($path.'/'.$cur_dir)) { + /** + * Strip languages from path + * + * @param string $path path to lang dir + * @param array $keep_langs languages to keep + */ + protected function stripDirLangs($path, $keep_langs) { + $dir = dir($path); - if ( !in_array($cur_dir, $keep_langs, true ) ) { - killDir($path.'/'.$cur_dir); - } - } - } - $dir->close(); -} + while(($cur_dir = $dir->read()) !== false) { + if($cur_dir != '.' and $cur_dir != '..' and is_dir($path . '/' . $cur_dir)) { -function killDir($dir) { - if (is_dir($dir)) { - $entries = scandir($dir); - - foreach ($entries as $entry) { - if ($entry != "." && $entry != "..") { - if ( is_dir($dir.'/'.$entry) ) { - killDir($dir.'/'.$entry); - } else { - unlink($dir.'/'.$entry); + if(!in_array($cur_dir, $keep_langs, true)) { + io_rmdir($path . '/' . $cur_dir, true); } } } - reset($entries); - rmdir($dir); - } -} -#------------------------------------------------------------------------------ - -// handle options -$short_opts = 'hxk:e'; -$long_opts = array('help', 'examples', 'keep=','english'); - -$OPTS = Doku_Cli_Opts::getOptions(__FILE__, $short_opts, $long_opts); - -if ( $OPTS->isError() ) { - fwrite( STDERR, $OPTS->getMessage() . "\n"); - exit(1); -} - -// handle '--examples' option -$show_examples = ( $OPTS->has('x') or $OPTS->has('examples') ) ? true : false; - -// handle '--help' option -if ( $OPTS->has('h') or $OPTS->has('help') ) { - usage($show_examples); - exit(0); -} - -// handle both '--keep' and '--english' options -if ( $OPTS->has('k') or $OPTS->has('keep') ) { - $preserved_langs = getSuppliedArgument($OPTS,'k','keep'); - $langs = explode(',', $preserved_langs); - - // ! always enforce 'en' lang when using '--keep' (DW relies on it) - if ( !isset($langs['en']) ) { - $langs[]='en'; + $dir->close(); } -} elseif ( $OPTS->has('e') or $OPTS->has('english') ) { - // '--english' was specified strip everything besides 'en' - $langs = array ('en'); -} else { - // no option was specified, print usage but don't do anything as - // this run might not be intented - usage(); - print "\n - ERROR - No option specified, use either -h -x to get more info, - or -e to strip every language besides english.\n"; - exit(1); } -// Kill all language directories in /inc/lang and /lib/plugins besides those in $langs array -stripDirLangs(realpath(dirname(__FILE__).'/../inc/lang'), $langs); -processPlugins(realpath(dirname(__FILE__).'/../lib/plugins'), $langs); +$cli = new StripLangsCLI(); +$cli->run(); \ No newline at end of file -- cgit v1.2.3 From e8bb93a50f98b9389d6bdca6124744208cde7728 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 22 Mar 2014 17:23:06 +0100 Subject: refactored bin/wantedpages.php to new CLI interface --- bin/wantedpages.php | 220 ++++++++++++++++++++++++++-------------------------- 1 file changed, 108 insertions(+), 112 deletions(-) diff --git a/bin/wantedpages.php b/bin/wantedpages.php index afcb6b271..879291957 100755 --- a/bin/wantedpages.php +++ b/bin/wantedpages.php @@ -1,134 +1,130 @@ #!/usr/bin/php setHelp( + 'Outputs a list of wanted pages (pages which have internal links but do not yet exist).' + ); + $options->registerArgument( + 'namespace', + 'The namespace to lookup. Defaults to root namespace', + false + ); + } -#------------------------------------------------------------------------------ -function usage() { - print "Usage: wantedpages.php [wiki:namespace] + /** + * Your main program + * + * Arguments and options have been parsed when this is run + * + * @param DokuCLI_Options $options + * @return void + */ + protected function main(DokuCLI_Options $options) { + + if($options->args) { + $startdir = dirname(wikiFN($options->args[0] . ':xxx')); + } else { + $startdir = dirname(wikiFN('xxx')); + } - Outputs a list of wanted pages (pages which have - internal links but do not yet exist). + $this->info("searching $startdir"); - If the optional [wiki:namespace] is not provided, - defaults to the root wiki namespace + $wanted_pages = array(); - OPTIONS - -h, --help get help -"; -} - -#------------------------------------------------------------------------------ -define ('DW_DIR_CONTINUE',1); -define ('DW_DIR_NS',2); -define ('DW_DIR_PAGE',3); + foreach($this->get_pages($startdir) as $page) { + $wanted_pages = array_merge($wanted_pages, $this->internal_links($page)); + } + $wanted_pages = array_unique($wanted_pages); + sort($wanted_pages); -#------------------------------------------------------------------------------ -function dw_dir_filter($entry, $basepath) { - if ($entry == '.' || $entry == '..' ) { - return DW_DIR_CONTINUE; - } - if ( is_dir($basepath . '/' . $entry) ) { - if ( strpos($entry, '_') === 0 ) { - return DW_DIR_CONTINUE; + foreach($wanted_pages as $page) { + print $page . "\n"; } - return DW_DIR_NS; - } - if ( preg_match('/\.txt$/',$entry) ) { - return DW_DIR_PAGE; } - return DW_DIR_CONTINUE; -} -#------------------------------------------------------------------------------ -function dw_get_pages($dir) { - static $trunclen = null; - if ( !$trunclen ) { - global $conf; - $trunclen = strlen($conf['datadir'].':'); + protected function dir_filter($entry, $basepath) { + if($entry == '.' || $entry == '..') { + return WantedPagesCLI::DIR_CONTINUE; + } + if(is_dir($basepath . '/' . $entry)) { + if(strpos($entry, '_') === 0) { + return WantedPagesCLI::DIR_CONTINUE; + } + return WantedPagesCLI::DIR_NS; + } + if(preg_match('/\.txt$/', $entry)) { + return WantedPagesCLI::DIR_PAGE; + } + return WantedPagesCLI::DIR_CONTINUE; } - if ( !is_dir($dir) ) { - fwrite( STDERR, "Unable to read directory $dir\n"); - exit(1); - } + protected function get_pages($dir) { + static $trunclen = null; + if(!$trunclen) { + global $conf; + $trunclen = strlen($conf['datadir'] . ':'); + } - $pages = array(); - $dh = opendir($dir); - while ( false !== ( $entry = readdir($dh) ) ) { - $status = dw_dir_filter($entry, $dir); - if ( $status == DW_DIR_CONTINUE ) { - continue; - } else if ( $status == DW_DIR_NS ) { - $pages = array_merge($pages, dw_get_pages($dir . '/' . $entry)); - } else { - $page = array( - 'id' => pathID(substr($dir.'/'.$entry,$trunclen)), - 'file'=> $dir.'/'.$entry, + if(!is_dir($dir)) { + throw new DokuCLI_Exception("Unable to read directory $dir"); + } + + $pages = array(); + $dh = opendir($dir); + while(false !== ($entry = readdir($dh))) { + $status = $this->dir_filter($entry, $dir); + if($status == WantedPagesCLI::DIR_CONTINUE) { + continue; + } else if($status == WantedPagesCLI::DIR_NS) { + $pages = array_merge($pages, $this->get_pages($dir . '/' . $entry)); + } else { + $page = array( + 'id' => pathID(substr($dir . '/' . $entry, $trunclen)), + 'file' => $dir . '/' . $entry, ); - $pages[] = $page; + $pages[] = $page; + } } + closedir($dh); + return $pages; } - closedir($dh); - return $pages; -} -#------------------------------------------------------------------------------ -function dw_internal_links($page) { - global $conf; - $instructions = p_get_instructions(file_get_contents($page['file'])); - $links = array(); - $cns = getNS($page['id']); - $exists = false; - foreach($instructions as $ins){ - if($ins[0] == 'internallink' || ($conf['camelcase'] && $ins[0] == 'camelcaselink') ){ - $mid = $ins[1][0]; - resolve_pageid($cns,$mid,$exists); - if ( !$exists ) { - list($mid) = explode('#',$mid); //record pages without hashs - $links[] = $mid; + function internal_links($page) { + global $conf; + $instructions = p_get_instructions(file_get_contents($page['file'])); + $links = array(); + $cns = getNS($page['id']); + $exists = false; + foreach($instructions as $ins) { + if($ins[0] == 'internallink' || ($conf['camelcase'] && $ins[0] == 'camelcaselink')) { + $mid = $ins[1][0]; + resolve_pageid($cns, $mid, $exists); + if(!$exists) { + list($mid) = explode('#', $mid); //record pages without hashs + $links[] = $mid; + } } } + return $links; } - return $links; } -#------------------------------------------------------------------------------ -$OPTS = Doku_Cli_Opts::getOptions(__FILE__,'h',array('help')); - -if ( $OPTS->isError() ) { - fwrite( STDERR, $OPTS->getMessage() . "\n"); - exit(1); -} - -if ( $OPTS->has('h') or $OPTS->has('help') ) { - usage(); - exit(0); -} - -$START_DIR = $conf['datadir']; - -if ( $OPTS->numArgs() == 1 ) { - $START_DIR .= '/' . $OPTS->arg(0); -} - -#------------------------------------------------------------------------------ -$WANTED_PAGES = array(); - -foreach ( dw_get_pages($START_DIR) as $WIKI_PAGE ) { - $WANTED_PAGES = array_merge($WANTED_PAGES,dw_internal_links($WIKI_PAGE)); -} -$WANTED_PAGES = array_unique($WANTED_PAGES); -sort($WANTED_PAGES); - -foreach ( $WANTED_PAGES as $WANTED_PAGE ) { - print $WANTED_PAGE."\n"; -} -exit(0); +// Main +$cli = new WantedPagesCLI(); +$cli->run(); \ No newline at end of file -- cgit v1.2.3 From 272e9decc1b5a964c3303ffe8b5d52e9e08fde68 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 22 Mar 2014 17:23:35 +0100 Subject: CLI: send messages to STDERR --- inc/cli.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/inc/cli.php b/inc/cli.php index c51d9b7d2..f2da6a49d 100644 --- a/inc/cli.php +++ b/inc/cli.php @@ -111,7 +111,7 @@ abstract class DokuCLI { * @param $string */ public function error($string) { - $this->colors->ptln("E: $string", 'red'); + $this->colors->ptln("E: $string", 'red', STDERR); } /** @@ -120,7 +120,7 @@ abstract class DokuCLI { * @param $string */ public function success($string) { - $this->colors->ptln("S: $string", 'green'); + $this->colors->ptln("S: $string", 'green', STDERR); } /** @@ -129,7 +129,7 @@ abstract class DokuCLI { * @param $string */ public function info($string) { - $this->colors->ptln("I: $string", 'cyan'); + $this->colors->ptln("I: $string", 'cyan', STDERR); } } @@ -201,10 +201,11 @@ class DokuCLI_Colors { * * @param $line * @param $color + * @param resource $channel */ - public function ptln($line, $color) { + public function ptln($line, $color, $channel=STDOUT) { $this->set($color); - echo rtrim($line) . "\n"; + fwrite($channel, rtrim($line) . "\n"); $this->reset(); } -- cgit v1.2.3 From f7f4c3a286d4822aeeb2537e0c19c9c3f8f103d0 Mon Sep 17 00:00:00 2001 From: ggallon Date: Mon, 24 Mar 2014 13:56:29 +0100 Subject: translation update --- inc/lang/fr/lang.php | 8 ++++++-- lib/plugins/authad/lang/fr/lang.php | 8 ++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 lib/plugins/authad/lang/fr/lang.php diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 40bc25d10..43164395d 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -30,6 +30,7 @@ * @author Emmanuel * @author Jérôme Brandt * @author Wild + * @author ggallon */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -74,6 +75,8 @@ $lang['btn_register'] = 'Créer un compte'; $lang['btn_apply'] = 'Appliquer'; $lang['btn_media'] = 'Gestionnaire de médias'; $lang['btn_deleteuser'] = 'Supprimer mon compte'; +$lang['btn_img_backto'] = 'Retour à %s'; +$lang['btn_mediaManager'] = 'Voir dans le gestionnaire de médias'; $lang['loggedinas'] = 'Connecté en tant que '; $lang['user'] = 'Utilisateur'; $lang['pass'] = 'Mot de passe'; @@ -203,6 +206,9 @@ $lang['difflink'] = 'Lien vers cette vue comparative'; $lang['diff_type'] = 'Voir les différences :'; $lang['diff_inline'] = 'Sur une seule ligne'; $lang['diff_side'] = 'Côte à côte'; +$lang['diffprevrev'] = 'Révision précédente'; +$lang['diffnextrev'] = 'Prochaine révision'; +$lang['difflastrev'] = 'Dernière révision'; $lang['line'] = 'Ligne'; $lang['breadcrumb'] = 'Piste'; $lang['youarehere'] = 'Vous êtes ici'; @@ -259,7 +265,6 @@ $lang['admin_register'] = 'Ajouter un nouvel utilisateur'; $lang['metaedit'] = 'Modifier les métadonnées'; $lang['metasaveerr'] = 'Erreur lors de l\'enregistrement des métadonnées'; $lang['metasaveok'] = 'Métadonnées enregistrées'; -$lang['btn_img_backto'] = 'Retour à %s'; $lang['img_title'] = 'Titre'; $lang['img_caption'] = 'Légende'; $lang['img_date'] = 'Date'; @@ -272,7 +277,6 @@ $lang['img_camera'] = 'Appareil photo'; $lang['img_keywords'] = 'Mots-clés'; $lang['img_width'] = 'Largeur'; $lang['img_height'] = 'Hauteur'; -$lang['btn_mediaManager'] = 'Voir dans le gestionnaire de médias'; $lang['subscr_subscribe_success'] = '%s a été ajouté à la liste de souscription de %s'; $lang['subscr_subscribe_error'] = 'Erreur à l\'ajout de %s à la liste de souscription de %s'; $lang['subscr_subscribe_noaddress'] = 'Il n\'y a pas d\'adresse associée à votre identifiant, vous ne pouvez pas être ajouté à la liste de souscription'; diff --git a/lib/plugins/authad/lang/fr/lang.php b/lib/plugins/authad/lang/fr/lang.php new file mode 100644 index 000000000..2de362e41 --- /dev/null +++ b/lib/plugins/authad/lang/fr/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['domain'] = 'Domaine de connexion'; -- cgit v1.2.3 From 88cf5a2d6bafa56545d8518fca12837cfcbe8463 Mon Sep 17 00:00:00 2001 From: Fernando Date: Wed, 26 Mar 2014 20:26:34 +0100 Subject: translation update --- inc/lang/es/lang.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 336e60089..756cce4d8 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -32,6 +32,7 @@ * @author monica * @author Antonio Bueno * @author Juan De La Cruz + * @author Fernando */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -76,6 +77,8 @@ $lang['btn_register'] = 'Registrarse'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Gestor de ficheros'; $lang['btn_deleteuser'] = 'Elimina Mi Cuenta'; +$lang['btn_img_backto'] = 'Volver a %s'; +$lang['btn_mediaManager'] = 'Ver en el Administrador de medios'; $lang['loggedinas'] = 'Conectado como '; $lang['user'] = 'Usuario'; $lang['pass'] = 'Contraseña'; @@ -207,6 +210,9 @@ $lang['difflink'] = 'Enlace a la vista de comparación'; $lang['diff_type'] = 'Ver diferencias'; $lang['diff_inline'] = 'En línea'; $lang['diff_side'] = 'Lado a lado'; +$lang['diffprevrev'] = 'Revisión previa'; +$lang['diffnextrev'] = 'Próxima revisión'; +$lang['difflastrev'] = 'Última revisión'; $lang['line'] = 'Línea'; $lang['breadcrumb'] = 'Traza'; $lang['youarehere'] = 'Estás aquí'; @@ -263,7 +269,6 @@ $lang['admin_register'] = 'Añadir nuevo usuario'; $lang['metaedit'] = 'Editar metadatos'; $lang['metasaveerr'] = 'La escritura de los metadatos ha fallado'; $lang['metasaveok'] = 'Los metadatos han sido guardados'; -$lang['btn_img_backto'] = 'Volver a %s'; $lang['img_title'] = 'Título'; $lang['img_caption'] = 'Epígrafe'; $lang['img_date'] = 'Fecha'; @@ -276,7 +281,6 @@ $lang['img_camera'] = 'Cámara'; $lang['img_keywords'] = 'Palabras claves'; $lang['img_width'] = 'Ancho'; $lang['img_height'] = 'Alto'; -$lang['btn_mediaManager'] = 'Ver en el Administrador de medios'; $lang['subscr_subscribe_success'] = 'Se agregó %s a las listas de suscripción para %s'; $lang['subscr_subscribe_error'] = 'Error al agregar %s a las listas de suscripción para %s'; $lang['subscr_subscribe_noaddress'] = 'No hay dirección asociada con tu registro, no se puede agregarte a la lista de suscripción'; -- cgit v1.2.3 From 977fc56ff0b11268d93580422c0bb179c0e9dd91 Mon Sep 17 00:00:00 2001 From: Arif Budiman Date: Tue, 1 Apr 2014 15:40:53 +0200 Subject: translation update --- inc/lang/id/lang.php | 110 +++++++++++++++++++++++++++++++++++++++++- inc/lang/id/resetpwd.txt | 3 ++ inc/lang/id/subscr_digest.txt | 17 +++++++ 3 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 inc/lang/id/resetpwd.txt create mode 100644 inc/lang/id/subscr_digest.txt diff --git a/inc/lang/id/lang.php b/inc/lang/id/lang.php index 648aad865..481ff2fbd 100644 --- a/inc/lang/id/lang.php +++ b/inc/lang/id/lang.php @@ -8,6 +8,7 @@ * @author Yustinus Waruwu * @author zamroni * @author umriya afini + * @author Arif Budiman */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -50,7 +51,10 @@ $lang['btn_draftdel'] = 'Hapus draft'; $lang['btn_revert'] = 'Kembalikan'; $lang['btn_register'] = 'Daftar'; $lang['btn_apply'] = 'Terapkan'; +$lang['btn_media'] = 'Pengelola Media'; $lang['btn_deleteuser'] = 'Hapus Akun Saya'; +$lang['btn_img_backto'] = 'Kembali ke %s'; +$lang['btn_mediaManager'] = 'Tampilkan di pengelola media'; $lang['loggedinas'] = 'Login sebagai '; $lang['user'] = 'Username'; $lang['pass'] = 'Password'; @@ -78,6 +82,7 @@ $lang['profna'] = 'Wiki ini tidak mengijinkan perubahan profil.'; $lang['profnochange'] = 'Tidak ada perubahan.'; $lang['profnoempty'] = 'Mohon mengisikan nama atau alamat email.'; $lang['profchanged'] = 'Profil User berhasil diubah.'; +$lang['profnodelete'] = 'Wiki ini tidak mendukung penghapusan pengguna'; $lang['profdeleteuser'] = 'Hapus Akun'; $lang['profdeleted'] = 'Akun anda telah dihapus dari wiki ini'; $lang['profconfdelete'] = 'Saya berharap menghapus akun saya dari wiki ini. @@ -91,10 +96,14 @@ $lang['resendpwdnouser'] = 'Maaf, user ini tidak ditemukan.'; $lang['resendpwdbadauth'] = 'Maaf, kode autentikasi tidak valid. Pastikan Anda menggunakan keseluruhan link konfirmasi.'; $lang['resendpwdconfirm'] = 'Link konfirmasi telah dikirim melalui email.'; $lang['resendpwdsuccess'] = 'Password baru Anda telah dikirim melalui email.'; +$lang['license'] = 'Kecuali jika dinyatakan lain, konten pada wiki ini dilisensikan dibawah lisensi berikut:'; +$lang['licenseok'] = 'Catatan: Dengan menyunting halaman ini, Anda setuju untuk melisensikan konten Anda dibawah lisensi berikut:'; $lang['searchmedia'] = 'Cari nama file:'; +$lang['searchmedia_in'] = 'Cari di %s'; $lang['txt_upload'] = 'File yang akan diupload'; $lang['txt_filename'] = 'Masukkan nama wiki (opsional)'; $lang['txt_overwrt'] = 'File yang telah ada akan ditindih'; +$lang['maxuploadsize'] = 'Unggah maks. %s per berkas'; $lang['lockedby'] = 'Sedang dikunci oleh'; $lang['lockexpire'] = 'Penguncian artikel sampai dengan'; $lang['js']['willexpire'] = 'Halaman yang sedang Anda kunci akan berakhir dalam waktu kurang lebih satu menit.\nUntuk menghindari konflik, gunakan tombol Preview untuk me-reset timer pengunci.'; @@ -103,18 +112,41 @@ $lang['js']['searchmedia'] = 'Cari file'; $lang['js']['keepopen'] = 'Biarkan window terbuka dalam pemilihan'; $lang['js']['hidedetails'] = 'Sembunyikan detil'; $lang['js']['mediatitle'] = 'Pengaturan Link'; +$lang['js']['mediadisplay'] = 'Jenis tautan'; +$lang['js']['mediaalign'] = 'Perataan'; $lang['js']['mediasize'] = 'Ukuran gambar'; +$lang['js']['mediatarget'] = 'Tautan tujuan'; $lang['js']['mediaclose'] = 'Tutup'; +$lang['js']['mediainsert'] = 'Sisip'; $lang['js']['mediadisplayimg'] = 'Lihat gambar'; $lang['js']['mediadisplaylnk'] = 'Lihat hanya link'; +$lang['js']['mediasmall'] = 'Versi kecil'; +$lang['js']['mediamedium'] = 'Versi sedang'; +$lang['js']['medialarge'] = 'Versi besar'; +$lang['js']['mediaoriginal'] = 'Versi asli'; +$lang['js']['medialnk'] = 'Tautan ke halaman rincian'; +$lang['js']['mediadirect'] = 'Tautan langsung ke aslinya'; +$lang['js']['medianolnk'] = 'Tanpa tautan'; +$lang['js']['medianolink'] = 'Jangan tautkan gambar'; +$lang['js']['medialeft'] = 'Rata gambar sebelah kiri'; +$lang['js']['mediaright'] = 'Rata gambar sebelah kanan'; +$lang['js']['mediacenter'] = 'Rata gambar di tengah'; +$lang['js']['medianoalign'] = 'Jangan gunakan perataan'; $lang['js']['nosmblinks'] = 'Link ke share Windows hanya bekerja di Microsoft Internet Explorer. Anda masih dapat mengcopy and paste linknya.'; +$lang['js']['linkwiz'] = 'Wizard Tautan'; +$lang['js']['linkto'] = 'Tautkan ke:'; $lang['js']['del_confirm'] = 'Hapus tulisan ini?'; +$lang['js']['restore_confirm'] = 'Benar-benar ingin mengembalikan versi ini?'; +$lang['js']['media_diff'] = 'Lihat perbedaan:'; +$lang['js']['media_diff_both'] = 'Berdampingan'; +$lang['js']['media_diff_opacity'] = 'Mencolok'; $lang['js']['media_select'] = 'Pilih file...'; $lang['js']['media_upload_btn'] = 'Unggah'; $lang['js']['media_done_btn'] = 'Selesai'; $lang['js']['media_drop'] = 'Tarik file disini untuk mengunggah'; $lang['js']['media_cancel'] = 'Buang'; +$lang['js']['media_overwrt'] = 'Timpa berkas yang ada'; $lang['rssfailed'] = 'Error terjadi saat mengambil feed: '; $lang['nothingfound'] = 'Tidak menemukan samasekali.'; $lang['mediaselect'] = 'Pilihan Mediafile'; @@ -148,6 +180,13 @@ $lang['current'] = 'sekarang'; $lang['yours'] = 'Versi Anda'; $lang['diff'] = 'Tampilkan perbedaan dengan versi sekarang'; $lang['diff2'] = 'Tampilkan perbedaan diantara revisi terpilih'; +$lang['difflink'] = 'Tautan ke tampilan pembanding ini'; +$lang['diff_type'] = 'Tampilkan perbedaan:'; +$lang['diff_inline'] = 'Sebaris'; +$lang['diff_side'] = 'Berdampingan'; +$lang['diffprevrev'] = 'Revisi sebelumnya'; +$lang['diffnextrev'] = 'Revisi selanjutnya'; +$lang['difflastrev'] = 'Revisi terakhir'; $lang['line'] = 'Baris'; $lang['breadcrumb'] = 'Jejak'; $lang['youarehere'] = 'Anda disini'; @@ -158,11 +197,23 @@ $lang['created'] = 'dibuat'; $lang['restored'] = 'revisi lama ditampilkan kembali (%s)'; $lang['external_edit'] = 'Perubahan eksternal'; $lang['summary'] = 'Edit summary'; +$lang['noflash'] = 'Adobe Flash Plugin diperlukan untuk menampilkan konten ini.'; +$lang['download'] = 'Unduh Cuplikan'; +$lang['tools'] = 'Alat'; +$lang['user_tools'] = 'Alat Pengguna'; +$lang['site_tools'] = 'Alat Situs'; +$lang['page_tools'] = 'Alat Halaman'; +$lang['skip_to_content'] = 'lewati ke konten'; +$lang['sidebar'] = 'Bilah Sisi'; $lang['mail_newpage'] = 'Halaman ditambahkan:'; $lang['mail_changed'] = 'Halaman diubah:'; +$lang['mail_subscribe_list'] = 'halaman diubah dalam namespace:'; $lang['mail_new_user'] = 'User baru:'; $lang['mail_upload'] = 'Berkas di-upload:'; +$lang['changes_type'] = 'Tampilkan perubahan'; $lang['pages_changes'] = 'Halaman'; +$lang['media_changes'] = 'Berkas media'; +$lang['both_changes'] = 'Baik halaman dan berkas media'; $lang['qb_bold'] = 'Tebal'; $lang['qb_italic'] = 'Miring'; $lang['qb_underl'] = 'Garis Bawah'; @@ -173,6 +224,10 @@ $lang['qb_h2'] = 'Level 2 Headline'; $lang['qb_h3'] = 'Level 3 Headline'; $lang['qb_h4'] = 'Level 4 Headline'; $lang['qb_h5'] = 'Level 5 Headline'; +$lang['qb_hs'] = 'Pilih Judul'; +$lang['qb_hplus'] = 'Judul Lebih Atas'; +$lang['qb_hminus'] = 'Judul Lebih Bawah'; +$lang['qb_hequal'] = 'Tingkat Judul yang Sama'; $lang['qb_link'] = 'Link Internal'; $lang['qb_extlink'] = 'Link External'; $lang['qb_hr'] = 'Garis Horisontal'; @@ -182,11 +237,11 @@ $lang['qb_media'] = 'Tambahkan gambar atau file lain'; $lang['qb_sig'] = 'Sisipkan tanda tangan'; $lang['qb_smileys'] = 'Smileys'; $lang['qb_chars'] = 'Karakter Khusus'; +$lang['upperns'] = 'lompat ke namespace induk'; $lang['admin_register'] = 'Tambah user baru'; $lang['metaedit'] = 'Edit Metadata'; $lang['metasaveerr'] = 'Gagal menulis metadata'; $lang['metasaveok'] = 'Metadata tersimpan'; -$lang['btn_img_backto'] = 'Kembali ke %s'; $lang['img_title'] = 'Judul'; $lang['img_caption'] = 'Label'; $lang['img_date'] = 'Tanggal'; @@ -197,6 +252,22 @@ $lang['img_copyr'] = 'Hakcipta'; $lang['img_format'] = 'Format'; $lang['img_camera'] = 'Kamera'; $lang['img_keywords'] = 'Katakunci'; +$lang['img_width'] = 'Lebar'; +$lang['img_height'] = 'Tinggi'; +$lang['subscr_subscribe_success'] = 'Menambah %s ke senarai langganan untuk %s'; +$lang['subscr_subscribe_error'] = 'Kesalahan menambahkan %s ke senarai langganan untuk %s'; +$lang['subscr_subscribe_noaddress'] = 'Tidak ada alamat yang terkait dengan login Anda, Anda tidak dapat ditambahkan ke senarai langganan'; +$lang['subscr_unsubscribe_success'] = 'Menghapus %s dari senarai langganan untuk %s'; +$lang['subscr_unsubscribe_error'] = 'Kesalahan menghapus %s dari senarai langganan untuk %s'; +$lang['subscr_already_subscribed'] = '%s sudah dilanggankan ke %s'; +$lang['subscr_not_subscribed'] = '%s tidak dilanggankan ke %s'; +$lang['subscr_m_not_subscribed'] = 'Saat ini Anda tidak berlangganan halaman dan namespace saat ini.'; +$lang['subscr_m_new_header'] = 'Tambahkan langganan'; +$lang['subscr_m_current_header'] = 'Langganan saat ini'; +$lang['subscr_m_unsubscribe'] = 'Berhenti berlangganan'; +$lang['subscr_m_subscribe'] = 'Berlangganan'; +$lang['subscr_m_receive'] = 'Menerima'; +$lang['subscr_style_every'] = 'email setiap diubah'; $lang['authtempfail'] = 'Autentikasi user saat ini sedang tidak dapat digunakan. Jika kejadian ini berlanjut, Harap informasikan admin Wiki Anda.'; $lang['i_chooselang'] = 'Pilih bahasa'; $lang['i_installer'] = 'Instalasi DokuWiki'; @@ -217,4 +288,41 @@ $lang['i_policy'] = 'Policy ACL awal'; $lang['i_pol0'] = 'Wiki Terbuka (baca, tulis, upload untuk semua orang)'; $lang['i_pol1'] = 'Wiki Publik (baca untuk semua orang, tulis dan upload untuk pengguna terdaftar)'; $lang['i_pol2'] = 'Wiki Privat (baca, tulis dan upload hanya untuk pengguna terdaftar)'; +$lang['i_allowreg'] = 'Ijinkan pengguna mendaftar sendiri'; $lang['i_retry'] = 'Coba Lagi'; +$lang['i_license'] = 'Silakan pilih lisensi untuk konten Anda:'; +$lang['i_license_none'] = 'Jangan tampilkan semua informasi lisensi'; +$lang['i_pop_field'] = 'Tolong, bantu kami meningkatkan pengalaman DokuWiki:'; +$lang['i_pop_label'] = 'Setiap bulan mengirimkan penggunaan data anonim ke pengembang DokuWiki'; +$lang['years'] = '%d tahun yang lalu'; +$lang['months'] = '%d bulan yang lalu'; +$lang['weeks'] = '%d minggu yang lalu'; +$lang['days'] = '%d hari yang lalu'; +$lang['hours'] = '%d jam yang lalu'; +$lang['minutes'] = '%d menit yang lalu'; +$lang['seconds'] = '%d detik yang lalu'; +$lang['wordblock'] = 'Pengubahan Anda tidak disimpan karena berisi teks yang diblokir (spam).'; +$lang['media_uploadtab'] = 'Unggah'; +$lang['media_searchtab'] = 'Cari'; +$lang['media_file'] = 'Berkas'; +$lang['media_viewtab'] = 'Lihat'; +$lang['media_edittab'] = 'Sunting'; +$lang['media_historytab'] = 'Riwayat'; +$lang['media_list_rows'] = 'Kolom'; +$lang['media_sort_name'] = 'Nama'; +$lang['media_sort_date'] = 'Tanggal'; +$lang['media_namespaces'] = 'Pilih namespace'; +$lang['media_upload'] = 'Unggah ke %s'; +$lang['media_search'] = 'Cari di %s'; +$lang['media_view'] = '%s'; +$lang['media_viewold'] = '%s di %s'; +$lang['media_edit'] = 'Sunting %s'; +$lang['media_history'] = 'Riwayat %s'; +$lang['media_meta_edited'] = 'metadata disunting'; +$lang['media_perm_read'] = 'Maaf, Anda tidak memiliki izin untuk membaca berkas.'; +$lang['media_perm_upload'] = 'Maaf, Anda tidak memiliki izin untuk mengunggah berkas.'; +$lang['media_update'] = 'Unggah versi baru'; +$lang['media_restore'] = 'Kembalikan versi ini'; +$lang['currentns'] = 'Namespace saat ini'; +$lang['searchresult'] = 'Hasil Pencarian'; +$lang['wikimarkup'] = 'Markah Wiki'; diff --git a/inc/lang/id/resetpwd.txt b/inc/lang/id/resetpwd.txt new file mode 100644 index 000000000..6ab26c866 --- /dev/null +++ b/inc/lang/id/resetpwd.txt @@ -0,0 +1,3 @@ +====== Atur sandi baru ====== + +Silakan masukkan sandi baru untuk akun Anda di wiki ini. \ No newline at end of file diff --git a/inc/lang/id/subscr_digest.txt b/inc/lang/id/subscr_digest.txt new file mode 100644 index 000000000..5e1041c04 --- /dev/null +++ b/inc/lang/id/subscr_digest.txt @@ -0,0 +1,17 @@ +Hei! + +Halaman @PAGE@ di wiki @TITLE@ telah disunting. +Berikut perubahannya: + +-------------------------------------------------------- +@DIFF@ +-------------------------------------------------------- + +Revisi lama: @OLDPAGE@ + +Revisi baru: @NEWPAGE@ + +Untuk menonaktifkan pemberitahuan ini, masuk ke wiki di @DOKUWIKIURL@ kemudian kunjungi @SUBSCRIBE@ dan halaman batal berlangganan dan/atau namespace yang diubah. + +-- +Email ini dibuat oleh DokuWiki di @DOKUWIKIURL@ \ No newline at end of file -- cgit v1.2.3 From 788d553a1ebe92bace39388b98a10c423cd9ba6f Mon Sep 17 00:00:00 2001 From: Young gon Cha Date: Thu, 3 Apr 2014 02:46:32 +0200 Subject: translation update --- inc/lang/ko/lang.php | 8 ++++-- lib/plugins/authad/lang/ko/lang.php | 10 +++---- lib/plugins/extension/lang/ko/lang.php | 52 ++++++++++++++++++++++++++++++++++ 3 files changed, 62 insertions(+), 8 deletions(-) create mode 100644 lib/plugins/extension/lang/ko/lang.php diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index 3a49dda7a..be102b2b3 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -12,6 +12,7 @@ * @author Myeongjin * @author Gerrit Uitslag * @author Garam + * @author Young gon Cha */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -56,6 +57,8 @@ $lang['btn_register'] = '등록'; $lang['btn_apply'] = '적용'; $lang['btn_media'] = '미디어 관리'; $lang['btn_deleteuser'] = '내 계정 제거'; +$lang['btn_img_backto'] = '뒤로 %s'; +$lang['btn_mediaManager'] = '미디어 관리자에서 보기'; $lang['loggedinas'] = '로그인한 사용자'; $lang['user'] = '사용자 이름'; $lang['pass'] = '비밀번호'; @@ -185,6 +188,9 @@ $lang['difflink'] = '차이 보기로 링크'; $lang['diff_type'] = '차이 보기:'; $lang['diff_inline'] = '직렬 방식'; $lang['diff_side'] = '다중 창 방식'; +$lang['diffprevrev'] = '이전 리비전'; +$lang['diffnextrev'] = '다음 리비전'; +$lang['difflastrev'] = '마지막 리비전'; $lang['line'] = '줄'; $lang['breadcrumb'] = '추적'; $lang['youarehere'] = '현재 위치'; @@ -241,7 +247,6 @@ $lang['admin_register'] = '새 사용자 추가'; $lang['metaedit'] = '메타데이터 편집'; $lang['metasaveerr'] = '메타데이터 쓰기 실패'; $lang['metasaveok'] = '메타데이터 저장됨'; -$lang['btn_img_backto'] = '뒤로 %s'; $lang['img_title'] = '제목'; $lang['img_caption'] = '설명'; $lang['img_date'] = '날짜'; @@ -254,7 +259,6 @@ $lang['img_camera'] = '카메라'; $lang['img_keywords'] = '키워드'; $lang['img_width'] = '너비'; $lang['img_height'] = '높이'; -$lang['btn_mediaManager'] = '미디어 관리자에서 보기'; $lang['subscr_subscribe_success'] = '%s 사용자가 %s 구독 목록에 추가했습니다'; $lang['subscr_subscribe_error'] = '%s 사용자가 %s 구독 목록에 추가하는데 실패했습니다'; $lang['subscr_subscribe_noaddress'] = '로그인으로 연결된 주소가 없기 때문에 구독 목록에 추가할 수 없습니다'; diff --git a/lib/plugins/authad/lang/ko/lang.php b/lib/plugins/authad/lang/ko/lang.php index 1aa436708..5a2416b2c 100644 --- a/lib/plugins/authad/lang/ko/lang.php +++ b/lib/plugins/authad/lang/ko/lang.php @@ -1,10 +1,8 @@ */ - -$lang['domain'] = '로그온 도메인'; - -//Setup VIM: ex: et ts=4 : +$lang['domain'] = '로그온 도메인'; diff --git a/lib/plugins/extension/lang/ko/lang.php b/lib/plugins/extension/lang/ko/lang.php new file mode 100644 index 000000000..ce1f19921 --- /dev/null +++ b/lib/plugins/extension/lang/ko/lang.php @@ -0,0 +1,52 @@ + + */ +$lang['menu'] = '확장기능 관리자'; +$lang['tab_plugins'] = '설치된 플러그인'; +$lang['tab_templates'] = '설치된 템플릿'; +$lang['tab_search'] = '검색 설치'; +$lang['tab_install'] = '수동 설치'; +$lang['notimplemented'] = '이 기능은 아직 시행될 수 없습니다'; +$lang['notinstalled'] = '이 확장기능은 설치되지 않았습니다'; +$lang['alreadyenabled'] = '이 확장기능이 활성되었습니다'; +$lang['alreadydisabled'] = '이 확장기능이 비활성되었습니다'; +$lang['pluginlistsaveerror'] = '플러그인 목록을 저장 중 오류가 있었습니다'; +$lang['unknownauthor'] = '알 수 없는 제작자'; +$lang['unknownversion'] = '알 수 없는 버전'; +$lang['btn_info'] = '정보 더 보기'; +$lang['btn_update'] = '업데이트'; +$lang['btn_uninstall'] = '제거'; +$lang['btn_enable'] = '활성'; +$lang['btn_disable'] = '비활성'; +$lang['btn_install'] = '설치'; +$lang['btn_reinstall'] = '재설치'; +$lang['js']['reallydel'] = '이 확장기능을 정말 제거 하시겠습니까?'; +$lang['search_for'] = '확장기능 찾기:'; +$lang['search'] = '검색'; +$lang['homepage_link'] = '문서'; +$lang['bugs_features'] = '버그'; +$lang['tags'] = '태그:'; +$lang['author_hint'] = '이 제작자로 확장기능 검색'; +$lang['installed'] = '설치됨:'; +$lang['downloadurl'] = '다운로드 주소:'; +$lang['repository'] = '저장소:'; +$lang['unknown'] = '알 수 없음'; +$lang['installed_version'] = '설치된 버전:'; +$lang['install_date'] = '마지막 업데이트:'; +$lang['available_version'] = '가능한 버전:'; +$lang['repo_retry'] = '재시도'; +$lang['status'] = '상태:'; +$lang['status_installed'] = '설치됨'; +$lang['status_not_installed'] = '설치 안됨'; +$lang['status_protected'] = '보호됨'; +$lang['status_enabled'] = '활성됨'; +$lang['status_disabled'] = '비활성됨'; +$lang['status_plugin'] = '플러그인'; +$lang['status_template'] = '템플릿'; +$lang['msg_delete_success'] = '확장기능 제거됨'; +$lang['msg_upload_failed'] = '파일 업로딩 실패함'; +$lang['error_badurl'] = '주소는 http나 https로 시작해야 합니다'; -- cgit v1.2.3 From a4bc205acc656841e5020ebf63fa1303ebb4f7d5 Mon Sep 17 00:00:00 2001 From: Clomode Date: Thu, 3 Apr 2014 23:58:37 +1100 Subject: fixed unclosed tags in some language translations --- inc/lang/he/lang.php | 2 +- lib/plugins/authad/lang/es/settings.php | 2 +- lib/plugins/authldap/lang/et/settings.php | 2 +- lib/plugins/authldap/lang/ja/settings.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/inc/lang/he/lang.php b/inc/lang/he/lang.php index 5339d1802..c9a01a193 100644 --- a/inc/lang/he/lang.php +++ b/inc/lang/he/lang.php @@ -285,7 +285,7 @@ $lang['i_modified'] = 'משיקולי אבטחה סקריפט זה י עליך לחלץ שנית את הקבצים מהחבילה שהורדה או להיעזר בדף Dokuwiki installation instructions'; $lang['i_funcna'] = 'פונקציית ה-PHP‏ %s אינה זמינה. יתכן כי מארח האתר חסם אותה מסיבה כלשהי?'; -$lang['i_phpver'] = 'גרסת PHP שלך %s נמוכה מ %s הצורך. אתה צריך לשדרג PHP שלך להתקין.'; +$lang['i_phpver'] = 'גרסת PHP שלך %s נמוכה מ %s הצורך. אתה צריך לשדרג PHP שלך להתקין.'; $lang['i_permfail'] = '%s אינה ניתנת לכתיבה על ידי DokuWiki. עליך לשנות הרשאות תיקייה זו!'; $lang['i_confexists'] = '%s כבר קיים'; $lang['i_writeerr'] = 'אין אפשרות ליצור את %s. נא לבדוק את הרשאות הקובץ/תיקייה וליצור את הקובץ ידנית.'; diff --git a/lib/plugins/authad/lang/es/settings.php b/lib/plugins/authad/lang/es/settings.php index 9dbd44be8..087402d1c 100644 --- a/lib/plugins/authad/lang/es/settings.php +++ b/lib/plugins/authad/lang/es/settings.php @@ -7,7 +7,7 @@ * @author Antonio Bueno * @author Juan De La Cruz */ -$lang['account_suffix'] = 'Su cuenta, sufijo. Ejem. @ my.domain.org '; +$lang['account_suffix'] = 'Su cuenta, sufijo. Ejem. @ my.domain.org '; $lang['base_dn'] = 'Su base DN. Ejem. DC=my,DC=dominio,DC=org'; $lang['domain_controllers'] = 'Una lista separada por coma de los controladores de dominios. Ejem. srv1.dominio.org,srv2.dominio.org'; $lang['admin_username'] = 'Un usuario con privilegios de Active Directory con acceso a los datos de cualquier otro usuario. Opcional, pero es necesario para determinadas acciones como el envío de suscripciones de correos electrónicos.'; diff --git a/lib/plugins/authldap/lang/et/settings.php b/lib/plugins/authldap/lang/et/settings.php index 9bba85dda..f4933b6bf 100644 --- a/lib/plugins/authldap/lang/et/settings.php +++ b/lib/plugins/authldap/lang/et/settings.php @@ -5,5 +5,5 @@ * * @author Janar Leas */ -$lang['grouptree'] = 'Kus kohast kasutaja rühmi otsida. Nt. ou=Rühm, dc=server, dc=tld * @author Hideaki SAWADA */ -$lang['server'] = 'LDAPサーバー。ホスト名(localhostldap://server.tld:389)'; +$lang['server'] = 'LDAPサーバー。ホスト名(localhost)又は完全修飾URL(ldap://server.tld:389)'; $lang['port'] = '上記が完全修飾URLでない場合、LDAPサーバーポート'; $lang['usertree'] = 'ユーザーアカウントを探す場所。例:ou=People, dc=server, dc=tld'; $lang['grouptree'] = 'ユーザーグループを探す場所。例:ou=Group, dc=server, dc=tld'; -- cgit v1.2.3 From 07ee73eeefb13e9070c05430d5c2730e696f0061 Mon Sep 17 00:00:00 2001 From: Jernej Vidmar Date: Sat, 5 Apr 2014 13:46:05 +0200 Subject: translation update --- inc/lang/sl/lang.php | 11 +++++++++-- lib/plugins/authad/lang/sl/settings.php | 3 +++ lib/plugins/authldap/lang/sl/settings.php | 2 ++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/inc/lang/sl/lang.php b/inc/lang/sl/lang.php index 6de260092..c834611dc 100644 --- a/inc/lang/sl/lang.php +++ b/inc/lang/sl/lang.php @@ -10,6 +10,7 @@ * @author Matej Urbančič (mateju@svn.gnome.org) * @author Matej Urbančič * @author matej + * @author Jernej Vidmar */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -54,6 +55,8 @@ $lang['btn_register'] = 'Prijava'; $lang['btn_apply'] = 'Uveljavi'; $lang['btn_media'] = 'Urejevalnik predstavnih vsebin'; $lang['btn_deleteuser'] = 'Odstrani račun'; +$lang['btn_img_backto'] = 'Nazaj na %s'; +$lang['btn_mediaManager'] = 'Poglej v urejevalniku predstavnih vsebin'; $lang['loggedinas'] = 'Prijava kot'; $lang['user'] = 'Uporabniško ime'; $lang['pass'] = 'Geslo'; @@ -85,6 +88,7 @@ $lang['profchanged'] = 'Uporabniški profil je uspešno posodobljen.'; $lang['profnodelete'] = 'Ni omogočena podpora za brisanje uporabnikov.'; $lang['profdeleteuser'] = 'Izbriši račun'; $lang['profdeleted'] = 'Uporabniški račun je izbrisan.'; +$lang['profconfdeletemissing'] = 'Potrditveno okno ni označeno'; $lang['pwdforget'] = 'Ali ste pozabili geslo? Pridobite si novo geslo.'; $lang['resendna'] = 'DokuWiki ne podpira možnosti ponovnega pošiljanja gesel.'; $lang['resendpwd'] = 'Nastavi novo geslo za'; @@ -179,6 +183,9 @@ $lang['difflink'] = 'Poveži s tem pogledom primerjave.'; $lang['diff_type'] = 'Razlike:'; $lang['diff_inline'] = 'V besedilu'; $lang['diff_side'] = 'Eno ob drugem'; +$lang['diffprevrev'] = 'Prejšnja revizija'; +$lang['diffnextrev'] = 'Naslednja revizija'; +$lang['difflastrev'] = 'Zadnja revizija'; $lang['line'] = 'Vrstica'; $lang['breadcrumb'] = 'Sled'; $lang['youarehere'] = 'Trenutno dejavna stran'; @@ -235,7 +242,6 @@ $lang['admin_register'] = 'Dodaj novega uporabnika'; $lang['metaedit'] = 'Uredi metapodatke'; $lang['metasaveerr'] = 'Zapisovanje metapodatkov je spodletelo'; $lang['metasaveok'] = 'Metapodatki so shranjeni'; -$lang['btn_img_backto'] = 'Nazaj na %s'; $lang['img_title'] = 'Naslov'; $lang['img_caption'] = 'Opis'; $lang['img_date'] = 'Datum'; @@ -248,7 +254,6 @@ $lang['img_camera'] = 'Fotoaparat'; $lang['img_keywords'] = 'Ključne besede'; $lang['img_width'] = 'Širina'; $lang['img_height'] = 'Višina'; -$lang['btn_mediaManager'] = 'Poglej v urejevalniku predstavnih vsebin'; $lang['subscr_subscribe_success'] = 'Uporabniški račun %s je dodan na seznam naročnin na %s'; $lang['subscr_subscribe_error'] = 'Napaka med dodajanjem %s na seznam naročnin na %s'; $lang['subscr_subscribe_noaddress'] = 'S trenutnimi prijavnimi podatki ni povezanega elektronskega naslova, zato uporabniškega računa ni mogoče dodati na seznam naročnikov.'; @@ -291,6 +296,8 @@ $lang['i_allowreg'] = 'Dovoli uporabnikom vpis'; $lang['i_retry'] = 'Ponovni poskus'; $lang['i_license'] = 'Izbor dovoljenja objave vsebine:'; $lang['i_license_none'] = 'Ne pokaži podrobnosti dovoljenja.'; +$lang['i_pop_field'] = 'Prosimo pomagajte nam izboljšati DokuWiki izkušnjo:'; +$lang['i_pop_label'] = 'Enkrat na mesec pošlji anonimne uporabniške podatke DokuWiki razvijalcem'; $lang['recent_global'] = 'Trenutno so prikazane spremembe znotraj imenskega prostora %s. Mogoče si je ogledati tudi spremembe celotnega sistema Wiki.'; $lang['years'] = '%d let nazaj'; $lang['months'] = '%d mesecev nazaj'; diff --git a/lib/plugins/authad/lang/sl/settings.php b/lib/plugins/authad/lang/sl/settings.php index bae467d6d..5849ea431 100644 --- a/lib/plugins/authad/lang/sl/settings.php +++ b/lib/plugins/authad/lang/sl/settings.php @@ -4,5 +4,8 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author matej + * @author Jernej Vidmar */ +$lang['admin_password'] = 'Geslo zgoraj omenjenega uporabnika'; +$lang['use_tls'] = 'Uporabi TLS povezavo? Če da, ne vključi SSL povezave zgoraj.'; $lang['debug'] = 'Ali naj bodo prikazane dodatne podrobnosti napak?'; diff --git a/lib/plugins/authldap/lang/sl/settings.php b/lib/plugins/authldap/lang/sl/settings.php index f180226fc..f63070390 100644 --- a/lib/plugins/authldap/lang/sl/settings.php +++ b/lib/plugins/authldap/lang/sl/settings.php @@ -4,5 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author matej + * @author Jernej Vidmar */ $lang['starttls'] = 'Ali naj se uporabijo povezave TLS?'; +$lang['bindpw'] = 'Geslo uporabnika zgoraj'; -- cgit v1.2.3 From f4664c4a8a3a2f20afc25899bcd30e22d8402b6f Mon Sep 17 00:00:00 2001 From: NEOhidra Date: Sun, 6 Apr 2014 18:31:18 +0300 Subject: Bulgarian language update --- inc/lang/bg/lang.php | 30 +++++++++++++++--------------- inc/lang/bg/register.txt | 2 +- inc/lang/bg/resendpwd.txt | 2 +- lib/plugins/config/lang/bg/lang.php | 4 ++-- lib/plugins/usermanager/lang/bg/lang.php | 6 +++--- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/inc/lang/bg/lang.php b/inc/lang/bg/lang.php index dcf66955f..77117154f 100644 --- a/inc/lang/bg/lang.php +++ b/inc/lang/bg/lang.php @@ -50,7 +50,7 @@ $lang['btn_revert'] = 'Възстановяване'; $lang['btn_register'] = 'Регистриране'; $lang['btn_apply'] = 'Прилагане'; $lang['btn_media'] = 'Диспечер на файлове'; -$lang['btn_deleteuser'] = 'Изтрий профила ми'; +$lang['btn_deleteuser'] = 'Изтриване на профила'; $lang['loggedinas'] = 'Вписани сте като'; $lang['user'] = 'Потребител'; $lang['pass'] = 'Парола'; @@ -62,7 +62,7 @@ $lang['fullname'] = 'Истинско име'; $lang['email'] = 'Електронна поща'; $lang['profile'] = 'Потребителски профил'; $lang['badlogin'] = 'Грешно потребителско име или парола.'; -$lang['badpassconfirm'] = 'Съжаляваме, паролата е грешна'; +$lang['badpassconfirm'] = 'За съжаление паролата е грешна'; $lang['minoredit'] = 'Промените са незначителни'; $lang['draftdate'] = 'Черновата е автоматично записана на'; $lang['nosecedit'] = 'Страницата бе междувременно променена, презареждане на страницата поради неактуална информация.'; @@ -77,13 +77,13 @@ $lang['regpwmail'] = 'Паролата ви за DokuWiki'; $lang['reghere'] = 'Все още нямате профил? Направете си'; $lang['profna'] = 'Wiki-то не поддържа промяна на профила'; $lang['profnochange'] = 'Няма промени.'; -$lang['profnoempty'] = 'Въвеждането на име и ел. поща е задължително'; +$lang['profnoempty'] = 'Въвеждането на име и имейл е задължително'; $lang['profchanged'] = 'Потребителският профил е обновен успешно.'; -$lang['profnodelete'] = 'Не е възможно изтриване на потребители в това wiki '; -$lang['profdeleteuser'] = 'Изтрий профила ми'; +$lang['profnodelete'] = 'Изтриването на потребители в това wiki не е възможно'; +$lang['profdeleteuser'] = 'Изтриване на профила'; $lang['profdeleted'] = 'Вашият профил е премахнат от това wiki '; -$lang['profconfdelete'] = 'Искам да изтрия профила си от това wiki.
Веднъж изтрит, профила не може да бъде възстановен!'; -$lang['profconfdeletemissing'] = 'Не и маркирана опцията за потвърждение'; +$lang['profconfdelete'] = 'Искам да изтрия профила си от това wiki.
Веднъж изтрит, профилът не може да бъде възстановен!'; +$lang['profconfdeletemissing'] = 'Не сте поставили отметка в кутията потвърждение'; $lang['pwdforget'] = 'Забравили сте паролата си? Получете нова'; $lang['resendna'] = 'Wiki-то не поддържа повторно пращане на паролата.'; $lang['resendpwd'] = 'Задаване на нова парола за'; @@ -140,7 +140,7 @@ $lang['js']['media_diff_portions'] = 'По половинка'; $lang['js']['media_select'] = 'Изберете файлове...'; $lang['js']['media_upload_btn'] = 'Качване'; $lang['js']['media_done_btn'] = 'Готово'; -$lang['js']['media_drop'] = 'Влачете и пуснете файливе тук, за да бъдат качени'; +$lang['js']['media_drop'] = 'Влачете и пуснете файлове тук, за да бъдат качени'; $lang['js']['media_cancel'] = 'премахване'; $lang['js']['media_overwrt'] = 'Презапиши съществуващите файлове'; $lang['rssfailed'] = 'Възникна грешка при получаването на емисията: '; @@ -164,7 +164,7 @@ $lang['accessdenied'] = 'Нямате необходимите прав $lang['mediausage'] = 'Ползвайте следния синтаксис, за да упоменете файла:'; $lang['mediaview'] = 'Преглед на оригиналния файл'; $lang['mediaroot'] = 'root'; -$lang['mediaupload'] = 'Качете файл в текущото именно пространство. За създаване на подимено пространство, добавете име преди това на файла като ги разделите с двоеточие в полето "Качи като"'; +$lang['mediaupload'] = 'Качете файл в текущото именно пространство. За създаване на подименно пространство, добавете име преди това на файла като ги разделите с двоеточие в полето "Качи като"'; $lang['mediaextchange'] = 'Разширението на файла е сменено от .%s на .%s!'; $lang['reference'] = 'Връзки за'; $lang['ref_inuse'] = 'Файлът не може да бъде изтрит, защото все още се ползва от следните страници:'; @@ -252,7 +252,7 @@ $lang['img_height'] = 'Височина'; $lang['btn_mediaManager'] = 'Преглед в диспечера на файлове'; $lang['subscr_subscribe_success'] = '%s е добавен към списъка с абониралите се за %s'; $lang['subscr_subscribe_error'] = 'Грешка при добавянето на %s към списъка с абониралите се за %s'; -$lang['subscr_subscribe_noaddress'] = 'Добавянето ви към списъка с абонати не е възможно поради липсата на свързан адрес (на ел. поща) с профила ви.'; +$lang['subscr_subscribe_noaddress'] = 'Добавянето ви към списъка с абонати не е възможно поради липсата на свързан адрес (имейл) с профила ви.'; $lang['subscr_unsubscribe_success'] = '%s е премахнат от списъка с абониралите се за %s'; $lang['subscr_unsubscribe_error'] = 'Грешка при премахването на %s от списъка с абониралите се за %s'; $lang['subscr_already_subscribed'] = '%s е вече абониран за %s'; @@ -263,12 +263,12 @@ $lang['subscr_m_current_header'] = 'Текущи абонаменти'; $lang['subscr_m_unsubscribe'] = 'Прекратяване на абонамента'; $lang['subscr_m_subscribe'] = 'Абониране'; $lang['subscr_m_receive'] = 'Получаване'; -$lang['subscr_style_every'] = 'на ел. писмо при всяка промяна'; -$lang['subscr_style_digest'] = 'на ел. писмо с обобщение на промените във всяка страница (всеки %.2f дни)'; -$lang['subscr_style_list'] = 'на списък с променените страници от последното ел. писмо (всеки %.2f дни)'; +$lang['subscr_style_every'] = 'на имейл при всяка промяна'; +$lang['subscr_style_digest'] = 'на имейл с обобщение на промените във всяка страница (всеки %.2f дни)'; +$lang['subscr_style_list'] = 'на списък с променените страници от последния имейл (всеки %.2f дни)'; $lang['authtempfail'] = 'Удостоверяването на потребители не е възможно за момента. Ако продължи дълго, моля уведомете администратора на Wiki страницата.'; -$lang['authpwdexpire'] = 'Срока на паролата ви ще изтече след %d дни. Препорачително е да я смените по-скоро.'; -$lang['i_chooselang'] = 'Изберете вашия изик'; +$lang['authpwdexpire'] = 'Срока на паролата ви ще изтече след %d дни. Препоръчително е да я смените по-скоро.'; +$lang['i_chooselang'] = 'Изберете вашия език'; $lang['i_installer'] = 'Инсталатор на DokuWiki'; $lang['i_wikiname'] = 'Име на Wiki-то'; $lang['i_enableacl'] = 'Ползване на списък за достъп (ACL) [препоръчително]'; diff --git a/inc/lang/bg/register.txt b/inc/lang/bg/register.txt index 51fbb83fe..333428005 100644 --- a/inc/lang/bg/register.txt +++ b/inc/lang/bg/register.txt @@ -1,4 +1,4 @@ ====== Регистриране като нов потребител ====== -Моля, попълнете всичките полета отдолу, за да бъде създаден нов профил. Уверете се, че въведеният **адрес на ел. поща е правилен**. Ако няма поле за парола, ще ви бъде изпратена такава на въведения адрес. Потребителското име трябва да бъде валидно [[doku>pagename|име на страница]]. +Моля, попълнете всичките полета отдолу, за да бъде създаден нов профил. Уверете се, че въведеният **имейл адрес е правилен**. Ако няма поле за парола, ще ви бъде изпратена такава на въведения адрес. Потребителското име трябва да бъде валидно [[doku>pagename|име на страница]]. diff --git a/inc/lang/bg/resendpwd.txt b/inc/lang/bg/resendpwd.txt index 38e2d1fe4..19dffc070 100644 --- a/inc/lang/bg/resendpwd.txt +++ b/inc/lang/bg/resendpwd.txt @@ -1,3 +1,3 @@ ====== Пращане на нова парола ====== -Моля, въведете потребителското си име във формата по-долу, ако желаете да получите нова парола. По ел. поща ще получите линк, с който да потвърдите. +Моля, въведете потребителското си име във формата по-долу, ако желаете да получите нова парола. Чрез имейл ще получите линк, с който да потвърдите. diff --git a/lib/plugins/config/lang/bg/lang.php b/lib/plugins/config/lang/bg/lang.php index d0df38cae..64ddb1eae 100644 --- a/lib/plugins/config/lang/bg/lang.php +++ b/lib/plugins/config/lang/bg/lang.php @@ -67,7 +67,7 @@ $lang['fmode'] = 'Режим (права) за създаване на фа $lang['allowdebug'] = 'Включване на режи debug - изключете, ако не е нужен!'; /* Display Settings */ -$lang['recent'] = 'Скорошни промени - брой еленти на страница'; +$lang['recent'] = 'Скорошни промени - брой елементи на страница'; $lang['recent_days'] = 'Колко от скорошните промени да се пазят (дни)'; $lang['breadcrumbs'] = 'Брой на следите. За изключване на функцията задайте 0.'; $lang['youarehere'] = 'Йерархични следи (в този случай можете да изключите горната опция)'; @@ -167,7 +167,7 @@ $lang['compress'] = 'Компактен CSS и javascript изглед'; $lang['cssdatauri'] = 'Максимален размер, в байтове, до който изображенията посочени в .CSS файл ще бъдат вграждани в стила (stylesheet), за да се намали броя на HTTP заявките. Техниката не работи за версиите на IE преди 8! Препоръчителни стойности: 400 до 600 байта. Въведете 0 за изключване.'; $lang['send404'] = 'Пращане на "HTTP 404/Page Not Found" за несъществуващи страници'; $lang['broken_iua'] = 'Отметнете, ако ignore_user_abort функцията не работи. Може да попречи на търсенето в страниците. Знае се, че комбинацията IIS+PHP/CGI е лоша. Вижте Грешка 852 за повече информация.'; -$lang['xsendfile'] = 'Ползване на Х-Sendfile header, за да може уебсървъра да дава статични файлове? Вашият уебсървър трябва да го поддържа.'; +$lang['xsendfile'] = 'Ползване на Х-Sendfile header, за да може уебсървъра да дава статични файлове? Вашият уеб сървър трябва да го поддържа.'; $lang['renderer_xhtml'] = 'Представяне на основните изходни данни (xhtml) от Wiki-то с'; $lang['renderer__core'] = '%s (ядрото на DokuWiki)'; $lang['renderer__plugin'] = '%s (приставка)'; diff --git a/lib/plugins/usermanager/lang/bg/lang.php b/lib/plugins/usermanager/lang/bg/lang.php index 9700385f8..aadf76512 100644 --- a/lib/plugins/usermanager/lang/bg/lang.php +++ b/lib/plugins/usermanager/lang/bg/lang.php @@ -41,10 +41,10 @@ $lang['next'] = 'напред'; $lang['last'] = 'край'; $lang['edit_usermissing'] = 'Избраният потребител не е намерен, въведеното потребителско име може да е изтрито или променено другаде.'; $lang['user_notify'] = 'Уведомяване на потребителя'; -$lang['note_notify'] = 'Ел. писмо се изпраща само ако бъде променена паролата на потребителя.'; +$lang['note_notify'] = 'Имейл се изпраща само ако бъде променена паролата на потребителя.'; $lang['note_group'] = 'Новите потребители биват добавяни към стандартната групата (%s) ако не е посочена друга.'; $lang['note_pass'] = 'Паролата ще бъде генерирана автоматично, ако оставите полето празно и функцията за уведомяване на потребителя е включена.'; $lang['add_ok'] = 'Добавянето на потребителя е успешно'; $lang['add_fail'] = 'Добавянето на потребителя се провали'; -$lang['notify_ok'] = 'Изпратено е осведомително ел. писмо'; -$lang['notify_fail'] = 'Изпращането на осведомително ел. писмо не е възможно'; +$lang['notify_ok'] = 'Изпратено е осведомителен имейл'; +$lang['notify_fail'] = 'Изпращането на осведомителен имейл не е възможно'; -- cgit v1.2.3 From 8bd5828d4ea6813605d73632ec6dfad65af787cb Mon Sep 17 00:00:00 2001 From: Anika Henke Date: Sun, 6 Apr 2014 18:35:17 +0100 Subject: oops, removed unintentionally added CSS files --- lib/tpl/dokuwiki/css/sites/abcwiki.css | 39 ----------------------- lib/tpl/dokuwiki/css/sites/paralis.css | 58 ---------------------------------- 2 files changed, 97 deletions(-) delete mode 100644 lib/tpl/dokuwiki/css/sites/abcwiki.css delete mode 100644 lib/tpl/dokuwiki/css/sites/paralis.css diff --git a/lib/tpl/dokuwiki/css/sites/abcwiki.css b/lib/tpl/dokuwiki/css/sites/abcwiki.css deleted file mode 100644 index 9f436516b..000000000 --- a/lib/tpl/dokuwiki/css/sites/abcwiki.css +++ /dev/null @@ -1,39 +0,0 @@ - -html, -body { - background-color: #369; -} - -#dokuwiki__header, -#dokuwiki__aside, -.docInfo, -#dokuwiki__footer { - color: #fff; -} - -#dokuwiki__header a, -#dokuwiki__aside a, -.docInfo a, -#dokuwiki__footer a { - color: #ff9 !important; -} - -h1, -h2, -h3, -h4, -h5, -h6 { - color: #036; -} - -.dokuwiki div.breadcrumbs { - border-top-color: #999; - border-bottom-color: #666; -} -.dokuwiki div.breadcrumbs div:first-child { - border-bottom-color: #999; -} -.dokuwiki div.breadcrumbs div:last-child { - border-top-color: #666; -} diff --git a/lib/tpl/dokuwiki/css/sites/paralis.css b/lib/tpl/dokuwiki/css/sites/paralis.css deleted file mode 100644 index 201bca936..000000000 --- a/lib/tpl/dokuwiki/css/sites/paralis.css +++ /dev/null @@ -1,58 +0,0 @@ - -@media screen { - -body { - font: normal 100%/1.4 Frutiger, Calibri, "Myriad Pro", Myriad, "Nimbus Sans L", Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; -} - -h1, -h2, -h3, -h4, -h5, -h6 { - font-family: Constantia, Utopia, Lucidabright, Lucida, Georgia, "Nimbus Roman No9 L", serif; - color: @ini_text_neu; -} - -q { - font-style: italic; -} - -#dokuwiki__header h1 a { - color: @ini_link; - font-weight: bold; -} - -div.dokuwiki p.plugin__pagenav { - margin: 0 0 1.4em; -} - - -} /* /@media */ - - -#dokuwiki__header h1 { - position: relative; -} -#dokuwiki__header h1 img { - position: absolute; - top: -27px; - left: -33px; - max-width: none; -} -#dokuwiki__header h1 { - padding-left: 110px; -} -#dokuwiki__header p.claim { - padding-left: 110px; -} - - -@media print { - -.dokuwiki p.plugin__pagenav { - display: none; -} - -} /* /@media */ -- cgit v1.2.3 From 481343c25e1c66a6bc789de47ea9f8e257b67be1 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 9 Apr 2014 10:27:52 +0200 Subject: our code may only throw user errors --- inc/plugin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/plugin.php b/inc/plugin.php index 95bdaee2b..7de4fbd74 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -255,7 +255,7 @@ class DokuWiki_Plugin { if(!isset($arguments[1])) $arguments[1] = 'xhtml'; return $this->render_text($arguments[0], $arguments[1]); } - trigger_error("no such method $name", E_ERROR); + trigger_error("no such method $name", E_USER_ERROR); return null; } -- cgit v1.2.3 From 969df2f1a2855988cc9c14870869d05fd42037ad Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 9 Apr 2014 16:00:57 +0200 Subject: fix include_once for JavaScript the second include was never removed, causing an endless loop. --- lib/exe/js.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/exe/js.php b/lib/exe/js.php index 4d4660197..bec12ef7a 100644 --- a/lib/exe/js.php +++ b/lib/exe/js.php @@ -166,7 +166,10 @@ function js_load($file){ // is it a include_once? if($match[1]){ $base = utf8_basename($ifile); - if($loaded[$base]) continue; + if($loaded[$base]){ + $data = str_replace($match[0], '' ,$data); + continue; + } $loaded[$base] = true; } -- cgit v1.2.3 From aafe66b6f625b26207700b72e9828ecc26234145 Mon Sep 17 00:00:00 2001 From: Robert Bogenschneider Date: Thu, 10 Apr 2014 10:16:04 +0200 Subject: translation update --- inc/lang/eo/denied.txt | 2 +- inc/lang/eo/lang.php | 9 +++++++-- lib/plugins/authad/lang/eo/lang.php | 8 ++++++++ 3 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 lib/plugins/authad/lang/eo/lang.php diff --git a/inc/lang/eo/denied.txt b/inc/lang/eo/denied.txt index 0be6a2e84..e0abba12c 100644 --- a/inc/lang/eo/denied.txt +++ b/inc/lang/eo/denied.txt @@ -1,4 +1,4 @@ ====== Aliro malpermesita ====== -Vi ne havas sufiĉajn rajtojn rigardi ĉi tiujn paĝojn. +Vi ne havas sufiĉajn rajtojn daŭrigi. diff --git a/inc/lang/eo/lang.php b/inc/lang/eo/lang.php index b3c19b601..4a4a52cac 100644 --- a/inc/lang/eo/lang.php +++ b/inc/lang/eo/lang.php @@ -54,6 +54,8 @@ $lang['btn_register'] = 'Registriĝi'; $lang['btn_apply'] = 'Apliki'; $lang['btn_media'] = 'Medio-administrilo'; $lang['btn_deleteuser'] = 'Forigi mian konton'; +$lang['btn_img_backto'] = 'Iri reen al %s'; +$lang['btn_mediaManager'] = 'Rigardi en aŭdvidaĵ-administrilo'; $lang['loggedinas'] = 'Ensalutinta kiel'; $lang['user'] = 'Uzant-nomo'; $lang['pass'] = 'Pasvorto'; @@ -184,6 +186,11 @@ $lang['difflink'] = 'Ligilo al kompara rigardo'; $lang['diff_type'] = 'Rigardi malsamojn:'; $lang['diff_inline'] = 'Samlinie'; $lang['diff_side'] = 'Apude'; +$lang['diffprevrev'] = 'Antaŭa revizio'; +$lang['diffnextrev'] = 'Sekva revizio'; +$lang['difflastrev'] = 'Lasta revizio'; +$lang['diffbothprevrev'] = 'Sur ambaŭ flankoj antaŭa revizio'; +$lang['diffbothnextrev'] = 'Sur ambaŭ flankoj sekva revizio'; $lang['line'] = 'Linio'; $lang['breadcrumb'] = 'Paŝoj'; $lang['youarehere'] = 'Vi estas ĉi tie'; @@ -240,7 +247,6 @@ $lang['admin_register'] = 'Aldoni novan uzanton'; $lang['metaedit'] = 'Redakti metadatumaron'; $lang['metasaveerr'] = 'La konservo de metadatumaro malsukcesis'; $lang['metasaveok'] = 'La metadatumaro konserviĝis'; -$lang['btn_img_backto'] = 'Iri reen al %s'; $lang['img_title'] = 'Titolo'; $lang['img_caption'] = 'Priskribo'; $lang['img_date'] = 'Dato'; @@ -253,7 +259,6 @@ $lang['img_camera'] = 'Kamerao'; $lang['img_keywords'] = 'Ŝlosilvortoj'; $lang['img_width'] = 'Larĝeco'; $lang['img_height'] = 'Alteco'; -$lang['btn_mediaManager'] = 'Rigardi en aŭdvidaĵ-administrilo'; $lang['subscr_subscribe_success'] = 'Aldonis %s al la abonlisto por %s'; $lang['subscr_subscribe_error'] = 'Eraro dum aldono de %s al la abonlisto por %s'; $lang['subscr_subscribe_noaddress'] = 'Ne estas adreso ligita al via ensaluto, ne eblas aldoni vin al la abonlisto'; diff --git a/lib/plugins/authad/lang/eo/lang.php b/lib/plugins/authad/lang/eo/lang.php new file mode 100644 index 000000000..be4abc123 --- /dev/null +++ b/lib/plugins/authad/lang/eo/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['domain'] = 'Ensaluta domajno'; -- cgit v1.2.3 From afc19b3d7c042b1257cc4eecd17ad7afba4a4ae9 Mon Sep 17 00:00:00 2001 From: Eloy Date: Fri, 11 Apr 2014 19:36:06 +0200 Subject: translation update --- inc/lang/es/lang.php | 1 + lib/plugins/authad/lang/es/settings.php | 4 ++++ lib/plugins/authldap/lang/es/settings.php | 6 ++++++ lib/plugins/authmysql/lang/es/settings.php | 2 ++ 4 files changed, 13 insertions(+) diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 756cce4d8..096027f83 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -33,6 +33,7 @@ * @author Antonio Bueno * @author Juan De La Cruz * @author Fernando + * @author Eloy */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/lib/plugins/authad/lang/es/settings.php b/lib/plugins/authad/lang/es/settings.php index 087402d1c..13c1144c9 100644 --- a/lib/plugins/authad/lang/es/settings.php +++ b/lib/plugins/authad/lang/es/settings.php @@ -6,6 +6,7 @@ * @author monica * @author Antonio Bueno * @author Juan De La Cruz + * @author Eloy */ $lang['account_suffix'] = 'Su cuenta, sufijo. Ejem. @ my.domain.org '; $lang['base_dn'] = 'Su base DN. Ejem. DC=my,DC=dominio,DC=org'; @@ -14,4 +15,7 @@ $lang['admin_username'] = 'Un usuario con privilegios de Active Directory $lang['admin_password'] = 'La contraseña del usuario anterior.'; $lang['sso'] = 'En caso de inicio de sesión usará ¿Kerberos o NTLM?'; $lang['sso_charset'] = 'La codificación con que tu servidor web pasará el nombre de usuario Kerberos o NTLM. Si es UTF-8 o latin-1 dejar en blanco. Requiere la extensión iconv.'; +$lang['use_ssl'] = '¿Usar conexión SSL? Si se usa, no habilitar TLS abajo.'; +$lang['use_tls'] = '¿Usar conexión TLS? Si se usa, no habilitar SSL arriba.'; $lang['debug'] = 'Mostrar información adicional de depuración sobre los errores?'; +$lang['expirywarn'] = 'Días por adelantado para avisar al usuario de que contraseña expirará. 0 para deshabilitar.'; diff --git a/lib/plugins/authldap/lang/es/settings.php b/lib/plugins/authldap/lang/es/settings.php index f8c3ad014..9fdbd041c 100644 --- a/lib/plugins/authldap/lang/es/settings.php +++ b/lib/plugins/authldap/lang/es/settings.php @@ -4,8 +4,14 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Antonio Bueno + * @author Eloy */ +$lang['port'] = 'Servidor LDAP en caso de que no se diera la URL completa anteriormente.'; +$lang['usertree'] = 'Donde encontrar cuentas de usuario. Ej. ou=People, dc=server, dc=tld'; +$lang['grouptree'] = 'Donde encontrar grupos de usuarios. Ej. ou=Group, dc=server, dc=tld'; +$lang['version'] = 'La versión del protocolo a usar. Puede que necesites poner esto a 3'; $lang['starttls'] = 'Usar conexiones TLS?'; +$lang['bindpw'] = 'Contraseña del usuario de arriba.'; $lang['debug'] = 'Mostrar información adicional para depuración de errores'; $lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; $lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; diff --git a/lib/plugins/authmysql/lang/es/settings.php b/lib/plugins/authmysql/lang/es/settings.php index 64d422102..e2ecc305c 100644 --- a/lib/plugins/authmysql/lang/es/settings.php +++ b/lib/plugins/authmysql/lang/es/settings.php @@ -4,9 +4,11 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Antonio Bueno + * @author Eloy */ $lang['server'] = 'Tu servidor MySQL'; $lang['user'] = 'Nombre de usuario MySQL'; +$lang['password'] = 'Contraseña para el usuario de arriba.'; $lang['database'] = 'Base de datos a usar'; $lang['charset'] = 'Codificación usada en la base de datos'; $lang['debug'] = 'Mostrar información adicional para depuración de errores'; -- cgit v1.2.3 From e408b35c706784d375739bc5f6bc89e31badfa7a Mon Sep 17 00:00:00 2001 From: qinghao Date: Sat, 12 Apr 2014 10:46:02 +0200 Subject: translation update --- inc/lang/zh/lang.php | 8 ++++++-- lib/plugins/extension/lang/zh/intro_plugins.txt | 1 + lib/plugins/extension/lang/zh/lang.php | 22 ++++++++++++++++++++++ 3 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 lib/plugins/extension/lang/zh/intro_plugins.txt diff --git a/inc/lang/zh/lang.php b/inc/lang/zh/lang.php index 86c2ac20c..e9e737251 100644 --- a/inc/lang/zh/lang.php +++ b/inc/lang/zh/lang.php @@ -22,6 +22,7 @@ * @author oott123 * @author Cupen * @author xiqingongzi + * @author qinghao */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -66,6 +67,8 @@ $lang['btn_register'] = '注册'; $lang['btn_apply'] = '应用'; $lang['btn_media'] = '媒体管理器'; $lang['btn_deleteuser'] = '移除我的账户'; +$lang['btn_img_backto'] = '返回到 %s'; +$lang['btn_mediaManager'] = '在媒体管理器中查看'; $lang['loggedinas'] = '登录为'; $lang['user'] = '用户名'; $lang['pass'] = '密码'; @@ -197,6 +200,9 @@ $lang['difflink'] = '到此差别页面的链接'; $lang['diff_type'] = '查看差异:'; $lang['diff_inline'] = '行内显示'; $lang['diff_side'] = '并排显示'; +$lang['diffprevrev'] = '前一修订版'; +$lang['diffnextrev'] = '后一修订版'; +$lang['difflastrev'] = '上一修订版'; $lang['line'] = '行'; $lang['breadcrumb'] = '您的足迹'; $lang['youarehere'] = '您在这里'; @@ -253,7 +259,6 @@ $lang['admin_register'] = '添加新用户'; $lang['metaedit'] = '编辑元数据'; $lang['metasaveerr'] = '写入元数据失败'; $lang['metasaveok'] = '元数据已保存'; -$lang['btn_img_backto'] = '返回到 %s'; $lang['img_title'] = '标题'; $lang['img_caption'] = '说明'; $lang['img_date'] = '日期'; @@ -266,7 +271,6 @@ $lang['img_camera'] = '相机'; $lang['img_keywords'] = '关键字'; $lang['img_width'] = '宽度'; $lang['img_height'] = '高度'; -$lang['btn_mediaManager'] = '在媒体管理器中查看'; $lang['subscr_subscribe_success'] = '添加 %s 到 %s 的订阅列表'; $lang['subscr_subscribe_error'] = '添加 %s 到 %s 的订阅列表中出现错误'; $lang['subscr_subscribe_noaddress'] = '没有与您登录信息相关联的地址,您无法被添加到订阅列表'; diff --git a/lib/plugins/extension/lang/zh/intro_plugins.txt b/lib/plugins/extension/lang/zh/intro_plugins.txt new file mode 100644 index 000000000..69cb343b3 --- /dev/null +++ b/lib/plugins/extension/lang/zh/intro_plugins.txt @@ -0,0 +1 @@ +这些是你当前已经安装的插件。你可以在这里启用和禁用甚至卸载它们。插件的更新信息也显示在这,请一定在更新之前阅读插件的文档。 \ No newline at end of file diff --git a/lib/plugins/extension/lang/zh/lang.php b/lib/plugins/extension/lang/zh/lang.php index b9db01540..4d40acc1d 100644 --- a/lib/plugins/extension/lang/zh/lang.php +++ b/lib/plugins/extension/lang/zh/lang.php @@ -5,6 +5,7 @@ * * @author Cupen * @author xiqingongzi + * @author qinghao */ $lang['menu'] = '扩展管理器'; $lang['tab_plugins'] = '安装插件'; @@ -41,10 +42,31 @@ $lang['repository'] = '版本库:'; $lang['unknown'] = '未知的'; $lang['installed_version'] = '已安装版本:'; $lang['install_date'] = '您的最后一次升级:'; +$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['msg_enabled'] = '插件 %s 已启用'; +$lang['msg_disabled'] = '插件 %s 已禁用'; +$lang['msg_delete_success'] = '插件已经卸载'; +$lang['msg_template_install_success'] = '模板 %s 安装成功'; +$lang['msg_template_update_success'] = '模板 %s 更新成功'; +$lang['msg_plugin_install_success'] = '插件 %s 安装成功'; +$lang['msg_plugin_update_success'] = '插件 %s 更新成功'; +$lang['msg_upload_failed'] = '上传文件失败'; +$lang['missing_dependency'] = '缺少或者被禁用依赖: %s'; +$lang['security_issue'] = '安全问题: %s'; +$lang['security_warning'] = '安全警告: %s'; -- cgit v1.2.3 From 56ecd4f4244ec276b92fb0d96ae23484463e6484 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elan=20Ruusam=C3=A4e?= Date: Mon, 14 Apr 2014 23:07:56 +0300 Subject: tar: test. skip instead of error if bz2 or zlib extension is missing --- _test/tests/inc/tar.test.php | 51 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 8 deletions(-) diff --git a/_test/tests/inc/tar.test.php b/_test/tests/inc/tar.test.php index 417f1a853..91e71632c 100644 --- a/_test/tests/inc/tar.test.php +++ b/_test/tests/inc/tar.test.php @@ -1,6 +1,32 @@ markTestSkipped('skipping all zlib tests. Need zlib extension'); + } + } + + /** + * dependency test to test available extensions + * fills $this->extensions array + */ + public function test_extensions() { + if (!extension_loaded('zlib')) { + $this->markTestSkipped('skipping all zlib tests. Need zlib extension'); + } + if (!extension_loaded('bz2')) { + $this->markTestSkipped('skipping all bz2 tests. Need bz2 extension'); + } + } /** * simple test that checks that the given filenames and contents can be grepped from @@ -58,8 +84,6 @@ class Tar_TestCase extends DokuWikiTest { $tar->addData('another/testdata3.txt', 'testcontent3'); $tar->close(); -copy ($tmp, '/tmp/test.tar'); - $this->assertTrue(filesize($tmp) > 30); //arbitrary non-zero number $data = file_get_contents($tmp); @@ -85,11 +109,12 @@ copy ($tmp, '/tmp/test.tar'); /** * List the contents of the prebuilt TAR files + * @depends test_extensions */ public function test_tarcontent() { $dir = dirname(__FILE__).'/tar'; - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -107,12 +132,13 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract the prebuilt tar files + * @depends test_extensions */ public function test_tarextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -133,12 +159,13 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract the prebuilt tar files with component stripping + * @depends test_extensions */ public function test_compstripextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -159,12 +186,13 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract the prebuilt tar files with prefix stripping + * @depends test_extensions */ public function test_prefixstripextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -185,12 +213,13 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract the prebuilt tar files with include regex + * @depends test_extensions */ public function test_includeextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -210,12 +239,13 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract the prebuilt tar files with exclude regex + * @depends test_extensions */ public function test_excludeextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); - foreach(array('tar', 'tgz', 'tbz') as $ext) { + foreach($this->extensions as $ext) { $tar = new Tar(); $file = "$dir/test.$ext"; @@ -235,6 +265,7 @@ copy ($tmp, '/tmp/test.tar'); /** * Check the extension to compression guesser + * @depends test_extensions */ public function test_filetype() { $tar = new Tar(); @@ -249,6 +280,9 @@ copy ($tmp, '/tmp/test.tar'); $this->assertEquals(Tar::COMPRESS_BZIP, $tar->filetype('foo.tar.bz2')); } + /** + * @depends test_ext_zlib + */ public function test_longpathextract() { $dir = dirname(__FILE__).'/tar'; $out = sys_get_temp_dir().'/dwtartest'.md5(time()); @@ -338,6 +372,7 @@ copy ($tmp, '/tmp/test.tar'); /** * Extract a tarbomomb + * @depends test_ext_zlib */ public function test_tarbomb() { $dir = dirname(__FILE__).'/tar'; -- cgit v1.2.3 From 9efc0669141c20c5c3cf1c76384b8c85734788c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elan=20Ruusam=C3=A4e?= Date: Mon, 14 Apr 2014 23:16:49 +0300 Subject: run as much as possible (fill extensions conditionally), skip missing ext once --- _test/tests/inc/tar.test.php | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/_test/tests/inc/tar.test.php b/_test/tests/inc/tar.test.php index 91e71632c..76037d401 100644 --- a/_test/tests/inc/tar.test.php +++ b/_test/tests/inc/tar.test.php @@ -4,7 +4,16 @@ class Tar_TestCase extends DokuWikiTest { /** * file extensions that several tests use */ - protected $extensions = array('tar', 'tgz', 'tbz'); + protected $extensions = array('tar'); + + public function setUp() { + if (extension_loaded('zlib')) { + $this->extensions[] = 'tgz'; + } + if (extension_loaded('bz2')) { + $this->extensions[] = 'tbz'; + } + } /* * dependency for tests needing zlib extension to pass @@ -15,16 +24,12 @@ class Tar_TestCase extends DokuWikiTest { } } - /** - * dependency test to test available extensions - * fills $this->extensions array + /* + * dependency for tests needing zlib extension to pass */ - public function test_extensions() { - if (!extension_loaded('zlib')) { - $this->markTestSkipped('skipping all zlib tests. Need zlib extension'); - } + public function test_ext_bz2() { if (!extension_loaded('bz2')) { - $this->markTestSkipped('skipping all bz2 tests. Need bz2 extension'); + $this->markTestSkipped('skipping all bzip2 tests. Need bz2 extension'); } } @@ -109,7 +114,6 @@ class Tar_TestCase extends DokuWikiTest { /** * List the contents of the prebuilt TAR files - * @depends test_extensions */ public function test_tarcontent() { $dir = dirname(__FILE__).'/tar'; @@ -132,7 +136,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Extract the prebuilt tar files - * @depends test_extensions */ public function test_tarextract() { $dir = dirname(__FILE__).'/tar'; @@ -159,7 +162,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Extract the prebuilt tar files with component stripping - * @depends test_extensions */ public function test_compstripextract() { $dir = dirname(__FILE__).'/tar'; @@ -186,7 +188,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Extract the prebuilt tar files with prefix stripping - * @depends test_extensions */ public function test_prefixstripextract() { $dir = dirname(__FILE__).'/tar'; @@ -213,7 +214,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Extract the prebuilt tar files with include regex - * @depends test_extensions */ public function test_includeextract() { $dir = dirname(__FILE__).'/tar'; @@ -239,7 +239,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Extract the prebuilt tar files with exclude regex - * @depends test_extensions */ public function test_excludeextract() { $dir = dirname(__FILE__).'/tar'; @@ -265,7 +264,6 @@ class Tar_TestCase extends DokuWikiTest { /** * Check the extension to compression guesser - * @depends test_extensions */ public function test_filetype() { $tar = new Tar(); -- cgit v1.2.3 From 64d063f11abb3946bad9d076a56b0fc51ccff127 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elan=20Ruusam=C3=A4e?= Date: Wed, 16 Apr 2014 11:22:46 +0300 Subject: call parent constructor as well --- _test/tests/inc/tar.test.php | 1 + 1 file changed, 1 insertion(+) diff --git a/_test/tests/inc/tar.test.php b/_test/tests/inc/tar.test.php index 76037d401..15453b16d 100644 --- a/_test/tests/inc/tar.test.php +++ b/_test/tests/inc/tar.test.php @@ -7,6 +7,7 @@ class Tar_TestCase extends DokuWikiTest { protected $extensions = array('tar'); public function setUp() { + parent::setUp(); if (extension_loaded('zlib')) { $this->extensions[] = 'tgz'; } -- cgit v1.2.3 From 0e549f0510a02a422b2fc996527ad7e946990d56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elan=20Ruusam=C3=A4e?= Date: Wed, 16 Apr 2014 11:25:32 +0300 Subject: add editorconfig policy --- .editorconfig | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .editorconfig diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..9088a1657 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +; http://editorconfig.org/ + +[*] +indent_style = space +indent_size = 4 +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[inc/{geshi,phpseclib}/**] +; Use editor default (possible autodetection). +indent_style = +indent_size = +trim_trailing_whitespace = false +insert_final_newline = false -- cgit v1.2.3 From c006b6aa93675115413b85a83cbc0c8e3c0ce074 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 16 Apr 2014 13:41:55 +0200 Subject: use plaintext authornames in diff navigation dropdowns --- inc/html.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inc/html.php b/inc/html.php index 57a22b880..be7afae0c 100644 --- a/inc/html.php +++ b/inc/html.php @@ -1335,7 +1335,7 @@ function html_diff_navigation($pagelog, $type, $l_rev, $r_rev) { $info = $pagelog->getRevisionInfo($rev); $l_revisions[$rev] = array( $rev, - dformat($info['date']) . ' ' . editorinfo($info['user']) . ' ' . $info['sum'], + dformat($info['date']) . ' ' . editorinfo($info['user'], true) . ' ' . $info['sum'], $r_rev ? $rev >= $r_rev : false //disable? ); } @@ -1347,7 +1347,7 @@ function html_diff_navigation($pagelog, $type, $l_rev, $r_rev) { $info = $pagelog->getRevisionInfo($rev); $r_revisions[$rev] = array( $rev, - dformat($info['date']) . ' ' . editorinfo($info['user']) . ' ' . $info['sum'], + dformat($info['date']) . ' ' . editorinfo($info['user'], true) . ' ' . $info['sum'], $rev <= $l_rev //disable? ); } -- cgit v1.2.3 From fc4ff0c349240d12ff91559183e1103ad2c5fa91 Mon Sep 17 00:00:00 2001 From: Antonio Bueno Date: Wed, 16 Apr 2014 14:36:06 +0200 Subject: translation update --- inc/lang/es/lang.php | 16 +++++---- lib/plugins/authad/lang/es/settings.php | 2 ++ lib/plugins/authldap/lang/es/settings.php | 8 +++++ lib/plugins/authmysql/lang/es/settings.php | 21 ++++++++++++ lib/plugins/authpgsql/lang/es/settings.php | 9 ++++++ lib/plugins/extension/lang/es/lang.php | 52 ++++++++++++++++++++++++++++++ lib/plugins/usermanager/lang/es/lang.php | 3 ++ 7 files changed, 104 insertions(+), 7 deletions(-) create mode 100644 lib/plugins/authpgsql/lang/es/settings.php create mode 100644 lib/plugins/extension/lang/es/lang.php diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 096027f83..9525a4c08 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -214,6 +214,8 @@ $lang['diff_side'] = 'Lado a lado'; $lang['diffprevrev'] = 'Revisión previa'; $lang['diffnextrev'] = 'Próxima revisión'; $lang['difflastrev'] = 'Última revisión'; +$lang['diffbothprevrev'] = 'Ambos lados, revisión anterior'; +$lang['diffbothnextrev'] = 'Ambos lados, revisión siguiente'; $lang['line'] = 'Línea'; $lang['breadcrumb'] = 'Traza'; $lang['youarehere'] = 'Estás aquí'; @@ -327,13 +329,13 @@ $lang['i_license_none'] = 'No mostrar ninguna información sobre licencia $lang['i_pop_field'] = 'Por favor, ayúdanos a mejorar la experiencia de DokuWiki:'; $lang['i_pop_label'] = 'Una vez al mes, enviar información anónima de uso de datos a los desarrolladores de DokuWiki'; $lang['recent_global'] = 'Actualmente estás viendo los cambios dentro del namespace %s. También puedes ver los cambios recientes en el wiki completo.'; -$lang['years'] = '%d años atrás'; -$lang['months'] = '%d meses atrás'; -$lang['weeks'] = '%d semanas atrás'; -$lang['days'] = '%d días atrás'; -$lang['hours'] = '%d horas atrás'; -$lang['minutes'] = '%d minutos atrás'; -$lang['seconds'] = '%d segundos atrás'; +$lang['years'] = 'hace %d años'; +$lang['months'] = 'hace %d meses'; +$lang['weeks'] = 'hace %d semanas'; +$lang['days'] = 'hace %d días'; +$lang['hours'] = 'hace %d horas'; +$lang['minutes'] = 'hace %d minutos'; +$lang['seconds'] = 'hace %d segundos'; $lang['wordblock'] = 'Sus cambios no se han guardado porque contienen textos bloqueados (spam).'; $lang['media_uploadtab'] = 'Cargar'; $lang['media_searchtab'] = 'Buscar'; diff --git a/lib/plugins/authad/lang/es/settings.php b/lib/plugins/authad/lang/es/settings.php index 13c1144c9..970259c9c 100644 --- a/lib/plugins/authad/lang/es/settings.php +++ b/lib/plugins/authad/lang/es/settings.php @@ -15,7 +15,9 @@ $lang['admin_username'] = 'Un usuario con privilegios de Active Directory $lang['admin_password'] = 'La contraseña del usuario anterior.'; $lang['sso'] = 'En caso de inicio de sesión usará ¿Kerberos o NTLM?'; $lang['sso_charset'] = 'La codificación con que tu servidor web pasará el nombre de usuario Kerberos o NTLM. Si es UTF-8 o latin-1 dejar en blanco. Requiere la extensión iconv.'; +$lang['real_primarygroup'] = 'Resolver el grupo primario real en vez de asumir "Domain Users" (más lento)'; $lang['use_ssl'] = '¿Usar conexión SSL? Si se usa, no habilitar TLS abajo.'; $lang['use_tls'] = '¿Usar conexión TLS? Si se usa, no habilitar SSL arriba.'; $lang['debug'] = 'Mostrar información adicional de depuración sobre los errores?'; $lang['expirywarn'] = 'Días por adelantado para avisar al usuario de que contraseña expirará. 0 para deshabilitar.'; +$lang['additional'] = 'Una lista separada por comas de atributos AD adicionales a obtener de los datos de usuario. Usado por algunos plugins.'; diff --git a/lib/plugins/authldap/lang/es/settings.php b/lib/plugins/authldap/lang/es/settings.php index 9fdbd041c..6991546d3 100644 --- a/lib/plugins/authldap/lang/es/settings.php +++ b/lib/plugins/authldap/lang/es/settings.php @@ -6,12 +6,20 @@ * @author Antonio Bueno * @author Eloy */ +$lang['server'] = 'Tu servidor LDAP. Puede ser el nombre del host (localhost) o una URL completa (ldap://server.tld:389)'; $lang['port'] = 'Servidor LDAP en caso de que no se diera la URL completa anteriormente.'; $lang['usertree'] = 'Donde encontrar cuentas de usuario. Ej. ou=People, dc=server, dc=tld'; $lang['grouptree'] = 'Donde encontrar grupos de usuarios. Ej. ou=Group, dc=server, dc=tld'; +$lang['userfilter'] = 'Filtro LDAP para la busqueda de cuentas de usuario. P. E. (&(uid=%{user})(objectClass=posixAccount))'; +$lang['groupfilter'] = 'Filtro LDAP para la busqueda de grupos. P. E. (&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))'; $lang['version'] = 'La versión del protocolo a usar. Puede que necesites poner esto a 3'; $lang['starttls'] = 'Usar conexiones TLS?'; +$lang['referrals'] = '¿Deben ser seguidas las referencias?'; +$lang['deref'] = '¿Cómo desreferenciar los alias?'; $lang['bindpw'] = 'Contraseña del usuario de arriba.'; +$lang['userscope'] = 'Limitar ámbito de búsqueda para búsqueda de usuarios'; +$lang['groupscope'] = 'Limitar ámbito de búsqueda para búsqueda de grupos'; +$lang['groupkey'] = 'Pertenencia al grupo desde cualquier atributo de usuario (en lugar de grupos AD estándar) p.e., grupo a partir departamento o número de teléfono'; $lang['debug'] = 'Mostrar información adicional para depuración de errores'; $lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; $lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; diff --git a/lib/plugins/authmysql/lang/es/settings.php b/lib/plugins/authmysql/lang/es/settings.php index e2ecc305c..a247a44d7 100644 --- a/lib/plugins/authmysql/lang/es/settings.php +++ b/lib/plugins/authmysql/lang/es/settings.php @@ -12,3 +12,24 @@ $lang['password'] = 'Contraseña para el usuario de arriba.'; $lang['database'] = 'Base de datos a usar'; $lang['charset'] = 'Codificación usada en la base de datos'; $lang['debug'] = 'Mostrar información adicional para depuración de errores'; +$lang['forwardClearPass'] = 'Enviar las contraseñas de usuario comotexto plano a las siguientes sentencias de SQL, en lugar de utilizar la opción passcrypt'; +$lang['TablesToLock'] = 'Lista separada por comasde las tablas a bloquear durante operaciones de escritura'; +$lang['checkPass'] = 'Sentencia SQL para verificar las contraseñas'; +$lang['getUserInfo'] = 'Sentencia SQL para obtener información del usuario'; +$lang['getGroups'] = 'Sentencia SQL para obtener la pertenencia a grupos de un usuario'; +$lang['getUsers'] = 'Sentencia SQL para listar todos los usuarios'; +$lang['FilterLogin'] = 'Cláusula SQL para filtrar usuarios por su nombre de usuario'; +$lang['FilterName'] = 'Cláusula SQL para filtrar usuarios por su nombre completo'; +$lang['FilterEmail'] = 'Cláusula SQL para filtrar usuarios por su dirección de correo electrónico'; +$lang['FilterGroup'] = 'Cláusula SQL para filtrar usuarios por su pertenencia a grupos'; +$lang['SortOrder'] = 'Cláusula SQL para ordenar usuarios'; +$lang['addUser'] = 'Sentencia SQL para agregar un nuevo usuario'; +$lang['addGroup'] = 'Sentencia SQL para agregar un nuevo grupo'; +$lang['addUserGroup'] = 'Sentencia SQL para agregar un usuario a un grupo existente'; +$lang['delGroup'] = 'Sentencia SQL para eliminar un grupo'; +$lang['getUserID'] = 'Sentencia SQL para obtener la clave primaria de un usuario'; +$lang['delUser'] = 'Sentencia SQL para eliminar un usuario'; +$lang['delUserRefs'] = 'Sentencia SQL para eliminar un usuario de todos los grupos'; +$lang['updateUser'] = 'Sentencia SQL para actualizar un perfil de usuario'; +$lang['debug_o_0'] = 'ninguno'; +$lang['debug_o_1'] = 'sólo errores'; diff --git a/lib/plugins/authpgsql/lang/es/settings.php b/lib/plugins/authpgsql/lang/es/settings.php new file mode 100644 index 000000000..bee2211f3 --- /dev/null +++ b/lib/plugins/authpgsql/lang/es/settings.php @@ -0,0 +1,9 @@ + + */ +$lang['password'] = 'Contraseña del usuario indicado'; +$lang['database'] = 'Base de datos a usar'; diff --git a/lib/plugins/extension/lang/es/lang.php b/lib/plugins/extension/lang/es/lang.php new file mode 100644 index 000000000..7de2f5265 --- /dev/null +++ b/lib/plugins/extension/lang/es/lang.php @@ -0,0 +1,52 @@ + + */ +$lang['tab_plugins'] = 'Plugins instalados'; +$lang['tab_templates'] = 'Plantillas instaladas'; +$lang['tab_search'] = 'Buscar e instalar'; +$lang['tab_install'] = 'Instalación manual'; +$lang['notinstalled'] = 'Esta expensión no está instalada'; +$lang['alreadyenabled'] = 'Esta extensión ya había sido activada'; +$lang['alreadydisabled'] = 'Esta extensión ya había sido desactivada'; +$lang['unknownauthor'] = 'autor desconocido'; +$lang['unknownversion'] = 'versión desconocida'; +$lang['btn_info'] = 'Mostrar más información'; +$lang['btn_update'] = 'Actualizar'; +$lang['btn_uninstall'] = 'Desinstalar'; +$lang['btn_enable'] = 'Activar'; +$lang['btn_disable'] = 'Desactivar'; +$lang['btn_install'] = 'Instalar'; +$lang['btn_reinstall'] = 'Reinstalar'; +$lang['search'] = 'Buscar'; +$lang['homepage_link'] = 'Documentos'; +$lang['bugs_features'] = 'Bugs'; +$lang['tags'] = 'Etiquetas:'; +$lang['installed'] = 'Instalado:'; +$lang['downloadurl'] = 'URL de descarga:'; +$lang['repository'] = 'Repositorio:'; +$lang['installed_version'] = 'Versión instalada:'; +$lang['available_version'] = 'Versión disponible:'; +$lang['compatible'] = 'Compatible con:'; +$lang['depends'] = 'Dependencias:'; +$lang['donate_action'] = '¡Págale un café al autor!'; +$lang['status'] = 'Estado:'; +$lang['status_installed'] = 'instalado'; +$lang['status_not_installed'] = 'no instalado'; +$lang['status_protected'] = 'protegido'; +$lang['status_enabled'] = 'activado'; +$lang['status_disabled'] = 'desactivado'; +$lang['status_unmodifiable'] = 'no modificable'; +$lang['status_plugin'] = 'plugin'; +$lang['status_template'] = 'plantilla'; +$lang['msg_enabled'] = 'Plugin %s activado'; +$lang['msg_disabled'] = 'Plugin %s desactivado'; +$lang['msg_delete_success'] = 'Extensión desinstalada'; +$lang['msg_template_install_success'] = 'Plantilla %s instalada con éxito'; +$lang['msg_template_update_success'] = 'Plantilla %s actualizada con éxito'; +$lang['msg_plugin_install_success'] = 'Plugin %s instalado con éxito'; +$lang['msg_plugin_update_success'] = 'Plugin %s actualizado con éxito'; +$lang['msg_upload_failed'] = 'Falló la carga del archivo'; diff --git a/lib/plugins/usermanager/lang/es/lang.php b/lib/plugins/usermanager/lang/es/lang.php index 26e4200e4..317fac2aa 100644 --- a/lib/plugins/usermanager/lang/es/lang.php +++ b/lib/plugins/usermanager/lang/es/lang.php @@ -24,6 +24,7 @@ * @author Ruben Figols * @author Gerardo Zamudio * @author Mercè López mercelz@gmail.com + * @author Antonio Bueno */ $lang['menu'] = 'Administración de usuarios'; $lang['noauth'] = '(la autenticación de usuarios no está disponible)'; @@ -46,6 +47,8 @@ $lang['search'] = 'Buscar'; $lang['search_prompt'] = 'Realizar la búsqueda'; $lang['clear'] = 'Limpiar los filtros de la búsqueda'; $lang['filter'] = 'Filtrar'; +$lang['line'] = 'Línea nº'; +$lang['error'] = 'Mensaje de error'; $lang['summary'] = 'Mostrando los usuarios %1$d-%2$d de %3$d encontrados. Cantidad total de usuarios %4$d.'; $lang['nonefound'] = 'No se encontraron usuarios que coincidan con los párametros de la búsqueda. Cantidad total de usuarios %d.'; $lang['delete_ok'] = '%d usuarios eliminados'; -- cgit v1.2.3 From da2c1fba42556340dac10a521b9a9e153ded4669 Mon Sep 17 00:00:00 2001 From: Myeongjin Date: Tue, 22 Apr 2014 10:51:03 +0200 Subject: translation update --- inc/lang/ko/lang.php | 42 ++++++------ inc/lang/ko/searchpage.txt | 2 +- inc/lang/ko/subscr_digest.txt | 2 +- inc/lang/ko/updateprofile.txt | 2 +- lib/plugins/acl/lang/ko/lang.php | 2 +- lib/plugins/authldap/lang/ko/settings.php | 4 +- lib/plugins/extension/lang/ko/intro_install.txt | 1 + lib/plugins/extension/lang/ko/intro_plugins.txt | 1 + lib/plugins/extension/lang/ko/intro_search.txt | 1 + lib/plugins/extension/lang/ko/intro_templates.txt | 1 + lib/plugins/extension/lang/ko/lang.php | 80 ++++++++++++++++------- lib/plugins/usermanager/lang/ko/edit.txt | 2 +- lib/plugins/usermanager/lang/ko/intro.txt | 2 +- lib/plugins/usermanager/lang/ko/lang.php | 2 +- 14 files changed, 93 insertions(+), 51 deletions(-) create mode 100644 lib/plugins/extension/lang/ko/intro_install.txt create mode 100644 lib/plugins/extension/lang/ko/intro_plugins.txt create mode 100644 lib/plugins/extension/lang/ko/intro_search.txt create mode 100644 lib/plugins/extension/lang/ko/intro_templates.txt diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index be102b2b3..2c74d1550 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -46,7 +46,7 @@ $lang['btn_back'] = '뒤로'; $lang['btn_backlink'] = '백링크'; $lang['btn_backtomedia'] = '미디어 파일 선택으로 돌아가기'; $lang['btn_subscribe'] = '구독 관리'; -$lang['btn_profile'] = '개인 정보 바꾸기'; +$lang['btn_profile'] = '프로필 바꾸기'; $lang['btn_reset'] = '재설정'; $lang['btn_resendpwd'] = '새 비밀번호 설정'; $lang['btn_draft'] = '초안 편집'; @@ -55,20 +55,20 @@ $lang['btn_draftdel'] = '초안 삭제'; $lang['btn_revert'] = '되돌리기'; $lang['btn_register'] = '등록'; $lang['btn_apply'] = '적용'; -$lang['btn_media'] = '미디어 관리'; +$lang['btn_media'] = '미디어 관리자'; $lang['btn_deleteuser'] = '내 계정 제거'; -$lang['btn_img_backto'] = '뒤로 %s'; +$lang['btn_img_backto'] = '%s(으)로 돌아가기'; $lang['btn_mediaManager'] = '미디어 관리자에서 보기'; $lang['loggedinas'] = '로그인한 사용자'; $lang['user'] = '사용자 이름'; $lang['pass'] = '비밀번호'; $lang['newpass'] = '새 비밀번호'; $lang['oldpass'] = '현재 비밀번호 확인'; -$lang['passchk'] = '비밀번호 다시 확인'; +$lang['passchk'] = '다시 확인'; $lang['remember'] = '기억하기'; $lang['fullname'] = '실명'; $lang['email'] = '이메일'; -$lang['profile'] = '개인 정보'; +$lang['profile'] = '사용자 프로필'; $lang['badlogin'] = '죄송하지만 사용자 이름이나 비밀번호가 잘못되었습니다.'; $lang['badpassconfirm'] = '죄송하지만 비밀번호가 잘못되었습니다'; $lang['minoredit'] = '사소한 바뀜'; @@ -78,21 +78,21 @@ $lang['regmissing'] = '죄송하지만 모든 필드를 채워야 합 $lang['reguexists'] = '죄송하지만 같은 이름을 사용하는 사용자가 있습니다.'; $lang['regsuccess'] = '사용자를 만들었으며 비밀번호는 이메일로 보냈습니다.'; $lang['regsuccess2'] = '사용자를 만들었습니다.'; -$lang['regmailfail'] = '비밀번호를 이메일로 보내는 동안 오류가 발생했습니다. 관리자에게 문의하세요!'; -$lang['regbadmail'] = '주어진 이메일 주소가 잘못되었습니다 - 오류라고 생각하면 관리자에게 문의하세요'; +$lang['regmailfail'] = '비밀번호를 이메일로 보내는 동안 오류가 발생했습니다. 관리자에게 문의해주세요!'; +$lang['regbadmail'] = '주어진 이메일 주소가 잘못되었습니다 - 오류라고 생각하면 관리자에게 문의해주세요'; $lang['regbadpass'] = '새 비밀번호가 같지 않습니다. 다시 입력하세요.'; $lang['regpwmail'] = '도쿠위키 비밀번호'; -$lang['reghere'] = '계정이 없나요? 계정을 등록할 수 있습니다'; -$lang['profna'] = '이 위키는 개인 정보 수정을 할 수 없습니다'; +$lang['reghere'] = '계정이 없나요? 계정을 등록하세요'; +$lang['profna'] = '이 위키는 프로필 수정을 할 수 없습니다'; $lang['profnochange'] = '바뀐 내용이 없습니다.'; -$lang['profnoempty'] = '이름이나 이메일 주소가 비었습니다.'; -$lang['profchanged'] = '개인 정보가 성공적으로 바뀌었습니다.'; +$lang['profnoempty'] = '빈 이름이나 이메일 주소는 허용하지 않습니다.'; +$lang['profchanged'] = '프로필이 성공적으로 바뀌었습니다.'; $lang['profnodelete'] = '이 위키는 사용자 삭제를 지원하지 않습니다'; $lang['profdeleteuser'] = '계정 삭제'; $lang['profdeleted'] = '당신의 사용자 계정이 이 위키에서 삭제되었습니다'; $lang['profconfdelete'] = '이 위키에서 내 계정을 제거하고 싶습니다.
이 행동은 되돌릴 수 없습니다.'; $lang['profconfdeletemissing'] = '선택하지 않은 확인 상자를 확인'; -$lang['pwdforget'] = '비밀번호를 잊으셨나요? 비밀번호를 재설정할 수 있습니다'; +$lang['pwdforget'] = '비밀번호를 잊으셨나요? 비밀번호를 재설정하세요'; $lang['resendna'] = '이 위키는 비밀번호 재설정을 지원하지 않습니다.'; $lang['resendpwd'] = '다음으로 새 비밀번호 보내기'; $lang['resendpwdmissing'] = '죄송하지만 모든 필드를 채워야 합니다.'; @@ -113,10 +113,10 @@ $lang['lockexpire'] = '잠금 해제 시간'; $lang['js']['willexpire'] = '잠시 후 편집 잠금이 해제됩니다.\n편집 충돌을 피하려면 미리 보기를 눌러 잠금 시간을 다시 설정하세요.'; $lang['js']['notsavedyet'] = '저장하지 않은 바뀜이 사라집니다.'; $lang['js']['searchmedia'] = '파일 검색'; -$lang['js']['keepopen'] = '선택할 때 창을 열어 놓기'; +$lang['js']['keepopen'] = '선택할 때 열어 놓은 창을 유지하기'; $lang['js']['hidedetails'] = '자세한 정보 숨기기'; $lang['js']['mediatitle'] = '링크 설정'; -$lang['js']['mediadisplay'] = '링크 형태'; +$lang['js']['mediadisplay'] = '링크 유형'; $lang['js']['mediaalign'] = '배치'; $lang['js']['mediasize'] = '그림 크기'; $lang['js']['mediatarget'] = '링크 목표'; @@ -174,7 +174,7 @@ $lang['mediaview'] = '원본 파일 보기'; $lang['mediaroot'] = '루트'; $lang['mediaupload'] = '파일을 현재 이름공간으로 올립니다. 하위 이름공간으로 만들려면 선택한 파일 이름 앞에 쌍점(:)으로 구분되는 이름을 붙이면 됩니다. 파일을 드래그 앤 드롭해 선택할 수 있습니다.'; $lang['mediaextchange'] = '파일 확장자가 .%s에서 .%s(으)로 바뀌었습니다!'; -$lang['reference'] = '참고'; +$lang['reference'] = '다음을 참조'; $lang['ref_inuse'] = '다음 문서에서 아직 사용 중이므로 파일을 삭제할 수 없습니다:'; $lang['ref_hidden'] = '문서의 일부 참고는 읽을 수 있는 권한이 없습니다'; $lang['hits'] = '조회 수'; @@ -188,16 +188,18 @@ $lang['difflink'] = '차이 보기로 링크'; $lang['diff_type'] = '차이 보기:'; $lang['diff_inline'] = '직렬 방식'; $lang['diff_side'] = '다중 창 방식'; -$lang['diffprevrev'] = '이전 리비전'; -$lang['diffnextrev'] = '다음 리비전'; -$lang['difflastrev'] = '마지막 리비전'; +$lang['diffprevrev'] = '이전 판'; +$lang['diffnextrev'] = '다음 판'; +$lang['difflastrev'] = '마지막 판'; +$lang['diffbothprevrev'] = '양쪽 이전 판'; +$lang['diffbothnextrev'] = '양쪽 다음 판'; $lang['line'] = '줄'; $lang['breadcrumb'] = '추적'; $lang['youarehere'] = '현재 위치'; $lang['lastmod'] = '마지막으로 수정됨'; $lang['by'] = '저자'; $lang['deleted'] = '제거됨'; -$lang['created'] = '새로 만듦'; +$lang['created'] = '만듦'; $lang['restored'] = '이전 판으로 되돌림 (%s)'; $lang['external_edit'] = '바깥 편집'; $lang['summary'] = '편집 요약'; @@ -306,7 +308,7 @@ $lang['i_pop_field'] = '도쿠위키 경험을 개선하는 데 도움 $lang['i_pop_label'] = '한 달에 한 번씩, 도쿠위키 개발자에게 익명의 사용 데이터를 보냅니다'; $lang['recent_global'] = '현재 %s 이름공간을 구독 중입니다. 전체 위키의 최근 바뀜도 볼 수 있습니다.'; $lang['years'] = '%d년 전'; -$lang['months'] = '%d달 전'; +$lang['months'] = '%d개월 전'; $lang['weeks'] = '%d주 전'; $lang['days'] = '%d일 전'; $lang['hours'] = '%d시간 전'; diff --git a/inc/lang/ko/searchpage.txt b/inc/lang/ko/searchpage.txt index 2313f0bb0..53faa04c6 100644 --- a/inc/lang/ko/searchpage.txt +++ b/inc/lang/ko/searchpage.txt @@ -1,5 +1,5 @@ ====== 검색 ====== -아래에서 검색 결과를 찾을 수 있습니다. 만약 원하는 문서를 찾지 못했다면, "문서 만들기"나 "문서 편집"을 사용해 검색어와 같은 이름의 문서를 만들거나 편집할 수 있습니다. +아래에서 검색 결과를 찾을 수 있습니다. 만약 원하는 문서를 찾지 못했다면, ''문서 만들기''나 ''문서 편집''을 사용해 검색어와 같은 이름의 문서를 만들거나 편집할 수 있습니다. ===== 결과 ===== \ No newline at end of file diff --git a/inc/lang/ko/subscr_digest.txt b/inc/lang/ko/subscr_digest.txt index 0f03e51a3..d1f2d4b99 100644 --- a/inc/lang/ko/subscr_digest.txt +++ b/inc/lang/ko/subscr_digest.txt @@ -11,7 +11,7 @@ 새 판: @NEWPAGE@ -문서의 알림을 취소하려면, @DOKUWIKIURL@에 로그인한 뒤 +문서 알림을 취소하려면, @DOKUWIKIURL@에 로그인한 뒤 @SUBSCRIBE@ 문서를 방문해 문서나 이름공간의 구독을 취소하세요. -- diff --git a/inc/lang/ko/updateprofile.txt b/inc/lang/ko/updateprofile.txt index 80545e9bf..055272e9d 100644 --- a/inc/lang/ko/updateprofile.txt +++ b/inc/lang/ko/updateprofile.txt @@ -1,3 +1,3 @@ -====== 개인 정보 바꾸기 ====== +====== 계정 프로필 바꾸기 ====== 바꾸고 싶은 항목을 입력하세요. 사용자 이름은 바꿀 수 없습니다. \ No newline at end of file diff --git a/lib/plugins/acl/lang/ko/lang.php b/lib/plugins/acl/lang/ko/lang.php index 34b93a9f4..e06eb662c 100644 --- a/lib/plugins/acl/lang/ko/lang.php +++ b/lib/plugins/acl/lang/ko/lang.php @@ -33,7 +33,7 @@ $lang['p_include'] = '더 높은 접근 권한은 하위를 포함 $lang['current'] = '현재 ACL 규칙'; $lang['where'] = '문서/이름공간'; $lang['who'] = '사용자/그룹'; -$lang['perm'] = '접근 권한'; +$lang['perm'] = '권한'; $lang['acl_perm0'] = '없음'; $lang['acl_perm1'] = '읽기'; $lang['acl_perm2'] = '편집'; diff --git a/lib/plugins/authldap/lang/ko/settings.php b/lib/plugins/authldap/lang/ko/settings.php index ae8dc7ab6..e663ba063 100644 --- a/lib/plugins/authldap/lang/ko/settings.php +++ b/lib/plugins/authldap/lang/ko/settings.php @@ -13,8 +13,8 @@ $lang['userfilter'] = '사용자 계정을 찾을 LDAP 필터. 예를 $lang['groupfilter'] = '그룹을 찾을 LDAP 필터. 예를 들어 (&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))'; $lang['version'] = '사용할 프로토콜 버전. 3으로 설정해야 할 수도 있습니다'; $lang['starttls'] = 'TLS 연결을 사용하겠습니까?'; -$lang['referrals'] = '참고(referrals)를 허용하겠습니까? '; -$lang['deref'] = '어떻게 별명을 간접 참고하겠습니까?'; +$lang['referrals'] = '참조(referrals)를 허용하겠습니까? '; +$lang['deref'] = '어떻게 별명을 간접 참조하겠습니까?'; $lang['binddn'] = '익명 바인드가 충분하지 않으면 선택적인 바인드 사용자의 DN. 예를 들어 cn=admin, dc=my, dc=home'; $lang['bindpw'] = '위 사용자의 비밀번호'; $lang['userscope'] = '사용자 검색에 대한 검색 범위 제한'; diff --git a/lib/plugins/extension/lang/ko/intro_install.txt b/lib/plugins/extension/lang/ko/intro_install.txt new file mode 100644 index 000000000..269df29cc --- /dev/null +++ b/lib/plugins/extension/lang/ko/intro_install.txt @@ -0,0 +1 @@ +여기에 플러그인과 템플릿을 수동으로 올리거나 직접 다운로드 URL을 제공하여 수동으로 설치할 수 있습니다. \ No newline at end of file diff --git a/lib/plugins/extension/lang/ko/intro_plugins.txt b/lib/plugins/extension/lang/ko/intro_plugins.txt new file mode 100644 index 000000000..9ac7a3d89 --- /dev/null +++ b/lib/plugins/extension/lang/ko/intro_plugins.txt @@ -0,0 +1 @@ +도쿠위키에 현재 설치된 플러그인입니다. 여기에서 플러그인을 활성화 또는 비활성화하거나 심지어 완전히 제거할 수 있습니다. 또한 플러그인 업데이트는 여기에 보여집니다. 업데이트하기 전에 플러그인의 설명문서를 읽으십시오. \ No newline at end of file diff --git a/lib/plugins/extension/lang/ko/intro_search.txt b/lib/plugins/extension/lang/ko/intro_search.txt new file mode 100644 index 000000000..b6760264e --- /dev/null +++ b/lib/plugins/extension/lang/ko/intro_search.txt @@ -0,0 +1 @@ +이 탭은 도쿠위키를 위한 사용할 수 있는 모든 타사 플러그인과 템플릿에 접근하도록 제공합니다. 타사 코드를 설치하면 **보안 위험에 노출**될 수 있음을 유의하십시오, 먼저 [[doku>security#plugin_security|플러그인 보안]]에 대해 읽을 수 있습니다. \ No newline at end of file diff --git a/lib/plugins/extension/lang/ko/intro_templates.txt b/lib/plugins/extension/lang/ko/intro_templates.txt new file mode 100644 index 000000000..d4320b880 --- /dev/null +++ b/lib/plugins/extension/lang/ko/intro_templates.txt @@ -0,0 +1 @@ +도쿠위키에 현재 설치된 템플릿입니다. [[?do=admin&page=config|환경 설정 관리자]]에서 사용하는 템플릿을 선택할 수 있습니다. \ No newline at end of file diff --git a/lib/plugins/extension/lang/ko/lang.php b/lib/plugins/extension/lang/ko/lang.php index ce1f19921..eed84c2fa 100644 --- a/lib/plugins/extension/lang/ko/lang.php +++ b/lib/plugins/extension/lang/ko/lang.php @@ -4,49 +4,85 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Young gon Cha + * @author Myeongjin */ -$lang['menu'] = '확장기능 관리자'; +$lang['menu'] = '확장 기능 관리자'; $lang['tab_plugins'] = '설치된 플러그인'; $lang['tab_templates'] = '설치된 템플릿'; -$lang['tab_search'] = '검색 설치'; +$lang['tab_search'] = '검색하고 설치'; $lang['tab_install'] = '수동 설치'; -$lang['notimplemented'] = '이 기능은 아직 시행될 수 없습니다'; -$lang['notinstalled'] = '이 확장기능은 설치되지 않았습니다'; -$lang['alreadyenabled'] = '이 확장기능이 활성되었습니다'; -$lang['alreadydisabled'] = '이 확장기능이 비활성되었습니다'; -$lang['pluginlistsaveerror'] = '플러그인 목록을 저장 중 오류가 있었습니다'; -$lang['unknownauthor'] = '알 수 없는 제작자'; +$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_enable'] = '활성화'; +$lang['btn_disable'] = '비활성화'; $lang['btn_install'] = '설치'; -$lang['btn_reinstall'] = '재설치'; -$lang['js']['reallydel'] = '이 확장기능을 정말 제거 하시겠습니까?'; -$lang['search_for'] = '확장기능 찾기:'; +$lang['btn_reinstall'] = '다시 설치'; +$lang['js']['reallydel'] = '정말 이 확장 기능을 제거하겠습니까?'; +$lang['search_for'] = '확장 기능 검색:'; $lang['search'] = '검색'; +$lang['extensionby'] = '%s (저자 %s)'; +$lang['screenshot'] = '%s의 스크린샷'; +$lang['popularity'] = '인기: %s%%'; $lang['homepage_link'] = '문서'; $lang['bugs_features'] = '버그'; $lang['tags'] = '태그:'; -$lang['author_hint'] = '이 제작자로 확장기능 검색'; +$lang['author_hint'] = '이 저자로 확장 기능 검색'; $lang['installed'] = '설치됨:'; -$lang['downloadurl'] = '다운로드 주소:'; +$lang['downloadurl'] = '다운로드 URL:'; $lang['repository'] = '저장소:'; $lang['unknown'] = '알 수 없음'; $lang['installed_version'] = '설치된 버전:'; $lang['install_date'] = '마지막 업데이트:'; $lang['available_version'] = '가능한 버전:'; -$lang['repo_retry'] = '재시도'; +$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_not_installed'] = '설치되지 않음'; $lang['status_protected'] = '보호됨'; -$lang['status_enabled'] = '활성됨'; -$lang['status_disabled'] = '비활성됨'; +$lang['status_enabled'] = '활성화됨'; +$lang['status_disabled'] = '비활성화됨'; +$lang['status_unmodifiable'] = '수정할 수 없음'; $lang['status_plugin'] = '플러그인'; $lang['status_template'] = '템플릿'; -$lang['msg_delete_success'] = '확장기능 제거됨'; -$lang['msg_upload_failed'] = '파일 업로딩 실패함'; -$lang['error_badurl'] = '주소는 http나 https로 시작해야 합니다'; +$lang['status_bundled'] = '포함'; +$lang['msg_enabled'] = '%s 플러그인이 활성화되었습니다'; +$lang['msg_disabled'] = '%s 플러그인이 비활성화되었습니다'; +$lang['msg_delete_success'] = '확장 기능이 제거되었습니다'; +$lang['msg_template_install_success'] = '%s 템플릿을 성공적으로 설치했습니다'; +$lang['msg_template_update_success'] = '%s 템플릿을 성공적으로 업데이트했습니다'; +$lang['msg_plugin_install_success'] = '%s 플러그인을 성공적으로 설치했습니다'; +$lang['msg_plugin_update_success'] = '%s 플러그인을 성공적으로 업데이트했습니다'; +$lang['msg_upload_failed'] = '파일 올리기에 실패했습니다'; +$lang['missing_dependency'] = '의존성을 잃었거나 비활성화되어 있습니다: %s'; +$lang['security_issue'] = '보안 문제: %s'; +$lang['security_warning'] = '보안 경고: %s'; +$lang['update_available'] = '업데이트: 새 버전 %s(을)를 사용할 수 있습니다.'; +$lang['wrong_folder'] = '플러그인이 올바르지 않게 설치됨: 플러그인 디렉터리를 "%s"에서 "%s"로 이름을 바꾸세요.'; +$lang['url_change'] = 'URL이 바뀜: 다운로드 URL이 최신 다운로드 이래 바뀌었습니다. 확장 기능을 업데이트하기 전에 새 URL이 올바른지 확인하세요.
새 URL: %s
오래된 URL: %s'; +$lang['error_badurl'] = 'URL은 http나 https로 시작해야 합니다'; +$lang['error_dircreate'] = '다운로드를 받을 임시 폴더를 만들 수 없습니다'; +$lang['error_download'] = '파일을 다운로드할 수 없습니다: %s'; +$lang['error_decompress'] = '다운로드한 파일의 압축을 풀 수 없습니다. 이는 아마도 잘못된 다운로드의 결과로, 이럴 경우 다시 시도해야 합니다; 또는 압축 형식을 알 수 없으며, 이럴 경우 수동으로 다운로드하고 설치해야 합니다.'; +$lang['error_findfolder'] = '확장 기능 디렉터리를 식별할 수 없습니다, 수동으로 다운로드하고 설치해야 합니다'; +$lang['error_copy'] = '%s 디렉터리에 파일을 설치하는 동안 파일 복사 오류가 발생했습니다: 디스크가 꽉 찼거나 파일 접근 권한이 잘못되었을 수도 있습니다. 플러그인 설치가 부분적으로 되었거나 불안정하게 위키 설치가 되었을 수 있습니다.'; +$lang['noperms'] = '확장 기능 디렉터리에 쓸 수 없습니다'; +$lang['notplperms'] = '임시 디렉터리에 쓸 수 없습니다'; +$lang['nopluginperms'] = '플러그인 디렉터리에 쓸 수 없습니다'; +$lang['git'] = '이 확장 기능은 git을 통해 설치되었으며, 여기에서 업데이트할 수 없을 수 있습니다.'; +$lang['install_url'] = 'URL에서 설치:'; +$lang['install_upload'] = '확장 기능 올리기:'; diff --git a/lib/plugins/usermanager/lang/ko/edit.txt b/lib/plugins/usermanager/lang/ko/edit.txt index a938c5b2e..0b35cd7d5 100644 --- a/lib/plugins/usermanager/lang/ko/edit.txt +++ b/lib/plugins/usermanager/lang/ko/edit.txt @@ -1 +1 @@ -===== 사용자 정보 편집 ===== \ No newline at end of file +===== 사용자 편집 ===== \ No newline at end of file diff --git a/lib/plugins/usermanager/lang/ko/intro.txt b/lib/plugins/usermanager/lang/ko/intro.txt index d75680c71..2ce85f1a2 100644 --- a/lib/plugins/usermanager/lang/ko/intro.txt +++ b/lib/plugins/usermanager/lang/ko/intro.txt @@ -1 +1 @@ -====== 사용자 관리 ====== \ No newline at end of file +====== 사용자 관리자 ====== \ 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 ac129c95e..70e3d94f0 100644 --- a/lib/plugins/usermanager/lang/ko/lang.php +++ b/lib/plugins/usermanager/lang/ko/lang.php @@ -44,7 +44,7 @@ $lang['delete_ok'] = '사용자 %d명이 삭제되었습니다'; $lang['delete_fail'] = '사용자 %d명을 삭제하는 데 실패했습니다.'; $lang['update_ok'] = '사용자 정보를 성공적으로 바꾸었습니다'; $lang['update_fail'] = '사용자 정보를 바꾸는 데 실패했습니다'; -$lang['update_exists'] = '사용자 이름을 바꾸는 데 실패했습니다. 사용자 이름(%s)이 이미 존재합니다. (다른 항목의 바뀜은 적용됩니다.)'; +$lang['update_exists'] = '사용자 이름을 바꾸는 데 실패했습니다. 사용자 이름(%s)이 이미 존재합니다. (다른 항목의 바뀜은 적용됩니다)'; $lang['start'] = '시작'; $lang['prev'] = '이전'; $lang['next'] = '다음'; -- cgit v1.2.3 From 3dcaf4be3d109863e587097b4258f61872b5eef0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D0=BC=D0=B8=D1=80?= Date: Fri, 25 Apr 2014 09:11:00 +0200 Subject: translation update --- inc/lang/ru/lang.php | 1 + lib/plugins/authad/lang/ru/settings.php | 2 ++ lib/plugins/authldap/lang/ru/settings.php | 3 +++ 3 files changed, 6 insertions(+) diff --git a/inc/lang/ru/lang.php b/inc/lang/ru/lang.php index deeb01616..4cd3e5f0b 100644 --- a/inc/lang/ru/lang.php +++ b/inc/lang/ru/lang.php @@ -25,6 +25,7 @@ * @author Artur * @author Erli Moen * @author Aleksandr Selivanov + * @author Владимир */ $lang['encoding'] = ' utf-8'; $lang['direction'] = 'ltr'; diff --git a/lib/plugins/authad/lang/ru/settings.php b/lib/plugins/authad/lang/ru/settings.php index e662300d7..c9c6d9f88 100644 --- a/lib/plugins/authad/lang/ru/settings.php +++ b/lib/plugins/authad/lang/ru/settings.php @@ -7,7 +7,9 @@ * @author Aleksandr Selivanov * @author Artur * @author Erli Moen + * @author Владимир */ +$lang['account_suffix'] = 'Суффикс вашего аккаунта типа @my.domain.org'; $lang['domain_controllers'] = 'Список DNS-серверов, разделенных запятой. Например:srv1.domain.org,srv2.domain.org'; $lang['admin_password'] = 'Пароль для указанного пользователя.'; $lang['sso'] = 'Использовать SSO (Single-Sign-On) через Kerberos или NTLM?'; diff --git a/lib/plugins/authldap/lang/ru/settings.php b/lib/plugins/authldap/lang/ru/settings.php index 04a3ee784..5677e06a3 100644 --- a/lib/plugins/authldap/lang/ru/settings.php +++ b/lib/plugins/authldap/lang/ru/settings.php @@ -7,9 +7,12 @@ * @author Aleksandr Selivanov * @author Erli Moen * @author Aleksandr Selivanov + * @author Владимир */ +$lang['starttls'] = 'Использовать TLS подключения?'; $lang['deref'] = 'Как расшифровывать псевдонимы?'; $lang['bindpw'] = 'Пароль для указанного пользователя.'; +$lang['debug'] = 'Показывать дополнительную отладочную информацию при ошибках'; $lang['deref_o_0'] = 'LDAP_DEREF_NEVER'; $lang['deref_o_1'] = 'LDAP_DEREF_SEARCHING'; $lang['deref_o_2'] = 'LDAP_DEREF_FINDING'; -- cgit v1.2.3 From 6dda14c94f6b8447a2c7f8e57cae0d1c536a9f35 Mon Sep 17 00:00:00 2001 From: Myeongjin Date: Sun, 27 Apr 2014 02:21:03 +0200 Subject: translation update --- inc/lang/ko/lang.php | 4 ++-- lib/plugins/acl/lang/ko/help.txt | 6 +++--- lib/plugins/extension/lang/ko/lang.php | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index 2c74d1550..592b953b9 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -80,7 +80,7 @@ $lang['regsuccess'] = '사용자를 만들었으며 비밀번호는 $lang['regsuccess2'] = '사용자를 만들었습니다.'; $lang['regmailfail'] = '비밀번호를 이메일로 보내는 동안 오류가 발생했습니다. 관리자에게 문의해주세요!'; $lang['regbadmail'] = '주어진 이메일 주소가 잘못되었습니다 - 오류라고 생각하면 관리자에게 문의해주세요'; -$lang['regbadpass'] = '새 비밀번호가 같지 않습니다. 다시 입력하세요.'; +$lang['regbadpass'] = '두 주어진 비밀번호가 같지 않습니다. 다시 입력하세요.'; $lang['regpwmail'] = '도쿠위키 비밀번호'; $lang['reghere'] = '계정이 없나요? 계정을 등록하세요'; $lang['profna'] = '이 위키는 프로필 수정을 할 수 없습니다'; @@ -240,7 +240,7 @@ $lang['qb_extlink'] = '바깥 링크'; $lang['qb_hr'] = '가로줄'; $lang['qb_ol'] = '순서 있는 목록'; $lang['qb_ul'] = '순서 없는 목록'; -$lang['qb_media'] = '그림과 기타 파일 추가 (새 창에서 열림)'; +$lang['qb_media'] = '그림과 다른 파일 추가 (새 창에서 열림)'; $lang['qb_sig'] = '서명 넣기'; $lang['qb_smileys'] = '이모티콘'; $lang['qb_chars'] = '특수 문자'; diff --git a/lib/plugins/acl/lang/ko/help.txt b/lib/plugins/acl/lang/ko/help.txt index 9baeedbb9..80069b322 100644 --- a/lib/plugins/acl/lang/ko/help.txt +++ b/lib/plugins/acl/lang/ko/help.txt @@ -1,8 +1,8 @@ === 빠른 도움말: === 현재 문서에서 위키 이름공간과 문서에 대한 접근 권한을 추가하거나 삭제할 수 있습니다. -* 왼쪽 영역에는 선택 가능한 이름공간과 문서 목록을 보여줍니다. -* 위쪽 입력 양식에서 선택된 사용자와 그룹의 접근 권한을 보거나 바꿀 수 있습니다. -* 아래 테이블에서 현재 설정된 모든 접근 제어 규칙을 볼 수 있으며, 즉시 여러 규칙을 삭제하거나 바꿀 수 있습니다. + * 왼쪽 영역에는 선택 가능한 이름공간과 문서 목록을 보여줍니다. + * 위쪽 입력 양식에서 선택된 사용자와 그룹의 접근 권한을 보거나 바꿀 수 있습니다. + * 아래 테이블에서 현재 설정된 모든 접근 제어 규칙을 볼 수 있으며, 즉시 여러 규칙을 삭제하거나 바꿀 수 있습니다. 도쿠위키에서 접근 제어가 어떻게 동작되는지 알아보려면 [[doku>ko:acl|ACL 공식 문서]]를 읽어보시기 바랍니다. \ No newline at end of file diff --git a/lib/plugins/extension/lang/ko/lang.php b/lib/plugins/extension/lang/ko/lang.php index eed84c2fa..db0a49aef 100644 --- a/lib/plugins/extension/lang/ko/lang.php +++ b/lib/plugins/extension/lang/ko/lang.php @@ -73,7 +73,7 @@ $lang['security_issue'] = '보안 문제: %s'; $lang['security_warning'] = '보안 경고: %s'; $lang['update_available'] = '업데이트: 새 버전 %s(을)를 사용할 수 있습니다.'; $lang['wrong_folder'] = '플러그인이 올바르지 않게 설치됨: 플러그인 디렉터리를 "%s"에서 "%s"로 이름을 바꾸세요.'; -$lang['url_change'] = 'URL이 바뀜: 다운로드 URL이 최신 다운로드 이래 바뀌었습니다. 확장 기능을 업데이트하기 전에 새 URL이 올바른지 확인하세요.
새 URL: %s
오래된 URL: %s'; +$lang['url_change'] = 'URL이 바뀜: 다운로드 URL이 최신 다운로드 이래로 바뀌었습니다. 확장 기능을 업데이트하기 전에 새 URL이 올바른지 확인하세요.
새 URL: %s
오래된 URL: %s'; $lang['error_badurl'] = 'URL은 http나 https로 시작해야 합니다'; $lang['error_dircreate'] = '다운로드를 받을 임시 폴더를 만들 수 없습니다'; $lang['error_download'] = '파일을 다운로드할 수 없습니다: %s'; -- cgit v1.2.3 From 67f6ad6b9470dc8cc4396298d366e5df008fe69d Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 29 Apr 2014 22:31:58 +0200 Subject: Fix https proxy authentication, the header was missing a colon so that the auth info was not working. --- inc/HTTPClient.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/HTTPClient.php b/inc/HTTPClient.php index 53f3c9a78..f8b836753 100644 --- a/inc/HTTPClient.php +++ b/inc/HTTPClient.php @@ -552,7 +552,7 @@ class HTTPClient { $request = "CONNECT {$requestinfo['host']}:{$requestinfo['port']} HTTP/1.0".HTTP_NL; $request .= "Host: {$requestinfo['host']}".HTTP_NL; if($this->proxy_user) { - $request .= 'Proxy-Authorization Basic '.base64_encode($this->proxy_user.':'.$this->proxy_pass).HTTP_NL; + $request .= 'Proxy-Authorization: Basic '.base64_encode($this->proxy_user.':'.$this->proxy_pass).HTTP_NL; } $request .= HTTP_NL; -- cgit v1.2.3 From 7a7b77ef2f397e944e30abb47e0d348639e1b821 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 30 Apr 2014 16:06:00 +0200 Subject: some updates on phpunit docs and settings --- _test/README | 56 +++++++++++++++++++------------------------------------ _test/phpunit.xml | 5 ++++- 2 files changed, 23 insertions(+), 38 deletions(-) diff --git a/_test/README b/_test/README index 5220248b2..f0db2a550 100644 --- a/_test/README +++ b/_test/README @@ -9,35 +9,28 @@ This is the test suite to automatically test various parts of DokuWiki. ===== PHPUnit Installation ====== -==== via PEAR installer ==== +You can install phpunit through your distribution's package manager or simply +download the newest phar file into the _test directory: - pear config-set auto_discover 1 - pear install pear.phpunit.de/PHPUnit - -==== via Composer ==== - -Include a composer.json file in your project, which can be as minimal as: - - -{ - "require-dev": { - "phpunit/phpunit": "3.7.*" - } -} - - -==== via PHP archive (PHAR) ==== - -Download http://pear.phpunit.de/get/phpunit.phar and make it executable on your system. + cd _test/ + wget https://phar.phpunit.de/phpunit.phar ===== Running all tests ===== -Just change to the ''_test'' directory and run phpunit: +Just change to the ''_test'' directory and run phpunit (depending on your install +method): cd _test/ phpunit +or + + cd _test/ + php phpunit.phar + +===== Troubleshooting ===== + PHPUnit will fail on some systems with a //headers already sent// error. This is a known problem with PHPUnit, the error can be avoided by passing the '--stderr' flag to phpunit: @@ -46,8 +39,10 @@ This is a known problem with PHPUnit, the error can be avoided by passing the On windows you may have to enable OpenSSL support for https tests. Some of them point to httpclient_http.tests.php on the failure. -To enable HTTPS support copy the ''libeay32.dll'' and ''ssleay32.dll'' to your ''windows\system32'' folder -and add the following line to your php.ini in the extension section: +To enable HTTPS support copy the ''libeay32.dll'' and ''ssleay32.dll'' +to your ''windows\system32'' folder and add the following line to your php.ini +in the extension section: + extension=php_openssl.dll @@ -56,13 +51,13 @@ extension=php_openssl.dll You can run a single test file by providing it as an argument to phpunit: - phpunit --stderr tests/inc/common_cleanText.test.php + phpunit tests/inc/common_cleanText.test.php You can also use groups to exclude certain test from running. For example use the following command to avoid long running test or tests accessing the Internet. - phpunit --stderr --exclude-group slow,internet + phpunit --exclude-group slow,internet ===== Create new Tests ===== @@ -71,23 +66,10 @@ folder. Please respect the folder structure and naming convention. Inside the file, implement a class, extending 'DokuWikiTest'. Every method, starting with 'test' will be called as a test (e.g. 'testIfThisIsValid'); - ===== TODO for the test framework ===== - * test cross platform compatibility: especially test windows - * update http://www.dokuwiki.org/devel:unittesting * optional: add helper methods to TestRequest for easy form submission * createForm(), ... * check PHP Unit test_helpers https://github.com/sebastianbergmann/php-test-helpers -===== Migration Protocol ===== - -The following tests were not migrated: - - * inc/indexer_idx_indexlengths (fs dependencies) - * inc/mail_send (integration test) - * inc/parser/parser_formatting - * inc/parser/xhtml_htmlphp (runkit) - * inc/parser/xhtml_links - diff --git a/_test/phpunit.xml b/_test/phpunit.xml index fc7dd8be0..25506b1ae 100644 --- a/_test/phpunit.xml +++ b/_test/phpunit.xml @@ -1,7 +1,10 @@ + convertNoticesToExceptions="false" + colors="true" + stderr="true" + > -- cgit v1.2.3 From 6920d2fd3e30c9cb3abd500fe18273974da7182f Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 30 Apr 2014 19:44:50 +0200 Subject: add new valid() method to $INPUT #667 --- _test/tests/inc/input.test.php | 18 ++++++++++++++++++ inc/Input.class.php | 20 ++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/_test/tests/inc/input.test.php b/_test/tests/inc/input.test.php index 59b5ea4b9..bedfcfdba 100644 --- a/_test/tests/inc/input.test.php +++ b/_test/tests/inc/input.test.php @@ -214,6 +214,24 @@ class input_test extends DokuWikiTest { $this->assertEquals('bla',$test); } + public function test_valid(){ + $_REQUEST = $this->data; + $_POST = $this->data; + $_GET = $this->data; + $INPUT = new Input(); + + $valids = array(17, 'foo'); + $this->assertSame(null, $INPUT->valid('nope', $valids)); + $this->assertSame('bang', $INPUT->valid('nope', $valids, 'bang')); + $this->assertSame(17, $INPUT->valid('int', $valids)); + $this->assertSame('foo', $INPUT->valid('string', $valids)); + + $valids = array(true); + $this->assertSame(true, $INPUT->valid('string', $valids)); + $this->assertSame(true, $INPUT->valid('one', $valids)); + $this->assertSame(null, $INPUT->valid('zero', $valids)); + } + public function test_extract(){ $_REQUEST = $this->data; $_POST = $this->data; diff --git a/inc/Input.class.php b/inc/Input.class.php index de8bf5b97..e7eef1c29 100644 --- a/inc/Input.class.php +++ b/inc/Input.class.php @@ -143,6 +143,26 @@ class Input { return (string) $this->access[$name]; } + /** + * Access a request parameter and make sure it is has a valid value + * + * Please note that comparisons to the valid values are not done typesafe (request vars + * are always strings) however the function will return the correct type from the $valids + * array when an match was found. + * + * @param string $name Parameter name + * @param array $valids Array of valid values + * @param mixed $default Default to return if parameter isn't set or not valid + * @return null|mixed + */ + public function valid($name, $valids, $default = null) { + if(!isset($this->access[$name])) return $default; + if(is_array($this->access[$name])) return $default; // we don't allow arrays + $found = array_search($this->access[$name], $valids); + if($found !== false) return $valids[$found]; // return the valid value for type safety + return $default; + } + /** * Access a request parameter as bool * -- cgit v1.2.3 From d2704764cf26e4de50e48babaa675e8c45c6c1d6 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 30 Apr 2014 19:49:25 +0200 Subject: use new $INPUT->valid() method in feed.php --- feed.php | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/feed.php b/feed.php index c1a5f4503..40f9af659 100644 --- a/feed.php +++ b/feed.php @@ -141,12 +141,10 @@ function rss_parseOptions() { $opt['guardmail'] = ($conf['mailguard'] != '' && $conf['mailguard'] != 'none'); - $type = valid_input_set( - 'type', array( - 'rss', 'rss2', 'atom', 'atom1', 'rss1', - 'default' => $conf['rss_type'] - ), - $_REQUEST + $type = $INPUT->valid( + 'type', + array( 'rss', 'rss2', 'atom', 'atom1', 'rss1'), + $conf['rss_type'] ); switch($type) { case 'rss': -- cgit v1.2.3 From 363404184fcd4ec7b0149662d99a22f2cc78020b Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 30 Apr 2014 20:03:13 +0200 Subject: fixed some test inheriting from the wrong parent --- _test/tests/inc/PassHash.test.php | 2 +- _test/tests/inc/auth_password.test.php | 2 +- _test/tests/inc/parser/parser.inc.php | 2 +- _test/tests/inc/parser/renderer_resolveinterwiki.test.php | 2 +- _test/tests/inc/utf8_romanize.test.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/_test/tests/inc/PassHash.test.php b/_test/tests/inc/PassHash.test.php index b6cb07090..1d34aa696 100644 --- a/_test/tests/inc/PassHash.test.php +++ b/_test/tests/inc/PassHash.test.php @@ -5,7 +5,7 @@ * * most tests are in auth_password.test.php */ -class PassHash_test extends PHPUnit_Framework_TestCase { +class PassHash_test extends DokuWikiTest { function test_hmac(){ // known hashes taken from https://code.google.com/p/yii/issues/detail?id=1942 diff --git a/_test/tests/inc/auth_password.test.php b/_test/tests/inc/auth_password.test.php index 27e03be60..07b9f5bb2 100644 --- a/_test/tests/inc/auth_password.test.php +++ b/_test/tests/inc/auth_password.test.php @@ -1,6 +1,6 @@ Date: Wed, 30 Apr 2014 20:05:35 +0200 Subject: added another test for arrays --- _test/tests/inc/input.test.php | 1 + 1 file changed, 1 insertion(+) diff --git a/_test/tests/inc/input.test.php b/_test/tests/inc/input.test.php index bedfcfdba..cec0b80f6 100644 --- a/_test/tests/inc/input.test.php +++ b/_test/tests/inc/input.test.php @@ -225,6 +225,7 @@ class input_test extends DokuWikiTest { $this->assertSame('bang', $INPUT->valid('nope', $valids, 'bang')); $this->assertSame(17, $INPUT->valid('int', $valids)); $this->assertSame('foo', $INPUT->valid('string', $valids)); + $this->assertSame(null, $INPUT->valid('array', $valids)); $valids = array(true); $this->assertSame(true, $INPUT->valid('string', $valids)); -- cgit v1.2.3 From edb5a6f40363fb1335985e1baa30d531f00ad721 Mon Sep 17 00:00:00 2001 From: David VANTYGHEM Date: Fri, 2 May 2014 23:46:20 +0200 Subject: translation update --- inc/lang/fr/lang.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 43164395d..ee41a0596 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -31,6 +31,7 @@ * @author Jérôme Brandt * @author Wild * @author ggallon + * @author David VANTYGHEM */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -96,7 +97,7 @@ $lang['regmissing'] = 'Désolé, vous devez remplir tous les champs.' $lang['reguexists'] = 'Désolé, ce nom d\'utilisateur est déjà utilisé.'; $lang['regsuccess'] = 'L\'utilisateur a été créé. Le mot de passe a été expédié par courriel.'; $lang['regsuccess2'] = 'L\'utilisateur a été créé.'; -$lang['regmailfail'] = 'Il semble y avoir un problème à l\'envoi du courriel. Contactez l\'administrateur.'; +$lang['regmailfail'] = 'On dirait qu\'il y a eu une erreur lors de l\'envoi du mot de passe de messagerie. Veuillez contacter l\'administrateur !'; $lang['regbadmail'] = 'L\'adresse de courriel semble incorrecte. Si vous pensez que c\'est une erreur, contactez l\'administrateur.'; $lang['regbadpass'] = 'Les deux mots de passe fournis sont différents, veuillez recommencez.'; $lang['regpwmail'] = 'Votre mot de passe DokuWiki'; -- cgit v1.2.3 From b23c16e2bfb2a47d607babff643847ef66cb6cd4 Mon Sep 17 00:00:00 2001 From: David VANTYGHEM Date: Fri, 2 May 2014 23:51:03 +0200 Subject: translation update --- inc/lang/fr/lang.php | 3 ++- inc/lang/fr/subscr_form.txt | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 43164395d..dd04cb97d 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -31,6 +31,7 @@ * @author Jérôme Brandt * @author Wild * @author ggallon + * @author David VANTYGHEM */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -63,7 +64,7 @@ $lang['btn_delete'] = 'Effacer'; $lang['btn_back'] = 'Retour'; $lang['btn_backlink'] = 'Liens vers cette page'; $lang['btn_backtomedia'] = 'Retour à la sélection du fichier média'; -$lang['btn_subscribe'] = 'S\'abonner à la page'; +$lang['btn_subscribe'] = 'S\'abonner à cette page'; $lang['btn_profile'] = 'Mettre à jour le profil'; $lang['btn_reset'] = 'Réinitialiser'; $lang['btn_resendpwd'] = 'Définir un nouveau mot de passe'; diff --git a/inc/lang/fr/subscr_form.txt b/inc/lang/fr/subscr_form.txt index 49c0cf443..94e70afbd 100644 --- a/inc/lang/fr/subscr_form.txt +++ b/inc/lang/fr/subscr_form.txt @@ -1,3 +1,3 @@ ====== Gestion de l'abonnement ====== -Cette page vous permet de gérer vos abonnements à la page et à la catégorie courantes \ No newline at end of file +Cette page vous permet de gérer vos abonnements à la page et à la catégorie courantes. \ No newline at end of file -- cgit v1.2.3 From ff1e24d536e70770d551903bdb03488c89da64af Mon Sep 17 00:00:00 2001 From: Luka Lejava Date: Sat, 3 May 2014 19:30:32 +0200 Subject: translation update --- inc/lang/ka/admin.txt | 4 ++ inc/lang/ka/adminplugins.txt | 1 + inc/lang/ka/backlinks.txt | 4 ++ inc/lang/ka/conflict.txt | 5 ++ inc/lang/ka/denied.txt | 3 ++ inc/lang/ka/diff.txt | 3 ++ inc/lang/ka/draft.txt | 3 ++ inc/lang/ka/edit.txt | 2 + inc/lang/ka/editrev.txt | 2 + inc/lang/ka/index.txt | 1 + inc/lang/ka/lang.php | 117 +++++++++++++++++++++++++++++++++++++++++++ 11 files changed, 145 insertions(+) create mode 100644 inc/lang/ka/admin.txt create mode 100644 inc/lang/ka/adminplugins.txt create mode 100644 inc/lang/ka/backlinks.txt create mode 100644 inc/lang/ka/conflict.txt create mode 100644 inc/lang/ka/denied.txt create mode 100644 inc/lang/ka/diff.txt create mode 100644 inc/lang/ka/draft.txt create mode 100644 inc/lang/ka/edit.txt create mode 100644 inc/lang/ka/editrev.txt create mode 100644 inc/lang/ka/index.txt create mode 100644 inc/lang/ka/lang.php diff --git a/inc/lang/ka/admin.txt b/inc/lang/ka/admin.txt new file mode 100644 index 000000000..97072a449 --- /dev/null +++ b/inc/lang/ka/admin.txt @@ -0,0 +1,4 @@ +====== მართვა ====== + +ქვემოთ თქვენ ხედავთ ადმინისტრაციული ოპერაციების სიას «დოკუვიკიში». + diff --git a/inc/lang/ka/adminplugins.txt b/inc/lang/ka/adminplugins.txt new file mode 100644 index 000000000..011bfeb62 --- /dev/null +++ b/inc/lang/ka/adminplugins.txt @@ -0,0 +1 @@ +===== დამატებითი პლაგინები ===== \ No newline at end of file diff --git a/inc/lang/ka/backlinks.txt b/inc/lang/ka/backlinks.txt new file mode 100644 index 000000000..7b54797c7 --- /dev/null +++ b/inc/lang/ka/backlinks.txt @@ -0,0 +1,4 @@ +====== გადმომისამართება ====== + +გვერდები რომლებიც ანიშნებენ ამ გვერდზე. + diff --git a/inc/lang/ka/conflict.txt b/inc/lang/ka/conflict.txt new file mode 100644 index 000000000..1b1eb0482 --- /dev/null +++ b/inc/lang/ka/conflict.txt @@ -0,0 +1,5 @@ +====== გამოვიდა უფრო ახალი ვერსია ====== + +არსებობს დოკუმენტის უფრო ახალი ვერსია, რომელიც თქვენ დაარედაქტირეთ. ეს ხდება მაშინ, როდესაც სხვა მომხმარებელი არედაქტირებს დოკუმენტს, სანამ თქვენ აკეთებდით იგივეს. + +ყურადღებით დააკვირდით ქვემოთ მოყვანილ განსხვავებებს, და გადაწყვიტეთ რომელი ვერსია სჯობს. თუ შენახვას დააჭერთ, თქვენი ვერსია შეინახება. \ No newline at end of file diff --git a/inc/lang/ka/denied.txt b/inc/lang/ka/denied.txt new file mode 100644 index 000000000..bb8910472 --- /dev/null +++ b/inc/lang/ka/denied.txt @@ -0,0 +1,3 @@ +====== მიუწვდომელია ====== + +თქვენ არ გაქვთ საკმარისი უფლებები. იქნებ ავტორიზაცია დაგავიწყდათ? diff --git a/inc/lang/ka/diff.txt b/inc/lang/ka/diff.txt new file mode 100644 index 000000000..c635e45f4 --- /dev/null +++ b/inc/lang/ka/diff.txt @@ -0,0 +1,3 @@ +====== განსხვავებები ====== +ქვემოთ მოყვანილაი განსხვავებები მსგავს გვერდებს შორის. + diff --git a/inc/lang/ka/draft.txt b/inc/lang/ka/draft.txt new file mode 100644 index 000000000..f3356ddb5 --- /dev/null +++ b/inc/lang/ka/draft.txt @@ -0,0 +1,3 @@ +====== ნაპოვნია ჩანაწერი ====== + +გვერდის რედაქტირება არ იყო დამთავრებული. \ No newline at end of file diff --git a/inc/lang/ka/edit.txt b/inc/lang/ka/edit.txt new file mode 100644 index 000000000..3fffceb0c --- /dev/null +++ b/inc/lang/ka/edit.txt @@ -0,0 +1,2 @@ +დაარედაქტირეთ გვერდი და დააჭირეთ «შენახვას». წაიკითხეთ [[wiki:syntax|FAQ]] ვიკის სინტაქსისთან გასაცნობად. დაარედაქტირეთ გვერდი მხოლოდ იმ შემთხვევაში თუ აპირებთ გვერდის გაუმჯობესებას. თუ თქვენ რამის დატესტვა გინდათ, გამოიყენეთ სპეციალური გვერდი. + diff --git a/inc/lang/ka/editrev.txt b/inc/lang/ka/editrev.txt new file mode 100644 index 000000000..17ccff57f --- /dev/null +++ b/inc/lang/ka/editrev.txt @@ -0,0 +1,2 @@ +**თქვენ ატვირთეთ დოკუმენტის ძველი ვერსია** მისი შენახვით თქვენ შექმნით ახალ ვერსიას იგივე შიგთავსით. +---- diff --git a/inc/lang/ka/index.txt b/inc/lang/ka/index.txt new file mode 100644 index 000000000..7daef7fb6 --- /dev/null +++ b/inc/lang/ka/index.txt @@ -0,0 +1 @@ +====== სტატიები ====== აქ ნაჩვენებია ყველა სტატია \ No newline at end of file diff --git a/inc/lang/ka/lang.php b/inc/lang/ka/lang.php new file mode 100644 index 000000000..bdf0f1997 --- /dev/null +++ b/inc/lang/ka/lang.php @@ -0,0 +1,117 @@ + + */ +$lang['encoding'] = 'utf-8'; +$lang['direction'] = 'ltr'; +$lang['doublequoteopening'] = '“'; +$lang['doublequoteclosing'] = '”'; +$lang['singlequoteopening'] = '‘'; +$lang['singlequoteclosing'] = '’'; +$lang['apostrophe'] = '’'; +$lang['btn_edit'] = 'დაარედაქტირეთ ეს გვერდი'; +$lang['btn_source'] = 'მაჩვენე გვერდის კოდი'; +$lang['btn_show'] = 'გვერდის ჩვენება'; +$lang['btn_create'] = 'გვერდის შექმნა'; +$lang['btn_search'] = 'ძიება'; +$lang['btn_save'] = 'შენახვა'; +$lang['btn_preview'] = 'ჩვენება'; +$lang['btn_top'] = 'მაღლა'; +$lang['btn_newer'] = '<< მეტი '; +$lang['btn_older'] = 'ნაკლები >>'; +$lang['btn_revs'] = 'ძველი ვერსიები'; +$lang['btn_recent'] = 'ბოლო ცვლილებები'; +$lang['btn_upload'] = 'ატვირთვა'; +$lang['btn_cancel'] = 'შეწყვეტა'; +$lang['btn_index'] = 'სტატიები'; +$lang['btn_secedit'] = 'რედაქტირება'; +$lang['btn_login'] = 'შესვლა'; +$lang['btn_logout'] = 'გამოსვლა'; +$lang['btn_admin'] = 'ადმინი'; +$lang['btn_update'] = 'განახლება'; +$lang['btn_delete'] = 'წაშლა'; +$lang['btn_back'] = 'უკან'; +$lang['btn_backlink'] = 'გადმომისამართებული ბმულები'; +$lang['btn_backtomedia'] = 'მედიაფაილების არჩევა'; +$lang['btn_subscribe'] = 'Manage Subscriptions'; +$lang['btn_profile'] = 'პროფილის განახლება'; +$lang['btn_reset'] = 'წაშლა'; +$lang['btn_resendpwd'] = 'ახალი პაროლის დაყენება'; +$lang['btn_draft'] = 'ჩანაწერის წაშლა'; +$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'] = 'უკან %'; +$lang['btn_mediaManager'] = 'მედია ფაილების მმართველში გახსნა'; +$lang['loggedinas'] = 'შესული ხართ როგორც'; +$lang['user'] = 'ლოგინი'; +$lang['pass'] = 'პაროლი'; +$lang['newpass'] = 'ახალი პაროლი'; +$lang['oldpass'] = 'დაადასტურეთ პაროლი'; +$lang['passchk'] = 'კიდევ ერთხელ'; +$lang['remember'] = 'დამიმახსოვრე'; +$lang['fullname'] = 'ნამდვილი სახელი'; +$lang['email'] = 'ფოსტა'; +$lang['profile'] = 'მომხმარებლის პროფილი'; +$lang['badlogin'] = 'ლოგინი ან პაროლი არასწორია'; +$lang['badpassconfirm'] = 'პაროლი არასწორია'; +$lang['minoredit'] = 'ცვლილებები'; +$lang['draftdate'] = 'ჩანაწერების ავტომატური შენახვა ჩართულია'; +$lang['nosecedit'] = 'გვერდს ვადა გაუვიდა'; +$lang['regmissing'] = 'ყველა ველი შეავსეთ'; +$lang['reguexists'] = 'მსგავსი ლოგინი უკვე არსებობს'; +$lang['regsuccess'] = 'მომხმარებელი შექმნილია, პაროლი გამოგზავნილია'; +$lang['regsuccess2'] = 'მომხმარებელი შექმნილია'; +$lang['regmailfail'] = 'დაფიქსირდა შეცდომა'; +$lang['regbadmail'] = 'ფოსტა არასწორია'; +$lang['regbadpass'] = 'პაროლი განსხვავებულია'; +$lang['regpwmail'] = 'თვენი DokuWiki პაროლი'; +$lang['reghere'] = 'დარეგისტრირდი'; +$lang['profna'] = 'არ შეგიძლიათ პროფილის რედაქტირება'; +$lang['profnochange'] = 'ცვლილებები არ არის'; +$lang['profnoempty'] = 'ცარიელი სახელი ან ფოსტა დაუშვებელია'; +$lang['profchanged'] = 'პროფილი განახლდა'; +$lang['profnodelete'] = 'მომხმარებლის წაშლა შეუძლებელია'; +$lang['profdeleteuser'] = 'პროფილის წაშლა'; +$lang['profdeleted'] = 'პროფილი წაიშალა'; +$lang['profconfdelete'] = 'მე მსურს პროფილის წაშლა.
თქვენ აღარ გექნებათ საშუალება აღადგინოთ პროფილი.'; +$lang['profconfdeletemissing'] = 'დადასტურების ველი ცარიელია'; +$lang['pwdforget'] = 'დაგავიწყდა პაროლი? აღადგინე'; +$lang['resendna'] = 'პაროლის აღდგენა შეუძლებელია'; +$lang['resendpwd'] = 'ახალი პაროლი'; +$lang['resendpwdmissing'] = 'უნდა შეავსოთ ყველა ველი'; +$lang['resendpwdnouser'] = 'მსგავსი ლოგინი დარეგისტრირებული არ არის'; +$lang['resendpwdbadauth'] = 'კოდი არასწორია'; +$lang['resendpwdconfirm'] = 'აღსადგენი ბმული გამოგზავნილია'; +$lang['resendpwdsuccess'] = 'ახალი პაროლი გამოგზავნილია'; +$lang['license'] = 'ვიკი ლიცენზირებულია: '; +$lang['licenseok'] = 'ამ გვერდის რედაქტირებით თვენ ეთანხმებით ლიცენზიას:'; +$lang['searchmedia'] = 'საძებო სახელი:'; +$lang['searchmedia_in'] = 'ძებნა %-ში'; +$lang['txt_upload'] = 'აირჩიეთ ასატვირთი ფაილი'; +$lang['txt_filename'] = 'ატვირთვა როგორც (არჩევითი)'; +$lang['txt_overwrt'] = 'გადაწერა ზემოდან'; +$lang['maxuploadsize'] = 'მაქსიმალური ზომა %'; +$lang['lockedby'] = 'დაბლოკილია'; +$lang['lockexpire'] = 'განიბლოკება'; +$lang['js']['willexpire'] = 'გვერდი განიბლოკება 1 წუთში'; +$lang['js']['notsavedyet'] = 'შეუნახავი მონაცემები წაიშლება'; +$lang['js']['searchmedia'] = 'ძებნა'; +$lang['js']['keepopen'] = 'დატოვეთ ღია'; +$lang['js']['hidedetails'] = 'დეტალების დამალვა'; +$lang['js']['mediatitle'] = 'ინსტრუმენტები'; +$lang['js']['mediadisplay'] = 'ბმულის ტიპი'; +$lang['js']['mediaalign'] = 'Alignment'; +$lang['js']['mediasize'] = 'სურათის ზომა'; +$lang['js']['mediatarget'] = 'მიზნის ბმული'; +$lang['js']['mediaclose'] = 'დახურვა'; +$lang['js']['mediainsert'] = 'ჩასმა'; +$lang['js']['mediadisplayimg'] = 'სურათის ნახვა'; +$lang['js']['mediadisplaylnk'] = 'მაჩვენე მხოლოდ ბმული'; -- cgit v1.2.3 From 2dc9e90007f12ac996b0e74479137a9dc6243c3c Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Sun, 4 May 2014 19:20:11 +0100 Subject: KISS - remove class constants for REQUIRE_GROUPS & IGNORE_GROUPS and replace with boolean values --- inc/auth.php | 6 +++--- inc/common.php | 2 +- lib/plugins/auth.php | 5 +---- lib/plugins/authmysql/auth.php | 10 +++++----- 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/inc/auth.php b/inc/auth.php index cbdd7163b..5e0d13417 100644 --- a/inc/auth.php +++ b/inc/auth.php @@ -922,7 +922,7 @@ function auth_sendPassword($user, $password) { if(!$auth) return false; $user = $auth->cleanUser($user); - $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); + $userinfo = $auth->getUserData($user, $requireGroups = false); if(!$userinfo['mail']) return false; @@ -1184,7 +1184,7 @@ function act_resendpwd() { } $user = io_readfile($tfile); - $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); + $userinfo = $auth->getUserData($user, $requireGroups = false); if(!$userinfo['mail']) { msg($lang['resendpwdnouser'], -1); return false; @@ -1236,7 +1236,7 @@ function act_resendpwd() { $user = trim($auth->cleanUser($INPUT->post->str('login'))); } - $userinfo = $auth->getUserData($user, DokuWiki_Auth_Plugin::IGNORE_GROUPS); + $userinfo = $auth->getUserData($user, $requireGroups = false); if(!$userinfo['mail']) { msg($lang['resendpwdnouser'], -1); return false; diff --git a/inc/common.php b/inc/common.php index 9ed9e84d4..9b3c59e6e 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1468,7 +1468,7 @@ function editorinfo($username) { case 'username': case 'email': case 'email_link': - if($auth) $info = $auth->getUserData($username, DokuWiki_Auth_Plugin::IGNORE_GROUPS); + if($auth) $info = $auth->getUserData($username, $requireGroups = false); break; default: return hsc($username); diff --git a/lib/plugins/auth.php b/lib/plugins/auth.php index 9275611be..b38b591a3 100644 --- a/lib/plugins/auth.php +++ b/lib/plugins/auth.php @@ -15,9 +15,6 @@ if(!defined('DOKU_INC')) die(); class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { public $success = true; - const IGNORE_GROUPS = false; - const REQUIRE_GROUPS = true; - /** * Possible things an auth backend module may be able to * do. The things a backend can do need to be set to true @@ -240,7 +237,7 @@ class DokuWiki_Auth_Plugin extends DokuWiki_Plugin { * @param bool $requireGroups whether or not the returned data must include groups * @return array containing user data or false */ - public function getUserData($user, $requireGroups=self::REQUIRE_GROUPS) { + public function getUserData($user, $requireGroups=true) { if(!$this->cando['external']) msg("no valid authorisation system in use", -1); return false; } diff --git a/lib/plugins/authmysql/auth.php b/lib/plugins/authmysql/auth.php index d3906759b..95c62f636 100644 --- a/lib/plugins/authmysql/auth.php +++ b/lib/plugins/authmysql/auth.php @@ -182,7 +182,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * when false, it maybe included, but is not required by the caller * @return array|bool */ - public function getUserData($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS) { + public function getUserData($user, $requireGroups=true) { if($this->_cacheExists($user, $requireGroups)) { return $this->cacheUserInfo[$user]; } @@ -690,13 +690,13 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * * @return bool existence of required user information in the cache */ - protected function _cacheExists($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS) { + protected function _cacheExists($user, $requireGroups=true) { if (isset($this->cacheUserInfo[$user])) { if (!is_array($this->cacheUserInfo[$user])) { return true; // user doesn't exist } - if ($requireGroups == DokuWiki_Auth_Plugin::IGNORE_GROUPS || isset($this->cacheUserInfo[$user]['grps'])) { + if (!$requireGroups || isset($this->cacheUserInfo[$user]['grps'])) { return true; } } @@ -718,7 +718,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { * @return mixed false|array false if the user doesn't exist * array containing user information if user does exist */ - protected function _getUserInfo($user, $requireGroups=DokuWiki_Auth_Plugin::REQUIRE_GROUPS, $useCache=true) { + protected function _getUserInfo($user, $requireGroups=true, $useCache=true) { $info = null; if ($useCache && isset($this->cacheUserInfo[$user])) { @@ -729,7 +729,7 @@ class auth_plugin_authmysql extends DokuWiki_Auth_Plugin { $info = $this->_retrieveUserInfo($user); } - if (($requireGroups == DokuWiki_Auth_Plugin::REQUIRE_GROUPS) && $info && !isset($info['grps'])) { + if (($requireGroups == true) && $info && !isset($info['grps'])) { $info['grps'] = $this->_getGroups($user); } -- cgit v1.2.3 From 5f785b9aebc838913cbc1a85fa37a4df95fdab72 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Mon, 5 May 2014 13:25:58 +0200 Subject: update deprecation stuff for dw_qearch --- lib/scripts/compatibility.js | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/lib/scripts/compatibility.js b/lib/scripts/compatibility.js index 76b135b23..fc020cce8 100644 --- a/lib/scripts/compatibility.js +++ b/lib/scripts/compatibility.js @@ -77,9 +77,32 @@ var index = { }; var ajax_quicksearch = { - init: DEPRECATED_WRAP(dw_qsearch.init, dw_qsearch), - clear_results: DEPRECATED_WRAP(dw_qsearch.clear_results, dw_qsearch), - onCompletion: DEPRECATED_WRAP(dw_qsearch.onCompletion, dw_qsearch) + init: function() { + DEPRECATED('Use jQuery().dw_qsearch() instead'); + jQuery('#qsearch__in').dw_qsearch({ + output: '#qsearch__out' + }); + }, + clear_results: function() { + DEPRECATED('ajax_quicksearch.clear_results is removed'); + }, + onCompletion: function() { + DEPRECATED('ajax_quicksearch.onCompletion is removed'); + } +}; +var dw_qsearch = { + init: function(input, output) { + DEPRECATED('Use jQuery().dw_qsearch() instead'); + jQuery(input).dw_qsearch({ + output: output + }); + }, + clear_results: function() { + DEPRECATED('dw_qsearch.clear_results is removed'); + }, + onCompletion: function() { + DEPRECATED('dw_qsearch.onCompletion is removed'); + } }; var linkwiz = { -- cgit v1.2.3 From e14fe973182165a2607f1b8fe41ac42d07a93070 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Mon, 5 May 2014 13:26:47 +0200 Subject: add defaults to phpdocs of search universal --- inc/search.php | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/inc/search.php b/inc/search.php index be4710237..5489dc2c0 100644 --- a/inc/search.php +++ b/inc/search.php @@ -317,25 +317,25 @@ function pathID($path,$keeptxt=false){ * How the function behaves, depends on the options passed in the $opts * array, where the following settings can be used. * - * depth int recursion depth. 0 for unlimited - * keeptxt bool keep .txt extension for IDs - * listfiles bool include files in listing - * listdirs bool include namespaces in listing - * pagesonly bool restrict files to pages - * skipacl bool do not check for READ permission - * sneakyacl bool don't recurse into nonreadable dirs - * hash bool create MD5 hash for files - * meta bool return file metadata - * filematch string match files against this regexp - * idmatch string match full ID against this regexp - * dirmatch string match directory against this regexp when adding - * nsmatch string match namespace against this regexp when adding - * recmatch string match directory against this regexp when recursing - * showmsg bool warn about non-ID files - * showhidden bool show hidden files too - * firsthead bool return first heading for pages + * depth int recursion depth. 0 for unlimited (default: 0) + * keeptxt bool keep .txt extension for IDs (default: false) + * listfiles bool include files in listing (default: false) + * listdirs bool include namespaces in listing (default: false) + * pagesonly bool restrict files to pages (default: false) + * skipacl bool do not check for READ permission (default: false) + * sneakyacl bool don't recurse into nonreadable dirs (default: false) + * hash bool create MD5 hash for files (default: false) + * meta bool return file metadata (default: false) + * filematch string match files against this regexp (default: '', so accept everything) + * idmatch string match full ID against this regexp (default: '', so accept everything) + * dirmatch string match directory against this regexp when adding (default: '', so accept everything) + * nsmatch string match namespace against this regexp when adding (default: '', so accept everything) + * recmatch string match directory against this regexp when recursing (default: '', so accept everything) + * showmsg bool warn about non-ID files (default: false) + * showhidden bool show hidden files(e.g. by hidepages config) too (default: false) + * firsthead bool return first heading for pages (default: false) * - * @param array &$data - Reference to the result data structure + * @param array &$data - Reference to the result data structure * @param string $base - Base usually $conf['datadir'] * @param string $file - current file or directory relative to $base * @param string $type - Type either 'd' for directory or 'f' for file -- cgit v1.2.3 From 9e1bc3f3dd03f19063d530e7aa5eb8eb9b36abf4 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Mon, 5 May 2014 13:35:56 +0200 Subject: no fancy quotes in user manager import description --- lib/plugins/usermanager/lang/cs/import.txt | 2 +- lib/plugins/usermanager/lang/de-informal/import.txt | 2 +- lib/plugins/usermanager/lang/de/import.txt | 2 +- lib/plugins/usermanager/lang/en/import.txt | 2 +- lib/plugins/usermanager/lang/eo/import.txt | 2 +- lib/plugins/usermanager/lang/fr/import.txt | 2 +- lib/plugins/usermanager/lang/hu/import.txt | 2 +- lib/plugins/usermanager/lang/ja/import.txt | 2 +- lib/plugins/usermanager/lang/ko/import.txt | 2 +- lib/plugins/usermanager/lang/nl/import.txt | 2 +- lib/plugins/usermanager/lang/ru/import.txt | 2 +- lib/plugins/usermanager/lang/sk/import.txt | 2 +- lib/plugins/usermanager/lang/zh-tw/import.txt | 2 +- lib/plugins/usermanager/lang/zh/import.txt | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/plugins/usermanager/lang/cs/import.txt b/lib/plugins/usermanager/lang/cs/import.txt index c264ae185..d665838f4 100644 --- a/lib/plugins/usermanager/lang/cs/import.txt +++ b/lib/plugins/usermanager/lang/cs/import.txt @@ -2,7 +2,7 @@ Vyžaduje CSV soubor s uživateli obsahující alespoň 4 sloupce. Sloupce obsahují (v daném pořadí): user-id, celé jméno, emailovou adresu, seznam skupin. -Položky CSV musí být odděleny čárkou (,) a řetězce umístěny v uvozovkách (""). Zpětné lomítko (\) lze použít pro escapování. +Položky CSV musí být odděleny čárkou (,) a řetězce umístěny v uvozovkách (%%""%%). Zpětné lomítko (\) lze použít pro escapování. Pro získání příkladu takového souboru využijte funkci "Exportovat uživatele" výše. Záznamy s duplicitním user-id budou ignorovány. diff --git a/lib/plugins/usermanager/lang/de-informal/import.txt b/lib/plugins/usermanager/lang/de-informal/import.txt index 6fd6b8d8c..bc8887193 100644 --- a/lib/plugins/usermanager/lang/de-informal/import.txt +++ b/lib/plugins/usermanager/lang/de-informal/import.txt @@ -1,7 +1,7 @@ ===== Massenimport von Benutzern ===== Dieser Import benötigt eine CSV-Datei mit mindestens vier Spalten. Diese Spalten müssen die folgenden Daten (in dieser Reihenfolge) enthalten: Benutzername, Name, E-Mailadresse und Gruppenzugehörigkeit. -Die CSV-Felder müssen durch ein Komma (,) getrennt sein. Die Zeichenfolgen müssen von Anführungszeichen ("") umgeben sein. Ein Backslash (\) kann zum Maskieren benutzt werden. +Die CSV-Felder müssen durch ein Komma (,) getrennt sein. Die Zeichenfolgen müssen von Anführungszeichen (%%""%%) umgeben sein. Ein Backslash (\) kann zum Maskieren benutzt werden. Für eine Beispieldatei kannst Du die "Benutzer exportieren"-Funktion oben benutzen. Doppelte Benutzername werden ignoriert. Ein Passwort wird generiert und den einzelnen, erfolgreich importierten Benutzern zugemailt. \ No newline at end of file diff --git a/lib/plugins/usermanager/lang/de/import.txt b/lib/plugins/usermanager/lang/de/import.txt index bf0d2922e..7faca3b9a 100644 --- a/lib/plugins/usermanager/lang/de/import.txt +++ b/lib/plugins/usermanager/lang/de/import.txt @@ -1,7 +1,7 @@ ===== Benutzer-Massenimport ===== Um mehrere Benutzer gleichzeitig zu importieren, wird eine CSV-Datei mit den folgenden vier Spalten benötigt (In dieser Reihenfolge): Benutzer-ID, Voller Name, E-Mail-Adresse und Gruppen. -Die CSV-Felder sind Kommata-separiert (,) und mit Anführungszeichen eingefasst ("). Mit Backslashes (\) können Sonderzeichen maskiert werden. +Die CSV-Felder sind Kommata-separiert (,) und mit Anführungszeichen eingefasst (%%"%%). Mit Backslashes (\) können Sonderzeichen maskiert werden. Ein Beispiel für eine gültige Datei kann mit der Benutzer-Export-Funktion oben generiert werden. Doppelte Benutzer-IDs werden ignoriert. diff --git a/lib/plugins/usermanager/lang/en/import.txt b/lib/plugins/usermanager/lang/en/import.txt index 2087083e0..360a0689b 100644 --- a/lib/plugins/usermanager/lang/en/import.txt +++ b/lib/plugins/usermanager/lang/en/import.txt @@ -2,7 +2,7 @@ Requires a CSV file of users with at least four columns. The columns must contain, in order: user-id, full name, email address and groups. -The CSV fields should be separated by commas (,) and strings delimited by quotation marks (""). Backslash (\) can be used for escaping. +The CSV fields should be separated by commas (,) and strings delimited by quotation marks (%%""%%). Backslash (\) can be used for escaping. For an example of a suitable file, try the "Export Users" function above. Duplicate user-ids will be ignored. diff --git a/lib/plugins/usermanager/lang/eo/import.txt b/lib/plugins/usermanager/lang/eo/import.txt index 61c2c74de..09fbe6911 100644 --- a/lib/plugins/usermanager/lang/eo/import.txt +++ b/lib/plugins/usermanager/lang/eo/import.txt @@ -2,7 +2,7 @@ Tio ĉi postulas CSV-dosiero de uzantoj kun minimume kvar kolumnoj. La kolumnoj devas enhavi, laŭorde: uzant-id, kompleta nomo, retadreso kaj grupoj. -La CSV-kampoj devos esti apartitaj per komoj (,) kaj ĉenoj devas esti limigitaj per citiloj (""). Retroklino (\) povas esti uzata por eskapo. +La CSV-kampoj devos esti apartitaj per komoj (,) kaj ĉenoj devas esti limigitaj per citiloj (%%""%%). Retroklino (\) povas esti uzata por eskapo. Por ekzemplo de taŭga dosiero, provu la funkcion "Eksporti uzantojn" supre. Duobligitaj uzant-id estos preteratentataj. diff --git a/lib/plugins/usermanager/lang/fr/import.txt b/lib/plugins/usermanager/lang/fr/import.txt index 191bb8370..a1eb8f858 100644 --- a/lib/plugins/usermanager/lang/fr/import.txt +++ b/lib/plugins/usermanager/lang/fr/import.txt @@ -3,7 +3,7 @@ Requière un fichier [[wpfr>CSV]] d'utilisateurs avec un minimum de quatre colonnes. Les colonnes doivent comporter, dans l'ordre : identifiant, nom complet, adresse de courriel et groupes. -Les champs doivent être séparés par une virgule (,), les chaînes sont délimitées par des guillemets (""). On peut utiliser la balance inverse (\) comme caractère d'échappement. +Les champs doivent être séparés par une virgule (,), les chaînes sont délimitées par des guillemets (%%""%%). On peut utiliser la balance inverse (\) comme caractère d'échappement. Pour obtenir un exemple de fichier acceptable, essayer la fonction "Exporter les utilisateurs" ci dessus. Les identifiants dupliqués seront ignorés. diff --git a/lib/plugins/usermanager/lang/hu/import.txt b/lib/plugins/usermanager/lang/hu/import.txt index f204f6a1e..0210112e8 100644 --- a/lib/plugins/usermanager/lang/hu/import.txt +++ b/lib/plugins/usermanager/lang/hu/import.txt @@ -2,7 +2,7 @@ Szükséges egy legalább 4 oszlopot tartalmazó, felhasználókat tartalmazó fájl. Az oszlopok kötelező tartalma, sorrendben: felhasználói azonosító, teljes név, e-mailcím és csoport. -A CSV-mezőket vesszővel (,) kell elválasztani, a szövegeket idézőjelek ("") közé kell tenni. A fordított törtvonal (\) használható feloldójelnek. +A CSV-mezőket vesszővel (,) kell elválasztani, a szövegeket idézőjelek (%%""%%) közé kell tenni. A fordított törtvonal (\) használható feloldójelnek. Megfelelő mintafájl megtekintéséhez próbáld ki a "Felhasználók exportálása" funkciót fentebb. A duplán szereplő felhasználói azonosítók kihagyásra kerülnek. diff --git a/lib/plugins/usermanager/lang/ja/import.txt b/lib/plugins/usermanager/lang/ja/import.txt index 751e515ac..6af87c263 100644 --- a/lib/plugins/usermanager/lang/ja/import.txt +++ b/lib/plugins/usermanager/lang/ja/import.txt @@ -2,7 +2,7 @@ 少なくとも4列のユーザーCSVファイルが必要です。 列の順序:ユーザーID、氏名、電子メールアドレス、グループ。 -CSVフィールドはカンマ(,)区切り、文字列は引用符("")区切りです。 +CSVフィールドはカンマ(,)区切り、文字列は引用符(%%""%%)区切りです。 エスケープにバックスラッシュ(\)を使用できます。 適切なファイル例は、上記の"エクスポートユーザー"機能で試して下さい。 重複するユーザーIDは無視されます。 diff --git a/lib/plugins/usermanager/lang/ko/import.txt b/lib/plugins/usermanager/lang/ko/import.txt index 44fe392d0..6d077dfb8 100644 --- a/lib/plugins/usermanager/lang/ko/import.txt +++ b/lib/plugins/usermanager/lang/ko/import.txt @@ -2,7 +2,7 @@ 적어도 열 네 개가 있는 사용자의 CSV 파일이 필요합니다. 열은 다음과 같이 포함해야 합니다: 사용자 id, 실명, 이메일 주소와 그룹. -CSV 필드는 인용 부호("")로 쉼표(,)와 구분된 문자열로 구분해야 합니다. 백슬래시(\)는 탈출에 사용할 수 있습니다. +CSV 필드는 인용 부호(%%""%%)로 쉼표(,)와 구분된 문자열로 구분해야 합니다. 백슬래시(\)는 탈출에 사용할 수 있습니다. 적절한 파일의 예를 들어, 위의 "사용자 목록 내보내기"를 시도하세요. 중복된 사용자 id는 무시됩니다. diff --git a/lib/plugins/usermanager/lang/nl/import.txt b/lib/plugins/usermanager/lang/nl/import.txt index 267891098..3a9320ecf 100644 --- a/lib/plugins/usermanager/lang/nl/import.txt +++ b/lib/plugins/usermanager/lang/nl/import.txt @@ -1,7 +1,7 @@ ===== Massa-import van gebruikers ===== Hiervoor is een CSV-bestand nodig van de gebruikers met minstens vier kolommen. De kolommen moeten bevatten, in deze volgorde: gebruikers-id, complete naam, e-mailadres en groepen. -Het CSV-velden moeten worden gescheiden met komma's (,) en de teksten moeten worden omringd met dubbele aanhalingstekens (""). Backslash (\) kan worden gebruikt om te escapen. +Het CSV-velden moeten worden gescheiden met komma's (,) en de teksten moeten worden omringd met dubbele aanhalingstekens (%%""%%). Backslash (\) kan worden gebruikt om te escapen. Voor een voorbeeld van een werkend bestand, probeer de "Exporteer Gebruikers" functie hierboven. Dubbele gebruikers-id's zullen worden genegeerd. diff --git a/lib/plugins/usermanager/lang/ru/import.txt b/lib/plugins/usermanager/lang/ru/import.txt index dd2b797bc..f2049dd0c 100644 --- a/lib/plugins/usermanager/lang/ru/import.txt +++ b/lib/plugins/usermanager/lang/ru/import.txt @@ -2,7 +2,7 @@ Потребуется список пользователей в файле формата CSV, состоящий из 4 столбцов. Столбцы должны быть заполнены следующим образом: user-id, полное имя, эл. почта, группы. -Поля CSV должны быть отделены запятой (,), а строки должны быть заключены в кавычки (""). Обратный слэш используется как прерывание. +Поля CSV должны быть отделены запятой (,), а строки должны быть заключены в кавычки (%%""%%). Обратный слэш используется как прерывание. В качестве примера можете взять список пользователей, экспортированный через «Экспорт пользователей». Повторяющиеся идентификаторы user-id будут игнорироваться. diff --git a/lib/plugins/usermanager/lang/sk/import.txt b/lib/plugins/usermanager/lang/sk/import.txt index 91fa3e370..2207f6162 100644 --- a/lib/plugins/usermanager/lang/sk/import.txt +++ b/lib/plugins/usermanager/lang/sk/import.txt @@ -2,7 +2,7 @@ Vyžaduje CSV súbor používateľov s minimálne 4 stĺpcami. Stĺpce musia obsahovať postupne: ID používateľa, meno a priezvisko, emailová adresa a skupiny. -CVS záznamy by mali byť oddelené čiarkou (,) a reťazce uzavreté úvodzovkami (""). Znak (\) sa používa v spojení so špeciálnymi znakmi. +CVS záznamy by mali byť oddelené čiarkou (,) a reťazce uzavreté úvodzovkami (%%""%%). Znak (\) sa používa v spojení so špeciálnymi znakmi. Príklad vhodného súboru je možné získať funkciou "Export používateľov". Duplicitné ID používateľov budú ignorované. diff --git a/lib/plugins/usermanager/lang/zh-tw/import.txt b/lib/plugins/usermanager/lang/zh-tw/import.txt index a6bb5f6ef..925cdc9d0 100644 --- a/lib/plugins/usermanager/lang/zh-tw/import.txt +++ b/lib/plugins/usermanager/lang/zh-tw/import.txt @@ -2,7 +2,7 @@ 需提供 CSV 格式的使用者列表檔案(UTF-8 編碼)。 每列至少 4 欄,依序為:帳號、姓名、電郵、群組。 -各欄以半形逗號 (,) 分隔,有半形逗號的字串可用半形雙引號 ("") 分開,引號可用反斜線 (\) 跳脫。 +各欄以半形逗號 (,) 分隔,有半形逗號的字串可用半形雙引號 (%%""%%) 分開,引號可用反斜線 (\) 跳脫。 重複的使用者帳號會自動忽略。 如需要範例檔案,可用上面的「匯出使用者」取得。 diff --git a/lib/plugins/usermanager/lang/zh/import.txt b/lib/plugins/usermanager/lang/zh/import.txt index eacce5a77..243a53e84 100644 --- a/lib/plugins/usermanager/lang/zh/import.txt +++ b/lib/plugins/usermanager/lang/zh/import.txt @@ -1,7 +1,7 @@ ===== 批量导入用户 ===== 需要至少有 4 列的 CSV 格式用户列表文件。列必须按顺序包括:用户ID、全名、电子邮件地址和组。 -CSV 域需要用逗号 (,) 分隔,字符串用英文双引号 ("") 分开。反斜杠可以用来转义。 +CSV 域需要用逗号 (,) 分隔,字符串用英文双引号 (%%""%%) 分开。反斜杠可以用来转义。 可以尝试上面的“导入用户”功能来查看示例文件。重复的用户ID将被忽略。 密码生成后会通过电子邮件发送给每个成功导入的用户。 \ No newline at end of file -- cgit v1.2.3 From 75930869ddcb31470ea7617eddfb882de02645df Mon Sep 17 00:00:00 2001 From: Guy Brand Date: Mon, 5 May 2014 22:48:47 +0200 Subject: Release preparation --- data/deleted.files | 158 +++++++++++++++++++++++++++++++++++++++++++++++++++++ doku.php | 2 +- install.php | 1 + 3 files changed, 160 insertions(+), 1 deletion(-) diff --git a/data/deleted.files b/data/deleted.files index 63335d3cc..cac352c9d 100644 --- a/data/deleted.files +++ b/data/deleted.files @@ -2,6 +2,164 @@ # but were removed later. An up to date DokuWiki should not have any of # the files installed +# removed in 2014-05-05 +lib/images/fileicons/audio.png +lib/plugins/acl/lang/hi/lang.php +lib/plugins/acl/lang/id-ni/lang.php +lib/plugins/acl/lang/lb/lang.php +lib/plugins/acl/lang/ms/lang.php +lib/plugins/authad/lang/lv/settings.php +lib/plugins/authldap/lang/lv/settings.php +lib/plugins/authmysql/lang/fi/settings.php +lib/plugins/authmysql/lang/lv/settings.php +lib/plugins/authpgsql/lang/fi/settings.php +lib/plugins/authpgsql/lang/it/settings.php +lib/plugins/authpgsql/lang/lv/settings.php +lib/plugins/authpgsql/lang/pl/settings.php +lib/plugins/config/lang/hr/lang.php +lib/plugins/config/lang/id/lang.php +lib/plugins/config/lang/kk/lang.php +lib/plugins/config/lang/lb/lang.php +lib/plugins/config/lang/mk/lang.php +lib/plugins/config/lang/ms/lang.php +lib/plugins/config/lang/vi/lang.php +lib/plugins/plugin/admin.php +lib/plugins/plugin/classes/ap_delete.class.php +lib/plugins/plugin/classes/ap_download.class.php +lib/plugins/plugin/classes/ap_enable.class.php +lib/plugins/plugin/classes/ap_info.class.php +lib/plugins/plugin/classes/ap_manage.class.php +lib/plugins/plugin/classes/ap_update.class.php +lib/plugins/plugin/lang/af/lang.php +lib/plugins/plugin/lang/ar/admin_plugin.txt +lib/plugins/plugin/lang/ar/lang.php +lib/plugins/plugin/lang/bg/admin_plugin.txt +lib/plugins/plugin/lang/bg/lang.php +lib/plugins/plugin/lang/ca-valencia/admin_plugin.txt +lib/plugins/plugin/lang/ca-valencia/lang.php +lib/plugins/plugin/lang/ca/admin_plugin.txt +lib/plugins/plugin/lang/ca/lang.php +lib/plugins/plugin/lang/cs/admin_plugin.txt +lib/plugins/plugin/lang/cs/lang.php +lib/plugins/plugin/lang/da/admin_plugin.txt +lib/plugins/plugin/lang/da/lang.php +lib/plugins/plugin/lang/de-informal/admin_plugin.txt +lib/plugins/plugin/lang/de-informal/lang.php +lib/plugins/plugin/lang/de/admin_plugin.txt +lib/plugins/plugin/lang/de/lang.php +lib/plugins/plugin/lang/el/admin_plugin.txt +lib/plugins/plugin/lang/el/lang.php +lib/plugins/plugin/lang/en/admin_plugin.txt +lib/plugins/plugin/lang/en/lang.php +lib/plugins/plugin/lang/eo/admin_plugin.txt +lib/plugins/plugin/lang/eo/lang.php +lib/plugins/plugin/lang/es/admin_plugin.txt +lib/plugins/plugin/lang/es/lang.php +lib/plugins/plugin/lang/et/lang.php +lib/plugins/plugin/lang/eu/admin_plugin.txt +lib/plugins/plugin/lang/eu/lang.php +lib/plugins/plugin/lang/fa/admin_plugin.txt +lib/plugins/plugin/lang/fa/lang.php +lib/plugins/plugin/lang/fi/admin_plugin.txt +lib/plugins/plugin/lang/fi/lang.php +lib/plugins/plugin/lang/fr/admin_plugin.txt +lib/plugins/plugin/lang/fr/lang.php +lib/plugins/plugin/lang/gl/admin_plugin.txt +lib/plugins/plugin/lang/gl/lang.php +lib/plugins/plugin/lang/he/admin_plugin.txt +lib/plugins/plugin/lang/he/lang.php +lib/plugins/plugin/lang/hi/lang.php +lib/plugins/plugin/lang/hr/lang.php +lib/plugins/plugin/lang/hu/admin_plugin.txt +lib/plugins/plugin/lang/hu/lang.php +lib/plugins/plugin/lang/ia/admin_plugin.txt +lib/plugins/plugin/lang/ia/lang.php +lib/plugins/plugin/lang/id-ni/lang.php +lib/plugins/plugin/lang/id/lang.php +lib/plugins/plugin/lang/is/lang.php +lib/plugins/plugin/lang/it/admin_plugin.txt +lib/plugins/plugin/lang/it/lang.php +lib/plugins/plugin/lang/ja/admin_plugin.txt +lib/plugins/plugin/lang/ja/lang.php +lib/plugins/plugin/lang/kk/lang.php +lib/plugins/plugin/lang/ko/admin_plugin.txt +lib/plugins/plugin/lang/ko/lang.php +lib/plugins/plugin/lang/la/admin_plugin.txt +lib/plugins/plugin/lang/la/lang.php +lib/plugins/plugin/lang/lb/admin_plugin.txt +lib/plugins/plugin/lang/lb/lang.php +lib/plugins/plugin/lang/lt/admin_plugin.txt +lib/plugins/plugin/lang/lt/lang.php +lib/plugins/plugin/lang/lv/admin_plugin.txt +lib/plugins/plugin/lang/lv/lang.php +lib/plugins/plugin/lang/mk/lang.php +lib/plugins/plugin/lang/mr/admin_plugin.txt +lib/plugins/plugin/lang/mr/lang.php +lib/plugins/plugin/lang/ms/lang.php +lib/plugins/plugin/lang/ne/lang.php +lib/plugins/plugin/lang/nl/admin_plugin.txt +lib/plugins/plugin/lang/nl/lang.php +lib/plugins/plugin/lang/no/admin_plugin.txt +lib/plugins/plugin/lang/no/lang.php +lib/plugins/plugin/lang/pl/admin_plugin.txt +lib/plugins/plugin/lang/pl/lang.php +lib/plugins/plugin/lang/pt-br/admin_plugin.txt +lib/plugins/plugin/lang/pt-br/lang.php +lib/plugins/plugin/lang/pt/admin_plugin.txt +lib/plugins/plugin/lang/pt/lang.php +lib/plugins/plugin/lang/ro/admin_plugin.txt +lib/plugins/plugin/lang/ro/lang.php +lib/plugins/plugin/lang/ru/admin_plugin.txt +lib/plugins/plugin/lang/ru/lang.php +lib/plugins/plugin/lang/sk/admin_plugin.txt +lib/plugins/plugin/lang/sk/lang.php +lib/plugins/plugin/lang/sl/admin_plugin.txt +lib/plugins/plugin/lang/sl/lang.php +lib/plugins/plugin/lang/sq/admin_plugin.txt +lib/plugins/plugin/lang/sq/lang.php +lib/plugins/plugin/lang/sr/admin_plugin.txt +lib/plugins/plugin/lang/sr/lang.php +lib/plugins/plugin/lang/sv/admin_plugin.txt +lib/plugins/plugin/lang/sv/lang.php +lib/plugins/plugin/lang/th/admin_plugin.txt +lib/plugins/plugin/lang/th/lang.php +lib/plugins/plugin/lang/tr/admin_plugin.txt +lib/plugins/plugin/lang/tr/lang.php +lib/plugins/plugin/lang/uk/admin_plugin.txt +lib/plugins/plugin/lang/uk/lang.php +lib/plugins/plugin/lang/vi/lang.php +lib/plugins/plugin/lang/zh-tw/admin_plugin.txt +lib/plugins/plugin/lang/zh-tw/lang.php +lib/plugins/plugin/lang/zh/admin_plugin.txt +lib/plugins/plugin/lang/zh/lang.php +lib/plugins/plugin/plugin.info.txt +lib/plugins/plugin/style.css +lib/plugins/popularity/lang/et/lang.php +lib/plugins/popularity/lang/hr/lang.php +lib/plugins/popularity/lang/id/lang.php +lib/plugins/popularity/lang/kk/lang.php +lib/plugins/popularity/lang/lb/lang.php +lib/plugins/popularity/lang/mk/lang.php +lib/plugins/popularity/lang/ms/lang.php +lib/plugins/popularity/lang/vi/lang.php +lib/plugins/revert/lang/af/lang.php +lib/plugins/revert/lang/hi/lang.php +lib/plugins/revert/lang/hr/lang.php +lib/plugins/revert/lang/id-ni/lang.php +lib/plugins/revert/lang/id/lang.php +lib/plugins/revert/lang/kk/lang.php +lib/plugins/revert/lang/lb/lang.php +lib/plugins/revert/lang/lt/lang.php +lib/plugins/revert/lang/mk/lang.php +lib/plugins/revert/lang/ms/lang.php +lib/plugins/revert/lang/vi/lang.php +lib/plugins/usermanager/lang/hi/lang.php +lib/plugins/usermanager/lang/hr/lang.php +lib/plugins/usermanager/lang/id-ni/lang.php +lib/plugins/usermanager/lang/lb/lang.php +lib/plugins/usermanager/lang/ms/lang.php +lib/plugins/usermanager/lang/vi/lang.php + # removed in 2013-11-18 lib/images/arrow_down.gif lib/images/arrow_up.gif diff --git a/doku.php b/doku.php index d861aa4fb..afaf79c2f 100644 --- a/doku.php +++ b/doku.php @@ -9,7 +9,7 @@ */ // update message version -$updateVersion = 43; +$updateVersion = 44; // xdebug_start_profiling(); diff --git a/install.php b/install.php index 779084cfa..acc96d3e6 100644 --- a/install.php +++ b/install.php @@ -57,6 +57,7 @@ $dokuwiki_hash = array( '2012-09-10' => 'eb0b3fc90056fbc12bac6f49f7764df3', '2013-05-10' => '7b62b75245f57f122d3e0f8ed7989623', '2013-12-08' => '263c76af309fbf083867c18a34ff5214', + '2014-05-05' => '263c76af309fbf083867c18a34ff5214', ); -- cgit v1.2.3 From 3baf05bf65b65b4a1ecbf0ea7872630586ffa6b9 Mon Sep 17 00:00:00 2001 From: Hoisl Date: Tue, 6 May 2014 22:16:13 +0200 Subject: translation update --- inc/lang/de/lang.php | 5 ++++- lib/plugins/extension/lang/de/lang.php | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/inc/lang/de/lang.php b/inc/lang/de/lang.php index c6f11abc9..762a55e53 100644 --- a/inc/lang/de/lang.php +++ b/inc/lang/de/lang.php @@ -25,6 +25,7 @@ * @author Benedikt Fey * @author Joerg * @author Simon + * @author Hoisl */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -95,7 +96,6 @@ $lang['regbadmail'] = 'Die angegebene E-Mail-Adresse scheint ungülti $lang['regbadpass'] = 'Die beiden eingegeben Passwörter stimmen nicht überein. Bitte versuchen Sie es noch einmal.'; $lang['regpwmail'] = 'Ihr DokuWiki-Passwort'; $lang['reghere'] = 'Sie haben noch keinen Zugang? Hier registrieren'; -$lang['notloggedin'] = 'Haben Sie vergessen sich einzuloggen?'; $lang['profna'] = 'Änderung des Benutzerprofils in diesem Wiki nicht möglich.'; $lang['profnochange'] = 'Keine Änderungen, nichts zu tun.'; $lang['profnoempty'] = 'Es muss ein Name und eine E-Mail-Adresse angegeben werden.'; @@ -201,6 +201,9 @@ $lang['difflink'] = 'Link zu dieser Vergleichsansicht'; $lang['diff_type'] = 'Unterschiede anzeigen:'; $lang['diff_inline'] = 'Inline'; $lang['diff_side'] = 'Side by Side'; +$lang['diffprevrev'] = 'Vorhergehende Überarbeitung'; +$lang['diffnextrev'] = 'Nächste Überarbeitung'; +$lang['difflastrev'] = 'Letzte Überarbeitung'; $lang['line'] = 'Zeile'; $lang['breadcrumb'] = 'Zuletzt angesehen'; $lang['youarehere'] = 'Sie befinden sich hier'; diff --git a/lib/plugins/extension/lang/de/lang.php b/lib/plugins/extension/lang/de/lang.php index 8068ce830..89c6b55b7 100644 --- a/lib/plugins/extension/lang/de/lang.php +++ b/lib/plugins/extension/lang/de/lang.php @@ -6,6 +6,7 @@ * @author H. Richard * @author Joerg * @author Simon + * @author Hoisl */ $lang['menu'] = 'Erweiterungen verwalten'; $lang['tab_plugins'] = 'Installierte Plugins'; @@ -74,6 +75,7 @@ $lang['security_issue'] = 'Sicherheitsproblem: %s'; $lang['security_warning'] = 'Sicherheitswarnung: %s'; $lang['update_available'] = 'Update: Version %s steht zum Download bereit.'; $lang['wrong_folder'] = 'Plugin wurde nicht korrekt installiert: Benennen Sie das Plugin-Verzeichnis "%s" in "%s" um.'; +$lang['url_change'] = 'URL geändert: Die Download URL wurde seit dem letzten Download geändert. Internetadresse vor Aktualisierung der Erweiterung auf Gültigkeit prüfen.
Neu: %s
Alt: %s'; $lang['error_badurl'] = 'URLs sollten mit http oder https beginnen'; $lang['error_dircreate'] = 'Temporären Ordner konnte nicht erstellt werden, um Download zu empfangen'; $lang['error_download'] = 'Download der Datei: %s nicht möglich.'; -- cgit v1.2.3 From 519107e5c89188215be4cdf010f492a23ba0bb15 Mon Sep 17 00:00:00 2001 From: Luka Lejava Date: Wed, 7 May 2014 22:01:00 +0200 Subject: translation update --- inc/lang/ka/lang.php | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/inc/lang/ka/lang.php b/inc/lang/ka/lang.php index bdf0f1997..c4d4abc9a 100644 --- a/inc/lang/ka/lang.php +++ b/inc/lang/ka/lang.php @@ -115,3 +115,34 @@ $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']['medialnk'] = 'დაწვრილებით'; +$lang['js']['mediadirect'] = 'ორიგინალი'; +$lang['js']['medianolnk'] = 'ბმული არ არის'; +$lang['js']['medianolink'] = 'არ დალინკოთ სურათი'; +$lang['js']['medialeft'] = 'მარცხვნივ განათავსეთ სურათი'; +$lang['js']['mediaright'] = 'მარჯვნივ განათავსეთ სურათი'; +$lang['js']['mediacenter'] = 'შუაში განათავსეთ სურათი'; +$lang['js']['medianoalign'] = 'Use no align.'; +$lang['js']['nosmblinks'] = 'ეს ფუქნცია მუშაობს მხოლოდ Internet Explorer-ზე'; +$lang['js']['linkwiz'] = 'ბმული'; +$lang['js']['linkto'] = 'ბმული'; +$lang['js']['del_confirm'] = 'დარწმუნებული ხართ რომ წაშლა გინდათ?'; +$lang['js']['restore_confirm'] = 'დარწმუნებული ხართ რომ აღდგენა გინდათ?'; +$lang['js']['media_diff'] = 'განსხვავებების ჩვენება'; +$lang['js']['media_diff_both'] = 'გვერდიგვერდ'; +$lang['js']['media_diff_opacity'] = 'Shine-through'; +$lang['js']['media_diff_portions'] = 'Swipe +'; +$lang['js']['media_select'] = 'არჩეული ფაილები'; +$lang['js']['media_upload_btn'] = 'ატვირთვა'; +$lang['js']['media_done_btn'] = 'მზადაა'; +$lang['js']['media_drop'] = 'ჩაყარეთ ასატვირთი ფაილები'; +$lang['js']['media_cancel'] = 'წაშლა'; +$lang['js']['media_overwrt'] = 'გადაწერა ზემოდან'; +$lang['rssfailed'] = 'დაფიქსირდა შეცდომა:'; +$lang['nothingfound'] = 'ნაპოვნი არ არის'; +$lang['mediaselect'] = 'მედია ფაილები'; -- cgit v1.2.3 From 06da270e039cf517a6bd847ca0cd4a7819c9f879 Mon Sep 17 00:00:00 2001 From: Axel Angel Date: Sun, 4 May 2014 11:46:35 +0200 Subject: Authldap: implement change password in modifyUser --- lib/plugins/authldap/auth.php | 55 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 6c3637e15..13ffb8be2 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -36,8 +36,8 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { return; } - // auth_ldap currently just handles authentication, so no - // capabilities are set + // Add the capabilities to change the password + $this->cando['modPass'] = true; } /** @@ -263,6 +263,57 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { return $info; } + /** + * Definition of the function modifyUser in order to modify the password + */ + + function modifyUser($user,$changes){ + + // open the connection to the ldap + if(!$this->_openLDAP()){ + msg('LDAP cannot connect: '. htmlspecialchars(ldap_error($this->con))); + return false; + } + + // find the information about the user, in particular the "dn" + $info = $this->getUserData($user,true); + if(empty($info['dn'])) { + msg('LDAP cannot find your user dn: '. htmlspecialchars($info['dn'])); + return false; + } else { + $dn = $info['dn']; + } + + // find the new password and encrypt it whit SSHA + if(empty($changes['pass'])) { + msg('The new password is not allow because it\'s empty'); + return false; + } else { + mt_srand((double)microtime()*1000000); + $salt = pack("CCCC", mt_rand(), mt_rand(), mt_rand(), mt_rand()); + $hash = "{SSHA}" . base64_encode(pack("H*", sha1($changes['pass'] . $salt)) . $salt); + } + + // find the old password of the user + list($loginuser,$loginsticky,$loginpass) = auth_getCookie(); + $secret = auth_cookiesalt(!$sticky, true); //bind non-sticky to session + $pass = auth_decrypt($loginpass, $secret); + + // bind with the ldap + if(!@ldap_bind($this->con,$dn,$pass)){ + msg('LDAP user bind failed: '. htmlspecialchars($dn) .': '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); + return false; + } + + // change the password + if(!@ldap_mod_replace($this->con, $dn,array('userpassword' => $hash))){ + msg('LDAP mod replace failed: '. htmlspecialchars($dn) .': '.htmlspecialchars(ldap_error($this->con))); + return false; + } + + return true; + } + /** * Most values in LDAP are case-insensitive * -- cgit v1.2.3 From 719c6730c7da93e830205e42dc230de831446e8f Mon Sep 17 00:00:00 2001 From: Axel Angel Date: Sun, 4 May 2014 12:26:13 +0200 Subject: Allow authldap to change password with ldap superuser only if necessary --- lib/plugins/authldap/auth.php | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 13ffb8be2..5bdaf0446 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -296,13 +296,25 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { // find the old password of the user list($loginuser,$loginsticky,$loginpass) = auth_getCookie(); - $secret = auth_cookiesalt(!$sticky, true); //bind non-sticky to session - $pass = auth_decrypt($loginpass, $secret); + if ($loginuser !== null) { // the user is currently logged in + $secret = auth_cookiesalt(!$sticky, true); + $pass = auth_decrypt($loginpass, $secret); - // bind with the ldap - if(!@ldap_bind($this->con,$dn,$pass)){ - msg('LDAP user bind failed: '. htmlspecialchars($dn) .': '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); - return false; + // bind with the ldap + if(!@ldap_bind($this->con, $dn, $pass)){ + msg('LDAP user bind failed: '. htmlspecialchars($dn) .': '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); + return false; + } + } 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'))){ + $this->_debug('LDAP bind as superuser: '.htmlspecialchars(ldap_error($this->con)), 0, __LINE__, __FILE__); + return false; + } + } + else { + return false; // no otherway } // change the password -- cgit v1.2.3 From 67723447f02824ff2df7daa0f1f97d8b289c5d7a Mon Sep 17 00:00:00 2001 From: Axel Angel Date: Sun, 4 May 2014 19:54:37 +0200 Subject: Hash and salt password with PassHash::ssha Moved the block closer to the variable use (indent clearer) --- lib/plugins/authldap/auth.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 5bdaf0446..ecbbc2a3a 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -288,10 +288,6 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { if(empty($changes['pass'])) { msg('The new password is not allow because it\'s empty'); return false; - } else { - mt_srand((double)microtime()*1000000); - $salt = pack("CCCC", mt_rand(), mt_rand(), mt_rand(), mt_rand()); - $hash = "{SSHA}" . base64_encode(pack("H*", sha1($changes['pass'] . $salt)) . $salt); } // find the old password of the user @@ -317,6 +313,10 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { return false; // no otherway } + // Generate the salted hashed password for LDAP + $phash = new PassHash(); + $hash = $phash->hash_ssha($changes['pass']); + // change the password if(!@ldap_mod_replace($this->con, $dn,array('userpassword' => $hash))){ msg('LDAP mod replace failed: '. htmlspecialchars($dn) .': '.htmlspecialchars(ldap_error($this->con))); -- cgit v1.2.3 From 8f2ea93bb09b8744de56a8797176d3a209c2e8d7 Mon Sep 17 00:00:00 2001 From: Axel Angel Date: Thu, 8 May 2014 12:19:39 +0200 Subject: Simplify code and remove unreachable check --- lib/plugins/authldap/auth.php | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index ecbbc2a3a..bda8f2abe 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -278,17 +278,10 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { // find the information about the user, in particular the "dn" $info = $this->getUserData($user,true); if(empty($info['dn'])) { - msg('LDAP cannot find your user dn: '. htmlspecialchars($info['dn'])); - return false; - } else { - $dn = $info['dn']; - } - - // find the new password and encrypt it whit SSHA - if(empty($changes['pass'])) { - msg('The new password is not allow because it\'s empty'); + msg('LDAP cannot find your user dn'); return false; } + $dn = $info['dn']; // find the old password of the user list($loginuser,$loginsticky,$loginpass) = auth_getCookie(); -- cgit v1.2.3 From bd0092a4db2ae72d5c564d383810c0b65c9b9ece Mon Sep 17 00:00:00 2001 From: Rene Date: Thu, 8 May 2014 13:11:03 +0200 Subject: translation update --- lib/plugins/extension/lang/nl/intro_search.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/plugins/extension/lang/nl/intro_search.txt b/lib/plugins/extension/lang/nl/intro_search.txt index 8fc3900ad..f0c8d7435 100644 --- a/lib/plugins/extension/lang/nl/intro_search.txt +++ b/lib/plugins/extension/lang/nl/intro_search.txt @@ -1 +1 @@ -Deze tab verschaft u toegang tot alle plugins en templates vervaardigd door derden en bestemd voor Dokuwiki. Houdt er rekening meel dat indien u Plugins van derden installeerd deze een **veiligheids risico ** kunnen bevatten, geadviseerd wordt om eerst te lezen [[doku>security#plugin_security|plugin security]]. \ No newline at end of file +Deze tab verschaft u toegang tot alle plugins en templates vervaardigd door derden en bestemd voor Dokuwiki. Houdt er rekening mee dat indien u Plugins van derden installeert deze een **veiligheids risico ** kunnen bevatten, geadviseerd wordt om eerst te lezen [[doku>security#plugin_security|plugin security]]. \ No newline at end of file -- cgit v1.2.3 From 513946417552fbade19b983c3974db7e6db4c7a4 Mon Sep 17 00:00:00 2001 From: Luka Lejava Date: Thu, 8 May 2014 23:55:14 +0200 Subject: translation update --- inc/lang/ka/lang.php | 178 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 178 insertions(+) diff --git a/inc/lang/ka/lang.php b/inc/lang/ka/lang.php index c4d4abc9a..cba38cf6b 100644 --- a/inc/lang/ka/lang.php +++ b/inc/lang/ka/lang.php @@ -146,3 +146,181 @@ $lang['js']['media_overwrt'] = 'გადაწერა ზემოდან $lang['rssfailed'] = 'დაფიქსირდა შეცდომა:'; $lang['nothingfound'] = 'ნაპოვნი არ არის'; $lang['mediaselect'] = 'მედია ფაილები'; +$lang['fileupload'] = 'მედია ფაილების ატვირთვა'; +$lang['uploadsucc'] = 'ატვირთვა დასრულებულია'; +$lang['uploadfail'] = 'შეფერხება ატვირთვისას'; +$lang['uploadwrong'] = 'ატვირთვა შეუძლებელია'; +$lang['uploadexist'] = 'ფაილი უკვე არსებობს'; +$lang['uploadbadcontent'] = 'ატვირთული ფაილები არ ემთხვევა '; +$lang['uploadspam'] = 'ატვირთვა დაბლოკილია სპამბლოკერის მიერ'; +$lang['uploadxss'] = 'ატვირთვა დაბლოკილია'; +$lang['uploadsize'] = 'ასატვირთი ფაილი ზედმეტად დიდია'; +$lang['deletesucc'] = '% ფაილები წაიშალა'; +$lang['deletefail'] = '% ვერ მოიძებნა'; +$lang['mediainuse'] = 'ფაილის % ვერ წაიშალა, რადგან გამოყენებაშია'; +$lang['namespaces'] = 'Namespaces'; +$lang['mediafiles'] = 'არსებული ფაილები'; +$lang['accessdenied'] = 'თქვენ არ შეგიძლიათ გვერდის ნახვა'; +$lang['mediausage'] = 'Use the following syntax to reference this file:'; +$lang['mediaview'] = 'ორიგინალი ფაილის ჩვენება'; +$lang['mediaroot'] = 'root'; +$lang['mediaupload'] = 'Upload a file to the current namespace here. To create subnamespaces, prepend them to your filename separated by colons after you selected the files. Files can also be selected by drag and drop.'; +$lang['mediaextchange'] = 'Filextension changed from .%s to .%s!'; +$lang['reference'] = 'References for'; +$lang['ref_inuse'] = 'ფაილი წაშლა შეუძლებელია, გამოიყენება აქ:'; +$lang['ref_hidden'] = 'ზოგიერთი ბლოკის წაკითხვის უფლება არ გაქვთ'; +$lang['hits'] = 'Hits'; +$lang['quickhits'] = 'მსგავსი სახელები'; +$lang['toc'] = 'Table of Contents'; +$lang['current'] = 'ახლანდელი'; +$lang['yours'] = 'თვენი ვერსია'; +$lang['diff'] = 'ვერსიების განსხვავება'; +$lang['diff2'] = 'განსხვავებები'; +$lang['difflink'] = 'Link to this comparison view'; +$lang['diff_type'] = 'განსხვავებების ჩვენება'; +$lang['diff_inline'] = 'Inline'; +$lang['diff_side'] = 'გვერდიგვერდ'; +$lang['diffprevrev'] = 'წინა ვერსია'; +$lang['diffnextrev'] = 'შემდეგი ვერსია'; +$lang['difflastrev'] = 'ბოლო ვერსია'; +$lang['diffbothprevrev'] = 'Both sides previous revision'; +$lang['diffbothnextrev'] = 'Both sides next revision'; +$lang['line'] = 'ზოლი'; +$lang['breadcrumb'] = 'Trace'; +$lang['youarehere'] = 'თვენ ხართ აქ'; +$lang['lastmod'] = 'ბოლოს მოდიფიცირებული'; +$lang['deleted'] = 'წაშლილია'; +$lang['created'] = 'შექმნილია'; +$lang['restored'] = 'ძველი ვერსია აღდგენილია %'; +$lang['external_edit'] = 'რედაქტირება'; +$lang['summary'] = 'Edit summary'; +$lang['noflash'] = 'საჭიროა Adobe Flash Plugin'; +$lang['download'] = 'Snippet-ის გადმოწერა'; +$lang['tools'] = 'ინსტრუმენტები'; +$lang['user_tools'] = 'მომხმარებლის ინსტრუმენტები'; +$lang['site_tools'] = 'საიტის ინსტრუმენტები'; +$lang['page_tools'] = 'გვერდის ინსტრუმენტები'; +$lang['skip_to_content'] = 'მასალა'; +$lang['sidebar'] = 'გვერდითი პანელი'; +$lang['mail_newpage'] = 'გვერდი დამატებულია:'; +$lang['mail_changed'] = 'გვერდი შეცვლილია:'; +$lang['mail_subscribe_list'] = 'გვერდში შეცვლილია namespace-ები:'; +$lang['mail_new_user'] = 'ახალი მომხმარებელი'; +$lang['mail_upload'] = 'ფაილი ატვირთულია'; +$lang['changes_type'] = 'ცვლილებები'; +$lang['pages_changes'] = 'გვერდები'; +$lang['media_changes'] = 'მედია ფაილები'; +$lang['both_changes'] = 'გვერდები და მედია ფაილები'; +$lang['qb_bold'] = 'Bold Text'; +$lang['qb_italic'] = 'Italic Text'; +$lang['qb_underl'] = 'Underlined Text'; +$lang['qb_code'] = 'Monospaced Text'; +$lang['qb_strike'] = 'Strike-through Text'; +$lang['qb_h1'] = 'Level 1 სათაური'; +$lang['qb_h2'] = 'Level 2 სათაური'; +$lang['qb_h3'] = 'Level 3 სათაური'; +$lang['qb_h4'] = 'Level 4 სათაური'; +$lang['qb_h5'] = 'Level 5 სათაური'; +$lang['qb_h'] = 'სათაური'; +$lang['qb_hs'] = 'სათაურის არჩევა'; +$lang['qb_hplus'] = 'Higher სათაური'; +$lang['qb_hminus'] = 'Lower სათაური'; +$lang['qb_hequal'] = 'Same Level სათაური'; +$lang['qb_link'] = 'Internal Link'; +$lang['qb_extlink'] = 'External Link'; +$lang['qb_hr'] = 'Horizontal Rule'; +$lang['qb_ol'] = 'შეკვეთილი ბოლო მასალა'; +$lang['qb_ul'] = 'Unordered List Item'; +$lang['qb_media'] = 'ნახატების და სხვა ფაიელბის დამატება'; +$lang['qb_sig'] = 'ხელმოწერა'; +$lang['qb_smileys'] = 'სმაილები'; +$lang['qb_chars'] = 'Special Chars'; +$lang['upperns'] = 'jump to parent namespace'; +$lang['admin_register'] = 'ახალი მომხმარებლის დამატება'; +$lang['metaedit'] = 'Edit Metadata'; +$lang['metasaveerr'] = 'Writing metadata failed'; +$lang['metasaveok'] = 'Metadata saved'; +$lang['img_title'] = 'სათაური'; +$lang['img_caption'] = 'Caption'; +$lang['img_date'] = 'თარიღი'; +$lang['img_fname'] = 'ფაილის სახელი'; +$lang['img_fsize'] = 'ზომა'; +$lang['img_artist'] = 'ფოტოგრაფი'; +$lang['img_copyr'] = 'Copyright'; +$lang['img_format'] = 'ფორმატი'; +$lang['img_camera'] = 'კამერა'; +$lang['img_keywords'] = 'Keywords'; +$lang['img_width'] = 'სიგანე'; +$lang['img_height'] = 'სიმაღლე'; +$lang['subscr_subscribe_success'] = 'Added %s to subscription list for %s'; +$lang['subscr_subscribe_error'] = 'Error adding %s to subscription list for %s'; +$lang['subscr_subscribe_noaddress'] = 'There is no address associated with your login, you cannot be added to the subscription list'; +$lang['subscr_unsubscribe_success'] = 'Removed %s from subscription list for %s'; +$lang['subscr_unsubscribe_error'] = 'Error removing %s from subscription list for %s'; +$lang['subscr_already_subscribed'] = '%s is already subscribed to %s'; +$lang['subscr_not_subscribed'] = '%s is not subscribed to %s'; +$lang['subscr_m_not_subscribed'] = 'You are currently not subscribed to the current page or namespace.'; +$lang['subscr_m_new_header'] = 'Add subscription'; +$lang['subscr_m_current_header'] = 'Current subscriptions'; +$lang['subscr_m_unsubscribe'] = 'Unsubscribe'; +$lang['subscr_m_subscribe'] = 'Subscribe'; +$lang['subscr_m_receive'] = 'მიღება'; +$lang['subscr_style_every'] = 'ფოსტა ყოველ ცვლილებაზე'; +$lang['subscr_style_digest'] = 'ფოსტა ყოველი გვერდის შეცვლაზე '; +$lang['subscr_style_list'] = 'ფოსტა ყოველი გვერდის შეცვლაზე '; +$lang['authtempfail'] = 'User authentication is temporarily unavailable. If this situation persists, please inform your Wiki Admin.'; +$lang['authpwdexpire'] = 'თქვენს პაროლს ვადა გაუვა %d დღეში, მალე შეცვლა მოგიწევთ.'; +$lang['i_chooselang'] = 'ენსი არჩევა'; +$lang['i_installer'] = 'DokuWiki დამყენებელი'; +$lang['i_wikiname'] = 'Wiki სახელი'; +$lang['i_enableacl'] = 'Enable ACL (recommended)'; +$lang['i_superuser'] = 'ადმინი'; +$lang['i_problems'] = 'შეასწორეთ შეცდომები'; +$lang['i_modified'] = 'For security reasons this script will only work with a new and unmodified Dokuwiki installation. You should either re-extract the files from the downloaded package or consult the complete Dokuwiki installation instructions'; +$lang['i_funcna'] = 'PHP function %s is not available. Maybe your hosting provider disabled it for some reason?'; +$lang['i_phpver'] = 'Your PHP version %s is lower than the needed %s. You need to upgrade your PHP install.'; +$lang['i_permfail'] = '%s is not writable by DokuWiki. You need to fix the permission settings of this directory!'; +$lang['i_confexists'] = '%s already exists'; +$lang['i_writeerr'] = 'Unable to create %s. You will need to check directory/file permissions and create the file manually.'; +$lang['i_badhash'] = 'unrecognised or modified dokuwiki.php (hash=%s)'; +$lang['i_badval'] = '%s - illegal or empty value'; +$lang['i_failure'] = 'Some errors occurred while writing the configuration files. You may need to fix them manually before you can use your new DokuWiki.'; +$lang['i_policy'] = 'Initial ACL policy'; +$lang['i_pol0'] = 'ღია ვიკი (წაკითხვა, დაწერა და ატვირთვა შეუძლია ნებისმიერს)'; +$lang['i_pol1'] = 'თავისუფალი ვიკი (წაკითხვა შეუძლია ყველას, დაწერა და ატვირთვა - რეგისტრირებულს)'; +$lang['i_pol2'] = 'დახურული ვიკი (წაკითხვა, დაწერა და ატვირთვა შეუძლიათ მხოლოდ რეგისტრირებულებს)'; +$lang['i_allowreg'] = 'რეგისტრაციის გახსნა'; +$lang['i_retry'] = 'თავიდან ცდა'; +$lang['i_license'] = 'აირჩიეთ ლიცენზია'; +$lang['i_license_none'] = 'არ აჩვენოთ ლიცენზიის ინფორმაცია'; +$lang['i_pop_field'] = 'დაგვეხმარეთ DokuWiki-ს აგუმჯობესებაში'; +$lang['i_pop_label'] = 'თვეში ერთელ ინფორმაციის DokuWiki-ის ადმინისტრაციისთვის გაგზავნა'; +$lang['recent_global'] = 'You\'re currently watching the changes inside the %s namespace. You can also view the recent changes of the whole wiki.'; +$lang['years'] = '%d წლის უკან'; +$lang['months'] = '%d თვის უკან'; +$lang['weeks'] = '%d კვირის უკან'; +$lang['days'] = '%d დღის წინ'; +$lang['hours'] = '%d საათის წინ'; +$lang['minutes'] = '%d წუთის წინ'; +$lang['seconds'] = '%d წამის წინ'; +$lang['wordblock'] = 'თქვენი ცვლილებები არ შეინახა, რადგან შეიცავს სპამს'; +$lang['media_uploadtab'] = 'ატვირთვა'; +$lang['media_searchtab'] = 'ძებნა'; +$lang['media_file'] = 'ფაილი'; +$lang['media_viewtab'] = 'ჩვენება'; +$lang['media_edittab'] = 'რედაქტირება'; +$lang['media_historytab'] = 'ისტორია'; +$lang['media_list_thumbs'] = 'Thumbnails'; +$lang['media_list_rows'] = 'Rows'; +$lang['media_sort_name'] = 'სახელი'; +$lang['media_sort_date'] = 'თარიღი'; +$lang['media_namespaces'] = 'Choose namespace'; +$lang['media_files'] = 'ფაილები %s'; +$lang['media_upload'] = 'ატვირთვა %s'; +$lang['media_search'] = 'ძებნა %s'; +$lang['media_view'] = '%s'; +$lang['media_viewold'] = '%s at %s'; +$lang['media_edit'] = 'რედაქტირება %s'; +$lang['media_history'] = 'ისტორია %s'; +$lang['media_meta_edited'] = 'metadata edited'; +$lang['media_perm_read'] = 'თვენ არ გაქვთ უფლება წაიკითხოთ ეს მასალა'; -- cgit v1.2.3 From 90bedf259b8cdbaf36db4b77301e271d0865c642 Mon Sep 17 00:00:00 2001 From: Rene Date: Fri, 9 May 2014 21:22:20 +0200 Subject: translation update --- lib/plugins/extension/lang/nl/intro_plugins.txt | 2 +- lib/plugins/extension/lang/nl/intro_templates.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/plugins/extension/lang/nl/intro_plugins.txt b/lib/plugins/extension/lang/nl/intro_plugins.txt index 0077aca30..e12bdf0f8 100644 --- a/lib/plugins/extension/lang/nl/intro_plugins.txt +++ b/lib/plugins/extension/lang/nl/intro_plugins.txt @@ -1 +1 @@ -Dit zijn de momenteel in uw Dokuwiki geïnstalleerde plugins. U kunt deze hier aan of uitschakelen danwel geheel deïnstalleren. Plugin updates zijn hier ook opgenomen, lees de pluin documentatie voordat u update. \ No newline at end of file +Dit zijn de momenteel in uw Dokuwiki geïnstalleerde plugins. U kunt deze hier aan of uitschakelen danwel geheel deïnstalleren. Plugin updates zijn hier ook opgenomen, lees de plugin documentatie voordat u update. \ No newline at end of file diff --git a/lib/plugins/extension/lang/nl/intro_templates.txt b/lib/plugins/extension/lang/nl/intro_templates.txt index 5ef23dadf..52c96cef7 100644 --- a/lib/plugins/extension/lang/nl/intro_templates.txt +++ b/lib/plugins/extension/lang/nl/intro_templates.txt @@ -1 +1 @@ -Deze templates zijn thans in DokuWiki geïnstalleerd. U kent een template selecteren middels [[?do=admin&page=config|Configuration Manager]] . \ No newline at end of file +Deze templates zijn thans in DokuWiki geïnstalleerd. U kunt een template selecteren middels [[?do=admin&page=config|Configuration Manager]] . \ No newline at end of file -- cgit v1.2.3 From 436a2a19870a5c73575f574040be44d333f55409 Mon Sep 17 00:00:00 2001 From: Hideaki SAWADA Date: Sat, 10 May 2014 10:21:16 +0200 Subject: translation update --- inc/lang/ja/lang.php | 9 ++++++-- lib/plugins/extension/lang/ja/lang.php | 39 ++++++++++++++++++++++++++++++---- 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/inc/lang/ja/lang.php b/inc/lang/ja/lang.php index 782689fa3..f5c2f493f 100644 --- a/inc/lang/ja/lang.php +++ b/inc/lang/ja/lang.php @@ -55,6 +55,8 @@ $lang['btn_register'] = 'ユーザー登録'; $lang['btn_apply'] = '適用'; $lang['btn_media'] = 'メディアマネージャー'; $lang['btn_deleteuser'] = '自分のアカウントの抹消'; +$lang['btn_img_backto'] = '戻る %s'; +$lang['btn_mediaManager'] = 'メディアマネージャーで閲覧'; $lang['loggedinas'] = 'ようこそ'; $lang['user'] = 'ユーザー名'; $lang['pass'] = 'パスワード'; @@ -184,6 +186,11 @@ $lang['difflink'] = 'この比較画面にリンクする'; $lang['diff_type'] = '差分の表示方法:'; $lang['diff_inline'] = 'インライン'; $lang['diff_side'] = '横に並べる'; +$lang['diffprevrev'] = '前のリビジョン'; +$lang['diffnextrev'] = '次のリビジョン'; +$lang['difflastrev'] = '最新リビジョン'; +$lang['diffbothprevrev'] = '両方とも前のリビジョン'; +$lang['diffbothnextrev'] = '両方とも次のリビジョン'; $lang['line'] = 'ライン'; $lang['breadcrumb'] = 'トレース'; $lang['youarehere'] = '現在位置'; @@ -240,7 +247,6 @@ $lang['admin_register'] = '新規ユーザー作成'; $lang['metaedit'] = 'メタデータ編集'; $lang['metasaveerr'] = 'メタデータの書き込みに失敗しました'; $lang['metasaveok'] = 'メタデータは保存されました'; -$lang['btn_img_backto'] = '戻る %s'; $lang['img_title'] = 'タイトル'; $lang['img_caption'] = '見出し'; $lang['img_date'] = '日付'; @@ -253,7 +259,6 @@ $lang['img_camera'] = '使用カメラ'; $lang['img_keywords'] = 'キーワード'; $lang['img_width'] = '幅'; $lang['img_height'] = '高さ'; -$lang['btn_mediaManager'] = 'メディアマネージャーで閲覧'; $lang['subscr_subscribe_success'] = '%sが%sの購読リストに登録されました。'; $lang['subscr_subscribe_error'] = '%sを%sの購読リストへの追加に失敗しました。'; $lang['subscr_subscribe_noaddress'] = 'あなたのログインに対応するアドレスがないため、購読リストへ追加することができません。'; diff --git a/lib/plugins/extension/lang/ja/lang.php b/lib/plugins/extension/lang/ja/lang.php index 0401d7630..b42e4aefd 100644 --- a/lib/plugins/extension/lang/ja/lang.php +++ b/lib/plugins/extension/lang/ja/lang.php @@ -8,6 +8,7 @@ $lang['menu'] = '拡張機能管理'; $lang['tab_plugins'] = 'インストール済プラグイン'; $lang['tab_templates'] = 'インストール済テンプレート'; +$lang['tab_search'] = '検索とインストール'; $lang['tab_install'] = '手動インストール'; $lang['notimplemented'] = 'この機能は未実装です。'; $lang['notinstalled'] = 'この拡張機能はインストールされていません。'; @@ -17,17 +18,38 @@ $lang['pluginlistsaveerror'] = 'プラグイン一覧の保存中にエラー $lang['unknownauthor'] = '作者不明'; $lang['unknownversion'] = 'バージョン不明'; $lang['btn_info'] = '詳細情報を表示する。'; -$lang['btn_update'] = 'アップデート'; +$lang['btn_update'] = '更新'; $lang['btn_uninstall'] = 'アンインストール'; $lang['btn_enable'] = '有効化'; $lang['btn_disable'] = '無効化'; $lang['btn_install'] = 'インストール'; $lang['btn_reinstall'] = '再インストール'; $lang['js']['reallydel'] = 'この拡張機能を本当にアンインストールしますか?'; +$lang['search_for'] = '拡張機能の検索:'; +$lang['search'] = '検索'; +$lang['extensionby'] = '%s 作者: %s'; +$lang['screenshot'] = '%s のスクリーンショット'; +$lang['popularity'] = '利用状況:%s%%'; +$lang['homepage_link'] = '解説'; +$lang['bugs_features'] = 'バグ'; +$lang['tags'] = 'タグ:'; +$lang['author_hint'] = 'この作者で拡張機能を検索'; +$lang['installed'] = 'インストール済:'; $lang['downloadurl'] = 'ダウンロード URL:'; $lang['repository'] = 'リポジトリ:'; +$lang['unknown'] = '不明'; +$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_enabled'] = '有効'; @@ -39,16 +61,25 @@ $lang['msg_enabled'] = '%s プラグインを有効化しました。' $lang['msg_disabled'] = '%s プラグインを無効化しました。'; $lang['msg_delete_success'] = '拡張機能をアンインストールしました。'; $lang['msg_template_install_success'] = '%s テンプレートをインストールできました。'; -$lang['msg_template_update_success'] = '%s テンプレートをアップデートできました。'; +$lang['msg_template_update_success'] = '%s テンプレートを更新できました。'; $lang['msg_plugin_install_success'] = '%s プラグインをインストールできました。'; -$lang['msg_plugin_update_success'] = '%s プラグインをアップデートできました。'; +$lang['msg_plugin_update_success'] = '%s プラグインを更新できました。'; $lang['msg_upload_failed'] = 'ファイルのアップロードに失敗しました。'; +$lang['missing_dependency'] = '依存関係が欠落または無効: %s'; $lang['security_issue'] = 'セキュリティ問題: %s'; $lang['security_warning'] = 'セキュリティ警告: %s'; -$lang['update_available'] = 'アップデート:%sの新バージョンが利用可能です。 '; +$lang['update_available'] = '更新: %sの新バージョンが利用可能です。'; +$lang['wrong_folder'] = 'プラグインは正しくインストールされませんでした: プラグインのディレクトリを "%s" から "%s" へ変更して下さい。'; +$lang['url_change'] = 'URL が変更されました: 最後にダウンロードした後、ダウンロード URL が変更されました。拡張機能のアップデート前に新 URL が正しいかを確認して下さい。
新:%s
旧:%s'; $lang['error_badurl'] = 'URLはhttpかhttpsで始まる必要があります。'; $lang['error_dircreate'] = 'ダウンロード用の一時フォルダが作成できません。'; $lang['error_download'] = 'ファイルをダウンロードできません:%s'; +$lang['error_decompress'] = 'ダウンロードしたファイルを解凍できません。ダウンロードの失敗の結果であれば、再度試して下さい。圧縮形式が不明の場合は、手動でダウンロード・インストールしてください。'; +$lang['error_findfolder'] = '拡張機能ディレクトリを認識できません。手動でダウンロード・インストールしてください。'; +$lang['error_copy'] = '%s ディレクトリのファイルをインストールしようとした時、ファイルコピーエラーが発生しました:ディスクがいっぱいかもしれませんし、ファイルのアクセス権が正しくないかもしれません。プラグインが一部分インストールされ、wiki が不安定になるかもしれません。'; $lang['noperms'] = '拡張機能ディレクトリが書き込み不可です。'; $lang['notplperms'] = 'テンプレートディレクトリが書き込み不可です。'; $lang['nopluginperms'] = 'プラグインディレクトリが書き込み不可です。'; +$lang['git'] = 'この拡張機能は Git 経由でインストールされており、ここで更新すべきでないかもしれません。'; +$lang['install_url'] = 'URL からインストール:'; +$lang['install_upload'] = '拡張機能をアップロード:'; -- cgit v1.2.3 From bc34cd3821f87b31d4259fe33c4c853eb1245df8 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 10 May 2014 14:33:51 +0200 Subject: added missing translation string in extension manager --- lib/plugins/extension/lang/en/lang.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/plugins/extension/lang/en/lang.php b/lib/plugins/extension/lang/en/lang.php index 5224f694a..72c9b9e2d 100644 --- a/lib/plugins/extension/lang/en/lang.php +++ b/lib/plugins/extension/lang/en/lang.php @@ -96,4 +96,6 @@ $lang['nopluginperms'] = 'Plugin directory is not writable'; $lang['git'] = 'This extension was installed via git, you may not want to update it here.'; $lang['install_url'] = 'Install from URL:'; -$lang['install_upload'] = 'Upload Extension:'; \ No newline at end of file +$lang['install_upload'] = 'Upload Extension:'; + +$lang['repo_error'] = 'The plugin repository could not be contacted. Make sure your server is allowed to contact www.dokuwiki.org and check your proxy settings.'; \ No newline at end of file -- cgit v1.2.3 From 52ab27d83d0fa4f6be37eb2d4d58d6c51b76e66f Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 10 May 2014 14:43:50 +0200 Subject: corrected german translation --- lib/plugins/extension/lang/de/lang.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/plugins/extension/lang/de/lang.php b/lib/plugins/extension/lang/de/lang.php index 89c6b55b7..b0e3b4ff7 100644 --- a/lib/plugins/extension/lang/de/lang.php +++ b/lib/plugins/extension/lang/de/lang.php @@ -85,6 +85,6 @@ $lang['error_copy'] = 'Beim Versuch Dateien in den Ordner %s $lang['noperms'] = 'Das Erweiterungs-Verzeichnis ist schreibgeschützt'; $lang['notplperms'] = 'Das Template-Verzeichnis ist schreibgeschützt'; $lang['nopluginperms'] = 'Das Plugin-Verzeichnis ist schreibgeschützt'; -$lang['git'] = 'Diese Erweiterung wurde über git installiert, daher kann diese nicht hier aktualisiert werden.'; +$lang['git'] = 'Diese Erweiterung wurde über git installiert und sollte daher nicht hier aktualisiert werden.'; $lang['install_url'] = 'Von Webadresse (URL) installieren'; $lang['install_upload'] = 'Erweiterung hochladen:'; -- cgit v1.2.3 From 811653d71565cce94ca1b27f4cdebc60769e2d11 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 10 May 2014 15:18:20 +0200 Subject: fix icon for plugins following templates in extension manager --- lib/plugins/extension/helper/extension.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/plugins/extension/helper/extension.php b/lib/plugins/extension/helper/extension.php index 7958cd2da..43e4452c0 100644 --- a/lib/plugins/extension/helper/extension.php +++ b/lib/plugins/extension/helper/extension.php @@ -57,6 +57,8 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { if(substr($id, 0 , 9) == 'template:'){ $this->base = substr($id, 9); $this->is_template = true; + } else { + $this->is_template = false; } $this->localInfo = array(); -- cgit v1.2.3 From 1419a485e3ac0c507ef073f0b816bd41f7e4a5cd Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 10 May 2014 15:49:53 +0200 Subject: log deprecated function calls FS#2399 This introduces a new dbg_deprecated() function which allows for easy marking of deprecated functions. Each call is logged to the debuglog when debuggin is enabled. --- inc/TarLib.class.php | 2 ++ inc/changelog.php | 6 ++++-- inc/infoutils.php | 26 ++++++++++++++++++++++++++ inc/plugin.php | 1 + inc/subscription.php | 1 + 5 files changed, 34 insertions(+), 2 deletions(-) diff --git a/inc/TarLib.class.php b/inc/TarLib.class.php index ae08039ec..dd319a79a 100644 --- a/inc/TarLib.class.php +++ b/inc/TarLib.class.php @@ -26,6 +26,8 @@ class TarLib { public $_result = true; function __construct($file, $comptype = TarLib::COMPRESS_AUTO, $complevel = 9) { + dbg_deprecated('class Tar'); + if(!$file) $this->error('__construct', '$file'); $this->file = $file; diff --git a/inc/changelog.php b/inc/changelog.php index de06c9683..f0788d896 100644 --- a/inc/changelog.php +++ b/inc/changelog.php @@ -1004,12 +1004,13 @@ class MediaChangelog extends ChangeLog { * changelog files, only the chunk containing the * requested changelog line is read. * - * @deprecated 20-11-2013 + * @deprecated 2013-11-20 * * @author Ben Coburn * @author Kate Arzamastseva */ function getRevisionInfo($id, $rev, $chunk_size = 8192, $media = false) { + dbg_deprecated('class PageChangeLog or class MediaChanglog'); if($media) { $changelog = new MediaChangeLog($id, $chunk_size); } else { @@ -1036,12 +1037,13 @@ function getRevisionInfo($id, $rev, $chunk_size = 8192, $media = false) { * backwards in chunks until the requested number of changelog * lines are recieved. * - * @deprecated 20-11-2013 + * @deprecated 2013-11-20 * * @author Ben Coburn * @author Kate Arzamastseva */ function getRevisions($id, $first, $num, $chunk_size = 8192, $media = false) { + dbg_deprecated('class PageChangeLog or class MediaChanglog'); if($media) { $changelog = new MediaChangeLog($id, $chunk_size); } else { diff --git a/inc/infoutils.php b/inc/infoutils.php index 0992040d9..807323715 100644 --- a/inc/infoutils.php +++ b/inc/infoutils.php @@ -383,6 +383,32 @@ function dbglog($msg,$header=''){ } } +/** + * Log accesses to deprecated fucntions to the debug log + * + * @param string $alternative The function or method that should be used instead + */ +function dbg_deprecated($alternative = '') { + global $conf; + if(!$conf['allowdebug']) return; + + $backtrace = debug_backtrace(); + array_shift($backtrace); + $self = array_shift($backtrace); + $call = array_shift($backtrace); + + $called = trim($self['class'].'::'.$self['function'].'()', ':'); + $caller = trim($call['class'].'::'.$call['function'].'()', ':'); + + $msg = $called.' is deprecated. It was called from '; + $msg .= $caller.' in '.$call['file'].':'.$call['line']; + if($alternative) { + $msg .= ' '.$alternative.' should be used instead!'; + } + + dbglog($msg); +} + /** * Print a reversed, prettyprinted backtrace * diff --git a/inc/plugin.php b/inc/plugin.php index 7de4fbd74..e0112ef56 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -252,6 +252,7 @@ class DokuWiki_Plugin { */ function __call($name, $arguments) { if($name == 'render'){ + dbg_deprecated('render_text()'); if(!isset($arguments[1])) $arguments[1] = 'xhtml'; return $this->render_text($arguments[0], $arguments[1]); } diff --git a/inc/subscription.php b/inc/subscription.php index 298e7c12b..a6f3dec44 100644 --- a/inc/subscription.php +++ b/inc/subscription.php @@ -700,6 +700,7 @@ class Subscription { * @deprecated 2012-12-07 */ function subscription_addresslist(&$data) { + dbg_deprecated('class Subscription'); $sub = new Subscription(); $sub->notifyaddresses($data); } -- cgit v1.2.3 From 6164d9001d4b6d300e386db4ed295986c56f0635 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 10 May 2014 15:54:18 +0200 Subject: doc block updates --- inc/infoutils.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/inc/infoutils.php b/inc/infoutils.php index 0992040d9..4faaee8ef 100644 --- a/inc/infoutils.php +++ b/inc/infoutils.php @@ -280,6 +280,15 @@ define('MSG_USERS_ONLY', 1); define('MSG_MANAGERS_ONLY',2); define('MSG_ADMINS_ONLY',4); +/** + * Display a message to the user + * + * @param string $message + * @param int $lvl -1 = error, 0 = info, 1 = success, 2 = notify + * @param string $line line number + * @param string $file file number + * @param int $allow who's allowed to see the message, see MSG_* constants + */ function msg($message,$lvl=0,$line='',$file='',$allow=MSG_PUBLIC){ global $MSG, $MSG_shown; $errors[-1] = 'error'; @@ -309,6 +318,7 @@ function msg($message,$lvl=0,$line='',$file='',$allow=MSG_PUBLIC){ * lvl => int, level of the message (see msg() function) * allow => int, flag used to determine who is allowed to see the message * see MSG_* constants + * @return bool */ function info_msg_allowed($msg){ global $INFO, $auth; -- cgit v1.2.3 From 227a9832a9d65a12d88704e2bf18db63dae1ad57 Mon Sep 17 00:00:00 2001 From: lainme Date: Tue, 13 May 2014 06:36:05 +0200 Subject: translation update --- inc/lang/zh/lang.php | 2 ++ lib/plugins/authad/lang/zh/lang.php | 8 ++++++++ lib/plugins/extension/lang/zh/lang.php | 19 +++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 lib/plugins/authad/lang/zh/lang.php diff --git a/inc/lang/zh/lang.php b/inc/lang/zh/lang.php index e9e737251..cc4888396 100644 --- a/inc/lang/zh/lang.php +++ b/inc/lang/zh/lang.php @@ -203,6 +203,8 @@ $lang['diff_side'] = '并排显示'; $lang['diffprevrev'] = '前一修订版'; $lang['diffnextrev'] = '后一修订版'; $lang['difflastrev'] = '上一修订版'; +$lang['diffbothprevrev'] = '两侧同时换到之前的修订记录'; +$lang['diffbothnextrev'] = '两侧同时换到之后的修订记录'; $lang['line'] = '行'; $lang['breadcrumb'] = '您的足迹'; $lang['youarehere'] = '您在这里'; diff --git a/lib/plugins/authad/lang/zh/lang.php b/lib/plugins/authad/lang/zh/lang.php new file mode 100644 index 000000000..2a05aa168 --- /dev/null +++ b/lib/plugins/authad/lang/zh/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['domain'] = '登录域'; diff --git a/lib/plugins/extension/lang/zh/lang.php b/lib/plugins/extension/lang/zh/lang.php index 4d40acc1d..0264f3e9c 100644 --- a/lib/plugins/extension/lang/zh/lang.php +++ b/lib/plugins/extension/lang/zh/lang.php @@ -6,6 +6,7 @@ * @author Cupen * @author xiqingongzi * @author qinghao + * @author lainme */ $lang['menu'] = '扩展管理器'; $lang['tab_plugins'] = '安装插件'; @@ -42,6 +43,7 @@ $lang['repository'] = '版本库:'; $lang['unknown'] = '未知的'; $lang['installed_version'] = '已安装版本:'; $lang['install_date'] = '您的最后一次升级:'; +$lang['available_version'] = '可用版本:'; $lang['compatible'] = '兼容于:'; $lang['depends'] = '依赖于:'; $lang['similar'] = '相似于:'; @@ -59,6 +61,7 @@ $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'] = '插件已经卸载'; @@ -70,3 +73,19 @@ $lang['msg_upload_failed'] = '上传文件失败'; $lang['missing_dependency'] = '缺少或者被禁用依赖: %s'; $lang['security_issue'] = '安全问题: %s'; $lang['security_warning'] = '安全警告: %s'; +$lang['update_available'] = '更新:新版本 %s 已经可用。'; +$lang['wrong_folder'] = '插件安装不正确:重命名插件目录 "%s" 为 "%s"。'; +$lang['url_change'] = 'URL已改变:自上次下载以来的下载 URL 已经改变。请在更新扩展前检查新 URL 是否有效。
新的:%s
旧的:%s'; +$lang['error_badurl'] = 'URL 应当以 http 或者 https 作为开头'; +$lang['error_dircreate'] = '无法创建用于保存下载的临时文件夹'; +$lang['error_download'] = '无法下载文件:%s'; +$lang['error_decompress'] = '无法解压下载的文件。这可能是由于文件损坏,在这种情况下您可以重试。这也可能是由于压缩格式是未知的,在这种情况下您需要手动下载并且安装。'; +$lang['error_findfolder'] = '无法识别扩展目录,您需要手动下载和安装'; +$lang['error_copy'] = '在尝试安装文件到目录 %s 时出现文件复制错误:磁盘可能已满或者文件访问权限不正确。这可能导致插件被部分安装并使您的维基处在不稳定状态'; +$lang['noperms'] = '扩展目录不可写'; +$lang['notplperms'] = '模板目录不可写'; +$lang['nopluginperms'] = '插件目录不可写'; +$lang['git'] = '这个扩展是通过 git 安装的,您可能不想在这里升级它'; +$lang['install_url'] = '从 URL 安装:'; +$lang['install_upload'] = '上传扩展:'; +$lang['repo_error'] = '无法连接到插件仓库。请确定您的服务器可以连接 www.dokuwiki.org 并检查您的代理设置。'; -- cgit v1.2.3 From 93691af57f65173963a122e19915917814a32b71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?ilker=20rifat=20kapa=C3=A7?= Date: Tue, 13 May 2014 10:15:52 +0200 Subject: translation update --- inc/lang/tr/lang.php | 11 +++++++++-- inc/lang/tr/subscr_form.txt | 3 +++ lib/plugins/authldap/lang/tr/settings.php | 8 ++++++++ lib/plugins/authmysql/lang/tr/settings.php | 12 ++++++++++++ 4 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 inc/lang/tr/subscr_form.txt create mode 100644 lib/plugins/authldap/lang/tr/settings.php create mode 100644 lib/plugins/authmysql/lang/tr/settings.php diff --git a/inc/lang/tr/lang.php b/inc/lang/tr/lang.php index 2af17fe27..c314eb8aa 100644 --- a/inc/lang/tr/lang.php +++ b/inc/lang/tr/lang.php @@ -11,6 +11,7 @@ * @author farukerdemoncel@gmail.com * @author Mustafa Aslan * @author huseyin can + * @author ilker rifat kapaç */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -55,6 +56,8 @@ $lang['btn_register'] = 'Kayıt ol'; $lang['btn_apply'] = 'Uygula'; $lang['btn_media'] = 'Çokluortam Yöneticisi'; $lang['btn_deleteuser'] = 'Hesabımı Sil'; +$lang['btn_img_backto'] = 'Şuna dön: %s'; +$lang['btn_mediaManager'] = 'Ortam oynatıcısında göster'; $lang['loggedinas'] = 'Giriş ismi'; $lang['user'] = 'Kullanıcı ismi'; $lang['pass'] = 'Parola'; @@ -233,7 +236,6 @@ $lang['admin_register'] = 'Yeni kullanıcı ekle...'; $lang['metaedit'] = 'Metaverileri Değiştir'; $lang['metasaveerr'] = 'Metaveri yazma başarısız '; $lang['metasaveok'] = 'Metaveri kaydedildi'; -$lang['btn_img_backto'] = 'Şuna dön: %s'; $lang['img_title'] = 'Başlık'; $lang['img_caption'] = 'Serlevha'; $lang['img_date'] = 'Tarih'; @@ -246,7 +248,6 @@ $lang['img_camera'] = 'Fotoğraf Makinası'; $lang['img_keywords'] = 'Anahtar Sözcükler'; $lang['img_width'] = 'Genişlik'; $lang['img_height'] = 'Yükseklik'; -$lang['btn_mediaManager'] = 'Ortam oynatıcısında göster'; $lang['subscr_m_new_header'] = 'Üyelik ekle'; $lang['subscr_m_current_header'] = 'Üyeliğini onayla'; $lang['subscr_m_unsubscribe'] = 'Üyelik iptali'; @@ -301,6 +302,12 @@ $lang['media_search'] = '%s dizininde ara'; $lang['media_view'] = '%s'; $lang['media_edit'] = 'Düzenle %s'; $lang['media_history'] = 'Geçmiş %s'; +$lang['media_meta_edited'] = 'üstveri düzenlendi'; +$lang['media_perm_read'] = 'Özür dileriz, dosyaları okumak için yeterli haklara sahip değilsiniz.'; $lang['media_perm_upload'] = 'Üzgünüm, karşıya dosya yükleme yetkiniz yok.'; $lang['media_update'] = 'Yeni versiyonu yükleyin'; $lang['media_restore'] = 'Bu sürümü eski haline getir'; +$lang['currentns'] = 'Geçerli isimalanı'; +$lang['searchresult'] = 'Arama Sonucu'; +$lang['plainhtml'] = 'Yalın HTML'; +$lang['wikimarkup'] = 'Wiki Biçimlendirmesi'; diff --git a/inc/lang/tr/subscr_form.txt b/inc/lang/tr/subscr_form.txt new file mode 100644 index 000000000..21a8fbaeb --- /dev/null +++ b/inc/lang/tr/subscr_form.txt @@ -0,0 +1,3 @@ +====== Abonelik Yönetimi ====== + +Bu sayfa, geçerli isimalanı ve sayfa için aboneliklerinizi düzenlemenize olanak sağlar. \ No newline at end of file diff --git a/lib/plugins/authldap/lang/tr/settings.php b/lib/plugins/authldap/lang/tr/settings.php new file mode 100644 index 000000000..843b7ef9c --- /dev/null +++ b/lib/plugins/authldap/lang/tr/settings.php @@ -0,0 +1,8 @@ + + */ +$lang['bindpw'] = 'Üstteki kullanıcının şifresi'; diff --git a/lib/plugins/authmysql/lang/tr/settings.php b/lib/plugins/authmysql/lang/tr/settings.php new file mode 100644 index 000000000..f38b6a03b --- /dev/null +++ b/lib/plugins/authmysql/lang/tr/settings.php @@ -0,0 +1,12 @@ + + */ +$lang['server'] = 'Sizin MySQL sunucunuz'; +$lang['user'] = 'MySQL kullanıcısının adı'; +$lang['password'] = 'Üstteki kullanıcı için şifre'; +$lang['database'] = 'Kullanılacak veritabanı'; +$lang['charset'] = 'Veritabanında kullanılacak karakter seti'; -- cgit v1.2.3 From b5638884124386a376237d025d6a68583e61e1e4 Mon Sep 17 00:00:00 2001 From: Rene Date: Tue, 13 May 2014 12:56:02 +0200 Subject: translation update --- lib/plugins/extension/lang/nl/lang.php | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/lib/plugins/extension/lang/nl/lang.php b/lib/plugins/extension/lang/nl/lang.php index 2983f9fee..f1dc125da 100644 --- a/lib/plugins/extension/lang/nl/lang.php +++ b/lib/plugins/extension/lang/nl/lang.php @@ -5,7 +5,7 @@ * * @author Rene */ -$lang['menu'] = 'Extension Manager (Uitbreidings Beheerder)'; +$lang['menu'] = 'Uitbreidings Beheerder'; $lang['tab_plugins'] = 'Geïnstalleerde Plugins'; $lang['tab_templates'] = 'Geïnstalleerde Templates'; $lang['tab_search'] = 'Zoek en installeer'; @@ -24,7 +24,7 @@ $lang['btn_enable'] = 'Schakel aan'; $lang['btn_disable'] = 'Schakel uit'; $lang['btn_install'] = 'Installeer'; $lang['btn_reinstall'] = 'Her-installeer'; -$lang['js']['reallydel'] = 'Wilt u deze uitbreiding deinstalleren ?'; +$lang['js']['reallydel'] = 'Wilt u deze uitbreiding deinstalleren?'; $lang['search_for'] = 'Zoek Uitbreiding:'; $lang['search'] = 'Zoek'; $lang['extensionby'] = '%s by %s'; @@ -36,16 +36,16 @@ $lang['tags'] = 'Tags:'; $lang['author_hint'] = 'Zoek uitbreidingen van deze auteur:'; $lang['installed'] = 'Geinstalleerd:'; $lang['downloadurl'] = 'Download URL:'; -$lang['repository'] = 'Repository ( centrale opslag)'; +$lang['repository'] = 'Centrale opslag:'; $lang['unknown'] = 'onbekend'; -$lang['installed_version'] = 'Geïnstalleerde versie'; -$lang['install_date'] = 'Uw laatste update :'; +$lang['installed_version'] = 'Geïnstalleerde versie:'; +$lang['install_date'] = 'Uw laatste update:'; $lang['available_version'] = 'Beschikbare versie:'; -$lang['compatible'] = 'Compatible met :'; -$lang['depends'] = 'Afhankelijk van :'; -$lang['similar'] = 'Soortgelijk :'; -$lang['conflicts'] = 'Conflicteerd met :'; -$lang['donate'] = 'Vindt u dit leuk ?'; +$lang['compatible'] = 'Compatible met:'; +$lang['depends'] = 'Afhankelijk van:'; +$lang['similar'] = 'Soortgelijk:'; +$lang['conflicts'] = 'Conflicteerd met:'; +$lang['donate'] = 'Vindt u dit leuk?'; $lang['donate_action'] = 'Koop een kop koffie voor de auteur!'; $lang['repo_retry'] = 'Herhaal'; $lang['provides'] = 'Zorgt voor:'; @@ -85,3 +85,4 @@ $lang['nopluginperms'] = 'Plugin directory is niet schrijfbaar'; $lang['git'] = 'De uitbreiding werd geïnstalleerd via git, u wilt deze hier wellicht niet aanpassen.'; $lang['install_url'] = 'Installeer vanaf URL:'; $lang['install_upload'] = 'Upload Uitbreiding:'; +$lang['repo_error'] = 'Er kon geen verbinding worden gemaakt met de centrale plugin opslag. Controleer of de server verbinding mag maken met www.dokuwiki.org en controleer de proxy instellingen.'; -- cgit v1.2.3 From 6222beda4249ebf70fa3bcb226355339ca7d765c Mon Sep 17 00:00:00 2001 From: Mirko Date: Tue, 13 May 2014 14:35:54 +0200 Subject: translation update --- inc/lang/it/lang.php | 9 +++++++-- lib/plugins/authmysql/lang/it/settings.php | 5 +++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/inc/lang/it/lang.php b/inc/lang/it/lang.php index eefcec9db..2542c4788 100644 --- a/inc/lang/it/lang.php +++ b/inc/lang/it/lang.php @@ -17,6 +17,7 @@ * @author snarchio@gmail.com * @author Edmondo Di Tucci * @author Claudio Lanconelli + * @author Mirko */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -61,6 +62,8 @@ $lang['btn_register'] = 'Registrazione'; $lang['btn_apply'] = 'Applica'; $lang['btn_media'] = 'Gestore Media'; $lang['btn_deleteuser'] = 'Rimuovi il mio account'; +$lang['btn_img_backto'] = 'Torna a %s'; +$lang['btn_mediaManager'] = 'Guarda nel gestore media'; $lang['loggedinas'] = 'Collegato come'; $lang['user'] = 'Nome utente'; $lang['pass'] = 'Password'; @@ -189,6 +192,9 @@ $lang['difflink'] = 'Link a questa pagina di confronto'; $lang['diff_type'] = 'Guarda le differenze:'; $lang['diff_inline'] = 'In linea'; $lang['diff_side'] = 'Fianco a Fianco'; +$lang['diffprevrev'] = 'Revisione precedente'; +$lang['diffnextrev'] = 'Prossima revisione'; +$lang['difflastrev'] = 'Ultima revisione'; $lang['line'] = 'Linea'; $lang['breadcrumb'] = 'Traccia'; $lang['youarehere'] = 'Ti trovi qui'; @@ -245,7 +251,6 @@ $lang['admin_register'] = 'Aggiungi un nuovo utente'; $lang['metaedit'] = 'Modifica metadati'; $lang['metasaveerr'] = 'Scrittura metadati fallita'; $lang['metasaveok'] = 'Metadati salvati'; -$lang['btn_img_backto'] = 'Torna a %s'; $lang['img_title'] = 'Titolo'; $lang['img_caption'] = 'Descrizione'; $lang['img_date'] = 'Data'; @@ -258,7 +263,6 @@ $lang['img_camera'] = 'Camera'; $lang['img_keywords'] = 'Parole chiave'; $lang['img_width'] = 'Larghezza'; $lang['img_height'] = 'Altezza'; -$lang['btn_mediaManager'] = 'Guarda nel gestore media'; $lang['subscr_subscribe_success'] = 'Aggiunto %s alla lista di sottoscrizioni %s'; $lang['subscr_subscribe_error'] = 'Impossibile aggiungere %s alla lista di sottoscrizioni %s'; $lang['subscr_subscribe_noaddress'] = 'Non esiste alcun indirizzo associato al tuo account, non puoi essere aggiunto alla lista di sottoscrizioni'; @@ -338,3 +342,4 @@ $lang['media_perm_upload'] = 'Spiacente, non hai abbastanza privilegi per ca $lang['media_update'] = 'Carica nuova versione'; $lang['media_restore'] = 'Ripristina questa versione'; $lang['searchresult'] = 'Risultati della ricerca'; +$lang['plainhtml'] = 'HTML'; diff --git a/lib/plugins/authmysql/lang/it/settings.php b/lib/plugins/authmysql/lang/it/settings.php index e493ec7e9..bae021e98 100644 --- a/lib/plugins/authmysql/lang/it/settings.php +++ b/lib/plugins/authmysql/lang/it/settings.php @@ -4,5 +4,10 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Claudio Lanconelli + * @author Mirko */ +$lang['server'] = 'Il tuo server MySQL'; +$lang['user'] = 'User name di MySQL'; +$lang['database'] = 'Database da usare'; +$lang['charset'] = 'Set di caratteri usato nel database'; $lang['debug'] = 'Mostra ulteriori informazioni di debug'; -- cgit v1.2.3 From 9d60a747702d8da1436fda4de3126116a7db002b Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Tue, 13 May 2014 16:14:44 +0100 Subject: Issue 694: fix failing test - set filemtimes explicitly in test setup --- _test/tests/inc/cache_use.test.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/_test/tests/inc/cache_use.test.php b/_test/tests/inc/cache_use.test.php index c54a472a3..02fe329de 100644 --- a/_test/tests/inc/cache_use.test.php +++ b/_test/tests/inc/cache_use.test.php @@ -18,11 +18,14 @@ class cache_use_test extends DokuWikiTest { $conf['cachetime'] = 0; // ensure the value is not -1, which disables caching saveWikiText($ID, 'Content', 'Created'); - // set the modification time a second in the past in order to ensure that the cache is newer than the page - touch($file, time()-1); $this->cache = new cache_renderer($ID, $file, 'xhtml'); $this->cache->storeCache('Test'); + + // set the modification times explicitly (overcome Issue #694) + $time = time(); + touch($file, $time-1); + touch($this->cache->cache, $time); } function test_use() { -- cgit v1.2.3 From 4862797473d3fb509669a7ded14059f3a412bb15 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 13 May 2014 18:41:02 +0200 Subject: translation update --- inc/lang/nl/lang.php | 6 +++--- lib/plugins/extension/lang/nl/lang.php | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/inc/lang/nl/lang.php b/inc/lang/nl/lang.php index b6cf11968..04e3797be 100644 --- a/inc/lang/nl/lang.php +++ b/inc/lang/nl/lang.php @@ -26,11 +26,11 @@ */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; -$lang['doublequoteopening'] = '„'; +$lang['doublequoteopening'] = '“'; $lang['doublequoteclosing'] = '”'; -$lang['singlequoteopening'] = '‚'; +$lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; -$lang['apostrophe'] = '\''; +$lang['apostrophe'] = '’'; $lang['btn_edit'] = 'Pagina aanpassen'; $lang['btn_source'] = 'Toon broncode'; $lang['btn_show'] = 'Toon pagina'; diff --git a/lib/plugins/extension/lang/nl/lang.php b/lib/plugins/extension/lang/nl/lang.php index f1dc125da..524c2b2e7 100644 --- a/lib/plugins/extension/lang/nl/lang.php +++ b/lib/plugins/extension/lang/nl/lang.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Rene + * @author Gerrit Uitslag */ $lang['menu'] = 'Uitbreidings Beheerder'; $lang['tab_plugins'] = 'Geïnstalleerde Plugins'; @@ -30,7 +31,7 @@ $lang['search'] = 'Zoek'; $lang['extensionby'] = '%s by %s'; $lang['screenshot'] = 'Schermafdruk bij %s'; $lang['popularity'] = 'Populariteit:%s%%'; -$lang['homepage_link'] = 'Dokumenten'; +$lang['homepage_link'] = 'Documentatie'; $lang['bugs_features'] = 'Bugs'; $lang['tags'] = 'Tags:'; $lang['author_hint'] = 'Zoek uitbreidingen van deze auteur:'; -- cgit v1.2.3 From c0d17c851c1bf4371e550a105c91a17644de6b29 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Tue, 13 May 2014 18:39:04 +0200 Subject: removed another case of superflous multiple cache invalidation --- lib/plugins/extension/helper/extension.php | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/plugins/extension/helper/extension.php b/lib/plugins/extension/helper/extension.php index 43e4452c0..a4736a850 100644 --- a/lib/plugins/extension/helper/extension.php +++ b/lib/plugins/extension/helper/extension.php @@ -597,11 +597,8 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { $path = $this->download($url); $installed = $this->installArchive($path, true); - // purge caches - foreach($installed as $ext => $info){ - $this->setExtension($ext); - $this->purgeCache(); - } + // purge cache + $this->purgeCache(); }catch (Exception $e){ throw $e; } -- cgit v1.2.3 From 59d6be95449db272ee0a6b6d437f535246f795c9 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Tue, 13 May 2014 19:42:05 +0200 Subject: update manager.dat correctly on install. closes #704 --- lib/plugins/extension/helper/extension.php | 39 ++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/lib/plugins/extension/helper/extension.php b/lib/plugins/extension/helper/extension.php index a4736a850..2aca0e218 100644 --- a/lib/plugins/extension/helper/extension.php +++ b/lib/plugins/extension/helper/extension.php @@ -292,7 +292,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { */ public function getUpdateDate() { if (!empty($this->managerData['updated'])) return $this->managerData['updated']; - return false; + return $this->getInstallDate(); } /** @@ -577,6 +577,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { try { $installed = $this->installArchive("$tmp/upload.archive", true, $basename); + $this->updateManagerData('', $installed); // purge cache $this->purgeCache(); }catch (Exception $e){ @@ -596,6 +597,7 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { try { $path = $this->download($url); $installed = $this->installArchive($path, true); + $this->updateManagerData($url, $installed); // purge cache $this->purgeCache(); @@ -612,8 +614,10 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { * @return array The list of installed extensions */ public function installOrUpdate() { - $path = $this->download($this->getDownloadURL()); + $url = $this->getDownloadURL(); + $path = $this->download($url); $installed = $this->installArchive($path, $this->isInstalled(), $this->getBase()); + $this->updateManagerData($url, $installed); // refresh extension information if (!isset($installed[$this->getID()])) { @@ -727,6 +731,37 @@ class helper_plugin_extension_extension extends DokuWiki_Plugin { } } + /** + * Save the given URL and current datetime in the manager.dat file of all installed extensions + * + * @param string $url Where the extension was downloaded from. (empty for manual installs via upload) + * @param array $installed Optional list of installed plugins + */ + protected function updateManagerData($url = '', $installed = null) { + $origID = $this->getID(); + + if(is_null($installed)) { + $installed = array($origID); + } + + foreach($installed as $ext => $info) { + if($this->getID() != $ext) $this->setExtension($ext); + if($url) { + $this->managerData['downloadurl'] = $url; + } elseif(isset($this->managerData['downloadurl'])) { + unset($this->managerData['downloadurl']); + } + if(isset($this->managerData['installed'])) { + $this->managerData['updated'] = date('r'); + } else { + $this->managerData['installed'] = date('r'); + } + $this->writeManagerData(); + } + + if($this->getID() != $origID) $this->setExtension($origID); + } + /** * Read the manager.dat file */ -- cgit v1.2.3 From e80146ebf289d9243a864b9c8db1d97ba9516724 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Tue, 13 May 2014 20:01:51 +0200 Subject: added another test for fe5a50 That commit did not test what it actually made for. Handling protocol relative URLs in CSS. --- _test/tests/lib/exe/css_css_compress.test.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/_test/tests/lib/exe/css_css_compress.test.php b/_test/tests/lib/exe/css_css_compress.test.php index f0eb17968..4769684a8 100644 --- a/_test/tests/lib/exe/css_css_compress.test.php +++ b/_test/tests/lib/exe/css_css_compress.test.php @@ -53,6 +53,13 @@ class css_css_compress_test extends DokuWikiTest { $this->assertEquals('#foo{background-image:url(http://foo.bar/baz.jpg);}', css_compress($text)); } + function test_slcom6(){ + $text = '#foo { + background-image: url(//foo.bar/baz.jpg); // background-image: url(http://foo.bar/baz.jpg); this is all commented + }'; + $this->assertEquals('#foo{background-image:url(//foo.bar/baz.jpg);}', css_compress($text)); + } + function test_hack(){ $text = '/* Mac IE will not see this and continue with inline-block */ /* \\*/ -- cgit v1.2.3 From e5c4f36ca69d275977de01d6f85c5af43e92bb87 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 13 May 2014 22:16:27 +0200 Subject: Improve missing plugin.info.txt message. --- inc/plugin.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inc/plugin.php b/inc/plugin.php index 7de4fbd74..fda177716 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -36,8 +36,8 @@ class DokuWiki_Plugin { if(@file_exists($info)) return confToHash($info); msg('getInfo() not implemented in '.get_class($this). - ' and '.$info.' not found.
This is a bug in the '. - $parts[2].' plugin and should be reported to the '. + ' and '.$info.' not found.
Do you have installed the last version of the plugin? '. + 'If that is the case, this is a bug in the '. $parts[2].' plugin and should be reported to the '. 'plugin author.',-1); return array( 'date' => '0000-00-00', -- cgit v1.2.3 From ca86c17e1b77515f6e03e1a95538dc547a9217ac Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 13 May 2014 22:18:02 +0200 Subject: Reformat getInfo function with previous commit, Fixes #681 --- inc/plugin.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/inc/plugin.php b/inc/plugin.php index fda177716..b97d8f0c2 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -30,18 +30,18 @@ class DokuWiki_Plugin { * desc - Short description of the plugin (Text only) * url - Website with more information on the plugin (eg. syntax description) */ - function getInfo(){ - $parts = explode('_',get_class($this)); - $info = DOKU_PLUGIN.'/'.$parts[2].'/plugin.info.txt'; + function getInfo() { + $parts = explode('_', get_class($this)); + $info = DOKU_PLUGIN . '/' . $parts[2] . '/plugin.info.txt'; if(@file_exists($info)) return confToHash($info); - msg('getInfo() not implemented in '.get_class($this). - ' and '.$info.' not found.
Do you have installed the last version of the plugin? '. - 'If that is the case, this is a bug in the '. $parts[2].' plugin and should be reported to the '. - 'plugin author.',-1); + msg('getInfo() not implemented in ' . get_class($this) . + ' and ' . $info . ' not found.
Do you have installed the last version of the plugin? ' . + 'If that is the case, this is a bug in the ' . $parts[2] . ' plugin and should be reported to the ' . + 'plugin author.', -1); return array( - 'date' => '0000-00-00', - 'name' => $parts[2].' plugin', + 'date' => '0000-00-00', + 'name' => $parts[2] . ' plugin', ); } -- cgit v1.2.3 From 1b4623e76a474977d730f37c3c54ff1cf66489ac Mon Sep 17 00:00:00 2001 From: Mati Date: Wed, 14 May 2014 07:45:56 +0200 Subject: translation update --- inc/lang/pl/lang.php | 8 ++++-- lib/plugins/authad/lang/pl/settings.php | 1 + lib/plugins/authmysql/lang/pl/settings.php | 2 ++ lib/plugins/authpgsql/lang/pl/settings.php | 9 +++++++ lib/plugins/extension/lang/pl/lang.php | 39 ++++++++++++++++++++++++++++++ 5 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 lib/plugins/authpgsql/lang/pl/settings.php create mode 100644 lib/plugins/extension/lang/pl/lang.php diff --git a/inc/lang/pl/lang.php b/inc/lang/pl/lang.php index e65866761..e635cb995 100644 --- a/inc/lang/pl/lang.php +++ b/inc/lang/pl/lang.php @@ -16,6 +16,7 @@ * @author Aoi Karasu * @author Tomasz Bosak * @author Paweł Jan Czochański + * @author Mati */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -60,6 +61,8 @@ $lang['btn_register'] = 'Zarejestruj się!'; $lang['btn_apply'] = 'Zastosuj'; $lang['btn_media'] = 'Menadżer multimediów'; $lang['btn_deleteuser'] = 'Usuń moje konto'; +$lang['btn_img_backto'] = 'Wróć do %s'; +$lang['btn_mediaManager'] = 'Zobacz w menadżerze multimediów'; $lang['loggedinas'] = 'Zalogowany jako'; $lang['user'] = 'Użytkownik'; $lang['pass'] = 'Hasło'; @@ -191,6 +194,9 @@ $lang['difflink'] = 'Odnośnik do tego porównania'; $lang['diff_type'] = 'Zobacz różnice:'; $lang['diff_inline'] = 'W linii'; $lang['diff_side'] = 'Jeden obok drugiego'; +$lang['diffprevrev'] = 'Poprzednia wersja'; +$lang['diffnextrev'] = 'Nowa wersja'; +$lang['difflastrev'] = 'Ostatnia wersja'; $lang['line'] = 'Linia'; $lang['breadcrumb'] = 'Ślad'; $lang['youarehere'] = 'Jesteś tutaj'; @@ -247,7 +253,6 @@ $lang['admin_register'] = 'Dodawanie użytkownika'; $lang['metaedit'] = 'Edytuj metadane'; $lang['metasaveerr'] = 'Zapis metadanych nie powiódł się'; $lang['metasaveok'] = 'Metadane zapisano'; -$lang['btn_img_backto'] = 'Wróć do %s'; $lang['img_title'] = 'Tytuł'; $lang['img_caption'] = 'Nagłówek'; $lang['img_date'] = 'Data'; @@ -260,7 +265,6 @@ $lang['img_camera'] = 'Aparat'; $lang['img_keywords'] = 'Słowa kluczowe'; $lang['img_width'] = 'Szerokość'; $lang['img_height'] = 'Wysokość'; -$lang['btn_mediaManager'] = 'Zobacz w menadżerze multimediów'; $lang['subscr_subscribe_success'] = 'Dodano %s do listy subskrypcji %s'; $lang['subscr_subscribe_error'] = 'Błąd podczas dodawania %s do listy subskrypcji %s'; $lang['subscr_subscribe_noaddress'] = 'Brak adresu skojarzonego z twoim loginem, nie możesz zostać dodany(a) do listy subskrypcji'; diff --git a/lib/plugins/authad/lang/pl/settings.php b/lib/plugins/authad/lang/pl/settings.php index 4e397fc98..91cadca6f 100644 --- a/lib/plugins/authad/lang/pl/settings.php +++ b/lib/plugins/authad/lang/pl/settings.php @@ -5,6 +5,7 @@ * * @author Tomasz Bosak * @author Paweł Jan Czochański + * @author Mati */ $lang['account_suffix'] = 'Przyrostek twojej nazwy konta np. @my.domain.org'; $lang['base_dn'] = 'Twoje bazowe DN. Na przykład: DC=my,DC=domain,DC=org'; diff --git a/lib/plugins/authmysql/lang/pl/settings.php b/lib/plugins/authmysql/lang/pl/settings.php index 88cbd5d6f..9dc798ee0 100644 --- a/lib/plugins/authmysql/lang/pl/settings.php +++ b/lib/plugins/authmysql/lang/pl/settings.php @@ -4,6 +4,7 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Paweł Jan Czochański + * @author Mati */ $lang['server'] = 'Twój server MySQL'; $lang['user'] = 'Nazwa użytkownika MySQL'; @@ -12,3 +13,4 @@ $lang['database'] = 'Używana baza danych'; $lang['charset'] = 'Zestaw znaków uzyty w bazie danych'; $lang['debug'] = 'Wyświetlaj dodatkowe informacje do debugowania.'; $lang['checkPass'] = 'Zapytanie SQL wykorzystywane do sprawdzania haseł.'; +$lang['debug_o_2'] = 'wszystkie zapytania SQL'; diff --git a/lib/plugins/authpgsql/lang/pl/settings.php b/lib/plugins/authpgsql/lang/pl/settings.php new file mode 100644 index 000000000..25a2afd4f --- /dev/null +++ b/lib/plugins/authpgsql/lang/pl/settings.php @@ -0,0 +1,9 @@ + + */ +$lang['server'] = 'Twój serwer PostgreSQL'; +$lang['database'] = 'Baza danych do użycia'; diff --git a/lib/plugins/extension/lang/pl/lang.php b/lib/plugins/extension/lang/pl/lang.php new file mode 100644 index 000000000..4fdca79c9 --- /dev/null +++ b/lib/plugins/extension/lang/pl/lang.php @@ -0,0 +1,39 @@ + + */ +$lang['menu'] = 'Menedżer rozszerzeń'; +$lang['tab_plugins'] = 'Zainstalowane dodatki'; +$lang['tab_search'] = 'Znajdź i zainstaluj'; +$lang['notinstalled'] = 'Te rozszerzenie nie zostało zainstalowane'; +$lang['alreadyenabled'] = 'Te rozszerzenie jest już uruchomione'; +$lang['unknownauthor'] = 'Nieznany autor'; +$lang['unknownversion'] = 'Nieznana wersja'; +$lang['btn_info'] = 'Pokaż więcej informacji'; +$lang['btn_enable'] = 'Uruchom'; +$lang['btn_disable'] = 'Wyłącz'; +$lang['btn_reinstall'] = 'Ponowna instalacja'; +$lang['js']['reallydel'] = 'Naprawdę odinstalować te rozszerzenie?'; +$lang['search'] = 'Szukaj'; +$lang['bugs_features'] = 'Błędy'; +$lang['tags'] = 'Tagi:'; +$lang['installed'] = 'Zainstalowano:'; +$lang['repository'] = 'Repozytorium'; +$lang['installed_version'] = 'Zainstalowana wersja:'; +$lang['install_date'] = 'Twoja ostatnia aktualizacja:'; +$lang['available_version'] = 'Dostępna wersja:'; +$lang['depends'] = 'Zależy od:'; +$lang['conflicts'] = 'Konflikt z:'; +$lang['donate'] = 'Lubisz to?'; +$lang['donate_action'] = 'Kup autorowi kawę!'; +$lang['repo_retry'] = 'Ponów'; +$lang['status'] = 'Status:'; +$lang['status_installed'] = 'zainstalowano'; +$lang['status_not_installed'] = 'nie zainstalowano'; +$lang['status_enabled'] = 'uruchomione'; +$lang['status_disabled'] = 'wyłączone'; +$lang['status_plugin'] = 'dodatek'; +$lang['msg_delete_success'] = 'Rozszerzenie odinstalowane'; -- cgit v1.2.3 From 918a4468877109c2ba2f82fa4e1a225a4738ed9a Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 14 May 2014 19:24:01 +0200 Subject: don't treat double slashes as comments when used in string This avoids treating double slashes as single line comments in CSS when they are used in a filter or content string. closes #638 --- _test/tests/lib/exe/css_css_compress.test.php | 8 +++++++ lib/exe/css.php | 31 +++++++++++++++++++++------ 2 files changed, 32 insertions(+), 7 deletions(-) diff --git a/_test/tests/lib/exe/css_css_compress.test.php b/_test/tests/lib/exe/css_css_compress.test.php index 4769684a8..807317ca6 100644 --- a/_test/tests/lib/exe/css_css_compress.test.php +++ b/_test/tests/lib/exe/css_css_compress.test.php @@ -60,6 +60,14 @@ class css_css_compress_test extends DokuWikiTest { $this->assertEquals('#foo{background-image:url(//foo.bar/baz.jpg);}', css_compress($text)); } + function test_slcom7(){ + $text = '#foo a[href ^="https://"], #foo a[href ^=\'https://\'] { + background-image: url(//foo.bar/baz.jpg); // background-image: url(http://foo.bar/baz.jpg); this is \'all\' "commented" + }'; + $this->assertEquals('#foo a[href ^="https://"],#foo a[href ^=\'https://\']{background-image:url(//foo.bar/baz.jpg);}', css_compress($text)); + } + + function test_hack(){ $text = '/* Mac IE will not see this and continue with inline-block */ /* \\*/ diff --git a/lib/exe/css.php b/lib/exe/css.php index 30d0d18c5..6c1d60751 100644 --- a/lib/exe/css.php +++ b/lib/exe/css.php @@ -602,30 +602,47 @@ function css_comment_cb($matches){ function css_onelinecomment_cb($matches) { $line = $matches[0]; - $out = ''; $i = 0; $len = strlen($line); + while ($i< $len){ $nextcom = strpos($line, '//', $i); $nexturl = stripos($line, 'url(', $i); if($nextcom === false) { // no more comments, we're done - $out .= substr($line, $i, $len-$i); + $i = $len; break; } + + // keep any quoted string that starts before a comment + $nextsqt = strpos($line, "'", $i); + $nextdqt = strpos($line, '"', $i); + if(min($nextsqt, $nextdqt) < $nextcom) { + $skipto = false; + if($nextsqt !== false && ($nextdqt === false || $nextsqt < $nextdqt)) { + $skipto = strpos($line, "'", $nextsqt+1) +1; + } else if ($nextdqt !== false) { + $skipto = strpos($line, '"', $nextdqt+1) +1; + } + + if($skipto !== false) { + $i = $skipto; + continue; + } + } + if($nexturl === false || $nextcom < $nexturl) { // no url anymore, strip comment and be done - $out .= substr($line, $i, $nextcom-$i); + $i = $nextcom; break; } + // we have an upcoming url - $urlclose = strpos($line, ')', $nexturl); - $out .= substr($line, $i, $urlclose-$i); - $i = $urlclose; + $i = strpos($line, ')', $nexturl); } - return $out; + return substr($line, 0, $i); } //Setup VIM: ex: et ts=4 : -- cgit v1.2.3 From 470bf4b293def91b822e2da17cb793912adc74b6 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 14 May 2014 20:58:35 +0200 Subject: username_link should show user's name in feed too --- feed.php | 1 + 1 file changed, 1 insertion(+) diff --git a/feed.php b/feed.php index 40f9af659..996b1ba6b 100644 --- a/feed.php +++ b/feed.php @@ -405,6 +405,7 @@ function rss_buildItems(&$rss, &$data, $opt) { if($userInfo) { switch($conf['showuseras']) { case 'username': + case 'username_link': $item->author = $userInfo['name']; break; default: -- cgit v1.2.3 From 33cfab00505903e3bee37020f5e099e5c0fd70a9 Mon Sep 17 00:00:00 2001 From: Francesco Date: Wed, 14 May 2014 21:20:56 +0200 Subject: translation update --- inc/lang/it/lang.php | 3 +++ lib/plugins/authldap/lang/it/settings.php | 6 ++++++ lib/plugins/authmysql/lang/it/settings.php | 24 ++++++++++++++++++++++++ lib/plugins/authpgsql/lang/it/settings.php | 11 +++++++++++ 4 files changed, 44 insertions(+) create mode 100644 lib/plugins/authpgsql/lang/it/settings.php diff --git a/inc/lang/it/lang.php b/inc/lang/it/lang.php index 2542c4788..668920903 100644 --- a/inc/lang/it/lang.php +++ b/inc/lang/it/lang.php @@ -18,6 +18,7 @@ * @author Edmondo Di Tucci * @author Claudio Lanconelli * @author Mirko + * @author Francesco */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -149,6 +150,7 @@ $lang['js']['del_confirm'] = 'Eliminare veramente questa voce?'; $lang['js']['restore_confirm'] = 'Vuoi davvero ripristinare questa versione?'; $lang['js']['media_diff'] = 'Guarda le differenze:'; $lang['js']['media_diff_both'] = 'Fianco a Fianco'; +$lang['js']['media_diff_portions'] = 'rubare'; $lang['js']['media_select'] = 'Seleziona files..'; $lang['js']['media_upload_btn'] = 'Upload'; $lang['js']['media_done_btn'] = 'Fatto'; @@ -341,5 +343,6 @@ $lang['media_perm_read'] = 'Spiacente, non hai abbastanza privilegi per le $lang['media_perm_upload'] = 'Spiacente, non hai abbastanza privilegi per caricare files.'; $lang['media_update'] = 'Carica nuova versione'; $lang['media_restore'] = 'Ripristina questa versione'; +$lang['currentns'] = 'Namespace corrente'; $lang['searchresult'] = 'Risultati della ricerca'; $lang['plainhtml'] = 'HTML'; diff --git a/lib/plugins/authldap/lang/it/settings.php b/lib/plugins/authldap/lang/it/settings.php index eba7cde6e..858c694b8 100644 --- a/lib/plugins/authldap/lang/it/settings.php +++ b/lib/plugins/authldap/lang/it/settings.php @@ -5,6 +5,7 @@ * * @author Edmondo Di Tucci * @author Claudio Lanconelli + * @author Francesco */ $lang['server'] = 'Il tuo server LDAP. Inserire o l\'hostname (localhost) oppure un URL completo (ldap://server.tld:389)'; $lang['port'] = 'Porta del server LDAP se non è stato fornito un URL completo più sopra.'; @@ -14,6 +15,11 @@ $lang['userfilter'] = 'Filtro per cercare l\'account utente LDAP. Eg. $lang['groupfilter'] = 'Filtro per cercare i gruppi LDAP. Eg. (&(objectClass=posixGroup)(|(gidNumber=%{gid})(memberUID=%{user})))'; $lang['version'] = 'Versione protocollo da usare. Pu3'; $lang['starttls'] = 'Usare la connessione TSL?'; +$lang['deref'] = 'Come differenziare un alias?'; $lang['userscope'] = 'Limita il contesto di ricerca per la ricerca degli utenti'; $lang['groupscope'] = 'Limita il contesto di ricerca per la ricerca dei gruppi'; $lang['debug'] = 'In caso di errori mostra ulteriori informazioni di 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'; diff --git a/lib/plugins/authmysql/lang/it/settings.php b/lib/plugins/authmysql/lang/it/settings.php index bae021e98..10c0de96f 100644 --- a/lib/plugins/authmysql/lang/it/settings.php +++ b/lib/plugins/authmysql/lang/it/settings.php @@ -5,9 +5,33 @@ * * @author Claudio Lanconelli * @author Mirko + * @author Francesco */ $lang['server'] = 'Il tuo server MySQL'; $lang['user'] = 'User name di MySQL'; $lang['database'] = 'Database da usare'; $lang['charset'] = 'Set di caratteri usato nel database'; $lang['debug'] = 'Mostra ulteriori informazioni di debug'; +$lang['TablesToLock'] = 'Lista, separata da virgola, delle tabelle che devono essere bloccate in scrittura'; +$lang['checkPass'] = 'Istruzione SQL per il controllo password'; +$lang['getUserInfo'] = 'Istruzione SQL per recuperare le informazioni utente'; +$lang['getUsers'] = 'Istruzione SQL per listare tutti gli utenti'; +$lang['FilterLogin'] = 'Istruzione SQL per per filtrare gli utenti in funzione del "login name"'; +$lang['SortOrder'] = 'Istruzione SQL per ordinare gli utenti'; +$lang['addUser'] = 'Istruzione SQL per aggiungere un nuovo utente'; +$lang['addGroup'] = 'Istruzione SQL per aggiungere un nuovo gruppo'; +$lang['addUserGroup'] = 'Istruzione SQL per aggiungere un utente ad un gruppo esistente'; +$lang['delGroup'] = 'Istruzione SQL per imuovere un gruppo'; +$lang['getUserID'] = 'Istruzione SQL per recuperare la primary key di un utente'; +$lang['delUser'] = 'Istruzione SQL per cancellare un utente'; +$lang['delUserRefs'] = 'Istruzione SQL per rimuovere un utente da tutti i gruppi'; +$lang['updateUser'] = 'Istruzione SQL per aggiornare il profilo utente'; +$lang['UpdateLogin'] = 'Clausola per aggiornare il "login name" dell\'utente'; +$lang['UpdatePass'] = 'Clausola per aggiornare la password utente'; +$lang['UpdateEmail'] = 'Clausola per aggiornare l\'email utente'; +$lang['UpdateName'] = 'Clausola per aggiornare il nome completo'; +$lang['delUserGroup'] = 'Istruzione SQL per rimuovere un utente da un dato gruppo'; +$lang['getGroupID'] = 'Istruzione SQL per avere la primary key di un dato gruppo'; +$lang['debug_o_0'] = 'Nulla'; +$lang['debug_o_1'] = 'Solo in errore'; +$lang['debug_o_2'] = 'Tutte le query SQL'; diff --git a/lib/plugins/authpgsql/lang/it/settings.php b/lib/plugins/authpgsql/lang/it/settings.php new file mode 100644 index 000000000..baf40a468 --- /dev/null +++ b/lib/plugins/authpgsql/lang/it/settings.php @@ -0,0 +1,11 @@ + + */ +$lang['server'] = 'Il tuo server PostgreSQL '; +$lang['port'] = 'La porta del tuo server PostgreSQL '; +$lang['user'] = 'Lo username PostgreSQL'; +$lang['database'] = 'Database da usare'; -- cgit v1.2.3 From b9b1fa3cc0cbb48e6e911f62909871bb8c72c71d Mon Sep 17 00:00:00 2001 From: Francesco Date: Wed, 14 May 2014 21:30:56 +0200 Subject: translation update --- inc/lang/it/lang.php | 1 + lib/plugins/extension/lang/it/lang.php | 41 ++++++++++++++++++++++++++++++++ lib/plugins/usermanager/lang/it/lang.php | 8 +++++++ 3 files changed, 50 insertions(+) create mode 100644 lib/plugins/extension/lang/it/lang.php diff --git a/inc/lang/it/lang.php b/inc/lang/it/lang.php index 2542c4788..3322f9ba8 100644 --- a/inc/lang/it/lang.php +++ b/inc/lang/it/lang.php @@ -18,6 +18,7 @@ * @author Edmondo Di Tucci * @author Claudio Lanconelli * @author Mirko + * @author Francesco */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/lib/plugins/extension/lang/it/lang.php b/lib/plugins/extension/lang/it/lang.php new file mode 100644 index 000000000..fbf163d57 --- /dev/null +++ b/lib/plugins/extension/lang/it/lang.php @@ -0,0 +1,41 @@ + + */ +$lang['btn_enable'] = 'Abilita'; +$lang['btn_disable'] = 'Disabilita'; +$lang['btn_install'] = 'Installa'; +$lang['btn_reinstall'] = 'Reinstalla'; +$lang['search'] = 'Cerca'; +$lang['homepage_link'] = 'Documenti'; +$lang['bugs_features'] = 'Bug'; +$lang['tags'] = 'Tag:'; +$lang['author_hint'] = 'Cerca estensioni per questo autore'; +$lang['installed'] = 'Installato:'; +$lang['downloadurl'] = 'URL download:'; +$lang['repository'] = 'Repository'; +$lang['installed_version'] = 'Versione installata'; +$lang['install_date'] = 'Il tuo ultimo aggiornamento:'; +$lang['available_version'] = 'Versione disponibile:'; +$lang['compatible'] = 'Compatibile con:'; +$lang['similar'] = 'Simile a:'; +$lang['donate'] = 'Simile a questo?'; +$lang['repo_retry'] = 'Riprova'; +$lang['status'] = 'Status:'; +$lang['status_installed'] = 'installato'; +$lang['status_not_installed'] = 'non installato'; +$lang['status_protected'] = 'protetto'; +$lang['status_enabled'] = 'abilitato'; +$lang['status_disabled'] = 'disabilitato'; +$lang['status_unmodifiable'] = 'inmodificabile'; +$lang['status_plugin'] = 'plugin'; +$lang['status_template'] = 'modello'; +$lang['error_badurl'] = 'URLs deve iniziare con http o https'; +$lang['error_dircreate'] = 'Impossibile creare una cartella temporanea per ricevere il download'; +$lang['error_download'] = 'Impossibile scaricare il file: %s'; +$lang['notplperms'] = 'Il modello di cartella non è scrivibile'; +$lang['nopluginperms'] = 'La cartella plugin non è scrivibile'; +$lang['install_url'] = 'Installa da URL:'; diff --git a/lib/plugins/usermanager/lang/it/lang.php b/lib/plugins/usermanager/lang/it/lang.php index 6c6789442..af19e293e 100644 --- a/lib/plugins/usermanager/lang/it/lang.php +++ b/lib/plugins/usermanager/lang/it/lang.php @@ -16,6 +16,7 @@ * @author Matteo Pasotti * @author snarchio@gmail.com * @author Claudio Lanconelli + * @author Francesco */ $lang['menu'] = 'Gestione Utenti'; $lang['noauth'] = '(autenticazione non disponibile)'; @@ -40,6 +41,9 @@ $lang['clear'] = 'Azzera filtro di ricerca'; $lang['filter'] = 'Filtro'; $lang['export_all'] = 'Esporta tutti gli utenti (CSV)'; $lang['export_filtered'] = 'Esporta elenco utenti filtrati (CSV)'; +$lang['import'] = 'Importa nuovi utenti'; +$lang['line'] = 'Linea numero'; +$lang['error'] = 'Messaggio di errore'; $lang['summary'] = 'Visualizzazione utenti %1$d-%2$d di %3$d trovati. %4$d utenti totali.'; $lang['nonefound'] = 'Nessun utente trovato. %d utenti totali.'; $lang['delete_ok'] = '%d utenti eliminati'; @@ -60,3 +64,7 @@ $lang['add_ok'] = 'Utente aggiunto correttamente'; $lang['add_fail'] = 'Aggiunta utente fallita'; $lang['notify_ok'] = 'Email di notifica inviata'; $lang['notify_fail'] = 'L\'email di notifica non può essere inviata'; +$lang['import_error_badname'] = 'Nome errato'; +$lang['import_error_badmail'] = 'Indirizzo email errato'; +$lang['import_error_readfail'] = 'Importazione in errore. Impossibile leggere i file caricati.'; +$lang['import_error_create'] = 'Impossibile creare l\'utente'; -- cgit v1.2.3 From fde860be8cb3ed16b2b0843b77b093a60397083e Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Fri, 16 May 2014 00:09:32 +0200 Subject: Move colon from code to language strings --- inc/html.php | 4 +-- inc/lang/af/lang.php | 8 +++--- inc/lang/ar/lang.php | 40 ++++++++++++++--------------- inc/lang/az/lang.php | 34 ++++++++++++------------- inc/lang/bg/lang.php | 40 ++++++++++++++--------------- inc/lang/bn/lang.php | 10 ++++---- inc/lang/ca-valencia/lang.php | 36 +++++++++++++------------- inc/lang/ca/lang.php | 36 +++++++++++++------------- inc/lang/cs/lang.php | 36 +++++++++++++------------- inc/lang/da/lang.php | 40 ++++++++++++++--------------- inc/lang/de-informal/lang.php | 40 ++++++++++++++--------------- inc/lang/de/lang.php | 40 ++++++++++++++--------------- inc/lang/el/lang.php | 40 ++++++++++++++--------------- inc/lang/en/lang.php | 40 ++++++++++++++--------------- inc/lang/eo/lang.php | 40 ++++++++++++++--------------- inc/lang/es/lang.php | 40 ++++++++++++++--------------- inc/lang/et/lang.php | 42 +++++++++++++++---------------- inc/lang/eu/lang.php | 36 +++++++++++++------------- inc/lang/fa/lang.php | 38 ++++++++++++++-------------- inc/lang/fi/lang.php | 40 ++++++++++++++--------------- inc/lang/fo/lang.php | 36 +++++++++++++------------- inc/lang/fr/lang.php | 40 ++++++++++++++--------------- inc/lang/gl/lang.php | 40 ++++++++++++++--------------- inc/lang/he/lang.php | 40 ++++++++++++++--------------- inc/lang/hi/lang.php | 26 +++++++++---------- inc/lang/hr/lang.php | 36 +++++++++++++------------- inc/lang/hu/lang.php | 34 ++++++++++++------------- inc/lang/ia/lang.php | 36 +++++++++++++------------- inc/lang/id-ni/lang.php | 4 +-- inc/lang/id/lang.php | 40 ++++++++++++++--------------- inc/lang/is/lang.php | 36 +++++++++++++------------- inc/lang/it/lang.php | 40 ++++++++++++++--------------- inc/lang/ja/lang.php | 40 ++++++++++++++--------------- inc/lang/ka/lang.php | 40 ++++++++++++++--------------- inc/lang/kk/lang.php | 14 +++++------ inc/lang/km/lang.php | 36 +++++++++++++------------- inc/lang/ko/lang.php | 40 ++++++++++++++--------------- inc/lang/ku/lang.php | 26 +++++++++---------- inc/lang/la/lang.php | 24 +++++++++--------- inc/lang/lb/lang.php | 36 +++++++++++++------------- inc/lang/lt/lang.php | 36 +++++++++++++------------- inc/lang/lv/lang.php | 40 ++++++++++++++--------------- inc/lang/mg/lang.php | 10 ++++---- inc/lang/mk/lang.php | 36 +++++++++++++------------- inc/lang/mr/lang.php | 36 +++++++++++++------------- inc/lang/ms/lang.php | 8 +++--- inc/lang/ne/lang.php | 34 ++++++++++++------------- inc/lang/nl/lang.php | 40 ++++++++++++++--------------- inc/lang/no/lang.php | 40 ++++++++++++++--------------- inc/lang/pl/lang.php | 40 ++++++++++++++--------------- inc/lang/pt-br/lang.php | 40 ++++++++++++++--------------- inc/lang/pt/lang.php | 40 ++++++++++++++--------------- inc/lang/ro/lang.php | 40 ++++++++++++++--------------- inc/lang/ru/lang.php | 40 ++++++++++++++--------------- inc/lang/sk/lang.php | 36 +++++++++++++------------- inc/lang/sl/lang.php | 40 ++++++++++++++--------------- inc/lang/sq/lang.php | 36 +++++++++++++------------- inc/lang/sr/lang.php | 36 +++++++++++++------------- inc/lang/sv/lang.php | 40 ++++++++++++++--------------- inc/lang/th/lang.php | 36 +++++++++++++------------- inc/lang/tr/lang.php | 36 +++++++++++++------------- inc/lang/uk/lang.php | 36 +++++++++++++------------- inc/lang/vi/lang.php | 40 ++++++++++++++--------------- inc/lang/zh-tw/lang.php | 40 ++++++++++++++--------------- inc/lang/zh/lang.php | 40 ++++++++++++++--------------- inc/media.php | 8 +++--- inc/template.php | 14 +++++------ lib/plugins/acl/admin.php | 4 +-- lib/plugins/acl/lang/ar/lang.php | 4 +-- lib/plugins/acl/lang/bg/lang.php | 4 +-- lib/plugins/acl/lang/ca-valencia/lang.php | 4 +-- lib/plugins/acl/lang/ca/lang.php | 4 +-- lib/plugins/acl/lang/cs/lang.php | 4 +-- lib/plugins/acl/lang/da/lang.php | 4 +-- lib/plugins/acl/lang/de-informal/lang.php | 4 +-- lib/plugins/acl/lang/de/lang.php | 4 +-- lib/plugins/acl/lang/el/lang.php | 4 +-- lib/plugins/acl/lang/en/lang.php | 4 +-- lib/plugins/acl/lang/eo/lang.php | 4 +-- lib/plugins/acl/lang/es/lang.php | 4 +-- lib/plugins/acl/lang/et/lang.php | 4 +-- lib/plugins/acl/lang/eu/lang.php | 4 +-- lib/plugins/acl/lang/fa/lang.php | 4 +-- lib/plugins/acl/lang/fi/lang.php | 4 +-- lib/plugins/acl/lang/fr/lang.php | 4 +-- lib/plugins/acl/lang/gl/lang.php | 4 +-- lib/plugins/acl/lang/he/lang.php | 4 +-- lib/plugins/acl/lang/hr/lang.php | 4 +-- lib/plugins/acl/lang/ia/lang.php | 4 +-- lib/plugins/acl/lang/id/lang.php | 4 +-- lib/plugins/acl/lang/is/lang.php | 4 +-- lib/plugins/acl/lang/it/lang.php | 4 +-- lib/plugins/acl/lang/ja/lang.php | 4 +-- lib/plugins/acl/lang/kk/lang.php | 4 +-- lib/plugins/acl/lang/ko/lang.php | 4 +-- lib/plugins/acl/lang/la/lang.php | 4 +-- lib/plugins/acl/lang/lt/lang.php | 4 +-- lib/plugins/acl/lang/lv/lang.php | 4 +-- lib/plugins/acl/lang/mk/lang.php | 4 +-- lib/plugins/acl/lang/mr/lang.php | 4 +-- lib/plugins/acl/lang/ne/lang.php | 4 +-- lib/plugins/acl/lang/nl/lang.php | 4 +-- lib/plugins/acl/lang/no/lang.php | 4 +-- lib/plugins/acl/lang/pl/lang.php | 4 +-- lib/plugins/acl/lang/pt-br/lang.php | 4 +-- lib/plugins/acl/lang/pt/lang.php | 4 +-- lib/plugins/acl/lang/ro/lang.php | 4 +-- lib/plugins/acl/lang/ru/lang.php | 4 +-- lib/plugins/acl/lang/sk/lang.php | 4 +-- lib/plugins/acl/lang/sl/lang.php | 4 +-- lib/plugins/acl/lang/sq/lang.php | 4 +-- lib/plugins/acl/lang/sr/lang.php | 4 +-- lib/plugins/acl/lang/sv/lang.php | 4 +-- lib/plugins/acl/lang/th/lang.php | 4 +-- lib/plugins/acl/lang/tr/lang.php | 4 +-- lib/plugins/acl/lang/uk/lang.php | 4 +-- lib/plugins/acl/lang/vi/lang.php | 4 +-- lib/plugins/acl/lang/zh-tw/lang.php | 4 +-- lib/plugins/acl/lang/zh/lang.php | 4 +-- 119 files changed, 1235 insertions(+), 1235 deletions(-) diff --git a/inc/html.php b/inc/html.php index be7afae0c..1db181c49 100644 --- a/inc/html.php +++ b/inc/html.php @@ -411,8 +411,8 @@ function html_locked(){ print p_locale_xhtml('locked'); print '
    '; - print '
  • '.$lang['lockedby'].': '.editorinfo($INFO['locked']).'
  • '; - print '
  • '.$lang['lockexpire'].': '.$expire.' ('.$min.' min)
  • '; + print '
  • '.$lang['lockedby'].' '.editorinfo($INFO['locked']).'
  • '; + print '
  • '.$lang['lockexpire'].' '.$expire.' ('.$min.' min)
  • '; print '
'; } diff --git a/inc/lang/af/lang.php b/inc/lang/af/lang.php index 008110450..70672fbdd 100644 --- a/inc/lang/af/lang.php +++ b/inc/lang/af/lang.php @@ -25,7 +25,7 @@ $lang['btn_back'] = 'Terug'; $lang['btn_backlink'] = 'Wat skakel hierheen'; $lang['btn_subscribe'] = 'Hou bladsy dop'; $lang['btn_register'] = 'Skep gerus \'n rekening'; -$lang['loggedinas'] = 'Ingeteken as'; +$lang['loggedinas'] = 'Ingeteken as:'; $lang['user'] = 'Gebruikernaam'; $lang['pass'] = 'Wagwoord'; $lang['newpass'] = 'Nuive wagwoord'; @@ -52,7 +52,7 @@ $lang['mediaroot'] = 'root'; $lang['toc'] = 'Inhoud'; $lang['current'] = 'huidige'; $lang['line'] = 'Streak'; -$lang['youarehere'] = 'Jy is hier'; +$lang['youarehere'] = 'Jy is hier:'; $lang['by'] = 'by'; $lang['restored'] = 'Het terug gegaan na vroeëre weergawe (%s)'; $lang['summary'] = 'Voorskou'; @@ -64,7 +64,7 @@ $lang['qb_hr'] = 'Horisontale streep'; $lang['qb_sig'] = 'Handtekening met datum'; $lang['admin_register'] = 'Skep gerus \'n rekening'; $lang['btn_img_backto'] = 'Terug na %s'; -$lang['img_date'] = 'Datem'; -$lang['img_camera'] = 'Camera'; +$lang['img_date'] = 'Datem:'; +$lang['img_camera'] = 'Camera:'; $lang['i_wikiname'] = 'Wiki Naam'; $lang['i_funcna'] = 'PHP funksie %s is nie beskibaar nie. Miskien is dit af gehaal.'; diff --git a/inc/lang/ar/lang.php b/inc/lang/ar/lang.php index b0a2edc88..a63e1ed44 100644 --- a/inc/lang/ar/lang.php +++ b/inc/lang/ar/lang.php @@ -53,7 +53,7 @@ $lang['btn_register'] = 'سجّل'; $lang['btn_apply'] = 'طبق'; $lang['btn_media'] = 'مدير الوسائط'; $lang['btn_deleteuser'] = 'احذف حسابي الخاص'; -$lang['loggedinas'] = 'داخل باسم'; +$lang['loggedinas'] = 'داخل باسم:'; $lang['user'] = 'اسم المستخدم'; $lang['pass'] = 'كلمة السر'; $lang['newpass'] = 'كلمة سر جديدة'; @@ -98,12 +98,12 @@ $lang['license'] = 'مالم يشر لخلاف ذلك، فإن ا $lang['licenseok'] = 'لاحظ: بتحرير هذه الصفحة أنت توافق على ترخيص محتواها تحت الرخصة التالية:'; $lang['searchmedia'] = 'ابحث في أسماء الملفات:'; $lang['searchmedia_in'] = 'ابحث في %s'; -$lang['txt_upload'] = 'اختر ملفاً للرفع'; -$lang['txt_filename'] = 'رفع كـ (اختياري)'; +$lang['txt_upload'] = 'اختر ملفاً للرفع:'; +$lang['txt_filename'] = 'رفع كـ (اختياري):'; $lang['txt_overwrt'] = 'اكتب على ملف موجود'; $lang['maxuploadsize'] = 'الحجم الاقصى %s للملف'; -$lang['lockedby'] = 'مقفلة حاليا لـ'; -$lang['lockexpire'] = 'ينتهي القفل في'; +$lang['lockedby'] = 'مقفلة حاليا لـ:'; +$lang['lockexpire'] = 'ينتهي القفل في:'; $lang['js']['willexpire'] = 'سينتهي قفل تحرير هذه الصفحه خلال دقيقة.\nلتجنب التعارض استخدم زر المعاينة لتصفير مؤقت القفل.'; $lang['js']['notsavedyet'] = 'التعديلات غير المحفوظة ستفقد.'; $lang['js']['searchmedia'] = 'ابحث عن ملفات'; @@ -184,9 +184,9 @@ $lang['diff_type'] = 'أظهر الفروق:'; $lang['diff_inline'] = 'ضمنا'; $lang['diff_side'] = 'جنبا إلى جنب'; $lang['line'] = 'سطر'; -$lang['breadcrumb'] = 'أثر'; -$lang['youarehere'] = 'أنت هنا'; -$lang['lastmod'] = 'آخر تعديل'; +$lang['breadcrumb'] = 'أثر:'; +$lang['youarehere'] = 'أنت هنا:'; +$lang['lastmod'] = 'آخر تعديل:'; $lang['by'] = 'بواسطة'; $lang['deleted'] = 'حذفت'; $lang['created'] = 'اُنشئت'; @@ -240,18 +240,18 @@ $lang['metaedit'] = 'تحرير البيانات الشمولية ' $lang['metasaveerr'] = 'فشلت كتابة البيانات الشمولية'; $lang['metasaveok'] = 'حُفظت البيانات الشمولية'; $lang['btn_img_backto'] = 'عودة إلى %s'; -$lang['img_title'] = 'العنوان'; -$lang['img_caption'] = 'وصف'; -$lang['img_date'] = 'التاريخ'; -$lang['img_fname'] = 'اسم الملف'; -$lang['img_fsize'] = 'الحجم'; -$lang['img_artist'] = 'المصور'; -$lang['img_copyr'] = 'حقوق النسخ'; -$lang['img_format'] = 'الهيئة'; -$lang['img_camera'] = 'الكمرا'; -$lang['img_keywords'] = 'كلمات مفتاحية'; -$lang['img_width'] = 'العرض'; -$lang['img_height'] = 'الإرتفاع'; +$lang['img_title'] = 'العنوان:'; +$lang['img_caption'] = 'وصف:'; +$lang['img_date'] = 'التاريخ:'; +$lang['img_fname'] = 'اسم الملف:'; +$lang['img_fsize'] = 'الحجم:'; +$lang['img_artist'] = 'المصور:'; +$lang['img_copyr'] = 'حقوق النسخ:'; +$lang['img_format'] = 'الهيئة:'; +$lang['img_camera'] = 'الكمرا:'; +$lang['img_keywords'] = 'كلمات مفتاحية:'; +$lang['img_width'] = 'العرض:'; +$lang['img_height'] = 'الإرتفاع:'; $lang['btn_mediaManager'] = 'اعرض في مدير الوسائط'; $lang['subscr_subscribe_success'] = 'اضيف %s لقائمة اشتراك %s'; $lang['subscr_subscribe_error'] = 'خطأ في إضافة %s لقائمة اشتراك %s'; diff --git a/inc/lang/az/lang.php b/inc/lang/az/lang.php index 8d51d2372..5edcfbe58 100644 --- a/inc/lang/az/lang.php +++ b/inc/lang/az/lang.php @@ -44,7 +44,7 @@ $lang['btn_recover'] = 'Qaralamanı qaytar'; $lang['btn_draftdel'] = 'Qaralamanı sil'; $lang['btn_revert'] = 'Qaytar'; $lang['btn_register'] = 'Qeydiyyatdan keç'; -$lang['loggedinas'] = 'İstifadəcinin adı'; +$lang['loggedinas'] = 'İstifadəcinin adı:'; $lang['user'] = 'istifadəci adı'; $lang['pass'] = 'Şifrə'; $lang['newpass'] = 'Yeni şifrə'; @@ -82,10 +82,10 @@ $lang['license'] = 'Fərqli şey göstərilmiş hallardan başqa, $lang['licenseok'] = 'Qeyd: bu səhifəni düzəliş edərək, Siz elədiyiniz düzəlişi aşağıda göstərilmiş lisenziyanın şərtlərinə uyğun istifadəsinə razılıq verirsiniz:'; $lang['searchmedia'] = 'Faylın adına görə axtarış:'; $lang['searchmedia_in'] = '%s-ın içində axtarış'; -$lang['txt_upload'] = 'Serverə yükləmək üçün fayl seçin'; -$lang['txt_filename'] = 'Faylın wiki-də olan adını daxil edin (mütləq deyil)'; +$lang['txt_upload'] = 'Serverə yükləmək üçün fayl seçin:'; +$lang['txt_filename'] = 'Faylın wiki-də olan adını daxil edin (mütləq deyil):'; $lang['txt_overwrt'] = 'Mövcud olan faylın üstündən yaz'; -$lang['lockedby'] = 'В данный момент заблокирован Bu an blokdadır'; +$lang['lockedby'] = 'В данный момент заблокирован Bu an blokdadır:'; $lang['lockexpire'] = 'Blok bitir:'; $lang['js']['willexpire'] = 'Sizin bu səhifədə dəyişik etmək üçün blokunuz bir dəqiqə ərzində bitəcək.\nMünaqişələrdən yayınmaq və blokun taymerini sıfırlamaq üçün, baxış düyməsini sıxın.'; $lang['rssfailed'] = 'Aşağıda göstərilmiş xəbər lentini əldə edən zaman xəta baş verdi: '; @@ -128,9 +128,9 @@ $lang['yours'] = 'Sizin versiyanız'; $lang['diff'] = 'hazırki versiyadan fərqləri göstər'; $lang['diff2'] = 'Versiyaların arasındaki fərqləri göstər '; $lang['line'] = 'Sətr'; -$lang['breadcrumb'] = 'Siz ziyarət etdiniz'; -$lang['youarehere'] = 'Siz burdasınız'; -$lang['lastmod'] = 'Son dəyişiklər'; +$lang['breadcrumb'] = 'Siz ziyarət etdiniz:'; +$lang['youarehere'] = 'Siz burdasınız:'; +$lang['lastmod'] = 'Son dəyişiklər:'; $lang['by'] = ' Kimdən'; $lang['deleted'] = 'silinib'; $lang['created'] = 'yaranıb'; @@ -173,16 +173,16 @@ $lang['metaedit'] = 'Meta-məlumatlarda düzəliş et'; $lang['metasaveerr'] = 'Meta-məlumatları yazan zamanı xəta'; $lang['metasaveok'] = 'Meta-məlumatlar yadda saxlandı'; $lang['btn_img_backto'] = 'Qayıd %s'; -$lang['img_title'] = 'Başlıq'; -$lang['img_caption'] = 'İmza'; -$lang['img_date'] = 'Tarix'; -$lang['img_fname'] = 'Faylın adı'; -$lang['img_fsize'] = 'Boy'; -$lang['img_artist'] = 'Şkilin müəllifi'; -$lang['img_copyr'] = 'Müəllif hüquqları'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Model'; -$lang['img_keywords'] = 'Açar sözlər'; +$lang['img_title'] = 'Başlıq:'; +$lang['img_caption'] = 'İmza:'; +$lang['img_date'] = 'Tarix:'; +$lang['img_fname'] = 'Faylın adı:'; +$lang['img_fsize'] = 'Boy:'; +$lang['img_artist'] = 'Şkilin müəllifi:'; +$lang['img_copyr'] = 'Müəllif hüquqları:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Model:'; +$lang['img_keywords'] = 'Açar sözlər:'; $lang['authtempfail'] = 'İstifadəçilərin autentifikasiyası müvəqqəti dayandırılıb. Əgər bu problem uzun müddət davam edir sə, administrator ilə əlaqə saxlayın.'; $lang['i_chooselang'] = 'Dili seçin/Language'; $lang['i_installer'] = 'DokuWiki quraşdırılır'; diff --git a/inc/lang/bg/lang.php b/inc/lang/bg/lang.php index 77117154f..bfa8b2ad7 100644 --- a/inc/lang/bg/lang.php +++ b/inc/lang/bg/lang.php @@ -51,7 +51,7 @@ $lang['btn_register'] = 'Регистриране'; $lang['btn_apply'] = 'Прилагане'; $lang['btn_media'] = 'Диспечер на файлове'; $lang['btn_deleteuser'] = 'Изтриване на профила'; -$lang['loggedinas'] = 'Вписани сте като'; +$lang['loggedinas'] = 'Вписани сте като:'; $lang['user'] = 'Потребител'; $lang['pass'] = 'Парола'; $lang['newpass'] = 'Нова парола'; @@ -96,12 +96,12 @@ $lang['license'] = 'Ако не е посочено друго, с $lang['licenseok'] = 'Бележка: Редактирайки страницата, Вие се съгласявате да лицензирате промените (които сте направили) под следния лиценз:'; $lang['searchmedia'] = 'Търсене на файл: '; $lang['searchmedia_in'] = 'Търсене в %s'; -$lang['txt_upload'] = 'Изберете файл за качване'; -$lang['txt_filename'] = 'Качи като (незадължително)'; +$lang['txt_upload'] = 'Изберете файл за качване:'; +$lang['txt_filename'] = 'Качи като (незадължително):'; $lang['txt_overwrt'] = 'Презапиши съществуващите файлове'; $lang['maxuploadsize'] = 'Макс. размер за отделните файлове е %s.'; -$lang['lockedby'] = 'В момента е заключена от'; -$lang['lockexpire'] = 'Ще бъде отключена на'; +$lang['lockedby'] = 'В момента е заключена от:'; +$lang['lockexpire'] = 'Ще бъде отключена на:'; $lang['js']['willexpire'] = 'Страницата ще бъде отключена за редактиране след минута.\nЗа предотвратяване на конфликти, ползвайте бутона "Преглед", за рестартиране на брояча за заключване.'; $lang['js']['notsavedyet'] = 'Незаписаните промени ще бъдат загубени. Желаете ли да продължите?'; $lang['js']['searchmedia'] = 'Търсене на файлове'; @@ -181,9 +181,9 @@ $lang['diff_type'] = 'Преглед на разликите:'; $lang['diff_inline'] = 'Вграден'; $lang['diff_side'] = 'Един до друг'; $lang['line'] = 'Ред'; -$lang['breadcrumb'] = 'Следа'; -$lang['youarehere'] = 'Намирате се в'; -$lang['lastmod'] = 'Последна промяна'; +$lang['breadcrumb'] = 'Следа:'; +$lang['youarehere'] = 'Намирате се в:'; +$lang['lastmod'] = 'Последна промяна:'; $lang['by'] = 'от'; $lang['deleted'] = 'изтрита'; $lang['created'] = 'създадена'; @@ -237,18 +237,18 @@ $lang['metaedit'] = 'Редактиране на метаданни $lang['metasaveerr'] = 'Записването на метаданните се провали'; $lang['metasaveok'] = 'Метаданните са запазени успешно'; $lang['btn_img_backto'] = 'Назад към %s'; -$lang['img_title'] = 'Заглавие'; -$lang['img_caption'] = 'Надпис'; -$lang['img_date'] = 'Дата'; -$lang['img_fname'] = 'Име на файла'; -$lang['img_fsize'] = 'Размер'; -$lang['img_artist'] = 'Фотограф'; -$lang['img_copyr'] = 'Авторско право'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Фотоапарат'; -$lang['img_keywords'] = 'Ключови думи'; -$lang['img_width'] = 'Ширина'; -$lang['img_height'] = 'Височина'; +$lang['img_title'] = 'Заглавие:'; +$lang['img_caption'] = 'Надпис:'; +$lang['img_date'] = 'Дата:'; +$lang['img_fname'] = 'Име на файла:'; +$lang['img_fsize'] = 'Размер:'; +$lang['img_artist'] = 'Фотограф:'; +$lang['img_copyr'] = 'Авторско право:'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Фотоапарат:'; +$lang['img_keywords'] = 'Ключови думи:'; +$lang['img_width'] = 'Ширина:'; +$lang['img_height'] = 'Височина:'; $lang['btn_mediaManager'] = 'Преглед в диспечера на файлове'; $lang['subscr_subscribe_success'] = '%s е добавен към списъка с абониралите се за %s'; $lang['subscr_subscribe_error'] = 'Грешка при добавянето на %s към списъка с абониралите се за %s'; diff --git a/inc/lang/bn/lang.php b/inc/lang/bn/lang.php index 230f3ef80..2791bd50d 100644 --- a/inc/lang/bn/lang.php +++ b/inc/lang/bn/lang.php @@ -50,7 +50,7 @@ $lang['btn_register'] = 'খাতা'; $lang['btn_apply'] = 'প্রয়োগ করা'; $lang['btn_media'] = 'মিডিয়া ম্যানেজার'; $lang['btn_deleteuser'] = 'আমার অ্যাকাউন্ট অপসারণ করুন'; -$lang['loggedinas'] = 'লগ ইন'; +$lang['loggedinas'] = 'লগ ইন:'; $lang['user'] = 'ইউজারনেম'; $lang['pass'] = 'পাসওয়ার্ড'; $lang['newpass'] = 'নতুন পাসওয়ার্ড'; @@ -96,12 +96,12 @@ $lang['license'] = 'অন্যথায় নোট যেখ $lang['licenseok'] = 'দ্রষ্টব্য: আপনি নিম্নলিখিত লাইসেন্সের অধীনে আপনার বিষয়বস্তু লাইসেন্স সম্মত হন এই পৃষ্ঠার সম্পাদনার দ্বারা:'; $lang['searchmedia'] = 'অনুসন্ধান ফাইলের নাম:'; $lang['searchmedia_in'] = 'অনুসন্ধান %s -এ'; -$lang['txt_upload'] = 'আপলোড করার জন্য নির্বাচন করুন ফাইল'; -$lang['txt_filename'] = 'হিসাবে আপলোড করুন (ঐচ্ছিক)'; +$lang['txt_upload'] = 'আপলোড করার জন্য নির্বাচন করুন ফাইল:'; +$lang['txt_filename'] = 'হিসাবে আপলোড করুন (ঐচ্ছিক):'; $lang['txt_overwrt'] = 'বিদ্যমান ফাইল মুছে যাবে'; $lang['maxuploadsize'] = 'সর্বোচ্চ আপলোড করুন. %s-ফাইলের প্রতি.'; -$lang['lockedby'] = 'বর্তমানে দ্বারা লক'; -$lang['lockexpire'] = 'তালা এ মেয়াদ শেষ'; +$lang['lockedby'] = 'বর্তমানে দ্বারা লক:'; +$lang['lockexpire'] = 'তালা এ মেয়াদ শেষ:'; $lang['js']['willexpire'] = 'এই পৃষ্ঠার সম্পাদনার জন্য আপনার লক এক মিনিটের মধ্যে মেয়াদ শেষ সম্পর্কে. \ দ্বন্দ্ব লক টাইমার রিসেট প্রিভিউ বাটন ব্যবহার এড়াতে.'; $lang['js']['notsavedyet'] = 'অসংরক্ষিত পরিবর্তন হারিয়ে যাবে.'; $lang['js']['searchmedia'] = 'ফাইলের জন্য অনুসন্ধান'; diff --git a/inc/lang/ca-valencia/lang.php b/inc/lang/ca-valencia/lang.php index 6e6f2a662..98607d322 100644 --- a/inc/lang/ca-valencia/lang.php +++ b/inc/lang/ca-valencia/lang.php @@ -45,7 +45,7 @@ $lang['btn_recover'] = 'Recuperar borrador'; $lang['btn_draftdel'] = 'Borrar borrador'; $lang['btn_revert'] = 'Recuperar'; $lang['btn_register'] = 'Registrar-se'; -$lang['loggedinas'] = 'Sessió de'; +$lang['loggedinas'] = 'Sessió de:'; $lang['user'] = 'Nom d\'usuari'; $lang['pass'] = 'Contrasenya'; $lang['newpass'] = 'Contrasenya nova'; @@ -83,11 +83,11 @@ $lang['license'] = 'Excepte quan s\'indique una atra cosa, el cont $lang['licenseok'] = 'Nota: a l\'editar esta pàgina accepta llicenciar el seu contingut baix la següent llicència:'; $lang['searchmedia'] = 'Buscar nom d\'archiu:'; $lang['searchmedia_in'] = 'Buscar en %s'; -$lang['txt_upload'] = 'Seleccione l\'archiu que vol pujar'; -$lang['txt_filename'] = 'Enviar com (opcional)'; +$lang['txt_upload'] = 'Seleccione l\'archiu que vol pujar:'; +$lang['txt_filename'] = 'Enviar com (opcional):'; $lang['txt_overwrt'] = 'Sobreescriure archius existents'; -$lang['lockedby'] = 'Actualment bloquejat per'; -$lang['lockexpire'] = 'El bloqueig venç a les'; +$lang['lockedby'] = 'Actualment bloquejat per:'; +$lang['lockexpire'] = 'El bloqueig venç a les:'; $lang['js']['willexpire'] = 'El seu bloqueig per a editar esta pàgina vencerà en un minut.\nPer a evitar conflictes utilise el botó de vista prèvia i reiniciarà el contador.'; $lang['js']['notsavedyet'] = 'Els canvis no guardats es perdran.\n¿Segur que vol continuar?'; $lang['rssfailed'] = 'Ha ocorregut un erro al solicitar este canal: '; @@ -130,9 +130,9 @@ $lang['yours'] = 'La seua versió'; $lang['diff'] = 'Mostrar diferències en la versió actual'; $lang['diff2'] = 'Mostrar diferències entre versions'; $lang['line'] = 'Llínea'; -$lang['breadcrumb'] = 'Traça'; -$lang['youarehere'] = 'Vosté està ací'; -$lang['lastmod'] = 'Última modificació el'; +$lang['breadcrumb'] = 'Traça:'; +$lang['youarehere'] = 'Vosté està ací:'; +$lang['lastmod'] = 'Última modificació el:'; $lang['by'] = 'per'; $lang['deleted'] = 'borrat'; $lang['created'] = 'creat'; @@ -175,16 +175,16 @@ $lang['metaedit'] = 'Editar meta-senyes'; $lang['metasaveerr'] = 'Erro escrivint meta-senyes'; $lang['metasaveok'] = 'Meta-senyes guardades'; $lang['btn_img_backto'] = 'Tornar a %s'; -$lang['img_title'] = 'Títul'; -$lang['img_caption'] = 'Subtítul'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nom de l\'archiu'; -$lang['img_fsize'] = 'Tamany'; -$lang['img_artist'] = 'Fotógraf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Càmara'; -$lang['img_keywords'] = 'Paraules clau'; +$lang['img_title'] = 'Títul:'; +$lang['img_caption'] = 'Subtítul:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nom de l\'archiu:'; +$lang['img_fsize'] = 'Tamany:'; +$lang['img_artist'] = 'Fotógraf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Càmara:'; +$lang['img_keywords'] = 'Paraules clau:'; $lang['authtempfail'] = 'L\'autenticació d\'usuaris està desactivada temporalment. Si la situació persistix, per favor, informe a l\'administrador del Wiki.'; $lang['i_chooselang'] = 'Trie l\'idioma'; $lang['i_installer'] = 'Instalador de DokuWiki'; diff --git a/inc/lang/ca/lang.php b/inc/lang/ca/lang.php index 1d297a1b1..00d28083c 100644 --- a/inc/lang/ca/lang.php +++ b/inc/lang/ca/lang.php @@ -48,7 +48,7 @@ $lang['btn_draftdel'] = 'Suprimeix esborrany'; $lang['btn_revert'] = 'Restaura'; $lang['btn_register'] = 'Registra\'m'; $lang['btn_apply'] = 'Aplica'; -$lang['loggedinas'] = 'Heu entrat com'; +$lang['loggedinas'] = 'Heu entrat com:'; $lang['user'] = 'Nom d\'usuari'; $lang['pass'] = 'Contrasenya'; $lang['newpass'] = 'Nova contrasenya'; @@ -87,8 +87,8 @@ $lang['license'] = 'Excepte on es digui una altra cosa, el conting $lang['licenseok'] = 'Nota. En editar aquesta pàgina esteu acceptant que el vostre contingut estigui subjecte a la llicència següent:'; $lang['searchmedia'] = 'Cerca pel nom de fitxer'; $lang['searchmedia_in'] = 'Cerca en: %s'; -$lang['txt_upload'] = 'Trieu el fitxer que voleu penjar'; -$lang['txt_filename'] = 'Introduïu el nom wiki (opcional)'; +$lang['txt_upload'] = 'Trieu el fitxer que voleu penjar:'; +$lang['txt_filename'] = 'Introduïu el nom wiki (opcional):'; $lang['txt_overwrt'] = 'Sobreescriu el fitxer actual'; $lang['maxuploadsize'] = 'Puja com a màxim %s per arxiu.'; $lang['lockedby'] = 'Actualment blocat per:'; @@ -174,9 +174,9 @@ $lang['diff_type'] = 'Veieu les diferències:'; $lang['diff_inline'] = 'En línia'; $lang['diff_side'] = 'Un al costat de l\'altre'; $lang['line'] = 'Línia'; -$lang['breadcrumb'] = 'Camí'; -$lang['youarehere'] = 'Sou aquí'; -$lang['lastmod'] = 'Darrera modificació'; +$lang['breadcrumb'] = 'Camí:'; +$lang['youarehere'] = 'Sou aquí:'; +$lang['lastmod'] = 'Darrera modificació:'; $lang['by'] = 'per'; $lang['deleted'] = 'suprimit'; $lang['created'] = 'creat'; @@ -229,18 +229,18 @@ $lang['metaedit'] = 'Edita metadades'; $lang['metasaveerr'] = 'No s\'han pogut escriure les metadades'; $lang['metasaveok'] = 'S\'han desat les metadades'; $lang['btn_img_backto'] = 'Torna a %s'; -$lang['img_title'] = 'Títol'; -$lang['img_caption'] = 'Peu d\'imatge'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nom de fitxer'; -$lang['img_fsize'] = 'Mida'; -$lang['img_artist'] = 'Fotògraf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Càmera'; -$lang['img_keywords'] = 'Paraules clau'; -$lang['img_width'] = 'Ample'; -$lang['img_height'] = 'Alçada'; +$lang['img_title'] = 'Títol:'; +$lang['img_caption'] = 'Peu d\'imatge:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nom de fitxer:'; +$lang['img_fsize'] = 'Mida:'; +$lang['img_artist'] = 'Fotògraf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Càmera:'; +$lang['img_keywords'] = 'Paraules clau:'; +$lang['img_width'] = 'Ample:'; +$lang['img_height'] = 'Alçada:'; $lang['subscr_subscribe_success'] = 'S\'ha afegit %s a la llista de subscripcions per %s'; $lang['subscr_subscribe_error'] = 'Hi ha hagut un error a l\'afegir %s a la llista per %s'; $lang['subscr_subscribe_noaddress'] = 'No hi ha cap adreça associada pel vostre nom d\'usuari, no podeu ser afegit a la llista de subscripcions'; diff --git a/inc/lang/cs/lang.php b/inc/lang/cs/lang.php index a491c1533..0ea1add95 100644 --- a/inc/lang/cs/lang.php +++ b/inc/lang/cs/lang.php @@ -61,7 +61,7 @@ $lang['btn_register'] = 'Registrovat'; $lang['btn_apply'] = 'Použít'; $lang['btn_media'] = 'Správa médií'; $lang['btn_deleteuser'] = 'Odstranit můj účet'; -$lang['loggedinas'] = 'Přihlášen(a) jako'; +$lang['loggedinas'] = 'Přihlášen(a) jako:'; $lang['user'] = 'Uživatelské jméno'; $lang['pass'] = 'Heslo'; $lang['newpass'] = 'Nové heslo'; @@ -106,8 +106,8 @@ $lang['license'] = 'Kromě míst, kde je explicitně uvedeno jinak $lang['licenseok'] = 'Poznámka: Tím, že editujete tuto stránku, souhlasíte, aby váš obsah byl licencován pod následující licencí:'; $lang['searchmedia'] = 'Hledat jméno souboru:'; $lang['searchmedia_in'] = 'Hledat v %s'; -$lang['txt_upload'] = 'Vyberte soubor jako přílohu'; -$lang['txt_filename'] = 'Wiki jméno (volitelné)'; +$lang['txt_upload'] = 'Vyberte soubor jako přílohu:'; +$lang['txt_filename'] = 'Wiki jméno (volitelné):'; $lang['txt_overwrt'] = 'Přepsat existující soubor'; $lang['maxuploadsize'] = 'Max. velikost souboru %s'; $lang['lockedby'] = 'Právě zamknuto:'; @@ -193,9 +193,9 @@ $lang['diff_type'] = 'Zobrazit rozdíly:'; $lang['diff_inline'] = 'Vložené'; $lang['diff_side'] = 'Přidané'; $lang['line'] = 'Řádek'; -$lang['breadcrumb'] = 'Historie'; -$lang['youarehere'] = 'Umístění'; -$lang['lastmod'] = 'Poslední úprava'; +$lang['breadcrumb'] = 'Historie:'; +$lang['youarehere'] = 'Umístění:'; +$lang['lastmod'] = 'Poslední úprava:'; $lang['by'] = 'autor:'; $lang['deleted'] = 'odstraněno'; $lang['created'] = 'vytvořeno'; @@ -249,18 +249,18 @@ $lang['metaedit'] = 'Upravit Metadata'; $lang['metasaveerr'] = 'Chyba při zápisu metadat'; $lang['metasaveok'] = 'Metadata uložena'; $lang['btn_img_backto'] = 'Zpět na %s'; -$lang['img_title'] = 'Titulek'; -$lang['img_caption'] = 'Popis'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Jméno souboru'; -$lang['img_fsize'] = 'Velikost'; -$lang['img_artist'] = 'Autor fotografie'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formát'; -$lang['img_camera'] = 'Typ fotoaparátu'; -$lang['img_keywords'] = 'Klíčová slova'; -$lang['img_width'] = 'Šířka'; -$lang['img_height'] = 'Výška'; +$lang['img_title'] = 'Titulek:'; +$lang['img_caption'] = 'Popis:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Jméno souboru:'; +$lang['img_fsize'] = 'Velikost:'; +$lang['img_artist'] = 'Autor fotografie:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formát:'; +$lang['img_camera'] = 'Typ fotoaparátu:'; +$lang['img_keywords'] = 'Klíčová slova:'; +$lang['img_width'] = 'Šířka:'; +$lang['img_height'] = 'Výška:'; $lang['btn_mediaManager'] = 'Zobrazit ve správě médií'; $lang['subscr_subscribe_success'] = '%s byl přihlášen do seznamu odběratelů %s'; $lang['subscr_subscribe_error'] = 'Došlo k chybě při přihlašování %s do seznamu odběratelů %s'; diff --git a/inc/lang/da/lang.php b/inc/lang/da/lang.php index bdf882ba7..3f06bf758 100644 --- a/inc/lang/da/lang.php +++ b/inc/lang/da/lang.php @@ -61,7 +61,7 @@ $lang['btn_register'] = 'Registrér'; $lang['btn_apply'] = 'Anvend'; $lang['btn_media'] = 'Media Manager'; $lang['btn_deleteuser'] = 'Fjern Min Konto'; -$lang['loggedinas'] = 'Logget ind som'; +$lang['loggedinas'] = 'Logget ind som:'; $lang['user'] = 'Brugernavn'; $lang['pass'] = 'Adgangskode'; $lang['newpass'] = 'Ny adgangskode'; @@ -105,12 +105,12 @@ $lang['license'] = 'Med mindre andet angivet, vil indhold på denn $lang['licenseok'] = 'Note: ved at ændre denne side, acceptere du at dit indhold bliver frigivet under følgende licens:'; $lang['searchmedia'] = 'Søg filnavn'; $lang['searchmedia_in'] = 'Søg i %s'; -$lang['txt_upload'] = 'Vælg den fil der skal overføres'; -$lang['txt_filename'] = 'Indtast wikinavn (valgfrit)'; +$lang['txt_upload'] = 'Vælg den fil der skal overføres:'; +$lang['txt_filename'] = 'Indtast wikinavn (valgfrit):'; $lang['txt_overwrt'] = 'Overskriv eksisterende fil'; $lang['maxuploadsize'] = 'Upload max. %s pr. fil.'; -$lang['lockedby'] = 'Midlertidig låst af'; -$lang['lockexpire'] = 'Lås udløber kl.'; +$lang['lockedby'] = 'Midlertidig låst af:'; +$lang['lockexpire'] = 'Lås udløber kl:.'; $lang['js']['willexpire'] = 'Din lås på dette dokument udløber om et minut.\nTryk på Forhåndsvisning-knappen for at undgå konflikter.'; $lang['js']['notsavedyet'] = 'Ugemte ændringer vil blive mistet Fortsæt alligevel?'; @@ -191,9 +191,9 @@ $lang['diff_type'] = 'Vis forskelle:'; $lang['diff_inline'] = 'Indeni'; $lang['diff_side'] = 'Side ved Side'; $lang['line'] = 'Linje'; -$lang['breadcrumb'] = 'Sti'; -$lang['youarehere'] = 'Du er her'; -$lang['lastmod'] = 'Sidst ændret'; +$lang['breadcrumb'] = 'Sti:'; +$lang['youarehere'] = 'Du er her:'; +$lang['lastmod'] = 'Sidst ændret:'; $lang['by'] = 'af'; $lang['deleted'] = 'slettet'; $lang['created'] = 'oprettet'; @@ -247,18 +247,18 @@ $lang['metaedit'] = 'Rediger metadata'; $lang['metasaveerr'] = 'Skrivning af metadata fejlede'; $lang['metasaveok'] = 'Metadata gemt'; $lang['btn_img_backto'] = 'Tilbage til %s'; -$lang['img_title'] = 'Titel'; -$lang['img_caption'] = 'Billedtekst'; -$lang['img_date'] = 'Dato'; -$lang['img_fname'] = 'Filnavn'; -$lang['img_fsize'] = 'Størrelse'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Ophavsret'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Emneord'; -$lang['img_width'] = 'Bredde'; -$lang['img_height'] = 'Højde'; +$lang['img_title'] = 'Titel:'; +$lang['img_caption'] = 'Billedtekst:'; +$lang['img_date'] = 'Dato:'; +$lang['img_fname'] = 'Filnavn:'; +$lang['img_fsize'] = 'Størrelse:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Ophavsret:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Emneord:'; +$lang['img_width'] = 'Bredde:'; +$lang['img_height'] = 'Højde:'; $lang['btn_mediaManager'] = 'Vis i Media Manager'; $lang['subscr_subscribe_success'] = 'Tilføjede %s til abonnement listen for %s'; $lang['subscr_subscribe_error'] = 'Fejl ved tilføjelse af %s til abonnement listen for %s'; diff --git a/inc/lang/de-informal/lang.php b/inc/lang/de-informal/lang.php index 2e2e04149..c81109580 100644 --- a/inc/lang/de-informal/lang.php +++ b/inc/lang/de-informal/lang.php @@ -66,7 +66,7 @@ $lang['btn_register'] = 'Registrieren'; $lang['btn_apply'] = 'Übernehmen'; $lang['btn_media'] = 'Medien-Manager'; $lang['btn_deleteuser'] = 'Benutzerprofil löschen'; -$lang['loggedinas'] = 'Angemeldet als'; +$lang['loggedinas'] = 'Angemeldet als:'; $lang['user'] = 'Benutzername'; $lang['pass'] = 'Passwort'; $lang['newpass'] = 'Neues Passwort'; @@ -111,12 +111,12 @@ $lang['license'] = 'Falls nicht anders bezeichnet, ist der Inhalt $lang['licenseok'] = 'Hinweis: Durch das Bearbeiten dieser Seite gibst du dein Einverständnis, dass dein Inhalt unter der folgenden Lizenz veröffentlicht wird:'; $lang['searchmedia'] = 'Suche nach Datei:'; $lang['searchmedia_in'] = 'Suche in %s'; -$lang['txt_upload'] = 'Datei zum Hochladen auswählen'; -$lang['txt_filename'] = 'Hochladen als (optional)'; +$lang['txt_upload'] = 'Datei zum Hochladen auswählen:'; +$lang['txt_filename'] = 'Hochladen als (optional):'; $lang['txt_overwrt'] = 'Bestehende Datei überschreiben'; $lang['maxuploadsize'] = 'Max. %s pro Datei-Upload.'; -$lang['lockedby'] = 'Momentan gesperrt von'; -$lang['lockexpire'] = 'Sperre läuft ab am'; +$lang['lockedby'] = 'Momentan gesperrt von:'; +$lang['lockexpire'] = 'Sperre läuft ab am:'; $lang['js']['willexpire'] = 'Die Sperre zur Bearbeitung dieser Seite läuft in einer Minute ab.\nUm Bearbeitungskonflikte zu vermeiden, solltest du sie durch einen Klick auf den Vorschau-Knopf verlängern.'; $lang['js']['notsavedyet'] = 'Nicht gespeicherte Änderungen gehen verloren!'; $lang['js']['searchmedia'] = 'Suche nach Dateien'; @@ -196,9 +196,9 @@ $lang['diff_type'] = 'Unterschiede anzeigen:'; $lang['diff_inline'] = 'Inline'; $lang['diff_side'] = 'Side by Side'; $lang['line'] = 'Zeile'; -$lang['breadcrumb'] = 'Zuletzt angesehen'; -$lang['youarehere'] = 'Du befindest dich hier'; -$lang['lastmod'] = 'Zuletzt geändert'; +$lang['breadcrumb'] = 'Zuletzt angesehen:'; +$lang['youarehere'] = 'Du befindest dich hier:'; +$lang['lastmod'] = 'Zuletzt geändert:'; $lang['by'] = 'von'; $lang['deleted'] = 'gelöscht'; $lang['created'] = 'angelegt'; @@ -252,18 +252,18 @@ $lang['metaedit'] = 'Metadaten bearbeiten'; $lang['metasaveerr'] = 'Die Metadaten konnten nicht gesichert werden'; $lang['metasaveok'] = 'Metadaten gesichert'; $lang['btn_img_backto'] = 'Zurück zu %s'; -$lang['img_title'] = 'Titel'; -$lang['img_caption'] = 'Bildunterschrift'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Dateiname'; -$lang['img_fsize'] = 'Größe'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Schlagwörter'; -$lang['img_width'] = 'Breite'; -$lang['img_height'] = 'Höhe'; +$lang['img_title'] = 'Titel:'; +$lang['img_caption'] = 'Bildunterschrift:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Dateiname:'; +$lang['img_fsize'] = 'Größe:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Schlagwörter:'; +$lang['img_width'] = 'Breite:'; +$lang['img_height'] = 'Höhe:'; $lang['btn_mediaManager'] = 'Im Medien-Manager anzeigen'; $lang['subscr_subscribe_success'] = 'Die Seite %s wurde zur Abonnementliste von %s hinzugefügt'; $lang['subscr_subscribe_error'] = 'Fehler beim Hinzufügen von %s zur Abonnementliste von %s'; diff --git a/inc/lang/de/lang.php b/inc/lang/de/lang.php index 762a55e53..12b7db396 100644 --- a/inc/lang/de/lang.php +++ b/inc/lang/de/lang.php @@ -72,7 +72,7 @@ $lang['btn_media'] = 'Medien-Manager'; $lang['btn_deleteuser'] = 'Benutzerprofil löschen'; $lang['btn_img_backto'] = 'Zurück zu %s'; $lang['btn_mediaManager'] = 'Im Medien-Manager anzeigen'; -$lang['loggedinas'] = 'Angemeldet als'; +$lang['loggedinas'] = 'Angemeldet als:'; $lang['user'] = 'Benutzername'; $lang['pass'] = 'Passwort'; $lang['newpass'] = 'Neues Passwort'; @@ -117,12 +117,12 @@ $lang['license'] = 'Falls nicht anders bezeichnet, ist der Inhalt $lang['licenseok'] = 'Hinweis: Durch das Bearbeiten dieser Seite geben Sie Ihr Einverständnis, dass Ihr Inhalt unter der folgenden Lizenz veröffentlicht wird:'; $lang['searchmedia'] = 'Suche Dateinamen:'; $lang['searchmedia_in'] = 'Suche in %s'; -$lang['txt_upload'] = 'Datei zum Hochladen auswählen'; -$lang['txt_filename'] = 'Hochladen als (optional)'; +$lang['txt_upload'] = 'Datei zum Hochladen auswählen:'; +$lang['txt_filename'] = 'Hochladen als (optional):'; $lang['txt_overwrt'] = 'Bestehende Datei überschreiben'; $lang['maxuploadsize'] = 'Max. %s pro Datei-Upload.'; -$lang['lockedby'] = 'Momentan gesperrt von'; -$lang['lockexpire'] = 'Sperre läuft ab am'; +$lang['lockedby'] = 'Momentan gesperrt von:'; +$lang['lockexpire'] = 'Sperre läuft ab am:'; $lang['js']['willexpire'] = 'Die Sperre zur Bearbeitung dieser Seite läuft in einer Minute ab.\nUm Bearbeitungskonflikte zu vermeiden, sollten Sie sie durch einen Klick auf den Vorschau-Knopf verlängern.'; $lang['js']['notsavedyet'] = 'Nicht gespeicherte Änderungen gehen verloren!'; $lang['js']['searchmedia'] = 'Suche Dateien'; @@ -205,9 +205,9 @@ $lang['diffprevrev'] = 'Vorhergehende Überarbeitung'; $lang['diffnextrev'] = 'Nächste Überarbeitung'; $lang['difflastrev'] = 'Letzte Überarbeitung'; $lang['line'] = 'Zeile'; -$lang['breadcrumb'] = 'Zuletzt angesehen'; -$lang['youarehere'] = 'Sie befinden sich hier'; -$lang['lastmod'] = 'Zuletzt geändert'; +$lang['breadcrumb'] = 'Zuletzt angesehen:'; +$lang['youarehere'] = 'Sie befinden sich hier:'; +$lang['lastmod'] = 'Zuletzt geändert:'; $lang['by'] = 'von'; $lang['deleted'] = 'gelöscht'; $lang['created'] = 'angelegt'; @@ -260,18 +260,18 @@ $lang['admin_register'] = 'Neuen Benutzer anmelden'; $lang['metaedit'] = 'Metadaten bearbeiten'; $lang['metasaveerr'] = 'Die Metadaten konnten nicht gesichert werden'; $lang['metasaveok'] = 'Metadaten gesichert'; -$lang['img_title'] = 'Titel'; -$lang['img_caption'] = 'Bildunterschrift'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Dateiname'; -$lang['img_fsize'] = 'Größe'; -$lang['img_artist'] = 'FotografIn'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Schlagwörter'; -$lang['img_width'] = 'Breite'; -$lang['img_height'] = 'Höhe'; +$lang['img_title'] = 'Titel:'; +$lang['img_caption'] = 'Bildunterschrift:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Dateiname:'; +$lang['img_fsize'] = 'Größe:'; +$lang['img_artist'] = 'FotografIn:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Schlagwörter:'; +$lang['img_width'] = 'Breite:'; +$lang['img_height'] = 'Höhe:'; $lang['subscr_subscribe_success'] = '%s hat nun Änderungen der Seite %s abonniert'; $lang['subscr_subscribe_error'] = '%s kann die Änderungen der Seite %s nicht abonnieren'; $lang['subscr_subscribe_noaddress'] = 'Weil Ihre E-Mail-Adresse fehlt, können Sie das Thema nicht abonnieren'; diff --git a/inc/lang/el/lang.php b/inc/lang/el/lang.php index d97721cdb..e5371c9f3 100644 --- a/inc/lang/el/lang.php +++ b/inc/lang/el/lang.php @@ -56,7 +56,7 @@ $lang['btn_register'] = 'Εγγραφή'; $lang['btn_apply'] = 'Εφαρμογή'; $lang['btn_media'] = 'Διαχειριστής πολυμέσων'; $lang['btn_deleteuser'] = 'Αφαίρεσε τον λογαριασμό μου'; -$lang['loggedinas'] = 'Συνδεδεμένος ως'; +$lang['loggedinas'] = 'Συνδεδεμένος ως:'; $lang['user'] = 'Όνομα χρήστη'; $lang['pass'] = 'Κωδικός'; $lang['newpass'] = 'Νέος κωδικός'; @@ -100,12 +100,12 @@ $lang['license'] = 'Εκτός εάν αναφέρεται δια $lang['licenseok'] = 'Σημείωση: Τροποποιώντας αυτή την σελίδα αποδέχεστε την διάθεση του υλικού σας σύμφωνα με την ακόλουθη άδεια:'; $lang['searchmedia'] = 'Αναζήτηση αρχείου:'; $lang['searchmedia_in'] = 'Αναζήτηση σε %s'; -$lang['txt_upload'] = 'Επιλέξτε αρχείο για φόρτωση'; -$lang['txt_filename'] = 'Επιλέξτε νέο όνομα αρχείου (προαιρετικό)'; +$lang['txt_upload'] = 'Επιλέξτε αρχείο για φόρτωση:'; +$lang['txt_filename'] = 'Επιλέξτε νέο όνομα αρχείου (προαιρετικό):'; $lang['txt_overwrt'] = 'Αντικατάσταση υπάρχοντος αρχείου'; $lang['maxuploadsize'] = 'Μέγιστο μέγεθος αρχείου: %s.'; -$lang['lockedby'] = 'Προσωρινά κλειδωμένο από'; -$lang['lockexpire'] = 'Το κλείδωμα λήγει στις'; +$lang['lockedby'] = 'Προσωρινά κλειδωμένο από:'; +$lang['lockexpire'] = 'Το κλείδωμα λήγει στις:'; $lang['js']['willexpire'] = 'Το κλείδωμά σας για την επεξεργασία αυτής της σελίδας θα λήξει σε ένα λεπτό.\n Για να το ανανεώσετε χρησιμοποιήστε την Προεπισκόπηση.'; $lang['js']['notsavedyet'] = 'Οι μη αποθηκευμένες αλλαγές θα χαθούν. Θέλετε να συνεχίσετε;'; @@ -186,9 +186,9 @@ $lang['diff_type'] = 'Προβολή διαφορών:'; $lang['diff_inline'] = 'Σε σειρά'; $lang['diff_side'] = 'Δίπλα-δίπλα'; $lang['line'] = 'Γραμμή'; -$lang['breadcrumb'] = 'Ιστορικό'; -$lang['youarehere'] = 'Είστε εδώ'; -$lang['lastmod'] = 'Τελευταία τροποποίηση'; +$lang['breadcrumb'] = 'Ιστορικό:'; +$lang['youarehere'] = 'Είστε εδώ:'; +$lang['lastmod'] = 'Τελευταία τροποποίηση:'; $lang['by'] = 'από'; $lang['deleted'] = 'διαγράφηκε'; $lang['created'] = 'δημιουργήθηκε'; @@ -242,18 +242,18 @@ $lang['metaedit'] = 'Τροποποίηση metadata'; $lang['metasaveerr'] = 'Η αποθήκευση των metadata απέτυχε'; $lang['metasaveok'] = 'Επιτυχής αποθήκευση metadata'; $lang['btn_img_backto'] = 'Επιστροφή σε %s'; -$lang['img_title'] = 'Τίτλος'; -$lang['img_caption'] = 'Λεζάντα'; -$lang['img_date'] = 'Ημερομηνία'; -$lang['img_fname'] = 'Όνομα αρχείου'; -$lang['img_fsize'] = 'Μέγεθος'; -$lang['img_artist'] = 'Καλλιτέχνης'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Λέξεις-κλειδιά'; -$lang['img_width'] = 'Πλάτος'; -$lang['img_height'] = 'Ύψος'; +$lang['img_title'] = 'Τίτλος:'; +$lang['img_caption'] = 'Λεζάντα:'; +$lang['img_date'] = 'Ημερομηνία:'; +$lang['img_fname'] = 'Όνομα αρχείου:'; +$lang['img_fsize'] = 'Μέγεθος:'; +$lang['img_artist'] = 'Καλλιτέχνης:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Λέξεις-κλειδιά:'; +$lang['img_width'] = 'Πλάτος:'; +$lang['img_height'] = 'Ύψος:'; $lang['btn_mediaManager'] = 'Εμφάνιση στον διαχειριστή πολυμέσων'; $lang['subscr_subscribe_success'] = 'Ο/η %s προστέθηκε στην λίστα ειδοποιήσεων για το %s'; $lang['subscr_subscribe_error'] = 'Σφάλμα κατά την προσθήκη του/της %s στην λίστα ειδοποιήσεων για το %s'; diff --git a/inc/lang/en/lang.php b/inc/lang/en/lang.php index 592289185..7493c50e6 100644 --- a/inc/lang/en/lang.php +++ b/inc/lang/en/lang.php @@ -55,7 +55,7 @@ $lang['btn_deleteuser'] = 'Remove My Account'; $lang['btn_img_backto'] = 'Back to %s'; $lang['btn_mediaManager'] = 'View in media manager'; -$lang['loggedinas'] = 'Logged in as'; +$lang['loggedinas'] = 'Logged in as:'; $lang['user'] = 'Username'; $lang['pass'] = 'Password'; $lang['newpass'] = 'New password'; @@ -105,12 +105,12 @@ $lang['licenseok'] = 'Note: By editing this page you agree to licens $lang['searchmedia'] = 'Search file name:'; $lang['searchmedia_in'] = 'Search in %s'; -$lang['txt_upload'] = 'Select file to upload'; -$lang['txt_filename'] = 'Upload as (optional)'; +$lang['txt_upload'] = 'Select file to upload:'; +$lang['txt_filename'] = 'Upload as (optional):'; $lang['txt_overwrt'] = 'Overwrite existing file'; $lang['maxuploadsize'] = 'Upload max. %s per file.'; -$lang['lockedby'] = 'Currently locked by'; -$lang['lockexpire'] = 'Lock expires at'; +$lang['lockedby'] = 'Currently locked by:'; +$lang['lockexpire'] = 'Lock expires at:'; $lang['js']['willexpire'] = 'Your lock for editing this page is about to expire in a minute.\nTo avoid conflicts use the preview button to reset the locktimer.'; $lang['js']['notsavedyet'] = 'Unsaved changes will be lost.'; @@ -199,9 +199,9 @@ $lang['difflastrev'] = 'Last revision'; $lang['diffbothprevrev'] = 'Both sides previous revision'; $lang['diffbothnextrev'] = 'Both sides next revision'; $lang['line'] = 'Line'; -$lang['breadcrumb'] = 'Trace'; -$lang['youarehere'] = 'You are here'; -$lang['lastmod'] = 'Last modified'; +$lang['breadcrumb'] = 'Trace:'; +$lang['youarehere'] = 'You are here:'; +$lang['lastmod'] = 'Last modified:'; $lang['by'] = 'by'; $lang['deleted'] = 'removed'; $lang['created'] = 'created'; @@ -260,18 +260,18 @@ $lang['admin_register'] = 'Add new user'; $lang['metaedit'] = 'Edit Metadata'; $lang['metasaveerr'] = 'Writing metadata failed'; $lang['metasaveok'] = 'Metadata saved'; -$lang['img_title'] = 'Title'; -$lang['img_caption'] = 'Caption'; -$lang['img_date'] = 'Date'; -$lang['img_fname'] = 'Filename'; -$lang['img_fsize'] = 'Size'; -$lang['img_artist'] = 'Photographer'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Keywords'; -$lang['img_width'] = 'Width'; -$lang['img_height'] = 'Height'; +$lang['img_title'] = 'Title:'; +$lang['img_caption'] = 'Caption:'; +$lang['img_date'] = 'Date:'; +$lang['img_fname'] = 'Filename:'; +$lang['img_fsize'] = 'Size:'; +$lang['img_artist'] = 'Photographer:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Keywords:'; +$lang['img_width'] = 'Width:'; +$lang['img_height'] = 'Height:'; $lang['subscr_subscribe_success'] = 'Added %s to subscription list for %s'; $lang['subscr_subscribe_error'] = 'Error adding %s to subscription list for %s'; diff --git a/inc/lang/eo/lang.php b/inc/lang/eo/lang.php index 4a4a52cac..f81de7fa1 100644 --- a/inc/lang/eo/lang.php +++ b/inc/lang/eo/lang.php @@ -56,7 +56,7 @@ $lang['btn_media'] = 'Medio-administrilo'; $lang['btn_deleteuser'] = 'Forigi mian konton'; $lang['btn_img_backto'] = 'Iri reen al %s'; $lang['btn_mediaManager'] = 'Rigardi en aŭdvidaĵ-administrilo'; -$lang['loggedinas'] = 'Ensalutinta kiel'; +$lang['loggedinas'] = 'Ensalutinta kiel:'; $lang['user'] = 'Uzant-nomo'; $lang['pass'] = 'Pasvorto'; $lang['newpass'] = 'Nova pasvorto'; @@ -101,12 +101,12 @@ $lang['license'] = 'Krom kie rekte indikite, enhavo de tiu ĉi vik $lang['licenseok'] = 'Rimarku: redaktante tiun ĉi paĝon vi konsentas publikigi vian enhavon laŭ la jena permesilo:'; $lang['searchmedia'] = 'Serĉi dosiernomon:'; $lang['searchmedia_in'] = 'Serĉi en %s'; -$lang['txt_upload'] = 'Elektu dosieron por alŝuti'; -$lang['txt_filename'] = 'Alŝuti kiel (laŭvole)'; +$lang['txt_upload'] = 'Elektu dosieron por alŝuti:'; +$lang['txt_filename'] = 'Alŝuti kiel (laŭvole):'; $lang['txt_overwrt'] = 'Anstataŭigi ekzistantan dosieron'; $lang['maxuploadsize'] = 'Alŝuto maks. %s po dosiero.'; -$lang['lockedby'] = 'Nune ŝlosita de'; -$lang['lockexpire'] = 'Ŝlosado ĉesos je'; +$lang['lockedby'] = 'Nune ŝlosita de:'; +$lang['lockexpire'] = 'Ŝlosado ĉesos je:'; $lang['js']['willexpire'] = 'Vi povos redakti ĉi tiun paĝon post unu minuto.\nSe vi volas nuligi tempokontrolon de la ŝlosado, premu la butonon "Antaŭrigardi".'; $lang['js']['notsavedyet'] = 'Ne konservitaj modifoj perdiĝos. Ĉu vi certe volas daŭrigi la procezon?'; @@ -192,9 +192,9 @@ $lang['difflastrev'] = 'Lasta revizio'; $lang['diffbothprevrev'] = 'Sur ambaŭ flankoj antaŭa revizio'; $lang['diffbothnextrev'] = 'Sur ambaŭ flankoj sekva revizio'; $lang['line'] = 'Linio'; -$lang['breadcrumb'] = 'Paŝoj'; -$lang['youarehere'] = 'Vi estas ĉi tie'; -$lang['lastmod'] = 'Lastaj ŝanĝoj'; +$lang['breadcrumb'] = 'Paŝoj:'; +$lang['youarehere'] = 'Vi estas ĉi tie:'; +$lang['lastmod'] = 'Lastaj ŝanĝoj:'; $lang['by'] = 'de'; $lang['deleted'] = 'forigita'; $lang['created'] = 'kreita'; @@ -247,18 +247,18 @@ $lang['admin_register'] = 'Aldoni novan uzanton'; $lang['metaedit'] = 'Redakti metadatumaron'; $lang['metasaveerr'] = 'La konservo de metadatumaro malsukcesis'; $lang['metasaveok'] = 'La metadatumaro konserviĝis'; -$lang['img_title'] = 'Titolo'; -$lang['img_caption'] = 'Priskribo'; -$lang['img_date'] = 'Dato'; -$lang['img_fname'] = 'Dosiernomo'; -$lang['img_fsize'] = 'Grandeco'; -$lang['img_artist'] = 'Fotisto'; -$lang['img_copyr'] = 'Kopirajtoj'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Kamerao'; -$lang['img_keywords'] = 'Ŝlosilvortoj'; -$lang['img_width'] = 'Larĝeco'; -$lang['img_height'] = 'Alteco'; +$lang['img_title'] = 'Titolo:'; +$lang['img_caption'] = 'Priskribo:'; +$lang['img_date'] = 'Dato:'; +$lang['img_fname'] = 'Dosiernomo:'; +$lang['img_fsize'] = 'Grandeco:'; +$lang['img_artist'] = 'Fotisto:'; +$lang['img_copyr'] = 'Kopirajtoj:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Kamerao:'; +$lang['img_keywords'] = 'Ŝlosilvortoj:'; +$lang['img_width'] = 'Larĝeco:'; +$lang['img_height'] = 'Alteco:'; $lang['subscr_subscribe_success'] = 'Aldonis %s al la abonlisto por %s'; $lang['subscr_subscribe_error'] = 'Eraro dum aldono de %s al la abonlisto por %s'; $lang['subscr_subscribe_noaddress'] = 'Ne estas adreso ligita al via ensaluto, ne eblas aldoni vin al la abonlisto'; diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 9525a4c08..f3034759f 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -80,7 +80,7 @@ $lang['btn_media'] = 'Gestor de ficheros'; $lang['btn_deleteuser'] = 'Elimina Mi Cuenta'; $lang['btn_img_backto'] = 'Volver a %s'; $lang['btn_mediaManager'] = 'Ver en el Administrador de medios'; -$lang['loggedinas'] = 'Conectado como '; +$lang['loggedinas'] = 'Conectado como :'; $lang['user'] = 'Usuario'; $lang['pass'] = 'Contraseña'; $lang['newpass'] = 'Nueva contraseña'; @@ -125,12 +125,12 @@ $lang['license'] = 'Excepto donde se indique lo contrario, el cont $lang['licenseok'] = 'Nota: Al editar esta página, estás de acuerdo en autorizar su contenido bajo la siguiente licencia:'; $lang['searchmedia'] = 'Buscar archivo:'; $lang['searchmedia_in'] = 'Buscar en %s'; -$lang['txt_upload'] = 'Selecciona el archivo a subir'; -$lang['txt_filename'] = 'Subir como (opcional)'; +$lang['txt_upload'] = 'Selecciona el archivo a subir:'; +$lang['txt_filename'] = 'Subir como (opcional):'; $lang['txt_overwrt'] = 'Sobreescribir archivo existente'; $lang['maxuploadsize'] = 'Peso máximo de %s por archivo'; -$lang['lockedby'] = 'Actualmente bloqueado por'; -$lang['lockexpire'] = 'El bloqueo expira en'; +$lang['lockedby'] = 'Actualmente bloqueado por:'; +$lang['lockexpire'] = 'El bloqueo expira en:'; $lang['js']['willexpire'] = 'El bloqueo para la edición de esta página expira en un minuto.\nPAra prevenir conflictos uso el botón Previsualizar para restaurar el contador de bloqueo.'; $lang['js']['notsavedyet'] = 'Los cambios que no se han guardado se perderán. ¿Realmente quieres continuar?'; @@ -217,9 +217,9 @@ $lang['difflastrev'] = 'Última revisión'; $lang['diffbothprevrev'] = 'Ambos lados, revisión anterior'; $lang['diffbothnextrev'] = 'Ambos lados, revisión siguiente'; $lang['line'] = 'Línea'; -$lang['breadcrumb'] = 'Traza'; -$lang['youarehere'] = 'Estás aquí'; -$lang['lastmod'] = 'Última modificación'; +$lang['breadcrumb'] = 'Traza:'; +$lang['youarehere'] = 'Estás aquí:'; +$lang['lastmod'] = 'Última modificación:'; $lang['by'] = 'por'; $lang['deleted'] = 'borrado'; $lang['created'] = 'creado'; @@ -272,18 +272,18 @@ $lang['admin_register'] = 'Añadir nuevo usuario'; $lang['metaedit'] = 'Editar metadatos'; $lang['metasaveerr'] = 'La escritura de los metadatos ha fallado'; $lang['metasaveok'] = 'Los metadatos han sido guardados'; -$lang['img_title'] = 'Título'; -$lang['img_caption'] = 'Epígrafe'; -$lang['img_date'] = 'Fecha'; -$lang['img_fname'] = 'Nombre de fichero'; -$lang['img_fsize'] = 'Tamaño'; -$lang['img_artist'] = 'Fotógrafo'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Cámara'; -$lang['img_keywords'] = 'Palabras claves'; -$lang['img_width'] = 'Ancho'; -$lang['img_height'] = 'Alto'; +$lang['img_title'] = 'Título:'; +$lang['img_caption'] = 'Epígrafe:'; +$lang['img_date'] = 'Fecha:'; +$lang['img_fname'] = 'Nombre de fichero:'; +$lang['img_fsize'] = 'Tamaño:'; +$lang['img_artist'] = 'Fotógrafo:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Cámara:'; +$lang['img_keywords'] = 'Palabras claves:'; +$lang['img_width'] = 'Ancho:'; +$lang['img_height'] = 'Alto:'; $lang['subscr_subscribe_success'] = 'Se agregó %s a las listas de suscripción para %s'; $lang['subscr_subscribe_error'] = 'Error al agregar %s a las listas de suscripción para %s'; $lang['subscr_subscribe_noaddress'] = 'No hay dirección asociada con tu registro, no se puede agregarte a la lista de suscripción'; diff --git a/inc/lang/et/lang.php b/inc/lang/et/lang.php index 49fc33e17..9ae06d7d2 100644 --- a/inc/lang/et/lang.php +++ b/inc/lang/et/lang.php @@ -54,7 +54,7 @@ $lang['btn_register'] = 'Registreeri uus kasutaja'; $lang['btn_apply'] = 'Kinnita'; $lang['btn_media'] = 'Meedia haldur'; $lang['btn_deleteuser'] = 'Eemalda minu konto'; -$lang['loggedinas'] = 'Logis sisse kui'; +$lang['loggedinas'] = 'Logis sisse kui:'; $lang['user'] = 'Kasutaja'; $lang['pass'] = 'Parool'; $lang['newpass'] = 'Uus parool'; @@ -101,12 +101,12 @@ $lang['license'] = 'Kus pole öeldud teisiti, kehtib selle wiki si $lang['licenseok'] = 'Teadmiseks: Toimetades seda lehte, nõustud avaldama oma sisu järgmise lepingu alusel:'; $lang['searchmedia'] = 'Otsi failinime:'; $lang['searchmedia_in'] = 'Otsi %s'; -$lang['txt_upload'] = 'Vali fail, mida üles laadida'; -$lang['txt_filename'] = 'Siseta oma Wikinimi (soovituslik)'; +$lang['txt_upload'] = 'Vali fail, mida üles laadida:'; +$lang['txt_filename'] = 'Siseta oma Wikinimi (soovituslik):'; $lang['txt_overwrt'] = 'Kirjutan olemasoleva faili üle'; $lang['maxuploadsize'] = 'Üleslaadimiseks lubatu enim %s faili kohta.'; -$lang['lockedby'] = 'Praegu on selle lukustanud'; -$lang['lockexpire'] = 'Lukustus aegub'; +$lang['lockedby'] = 'Praegu on selle lukustanud:'; +$lang['lockexpire'] = 'Lukustus aegub:'; $lang['js']['willexpire'] = 'Teie lukustus selle lehe toimetamisele aegub umbes minuti pärast.\nIgasugu probleemide vältimiseks kasuta eelvaate nuppu, et lukustusarvesti taas tööle panna.'; $lang['js']['notsavedyet'] = 'Sul on seal salvestamata muudatusi, mis kohe kõige kaduva teed lähevad. Kas Sa ikka tahad edasi liikuda?'; @@ -188,9 +188,9 @@ $lang['diff_type'] = 'Vaata erinevusi:'; $lang['diff_inline'] = 'Jooksvalt'; $lang['diff_side'] = 'Kõrvuti'; $lang['line'] = 'Rida'; -$lang['breadcrumb'] = 'Käidud rada'; -$lang['youarehere'] = 'Sa oled siin'; -$lang['lastmod'] = 'Viimati muutnud'; +$lang['breadcrumb'] = 'Käidud rada:'; +$lang['youarehere'] = 'Sa oled siin:'; +$lang['lastmod'] = 'Viimati muutnud:'; $lang['by'] = 'persoon'; $lang['deleted'] = 'eemaldatud'; $lang['created'] = 'tekitatud'; @@ -243,19 +243,19 @@ $lang['metaedit'] = 'Muuda lisainfot'; $lang['metasaveerr'] = 'Lisainfo salvestamine läks untsu.'; $lang['metasaveok'] = 'Lisainfo salvestatud'; $lang['btn_img_backto'] = 'Tagasi %s'; -$lang['img_title'] = 'Tiitel'; -$lang['img_caption'] = 'Kirjeldus'; -$lang['img_date'] = 'Kuupäev'; -$lang['img_fname'] = 'Faili nimi'; -$lang['img_fsize'] = 'Suurus'; -$lang['img_artist'] = 'Autor'; -$lang['img_copyr'] = 'Autoriõigused'; -$lang['img_format'] = 'Formaat'; -$lang['img_camera'] = 'Kaamera'; -$lang['img_keywords'] = 'Võtmesõnad'; -$lang['img_width'] = 'Laius'; -$lang['img_height'] = 'Kõrgus'; -$lang['img_manager'] = 'Näita meediahalduris'; +$lang['img_title'] = 'Tiitel:'; +$lang['img_caption'] = 'Kirjeldus:'; +$lang['img_date'] = 'Kuupäev:'; +$lang['img_fname'] = 'Faili nimi:'; +$lang['img_fsize'] = 'Suurus:'; +$lang['img_artist'] = 'Autor:'; +$lang['img_copyr'] = 'Autoriõigused:'; +$lang['img_format'] = 'Formaat:'; +$lang['img_camera'] = 'Kaamera:'; +$lang['img_keywords'] = 'Võtmesõnad:'; +$lang['img_width'] = 'Laius:'; +$lang['img_height'] = 'Kõrgus:'; +$lang['btn_mediaManager'] = 'Näita meediahalduris'; $lang['subscr_subscribe_success'] = '%s lisati %s tellijaks'; $lang['subscr_subscribe_error'] = 'Viga %s lisamisel %s tellijaks'; $lang['subscr_subscribe_noaddress'] = 'Sinu kasutajaga pole seotud ühtegi aadressi, seega ei saa sind tellijaks lisada'; diff --git a/inc/lang/eu/lang.php b/inc/lang/eu/lang.php index 9a38099b3..0c996feaf 100644 --- a/inc/lang/eu/lang.php +++ b/inc/lang/eu/lang.php @@ -49,7 +49,7 @@ $lang['btn_revert'] = 'Berrezarri'; $lang['btn_register'] = 'Erregistratu'; $lang['btn_apply'] = 'Baieztatu'; $lang['btn_media'] = 'Media Kudeatzailea'; -$lang['loggedinas'] = 'Erabiltzailea'; +$lang['loggedinas'] = 'Erabiltzailea:'; $lang['user'] = 'Erabiltzailea'; $lang['pass'] = 'Pasahitza'; $lang['newpass'] = 'Pasahitz berria'; @@ -88,8 +88,8 @@ $lang['license'] = 'Besterik esan ezean, wiki hontako edukia ondor $lang['licenseok'] = 'Oharra: Orri hau editatzean, zure edukia ondorengo lizentziapean argitaratzea onartzen duzu: '; $lang['searchmedia'] = 'Bilatu fitxategi izena:'; $lang['searchmedia_in'] = 'Bilatu %s-n'; -$lang['txt_upload'] = 'Ireki nahi den fitxategia aukeratu'; -$lang['txt_filename'] = 'Idatzi wikiname-a (aukerazkoa)'; +$lang['txt_upload'] = 'Ireki nahi den fitxategia aukeratu:'; +$lang['txt_filename'] = 'Idatzi wikiname-a (aukerazkoa):'; $lang['txt_overwrt'] = 'Oraingo fitxategiaren gainean idatzi'; $lang['lockedby'] = 'Momentu honetan blokeatzen:'; $lang['lockexpire'] = 'Blokeaketa iraungitzen da:'; @@ -172,9 +172,9 @@ $lang['diff_type'] = 'Ikusi diferentziak:'; $lang['diff_inline'] = 'Lerro tartean'; $lang['diff_side'] = 'Ondoz ondo'; $lang['line'] = 'Marra'; -$lang['breadcrumb'] = 'Traza'; -$lang['youarehere'] = 'Hemen zaude'; -$lang['lastmod'] = 'Azken aldaketa'; +$lang['breadcrumb'] = 'Traza:'; +$lang['youarehere'] = 'Hemen zaude:'; +$lang['lastmod'] = 'Azken aldaketa:'; $lang['by'] = 'egilea:'; $lang['deleted'] = 'ezabatua'; $lang['created'] = 'sortua'; @@ -228,18 +228,18 @@ $lang['metaedit'] = 'Metadatua Aldatu'; $lang['metasaveerr'] = 'Metadatuaren idazketak huts egin du'; $lang['metasaveok'] = 'Metadatua gordea'; $lang['btn_img_backto'] = 'Atzera hona %s'; -$lang['img_title'] = 'Izenburua'; -$lang['img_caption'] = 'Epigrafea'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Fitxategi izena'; -$lang['img_fsize'] = 'Tamaina'; -$lang['img_artist'] = 'Artista'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formatua'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Hitz-gakoak'; -$lang['img_width'] = 'Zabalera'; -$lang['img_height'] = 'Altuera'; +$lang['img_title'] = 'Izenburua:'; +$lang['img_caption'] = 'Epigrafea:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Fitxategi izena:'; +$lang['img_fsize'] = 'Tamaina:'; +$lang['img_artist'] = 'Artista:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formatua:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Hitz-gakoak:'; +$lang['img_width'] = 'Zabalera:'; +$lang['img_height'] = 'Altuera:'; $lang['btn_mediaManager'] = 'Media kudeatzailean ikusi'; $lang['subscr_subscribe_success'] = '%s gehitua %s-ren harpidetza zerrendara'; $lang['subscr_subscribe_error'] = 'Errorea %s gehitzen %s-ren harpidetza zerrendara'; diff --git a/inc/lang/fa/lang.php b/inc/lang/fa/lang.php index 1e819419f..d3016c0bd 100644 --- a/inc/lang/fa/lang.php +++ b/inc/lang/fa/lang.php @@ -98,12 +98,12 @@ $lang['license'] = 'به جز مواردی که ذکر می‌شو $lang['licenseok'] = 'توجه: با ویرایش این صفحه، شما مجوز زیر را تایید می‌کنید:'; $lang['searchmedia'] = 'نام فایل برای جستجو:'; $lang['searchmedia_in'] = 'جستجو در %s'; -$lang['txt_upload'] = 'فایل را برای ارسال انتخاب کنید'; -$lang['txt_filename'] = 'ارسال به صورت (اختیاری)'; +$lang['txt_upload'] = 'فایل را برای ارسال انتخاب کنید:'; +$lang['txt_filename'] = 'ارسال به صورت (اختیاری):'; $lang['txt_overwrt'] = 'بر روی فایل موجود بنویس'; $lang['maxuploadsize'] = 'حداکثر %s برای هر فایل مجاز است.'; -$lang['lockedby'] = 'در حال حاضر قفل شده است'; -$lang['lockexpire'] = 'قفل منقضی شده است'; +$lang['lockedby'] = 'در حال حاضر قفل شده است:'; +$lang['lockexpire'] = 'قفل منقضی شده است:'; $lang['js']['willexpire'] = 'حالت قفل شما مدتی است منقضی شده است \n برای جلوگیری از تداخل دکمه‌ی پیش‌نمایش را برای صفر شدن ساعت قفل بزنید.'; $lang['js']['notsavedyet'] = 'تغییرات ذخیره شده از بین خواهد رفت. می‌خواهید ادامه دهید؟'; @@ -185,9 +185,9 @@ $lang['diff_type'] = 'مشاهده تغییرات:'; $lang['diff_inline'] = 'خطی'; $lang['diff_side'] = 'کلی'; $lang['line'] = 'خط'; -$lang['breadcrumb'] = 'ردپا'; -$lang['youarehere'] = 'محل شما'; -$lang['lastmod'] = 'آخرین ویرایش'; +$lang['breadcrumb'] = 'ردپا:'; +$lang['youarehere'] = 'محل شما:'; +$lang['lastmod'] = 'آخرین ویرایش:'; $lang['by'] = 'توسط'; $lang['deleted'] = 'حذف شد'; $lang['created'] = 'ایجاد شد'; @@ -241,18 +241,18 @@ $lang['metaedit'] = 'ویرایش داده‌های متا'; $lang['metasaveerr'] = 'نوشتن داده‌نما با مشکل مواجه شد'; $lang['metasaveok'] = 'داده‌نما ذخیره شد'; $lang['btn_img_backto'] = 'بازگشت به %s'; -$lang['img_title'] = 'عنوان تصویر'; -$lang['img_caption'] = 'عنوان'; -$lang['img_date'] = 'تاریخ'; -$lang['img_fname'] = 'نام فایل'; -$lang['img_fsize'] = 'اندازه'; -$lang['img_artist'] = 'عکاس/هنرمند'; -$lang['img_copyr'] = 'دارنده‌ی حق تکثیر'; -$lang['img_format'] = 'فرمت'; -$lang['img_camera'] = 'دوربین'; -$lang['img_keywords'] = 'واژه‌های کلیدی'; -$lang['img_width'] = 'عرض'; -$lang['img_height'] = 'ارتفاع'; +$lang['img_title'] = 'عنوان تصویر:'; +$lang['img_caption'] = 'عنوان:'; +$lang['img_date'] = 'تاریخ:'; +$lang['img_fname'] = 'نام فایل:'; +$lang['img_fsize'] = 'اندازه:'; +$lang['img_artist'] = 'عکاس/هنرمند:'; +$lang['img_copyr'] = 'دارنده‌ی حق تکثیر:'; +$lang['img_format'] = 'فرمت:'; +$lang['img_camera'] = 'دوربین:'; +$lang['img_keywords'] = 'واژه‌های کلیدی:'; +$lang['img_width'] = 'عرض:'; +$lang['img_height'] = 'ارتفاع:'; $lang['btn_mediaManager'] = 'دیدن در مدیریت محتوای چند رسانه ای'; $lang['subscr_subscribe_success'] = '%s به لیست آبونه %s افزوده شد'; $lang['subscr_subscribe_error'] = 'اشکال در افزودن %s به لیست آبونه %s'; diff --git a/inc/lang/fi/lang.php b/inc/lang/fi/lang.php index 9b877013e..0f82c3b7a 100644 --- a/inc/lang/fi/lang.php +++ b/inc/lang/fi/lang.php @@ -53,7 +53,7 @@ $lang['btn_register'] = 'Rekisteröidy'; $lang['btn_apply'] = 'Toteuta'; $lang['btn_media'] = 'Media manager'; $lang['btn_deleteuser'] = 'Poista tilini'; -$lang['loggedinas'] = 'Kirjautunut nimellä'; +$lang['loggedinas'] = 'Kirjautunut nimellä:'; $lang['user'] = 'Käyttäjänimi'; $lang['pass'] = 'Salasana'; $lang['newpass'] = 'Uusi salasana'; @@ -98,12 +98,12 @@ $lang['license'] = 'Jollei muuta ole mainittu, niin sisältö täs $lang['licenseok'] = 'Huom: Muokkaamalla tätä sivua suostut lisensoimaan sisällön seuraavan lisenssin mukaisesti:'; $lang['searchmedia'] = 'Etsi tiedostoa nimeltä:'; $lang['searchmedia_in'] = 'Etsi kohteesta %s'; -$lang['txt_upload'] = 'Valitse tiedosto lähetettäväksi'; -$lang['txt_filename'] = 'Lähetä nimellä (valinnainen)'; +$lang['txt_upload'] = 'Valitse tiedosto lähetettäväksi:'; +$lang['txt_filename'] = 'Lähetä nimellä (valinnainen):'; $lang['txt_overwrt'] = 'Ylikirjoita olemassa oleva'; $lang['maxuploadsize'] = 'Palvelimelle siirto max. %s / tiedosto.'; -$lang['lockedby'] = 'Tällä hetkellä tiedoston on lukinnut'; -$lang['lockexpire'] = 'Lukitus päättyy'; +$lang['lockedby'] = 'Tällä hetkellä tiedoston on lukinnut:'; +$lang['lockexpire'] = 'Lukitus päättyy:'; $lang['js']['willexpire'] = 'Lukituksesi tämän sivun muokkaukseen päättyy minuutin kuluttua.\nRistiriitojen välttämiseksi paina esikatselu-nappia nollataksesi lukitusajan.'; $lang['js']['notsavedyet'] = 'Dokumentissa on tallentamattomia muutoksia, jotka häviävät. Haluatko varmasti jatkaa?'; @@ -185,9 +185,9 @@ $lang['diff_type'] = 'Näytä eroavaisuudet:'; $lang['diff_inline'] = 'Sisäkkäin'; $lang['diff_side'] = 'Vierekkäin'; $lang['line'] = 'Rivi'; -$lang['breadcrumb'] = 'Jäljet'; -$lang['youarehere'] = 'Olet täällä'; -$lang['lastmod'] = 'Viimeksi muutettu'; +$lang['breadcrumb'] = 'Jäljet:'; +$lang['youarehere'] = 'Olet täällä:'; +$lang['lastmod'] = 'Viimeksi muutettu:'; $lang['by'] = '/'; $lang['deleted'] = 'poistettu'; $lang['created'] = 'luotu'; @@ -241,18 +241,18 @@ $lang['metaedit'] = 'Muokkaa metadataa'; $lang['metasaveerr'] = 'Metadatan kirjoittaminen epäonnistui'; $lang['metasaveok'] = 'Metadata tallennettu'; $lang['btn_img_backto'] = 'Takaisin %s'; -$lang['img_title'] = 'Otsikko'; -$lang['img_caption'] = 'Kuvateksti'; -$lang['img_date'] = 'Päivämäärä'; -$lang['img_fname'] = 'Tiedoston nimi'; -$lang['img_fsize'] = 'Koko'; -$lang['img_artist'] = 'Kuvaaja'; -$lang['img_copyr'] = 'Tekijänoikeus'; -$lang['img_format'] = 'Formaatti'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Avainsanat'; -$lang['img_width'] = 'Leveys'; -$lang['img_height'] = 'Korkeus'; +$lang['img_title'] = 'Otsikko:'; +$lang['img_caption'] = 'Kuvateksti:'; +$lang['img_date'] = 'Päivämäärä:'; +$lang['img_fname'] = 'Tiedoston nimi:'; +$lang['img_fsize'] = 'Koko:'; +$lang['img_artist'] = 'Kuvaaja:'; +$lang['img_copyr'] = 'Tekijänoikeus:'; +$lang['img_format'] = 'Formaatti:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Avainsanat:'; +$lang['img_width'] = 'Leveys:'; +$lang['img_height'] = 'Korkeus:'; $lang['btn_mediaManager'] = 'Näytä mediamanagerissa'; $lang['subscr_subscribe_success'] = '%s lisätty %s tilauslistalle'; $lang['subscr_subscribe_error'] = 'Virhe lisättäessä %s tilauslistalle %s'; diff --git a/inc/lang/fo/lang.php b/inc/lang/fo/lang.php index 2613186eb..b326d27ac 100644 --- a/inc/lang/fo/lang.php +++ b/inc/lang/fo/lang.php @@ -45,7 +45,7 @@ $lang['btn_recover'] = 'Endurbygg kladdu'; $lang['btn_draftdel'] = 'Sletta'; $lang['btn_revert'] = 'Endurbygg'; $lang['btn_register'] = 'Melda til'; -$lang['loggedinas'] = 'Ritavur inn sum'; +$lang['loggedinas'] = 'Ritavur inn sum:'; $lang['user'] = 'Brúkaranavn'; $lang['pass'] = 'Loyniorð'; $lang['newpass'] = 'Nýtt loyniorð'; @@ -83,11 +83,11 @@ $lang['license'] = 'Um ikki annað er tilskilað, so er tilfar á $lang['licenseok'] = 'Legg til merkis: Við at dagføra hesa síðu samtykkir tú at loyva margfalding av tilfarinum undir fylgjandi treytum:'; $lang['searchmedia'] = 'Leita eftir fíl navn:'; $lang['searchmedia_in'] = 'Leita í %s'; -$lang['txt_upload'] = 'Vel tí fílu sum skal leggjast upp'; -$lang['txt_filename'] = 'Sláa inn wikinavn (valfrítt)'; +$lang['txt_upload'] = 'Vel tí fílu sum skal leggjast upp:'; +$lang['txt_filename'] = 'Sláa inn wikinavn (valfrítt):'; $lang['txt_overwrt'] = 'Yvurskriva verandi fílu'; -$lang['lockedby'] = 'Fyribils læst av'; -$lang['lockexpire'] = 'Lásið ferð úr gildi kl.'; +$lang['lockedby'] = 'Fyribils læst av:'; +$lang['lockexpire'] = 'Lásið ferð úr gildi kl.:'; $lang['js']['willexpire'] = 'Títt lás á hetta skjalið ferð úr gildi um ein minnutt.\nTrýst á Forskoðan-knappin fyri at sleppa undan trupulleikum.'; $lang['js']['notsavedyet'] = 'Tað eru gjørdar broytingar í skjalinum, um tú haldur fram vilja broytingar fara fyri skeytið. Ynskir tú at halda fram?'; @@ -124,9 +124,9 @@ $lang['current'] = 'núverandi'; $lang['yours'] = 'Tín útgáva'; $lang['diff'] = 'vís broytingar í mun til núverandi útgávu'; $lang['line'] = 'Linja'; -$lang['breadcrumb'] = 'Leið'; -$lang['youarehere'] = 'Tú ert her'; -$lang['lastmod'] = 'Seinast broytt'; +$lang['breadcrumb'] = 'Leið:'; +$lang['youarehere'] = 'Tú ert her:'; +$lang['lastmod'] = 'Seinast broytt:'; $lang['by'] = 'av'; $lang['deleted'] = 'strika'; $lang['created'] = 'stovna'; @@ -158,14 +158,14 @@ $lang['metaedit'] = 'Rætta metadáta'; $lang['metasaveerr'] = 'Brek við skriving av metadáta'; $lang['metasaveok'] = 'Metadáta goymt'; $lang['btn_img_backto'] = 'Aftur til %s'; -$lang['img_title'] = 'Heitið'; -$lang['img_caption'] = 'Myndatekstur'; -$lang['img_date'] = 'Dato'; -$lang['img_fname'] = 'Fílunavn'; -$lang['img_fsize'] = 'Stødd'; -$lang['img_artist'] = 'Myndafólk'; -$lang['img_copyr'] = 'Upphavsrættur'; -$lang['img_format'] = 'Snið'; -$lang['img_camera'] = 'Fototól'; -$lang['img_keywords'] = 'Evnisorð'; +$lang['img_title'] = 'Heitið:'; +$lang['img_caption'] = 'Myndatekstur:'; +$lang['img_date'] = 'Dato:'; +$lang['img_fname'] = 'Fílunavn:'; +$lang['img_fsize'] = 'Stødd:'; +$lang['img_artist'] = 'Myndafólk:'; +$lang['img_copyr'] = 'Upphavsrættur:'; +$lang['img_format'] = 'Snið:'; +$lang['img_camera'] = 'Fototól:'; +$lang['img_keywords'] = 'Evnisorð:'; $lang['authtempfail'] = 'Validering av brúkara virkar fyribils ikki. Um hetta er varandi, fá so samband við umboðsstjóran á hesi wiki.'; diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 1f11608e6..045e171ff 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -78,7 +78,7 @@ $lang['btn_media'] = 'Gestionnaire de médias'; $lang['btn_deleteuser'] = 'Supprimer mon compte'; $lang['btn_img_backto'] = 'Retour à %s'; $lang['btn_mediaManager'] = 'Voir dans le gestionnaire de médias'; -$lang['loggedinas'] = 'Connecté en tant que '; +$lang['loggedinas'] = 'Connecté en tant que :'; $lang['user'] = 'Utilisateur'; $lang['pass'] = 'Mot de passe'; $lang['newpass'] = 'Nouveau mot de passe'; @@ -123,12 +123,12 @@ $lang['license'] = 'Sauf mention contraire, le contenu de ce wiki $lang['licenseok'] = 'Note : En modifiant cette page, vous acceptez que le contenu soit placé sous les termes de la licence suivante :'; $lang['searchmedia'] = 'Chercher le nom de fichier :'; $lang['searchmedia_in'] = 'Chercher dans %s'; -$lang['txt_upload'] = 'Sélectionnez un fichier à envoyer '; -$lang['txt_filename'] = 'Envoyer en tant que (optionnel) '; +$lang['txt_upload'] = 'Sélectionnez un fichier à envoyer:'; +$lang['txt_filename'] = 'Envoyer en tant que (optionnel):'; $lang['txt_overwrt'] = 'Écraser le fichier cible (s\'il existe)'; $lang['maxuploadsize'] = 'Taille d\'envoi maximale : %s par fichier'; -$lang['lockedby'] = 'Actuellement bloqué par'; -$lang['lockexpire'] = 'Le blocage expire à'; +$lang['lockedby'] = 'Actuellement bloqué par:'; +$lang['lockexpire'] = 'Le blocage expire à:'; $lang['js']['willexpire'] = 'Votre blocage pour la modification de cette page expire dans une minute.\nPour éviter les conflits, utilisez le bouton « Aperçu » pour réinitialiser le minuteur.'; $lang['js']['notsavedyet'] = 'Les modifications non enregistrées seront perdues. Voulez-vous vraiment continuer ?'; $lang['js']['searchmedia'] = 'Chercher des fichiers'; @@ -211,9 +211,9 @@ $lang['diffprevrev'] = 'Révision précédente'; $lang['diffnextrev'] = 'Prochaine révision'; $lang['difflastrev'] = 'Dernière révision'; $lang['line'] = 'Ligne'; -$lang['breadcrumb'] = 'Piste'; -$lang['youarehere'] = 'Vous êtes ici'; -$lang['lastmod'] = 'Dernière modification'; +$lang['breadcrumb'] = 'Piste:'; +$lang['youarehere'] = 'Vous êtes ici:'; +$lang['lastmod'] = 'Dernière modification:'; $lang['by'] = 'par'; $lang['deleted'] = 'supprimée'; $lang['created'] = 'créée'; @@ -266,18 +266,18 @@ $lang['admin_register'] = 'Ajouter un nouvel utilisateur'; $lang['metaedit'] = 'Modifier les métadonnées'; $lang['metasaveerr'] = 'Erreur lors de l\'enregistrement des métadonnées'; $lang['metasaveok'] = 'Métadonnées enregistrées'; -$lang['img_title'] = 'Titre'; -$lang['img_caption'] = 'Légende'; -$lang['img_date'] = 'Date'; -$lang['img_fname'] = 'Nom de fichier'; -$lang['img_fsize'] = 'Taille'; -$lang['img_artist'] = 'Photographe'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Appareil photo'; -$lang['img_keywords'] = 'Mots-clés'; -$lang['img_width'] = 'Largeur'; -$lang['img_height'] = 'Hauteur'; +$lang['img_title'] = 'Titre:'; +$lang['img_caption'] = 'Légende:'; +$lang['img_date'] = 'Date:'; +$lang['img_fname'] = 'Nom de fichier:'; +$lang['img_fsize'] = 'Taille:'; +$lang['img_artist'] = 'Photographe:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Appareil photo:'; +$lang['img_keywords'] = 'Mots-clés:'; +$lang['img_width'] = 'Largeur:'; +$lang['img_height'] = 'Hauteur:'; $lang['subscr_subscribe_success'] = '%s a été ajouté à la liste de souscription de %s'; $lang['subscr_subscribe_error'] = 'Erreur à l\'ajout de %s à la liste de souscription de %s'; $lang['subscr_subscribe_noaddress'] = 'Il n\'y a pas d\'adresse associée à votre identifiant, vous ne pouvez pas être ajouté à la liste de souscription'; diff --git a/inc/lang/gl/lang.php b/inc/lang/gl/lang.php index 0c81f1fb2..aed225359 100644 --- a/inc/lang/gl/lang.php +++ b/inc/lang/gl/lang.php @@ -49,7 +49,7 @@ $lang['btn_revert'] = 'Restaurar'; $lang['btn_register'] = 'Rexístrate'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Xestor de Arquivos-Media'; -$lang['loggedinas'] = 'Iniciaches sesión como'; +$lang['loggedinas'] = 'Iniciaches sesión como:'; $lang['user'] = 'Nome de Usuario'; $lang['pass'] = 'Contrasinal'; $lang['newpass'] = 'Novo Contrasinal'; @@ -88,12 +88,12 @@ $lang['license'] = 'O contido deste wiki, agás onde se indique o $lang['licenseok'] = 'Nota: Ao editares esta páxina estás a aceptar o licenciamento do contido baixo da seguinte licenza:'; $lang['searchmedia'] = 'Procurar nome de arquivo:'; $lang['searchmedia_in'] = 'Procurar en %s'; -$lang['txt_upload'] = 'Escolle o arquivo para subir'; -$lang['txt_filename'] = 'Subir como (opcional)'; +$lang['txt_upload'] = 'Escolle o arquivo para subir:'; +$lang['txt_filename'] = 'Subir como (opcional):'; $lang['txt_overwrt'] = 'Sobrescribir arquivo existente'; $lang['maxuploadsize'] = 'Subida máxima %s por arquivo.'; -$lang['lockedby'] = 'Bloqueado actualmente por'; -$lang['lockexpire'] = 'O bloqueo remata o'; +$lang['lockedby'] = 'Bloqueado actualmente por:'; +$lang['lockexpire'] = 'O bloqueo remata o:'; $lang['js']['willexpire'] = 'O teu bloqueo para editares esta páxina vai caducar nun minuto.\nPara de evitar conflitos, emprega o botón de previsualización para reiniciares o contador do tempo de bloqueo.'; $lang['js']['notsavedyet'] = 'Perderanse os trocos non gardados. Está certo de quereres continuar?'; @@ -175,9 +175,9 @@ $lang['diff_type'] = 'Ver diferenzas:'; $lang['diff_inline'] = 'Por liña'; $lang['diff_side'] = 'Cara a Cara'; $lang['line'] = 'Liña'; -$lang['breadcrumb'] = 'Trazado'; -$lang['youarehere'] = 'Estás aquí'; -$lang['lastmod'] = 'Última modificación'; +$lang['breadcrumb'] = 'Trazado:'; +$lang['youarehere'] = 'Estás aquí:'; +$lang['lastmod'] = 'Última modificación:'; $lang['by'] = 'por'; $lang['deleted'] = 'eliminado'; $lang['created'] = 'creado'; @@ -231,18 +231,18 @@ $lang['metaedit'] = 'Editar Metadatos'; $lang['metasaveerr'] = 'Non se puideron escribir os metadatos'; $lang['metasaveok'] = 'Metadatos gardados'; $lang['btn_img_backto'] = 'Volver a %s'; -$lang['img_title'] = 'Título'; -$lang['img_caption'] = 'Lenda'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nome de arquivo'; -$lang['img_fsize'] = 'Tamaño'; -$lang['img_artist'] = 'Fotógrafo'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Cámara'; -$lang['img_keywords'] = 'Verbas chave'; -$lang['img_width'] = 'Ancho'; -$lang['img_height'] = 'Alto'; +$lang['img_title'] = 'Título:'; +$lang['img_caption'] = 'Lenda:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nome de arquivo:'; +$lang['img_fsize'] = 'Tamaño:'; +$lang['img_artist'] = 'Fotógrafo:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Cámara:'; +$lang['img_keywords'] = 'Verbas chave:'; +$lang['img_width'] = 'Ancho:'; +$lang['img_height'] = 'Alto:'; $lang['btn_mediaManager'] = 'Ver no xestor de arquivos-media'; $lang['subscr_subscribe_success'] = 'Engadido %s á lista de subscrición para %s'; $lang['subscr_subscribe_error'] = 'Erro ao tentar engadir %s á lista de subscrición para %s'; diff --git a/inc/lang/he/lang.php b/inc/lang/he/lang.php index c9a01a193..101102b48 100644 --- a/inc/lang/he/lang.php +++ b/inc/lang/he/lang.php @@ -57,7 +57,7 @@ $lang['btn_register'] = 'הרשמה'; $lang['btn_apply'] = 'ליישם'; $lang['btn_media'] = 'מנהל המדיה'; $lang['btn_deleteuser'] = 'להסיר את החשבון שלי'; -$lang['loggedinas'] = 'נכנסת בשם'; +$lang['loggedinas'] = 'נכנסת בשם:'; $lang['user'] = 'שם משתמש'; $lang['pass'] = 'ססמה'; $lang['newpass'] = 'ססמה חדשה'; @@ -102,12 +102,12 @@ $lang['license'] = 'למעט מקרים בהם צוין אחרת, $lang['licenseok'] = 'נא לשים לב: עריכת דף זה מהווה הסכמה מצדך להצגת התוכן שהוספת בהתאם הרישיון הבא:'; $lang['searchmedia'] = 'חיפוש שם קובץ:'; $lang['searchmedia_in'] = 'חיפוש תחת %s'; -$lang['txt_upload'] = 'בחירת קובץ להעלות'; -$lang['txt_filename'] = 'העלאה בשם (נתון לבחירה)'; +$lang['txt_upload'] = 'בחירת קובץ להעלות:'; +$lang['txt_filename'] = 'העלאה בשם (נתון לבחירה):'; $lang['txt_overwrt'] = 'שכתוב על קובץ קיים'; $lang['maxuploadsize'] = 'העלה מקסימום. s% לכל קובץ.'; -$lang['lockedby'] = 'נעול על ידי'; -$lang['lockexpire'] = 'הנעילה פגה'; +$lang['lockedby'] = 'נעול על ידי:'; +$lang['lockexpire'] = 'הנעילה פגה:'; $lang['js']['willexpire'] = 'הנעילה תחלוף עוד זמן קצר. \nלמניעת התנגשויות יש להשתמש בכפתור הרענון מטה כדי לאפס את מד משך הנעילה.'; $lang['js']['notsavedyet'] = 'שינויים שלא נשמרו ילכו לאיבוד.'; $lang['js']['searchmedia'] = 'חיפוש אחר קבצים'; @@ -188,9 +188,9 @@ $lang['diff_type'] = 'הצגת הבדלים:'; $lang['diff_inline'] = 'באותה השורה'; $lang['diff_side'] = 'זה לצד זה'; $lang['line'] = 'שורה'; -$lang['breadcrumb'] = 'ביקורים אחרונים'; -$lang['youarehere'] = 'זהו מיקומך'; -$lang['lastmod'] = 'מועד השינוי האחרון'; +$lang['breadcrumb'] = 'ביקורים אחרונים:'; +$lang['youarehere'] = 'זהו מיקומך:'; +$lang['lastmod'] = 'מועד השינוי האחרון:'; $lang['by'] = 'על ידי'; $lang['deleted'] = 'נמחק'; $lang['created'] = 'נוצר'; @@ -244,18 +244,18 @@ $lang['metaedit'] = 'עריכת נתוני העל'; $lang['metasaveerr'] = 'אירע כשל בשמירת נתוני העל'; $lang['metasaveok'] = 'נתוני העל נשמרו'; $lang['btn_img_backto'] = 'חזרה אל %s'; -$lang['img_title'] = 'שם'; -$lang['img_caption'] = 'כותרת'; -$lang['img_date'] = 'תאריך'; -$lang['img_fname'] = 'שם הקובץ'; -$lang['img_fsize'] = 'גודל'; -$lang['img_artist'] = 'צלם'; -$lang['img_copyr'] = 'זכויות יוצרים'; -$lang['img_format'] = 'מבנה'; -$lang['img_camera'] = 'מצלמה'; -$lang['img_keywords'] = 'מילות מפתח'; -$lang['img_width'] = 'רוחב'; -$lang['img_height'] = 'גובה'; +$lang['img_title'] = 'שם:'; +$lang['img_caption'] = 'כותרת:'; +$lang['img_date'] = 'תאריך:'; +$lang['img_fname'] = 'שם הקובץ:'; +$lang['img_fsize'] = 'גודל:'; +$lang['img_artist'] = 'צלם:'; +$lang['img_copyr'] = 'זכויות יוצרים:'; +$lang['img_format'] = 'מבנה:'; +$lang['img_camera'] = 'מצלמה:'; +$lang['img_keywords'] = 'מילות מפתח:'; +$lang['img_width'] = 'רוחב:'; +$lang['img_height'] = 'גובה:'; $lang['btn_mediaManager'] = 'צפה במנהל מדיה'; $lang['subscr_subscribe_success'] = '%s נוסף לרשימת המינויים לדף %s'; $lang['subscr_subscribe_error'] = 'אירעה שגיאה בהוספת %s לרשימת המינויים לדף %s'; diff --git a/inc/lang/hi/lang.php b/inc/lang/hi/lang.php index 95c443ae9..71795191c 100644 --- a/inc/lang/hi/lang.php +++ b/inc/lang/hi/lang.php @@ -63,11 +63,11 @@ $lang['profna'] = 'यह विकी प्रोफ़ाइ $lang['profnochange'] = 'कोई परिवर्तन नहीं, कुछ नहीं करना |'; $lang['resendpwdmissing'] = 'छमा करें, आपको सारे रिक्त स्थान भरने पड़ेंगे |'; $lang['resendpwdsuccess'] = 'आपका नवगुप्तशब्द ईमेल द्वारा सम्प्रेषित कर दिया गया है |'; -$lang['txt_upload'] = 'अपलोड करने के लिए फ़ाइल चुनें'; -$lang['txt_filename'] = 'के रूप में अपलोड करें (वैकल्पिक)'; +$lang['txt_upload'] = 'अपलोड करने के लिए फ़ाइल चुनें:'; +$lang['txt_filename'] = 'के रूप में अपलोड करें (वैकल्पिक):'; $lang['txt_overwrt'] = 'अधिलेखित उपस्थित फ़ाइल'; -$lang['lockedby'] = 'इस समय तक बंद'; -$lang['lockexpire'] = 'बंद समाप्त होगा'; +$lang['lockedby'] = 'इस समय तक बंद:'; +$lang['lockexpire'] = 'बंद समाप्त होगा:'; $lang['js']['hidedetails'] = 'विवरण छिपाएँ'; $lang['nothingfound'] = 'कुच्छ नहीं मिला |'; $lang['uploadexist'] = 'फ़ाइल पहले से उपस्थित है. कुछ भी नहीं किया |'; @@ -81,8 +81,8 @@ $lang['yours'] = 'आपका संस्करणः'; $lang['diff'] = 'वर्तमान संशोधन में मतभेद दिखाइये |'; $lang['diff2'] = 'चयनित संशोधन के बीच में मतभेद दिखाइये |'; $lang['line'] = 'रेखा'; -$lang['youarehere'] = 'आप यहाँ हैं |'; -$lang['lastmod'] = 'अंतिम बार संशोधित'; +$lang['youarehere'] = 'आप यहाँ हैं |:'; +$lang['lastmod'] = 'अंतिम बार संशोधित:'; $lang['by'] = 'के द्वारा'; $lang['deleted'] = 'हटाया'; $lang['created'] = 'निर्मित'; @@ -104,13 +104,13 @@ $lang['qb_hr'] = 'खड़ी रेखा'; $lang['qb_sig'] = 'हस्ताक्षर डालें'; $lang['admin_register'] = 'नया उपयोगकर्ता जोड़ें'; $lang['btn_img_backto'] = 'वापस जाना %s'; -$lang['img_title'] = 'शीर्षक'; -$lang['img_caption'] = 'सहशीर्षक'; -$lang['img_date'] = 'तिथि'; -$lang['img_fsize'] = 'आकार'; -$lang['img_artist'] = 'फोटोग्राफर'; -$lang['img_format'] = 'प्रारूप'; -$lang['img_camera'] = 'कैमरा'; +$lang['img_title'] = 'शीर्षक:'; +$lang['img_caption'] = 'सहशीर्षक:'; +$lang['img_date'] = 'तिथि:'; +$lang['img_fsize'] = 'आकार:'; +$lang['img_artist'] = 'फोटोग्राफर:'; +$lang['img_format'] = 'प्रारूप:'; +$lang['img_camera'] = 'कैमरा:'; $lang['i_chooselang'] = 'अपनी भाषा चुनें'; $lang['i_installer'] = 'डोकुविकी इंस्टॉलर'; $lang['i_wikiname'] = 'विकी का नाम'; diff --git a/inc/lang/hr/lang.php b/inc/lang/hr/lang.php index 544541ab2..cf2232077 100644 --- a/inc/lang/hr/lang.php +++ b/inc/lang/hr/lang.php @@ -47,7 +47,7 @@ $lang['btn_recover'] = 'Vrati prijašnji nacrt dokumenta'; $lang['btn_draftdel'] = 'Obriši nacrt dokumenta'; $lang['btn_revert'] = 'Vrati'; $lang['btn_register'] = 'Registracija'; -$lang['loggedinas'] = 'Prijavljen kao'; +$lang['loggedinas'] = 'Prijavljen kao:'; $lang['user'] = 'Korisničko ime'; $lang['pass'] = 'Lozinka'; $lang['newpass'] = 'Nova lozinka'; @@ -85,11 +85,11 @@ $lang['license'] = 'Osim na mjestima gdje je naznačeno drugačije $lang['licenseok'] = 'Pažnja: promjenom ovog dokumenta pristajete licencirati sadržaj sljedećom licencom: '; $lang['searchmedia'] = 'Traži naziv datoteke:'; $lang['searchmedia_in'] = 'Traži u %s'; -$lang['txt_upload'] = 'Odaberite datoteku za postavljanje'; -$lang['txt_filename'] = 'Postaviti kao (nije obavezno)'; +$lang['txt_upload'] = 'Odaberite datoteku za postavljanje:'; +$lang['txt_filename'] = 'Postaviti kao (nije obavezno):'; $lang['txt_overwrt'] = 'Prepiši postojeću datoteku'; -$lang['lockedby'] = 'Zaključao'; -$lang['lockexpire'] = 'Zaključano do'; +$lang['lockedby'] = 'Zaključao:'; +$lang['lockexpire'] = 'Zaključano do:'; $lang['js']['willexpire'] = 'Dokument kojeg mijenjate će biti zaključan još 1 minutu.\n Ukoliko želite i dalje raditi izmjene na dokumentu - kliknite na "Pregled".'; $lang['js']['notsavedyet'] = 'Vaše izmjene će se izgubiti. Želite li nastaviti?'; @@ -159,9 +159,9 @@ $lang['diff_type'] = 'Razlike u prikazu:'; $lang['diff_inline'] = 'U istoj razini'; $lang['diff_side'] = 'Usporedo'; $lang['line'] = 'Redak'; -$lang['breadcrumb'] = 'Putanja'; -$lang['youarehere'] = 'Vi ste ovdje'; -$lang['lastmod'] = 'Zadnja izmjena'; +$lang['breadcrumb'] = 'Putanja:'; +$lang['youarehere'] = 'Vi ste ovdje:'; +$lang['lastmod'] = 'Zadnja izmjena:'; $lang['by'] = 'od'; $lang['deleted'] = 'obrisano'; $lang['created'] = 'stvoreno'; @@ -205,16 +205,16 @@ $lang['metaedit'] = 'Uredi metapodatake'; $lang['metasaveerr'] = 'Neuspješno zapisivanje metapodataka'; $lang['metasaveok'] = 'Spremljeni metapdaci'; $lang['btn_img_backto'] = 'Povratak na %s'; -$lang['img_title'] = 'Naziv'; -$lang['img_caption'] = 'Naslov'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Ime datoteke'; -$lang['img_fsize'] = 'Veličina'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Autorsko pravo'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Ključne riječi'; +$lang['img_title'] = 'Naziv:'; +$lang['img_caption'] = 'Naslov:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Ime datoteke:'; +$lang['img_fsize'] = 'Veličina:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Autorsko pravo:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Ključne riječi:'; $lang['subscr_subscribe_success'] = 'Dodan %s u listu pretplatnika za %s'; $lang['subscr_subscribe_error'] = 'Greška kod dodavanja %s u listu pretplatnika za %s'; $lang['subscr_subscribe_noaddress'] = 'Ne postoji adresa povezana sa vašim podacima za prijavu, stoga ne možete biti dodani u listu pretplatnika'; diff --git a/inc/lang/hu/lang.php b/inc/lang/hu/lang.php index ad70438d9..f19c0025b 100644 --- a/inc/lang/hu/lang.php +++ b/inc/lang/hu/lang.php @@ -102,8 +102,8 @@ $lang['license'] = 'Hacsak máshol nincs egyéb rendelkezés, ezen $lang['licenseok'] = 'Megjegyzés: az oldal szerkesztésével elfogadja, hogy a tartalom a következő licenc alatt lesz elérhető:'; $lang['searchmedia'] = 'Keresett fájl neve:'; $lang['searchmedia_in'] = 'Keresés a következőben: %s'; -$lang['txt_upload'] = 'Válaszd ki a feltöltendő fájlt'; -$lang['txt_filename'] = 'Feltöltési név (elhagyható)'; +$lang['txt_upload'] = 'Válaszd ki a feltöltendő fájlt:'; +$lang['txt_filename'] = 'Feltöltési név (elhagyható):'; $lang['txt_overwrt'] = 'Létező fájl felülírása'; $lang['maxuploadsize'] = 'Maximum %s méretű fájlokat tölthetsz fel.'; $lang['lockedby'] = 'Jelenleg zárolta:'; @@ -188,9 +188,9 @@ $lang['diff_type'] = 'Összehasonlítás módja:'; $lang['diff_inline'] = 'Sorok között'; $lang['diff_side'] = 'Egymás mellett'; $lang['line'] = 'Sor'; -$lang['breadcrumb'] = 'Nyomvonal'; -$lang['youarehere'] = 'Itt vagy'; -$lang['lastmod'] = 'Utolsó módosítás'; +$lang['breadcrumb'] = 'Nyomvonal:'; +$lang['youarehere'] = 'Itt vagy:'; +$lang['lastmod'] = 'Utolsó módosítás:'; $lang['by'] = 'szerkesztette:'; $lang['deleted'] = 'eltávolítva'; $lang['created'] = 'létrehozva'; @@ -244,18 +244,18 @@ $lang['metaedit'] = 'Metaadatok szerkesztése'; $lang['metasaveerr'] = 'A metaadatok írása nem sikerült'; $lang['metasaveok'] = 'Metaadatok elmentve'; $lang['btn_img_backto'] = 'Vissza %s'; -$lang['img_title'] = 'Cím'; -$lang['img_caption'] = 'Képaláírás'; -$lang['img_date'] = 'Dátum'; -$lang['img_fname'] = 'Fájlnév'; -$lang['img_fsize'] = 'Méret'; -$lang['img_artist'] = 'Készítette'; -$lang['img_copyr'] = 'Szerzői jogok'; -$lang['img_format'] = 'Formátum'; -$lang['img_camera'] = 'Fényképezőgép típusa'; -$lang['img_keywords'] = 'Kulcsszavak'; -$lang['img_width'] = 'Szélesség'; -$lang['img_height'] = 'Magasság'; +$lang['img_title'] = 'Cím:'; +$lang['img_caption'] = 'Képaláírás:'; +$lang['img_date'] = 'Dátum:'; +$lang['img_fname'] = 'Fájlnév:'; +$lang['img_fsize'] = 'Méret:'; +$lang['img_artist'] = 'Készítette:'; +$lang['img_copyr'] = 'Szerzői jogok:'; +$lang['img_format'] = 'Formátum:'; +$lang['img_camera'] = 'Fényképezőgép típusa:'; +$lang['img_keywords'] = 'Kulcsszavak:'; +$lang['img_width'] = 'Szélesség:'; +$lang['img_height'] = 'Magasság:'; $lang['btn_mediaManager'] = 'Megtekintés a médiakezelőben'; $lang['subscr_subscribe_success'] = '%s hozzáadva az értesítési listához: %s'; $lang['subscr_subscribe_error'] = 'Hiba történt %s hozzáadásakor az értesítési listához: %s'; diff --git a/inc/lang/ia/lang.php b/inc/lang/ia/lang.php index 1cc9bd8b5..cabbbab93 100644 --- a/inc/lang/ia/lang.php +++ b/inc/lang/ia/lang.php @@ -50,7 +50,7 @@ $lang['btn_recover'] = 'Recuperar version provisori'; $lang['btn_draftdel'] = 'Deler version provisori'; $lang['btn_revert'] = 'Restaurar'; $lang['btn_register'] = 'Crear conto'; -$lang['loggedinas'] = 'Session aperite como'; +$lang['loggedinas'] = 'Session aperite como:'; $lang['user'] = 'Nomine de usator'; $lang['pass'] = 'Contrasigno'; $lang['newpass'] = 'Nove contrasigno'; @@ -88,11 +88,11 @@ $lang['license'] = 'Excepte ubi indicate alteremente, le contento $lang['licenseok'] = 'Nota ben! Per modificar iste pagina tu accepta que tu contento essera publicate sub le conditiones del licentia sequente:'; $lang['searchmedia'] = 'Cercar file con nomine:'; $lang['searchmedia_in'] = 'Cercar in %s'; -$lang['txt_upload'] = 'Selige le file a incargar'; -$lang['txt_filename'] = 'Incargar como (optional)'; +$lang['txt_upload'] = 'Selige le file a incargar:'; +$lang['txt_filename'] = 'Incargar como (optional):'; $lang['txt_overwrt'] = 'Reimplaciar le file existente'; -$lang['lockedby'] = 'Actualmente serrate per'; -$lang['lockexpire'] = 'Serratura expira le'; +$lang['lockedby'] = 'Actualmente serrate per:'; +$lang['lockexpire'] = 'Serratura expira le:'; $lang['js']['willexpire'] = 'Tu serratura super le modification de iste pagina expirara post un minuta.\nPro evitar conflictos, usa le button Previsualisar pro reinitialisar le timer del serratura.'; $lang['js']['notsavedyet'] = 'Le modificationes non salveguardate essera perdite.\nRealmente continuar?'; $lang['rssfailed'] = 'Un error occurreva durante le obtention de iste syndication:'; @@ -157,9 +157,9 @@ $lang['yours'] = 'Tu version'; $lang['diff'] = 'Monstrar differentias con versiones actual'; $lang['diff2'] = 'Monstrar differentias inter le versiones seligite'; $lang['line'] = 'Linea'; -$lang['breadcrumb'] = 'Tracia'; -$lang['youarehere'] = 'Tu es hic'; -$lang['lastmod'] = 'Ultime modification'; +$lang['breadcrumb'] = 'Tracia:'; +$lang['youarehere'] = 'Tu es hic:'; +$lang['lastmod'] = 'Ultime modification:'; $lang['by'] = 'per'; $lang['deleted'] = 'removite'; $lang['created'] = 'create'; @@ -203,16 +203,16 @@ $lang['metaedit'] = 'Modificar metadatos'; $lang['metasaveerr'] = 'Scriptura de metadatos fallite'; $lang['metasaveok'] = 'Metadatos salveguardate'; $lang['btn_img_backto'] = 'Retornar a %s'; -$lang['img_title'] = 'Titulo'; -$lang['img_caption'] = 'Legenda'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nomine de file'; -$lang['img_fsize'] = 'Dimension'; -$lang['img_artist'] = 'Photographo'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Parolas-clave'; +$lang['img_title'] = 'Titulo:'; +$lang['img_caption'] = 'Legenda:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nomine de file:'; +$lang['img_fsize'] = 'Dimension:'; +$lang['img_artist'] = 'Photographo:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Parolas-clave:'; $lang['subscr_subscribe_success'] = '%s addite al lista de subscription de %s'; $lang['subscr_subscribe_error'] = 'Error durante le addition de %s al lista de subscription de %s'; $lang['subscr_subscribe_noaddress'] = 'Il non ha un adresse associate con tu conto. Tu non pote esser addite al lista de subscription.'; diff --git a/inc/lang/id-ni/lang.php b/inc/lang/id-ni/lang.php index 7a1179326..1ff714f3e 100644 --- a/inc/lang/id-ni/lang.php +++ b/inc/lang/id-ni/lang.php @@ -41,7 +41,7 @@ $lang['btn_reset'] = 'Fawu\'a'; $lang['btn_draft'] = 'Fawu\'a wanura'; $lang['btn_draftdel'] = 'Heta zura'; $lang['btn_register'] = 'Fasura\'ö'; -$lang['loggedinas'] = 'Möi bakha zotöi'; +$lang['loggedinas'] = 'Möi bakha zotöi:'; $lang['user'] = 'Töi'; $lang['pass'] = 'Kode'; $lang['newpass'] = 'Kode sibohou'; @@ -72,6 +72,6 @@ $lang['resendpwdmissing'] = 'Bologö dödöu, si lö tola lö\'ö öfo\'ös $lang['resendpwdnouser'] = 'Bologö dödöu, lö masöndra zangoguna da\'a ba database.'; $lang['resendpwdconfirm'] = 'No tefaohe\'ö link famaduhu\'ö ba imele.'; $lang['resendpwdsuccess'] = 'No tefa\'ohe\'ö kode sibohou ba imele.'; -$lang['txt_upload'] = 'Fili file ni fa\'ohe\'ö'; +$lang['txt_upload'] = 'Fili file ni fa\'ohe\'ö:'; $lang['js']['notsavedyet'] = 'Famawu\'a si lö mu\'irö\'ö taya. \nSinduhu ötohugö?'; $lang['mediaselect'] = 'Media file'; diff --git a/inc/lang/id/lang.php b/inc/lang/id/lang.php index 481ff2fbd..ff77cf24d 100644 --- a/inc/lang/id/lang.php +++ b/inc/lang/id/lang.php @@ -55,7 +55,7 @@ $lang['btn_media'] = 'Pengelola Media'; $lang['btn_deleteuser'] = 'Hapus Akun Saya'; $lang['btn_img_backto'] = 'Kembali ke %s'; $lang['btn_mediaManager'] = 'Tampilkan di pengelola media'; -$lang['loggedinas'] = 'Login sebagai '; +$lang['loggedinas'] = 'Login sebagai :'; $lang['user'] = 'Username'; $lang['pass'] = 'Password'; $lang['newpass'] = 'Password baru'; @@ -100,12 +100,12 @@ $lang['license'] = 'Kecuali jika dinyatakan lain, konten pada wiki $lang['licenseok'] = 'Catatan: Dengan menyunting halaman ini, Anda setuju untuk melisensikan konten Anda dibawah lisensi berikut:'; $lang['searchmedia'] = 'Cari nama file:'; $lang['searchmedia_in'] = 'Cari di %s'; -$lang['txt_upload'] = 'File yang akan diupload'; -$lang['txt_filename'] = 'Masukkan nama wiki (opsional)'; +$lang['txt_upload'] = 'File yang akan diupload:'; +$lang['txt_filename'] = 'Masukkan nama wiki (opsional):'; $lang['txt_overwrt'] = 'File yang telah ada akan ditindih'; $lang['maxuploadsize'] = 'Unggah maks. %s per berkas'; -$lang['lockedby'] = 'Sedang dikunci oleh'; -$lang['lockexpire'] = 'Penguncian artikel sampai dengan'; +$lang['lockedby'] = 'Sedang dikunci oleh:'; +$lang['lockexpire'] = 'Penguncian artikel sampai dengan:'; $lang['js']['willexpire'] = 'Halaman yang sedang Anda kunci akan berakhir dalam waktu kurang lebih satu menit.\nUntuk menghindari konflik, gunakan tombol Preview untuk me-reset timer pengunci.'; $lang['js']['notsavedyet'] = 'Perubahan yang belum disimpan akan hilang.\nYakin akan dilanjutkan?'; $lang['js']['searchmedia'] = 'Cari file'; @@ -188,9 +188,9 @@ $lang['diffprevrev'] = 'Revisi sebelumnya'; $lang['diffnextrev'] = 'Revisi selanjutnya'; $lang['difflastrev'] = 'Revisi terakhir'; $lang['line'] = 'Baris'; -$lang['breadcrumb'] = 'Jejak'; -$lang['youarehere'] = 'Anda disini'; -$lang['lastmod'] = 'Terakhir diubah'; +$lang['breadcrumb'] = 'Jejak:'; +$lang['youarehere'] = 'Anda disini:'; +$lang['lastmod'] = 'Terakhir diubah:'; $lang['by'] = 'oleh'; $lang['deleted'] = 'terhapus'; $lang['created'] = 'dibuat'; @@ -242,18 +242,18 @@ $lang['admin_register'] = 'Tambah user baru'; $lang['metaedit'] = 'Edit Metadata'; $lang['metasaveerr'] = 'Gagal menulis metadata'; $lang['metasaveok'] = 'Metadata tersimpan'; -$lang['img_title'] = 'Judul'; -$lang['img_caption'] = 'Label'; -$lang['img_date'] = 'Tanggal'; -$lang['img_fname'] = 'Nama file'; -$lang['img_fsize'] = 'Ukuran'; -$lang['img_artist'] = 'Tukang foto'; -$lang['img_copyr'] = 'Hakcipta'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Katakunci'; -$lang['img_width'] = 'Lebar'; -$lang['img_height'] = 'Tinggi'; +$lang['img_title'] = 'Judul:'; +$lang['img_caption'] = 'Label:'; +$lang['img_date'] = 'Tanggal:'; +$lang['img_fname'] = 'Nama file:'; +$lang['img_fsize'] = 'Ukuran:'; +$lang['img_artist'] = 'Tukang foto:'; +$lang['img_copyr'] = 'Hakcipta:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Katakunci:'; +$lang['img_width'] = 'Lebar:'; +$lang['img_height'] = 'Tinggi:'; $lang['subscr_subscribe_success'] = 'Menambah %s ke senarai langganan untuk %s'; $lang['subscr_subscribe_error'] = 'Kesalahan menambahkan %s ke senarai langganan untuk %s'; $lang['subscr_subscribe_noaddress'] = 'Tidak ada alamat yang terkait dengan login Anda, Anda tidak dapat ditambahkan ke senarai langganan'; diff --git a/inc/lang/is/lang.php b/inc/lang/is/lang.php index 219431a42..de1a01ed5 100644 --- a/inc/lang/is/lang.php +++ b/inc/lang/is/lang.php @@ -51,7 +51,7 @@ $lang['btn_recover'] = 'Endurheimta uppkast'; $lang['btn_draftdel'] = 'Eyða uppkasti'; $lang['btn_revert'] = 'Endurheimta'; $lang['btn_register'] = 'Skráning'; -$lang['loggedinas'] = 'Innskráning sem'; +$lang['loggedinas'] = 'Innskráning sem:'; $lang['user'] = 'Notendanafn'; $lang['pass'] = 'Aðgangsorð'; $lang['newpass'] = 'Nýtt aðgangsorð'; @@ -89,11 +89,11 @@ $lang['license'] = 'Nema annað sé tekið fram, efni á þessari $lang['licenseok'] = 'Athugið: Með því að breyta þessari síðu samþykkir þú að leyfisveitandi efni undir eftirfarandi leyfi:'; $lang['searchmedia'] = 'Leit skrárheiti:'; $lang['searchmedia_in'] = 'Leit í %s'; -$lang['txt_upload'] = 'Veldu skrá til innhleðslu'; -$lang['txt_filename'] = 'Innhlaða sem (valfrjálst)'; +$lang['txt_upload'] = 'Veldu skrá til innhleðslu:'; +$lang['txt_filename'] = 'Innhlaða sem (valfrjálst):'; $lang['txt_overwrt'] = 'Skrifa yfir skrá sem þegar er til'; -$lang['lockedby'] = 'Læstur af'; -$lang['lockexpire'] = 'Læsing rennur út eftir'; +$lang['lockedby'] = 'Læstur af:'; +$lang['lockexpire'] = 'Læsing rennur út eftir:'; $lang['nothingfound'] = 'Ekkert fannst'; $lang['mediaselect'] = 'Miðlaskrá'; $lang['fileupload'] = 'Hlaða inn miðlaskrá'; @@ -127,9 +127,9 @@ $lang['yours'] = 'Þín útgáfa'; $lang['diff'] = 'Sýna ágreiningur til núverandi endurskoðun'; $lang['diff2'] = 'Sýna ágreiningur meðal valið endurskoðun'; $lang['line'] = 'Lína'; -$lang['breadcrumb'] = 'Snefill'; -$lang['youarehere'] = 'Þú ert hér'; -$lang['lastmod'] = 'Síðast breytt'; +$lang['breadcrumb'] = 'Snefill:'; +$lang['youarehere'] = 'Þú ert hér:'; +$lang['lastmod'] = 'Síðast breytt:'; $lang['by'] = 'af'; $lang['deleted'] = 'eytt'; $lang['created'] = 'myndað'; @@ -171,14 +171,14 @@ $lang['metaedit'] = 'Breyta lýsigögnum'; $lang['metasaveerr'] = 'Vistun lýsigagna mistókst'; $lang['metasaveok'] = 'Lýsigögn vistuð'; $lang['btn_img_backto'] = 'Aftur til %s'; -$lang['img_title'] = 'Heiti'; -$lang['img_caption'] = 'Skýringartexti'; -$lang['img_date'] = 'Dagsetning'; -$lang['img_fname'] = 'Skrárheiti'; -$lang['img_fsize'] = 'Stærð'; -$lang['img_artist'] = 'Myndsmiður'; -$lang['img_copyr'] = 'Útgáfuréttur'; -$lang['img_format'] = 'Forsnið'; -$lang['img_camera'] = 'Myndavél'; -$lang['img_keywords'] = 'Lykilorðir'; +$lang['img_title'] = 'Heiti:'; +$lang['img_caption'] = 'Skýringartexti:'; +$lang['img_date'] = 'Dagsetning:'; +$lang['img_fname'] = 'Skrárheiti:'; +$lang['img_fsize'] = 'Stærð:'; +$lang['img_artist'] = 'Myndsmiður:'; +$lang['img_copyr'] = 'Útgáfuréttur:'; +$lang['img_format'] = 'Forsnið:'; +$lang['img_camera'] = 'Myndavél:'; +$lang['img_keywords'] = 'Lykilorðir:'; $lang['i_retry'] = 'Reyna aftur'; diff --git a/inc/lang/it/lang.php b/inc/lang/it/lang.php index 668920903..a3017a92e 100644 --- a/inc/lang/it/lang.php +++ b/inc/lang/it/lang.php @@ -65,7 +65,7 @@ $lang['btn_media'] = 'Gestore Media'; $lang['btn_deleteuser'] = 'Rimuovi il mio account'; $lang['btn_img_backto'] = 'Torna a %s'; $lang['btn_mediaManager'] = 'Guarda nel gestore media'; -$lang['loggedinas'] = 'Collegato come'; +$lang['loggedinas'] = 'Collegato come:'; $lang['user'] = 'Nome utente'; $lang['pass'] = 'Password'; $lang['newpass'] = 'Nuova password'; @@ -110,12 +110,12 @@ $lang['license'] = 'Ad eccezione da dove è diversamente indicato, $lang['licenseok'] = 'Nota: modificando questa pagina accetti di rilasciare il contenuto sotto la seguente licenza:'; $lang['searchmedia'] = 'Cerca file di nome:'; $lang['searchmedia_in'] = 'Cerca in %s'; -$lang['txt_upload'] = 'Seleziona un file da caricare'; -$lang['txt_filename'] = 'Carica come (opzionale)'; +$lang['txt_upload'] = 'Seleziona un file da caricare:'; +$lang['txt_filename'] = 'Carica come (opzionale):'; $lang['txt_overwrt'] = 'Sovrascrivi file esistente'; $lang['maxuploadsize'] = 'Upload max. %s per ogni file.'; -$lang['lockedby'] = 'Attualmente bloccato da'; -$lang['lockexpire'] = 'Il blocco scade alle'; +$lang['lockedby'] = 'Attualmente bloccato da:'; +$lang['lockexpire'] = 'Il blocco scade alle:'; $lang['js']['willexpire'] = 'Il tuo blocco su questa pagina scadrà tra circa un minuto.\nPer evitare incongruenze usa il pulsante di anteprima per prolungare il periodo di blocco.'; $lang['js']['notsavedyet'] = 'Le modifiche non salvate andranno perse.'; $lang['js']['searchmedia'] = 'Cerca file'; @@ -198,9 +198,9 @@ $lang['diffprevrev'] = 'Revisione precedente'; $lang['diffnextrev'] = 'Prossima revisione'; $lang['difflastrev'] = 'Ultima revisione'; $lang['line'] = 'Linea'; -$lang['breadcrumb'] = 'Traccia'; -$lang['youarehere'] = 'Ti trovi qui'; -$lang['lastmod'] = 'Ultima modifica'; +$lang['breadcrumb'] = 'Traccia:'; +$lang['youarehere'] = 'Ti trovi qui:'; +$lang['lastmod'] = 'Ultima modifica:'; $lang['by'] = 'da'; $lang['deleted'] = 'eliminata'; $lang['created'] = 'creata'; @@ -253,18 +253,18 @@ $lang['admin_register'] = 'Aggiungi un nuovo utente'; $lang['metaedit'] = 'Modifica metadati'; $lang['metasaveerr'] = 'Scrittura metadati fallita'; $lang['metasaveok'] = 'Metadati salvati'; -$lang['img_title'] = 'Titolo'; -$lang['img_caption'] = 'Descrizione'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nome File'; -$lang['img_fsize'] = 'Dimensione'; -$lang['img_artist'] = 'Autore'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Parole chiave'; -$lang['img_width'] = 'Larghezza'; -$lang['img_height'] = 'Altezza'; +$lang['img_title'] = 'Titolo:'; +$lang['img_caption'] = 'Descrizione:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nome File:'; +$lang['img_fsize'] = 'Dimensione:'; +$lang['img_artist'] = 'Autore:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Parole chiave:'; +$lang['img_width'] = 'Larghezza:'; +$lang['img_height'] = 'Altezza:'; $lang['subscr_subscribe_success'] = 'Aggiunto %s alla lista di sottoscrizioni %s'; $lang['subscr_subscribe_error'] = 'Impossibile aggiungere %s alla lista di sottoscrizioni %s'; $lang['subscr_subscribe_noaddress'] = 'Non esiste alcun indirizzo associato al tuo account, non puoi essere aggiunto alla lista di sottoscrizioni'; diff --git a/inc/lang/ja/lang.php b/inc/lang/ja/lang.php index f5c2f493f..31832c71f 100644 --- a/inc/lang/ja/lang.php +++ b/inc/lang/ja/lang.php @@ -57,7 +57,7 @@ $lang['btn_media'] = 'メディアマネージャー'; $lang['btn_deleteuser'] = '自分のアカウントの抹消'; $lang['btn_img_backto'] = '戻る %s'; $lang['btn_mediaManager'] = 'メディアマネージャーで閲覧'; -$lang['loggedinas'] = 'ようこそ'; +$lang['loggedinas'] = 'ようこそ:'; $lang['user'] = 'ユーザー名'; $lang['pass'] = 'パスワード'; $lang['newpass'] = '新しいパスワード'; @@ -102,12 +102,12 @@ $lang['license'] = '特に明示されていない限り、本Wiki $lang['licenseok'] = '注意: 本ページを編集することは、あなたの編集した内容が次のライセンスに従うことに同意したものとみなします:'; $lang['searchmedia'] = '検索ファイル名:'; $lang['searchmedia_in'] = '%s 内を検索'; -$lang['txt_upload'] = 'アップロードするファイルを選んでください。'; -$lang['txt_filename'] = '名前を変更してアップロード(オプション)'; +$lang['txt_upload'] = 'アップロードするファイルを選んでください。:'; +$lang['txt_filename'] = '名前を変更してアップロード(オプション):'; $lang['txt_overwrt'] = '既存のファイルを上書き'; $lang['maxuploadsize'] = 'アップロード上限サイズ %s /ファイル'; -$lang['lockedby'] = 'この文書は次のユーザーによってロックされています'; -$lang['lockexpire'] = 'ロック期限:'; +$lang['lockedby'] = 'この文書は次のユーザーによってロックされています:'; +$lang['lockexpire'] = 'ロック期限::'; $lang['js']['willexpire'] = '編集中の文書はロック期限を過ぎようとしています。このままロックする場合は、一度文書の確認を行って期限をリセットしてください。'; $lang['js']['notsavedyet'] = '変更は保存されません。このまま処理を続けてよろしいですか?'; $lang['js']['searchmedia'] = 'ファイル検索'; @@ -192,9 +192,9 @@ $lang['difflastrev'] = '最新リビジョン'; $lang['diffbothprevrev'] = '両方とも前のリビジョン'; $lang['diffbothnextrev'] = '両方とも次のリビジョン'; $lang['line'] = 'ライン'; -$lang['breadcrumb'] = 'トレース'; -$lang['youarehere'] = '現在位置'; -$lang['lastmod'] = '最終更新'; +$lang['breadcrumb'] = 'トレース:'; +$lang['youarehere'] = '現在位置:'; +$lang['lastmod'] = '最終更新:'; $lang['by'] = 'by'; $lang['deleted'] = '削除'; $lang['created'] = '作成'; @@ -247,18 +247,18 @@ $lang['admin_register'] = '新規ユーザー作成'; $lang['metaedit'] = 'メタデータ編集'; $lang['metasaveerr'] = 'メタデータの書き込みに失敗しました'; $lang['metasaveok'] = 'メタデータは保存されました'; -$lang['img_title'] = 'タイトル'; -$lang['img_caption'] = '見出し'; -$lang['img_date'] = '日付'; -$lang['img_fname'] = 'ファイル名'; -$lang['img_fsize'] = 'サイズ'; -$lang['img_artist'] = '作成者'; -$lang['img_copyr'] = '著作権'; -$lang['img_format'] = 'フォーマット'; -$lang['img_camera'] = '使用カメラ'; -$lang['img_keywords'] = 'キーワード'; -$lang['img_width'] = '幅'; -$lang['img_height'] = '高さ'; +$lang['img_title'] = 'タイトル:'; +$lang['img_caption'] = '見出し:'; +$lang['img_date'] = '日付:'; +$lang['img_fname'] = 'ファイル名:'; +$lang['img_fsize'] = 'サイズ:'; +$lang['img_artist'] = '作成者:'; +$lang['img_copyr'] = '著作権:'; +$lang['img_format'] = 'フォーマット:'; +$lang['img_camera'] = '使用カメラ:'; +$lang['img_keywords'] = 'キーワード:'; +$lang['img_width'] = '幅:'; +$lang['img_height'] = '高さ:'; $lang['subscr_subscribe_success'] = '%sが%sの購読リストに登録されました。'; $lang['subscr_subscribe_error'] = '%sを%sの購読リストへの追加に失敗しました。'; $lang['subscr_subscribe_noaddress'] = 'あなたのログインに対応するアドレスがないため、購読リストへ追加することができません。'; diff --git a/inc/lang/ka/lang.php b/inc/lang/ka/lang.php index cba38cf6b..28ca11e45 100644 --- a/inc/lang/ka/lang.php +++ b/inc/lang/ka/lang.php @@ -50,7 +50,7 @@ $lang['btn_media'] = 'მედია ფაილების მ $lang['btn_deleteuser'] = 'ჩემი ექაუნთის წაშლა'; $lang['btn_img_backto'] = 'უკან %'; $lang['btn_mediaManager'] = 'მედია ფაილების მმართველში გახსნა'; -$lang['loggedinas'] = 'შესული ხართ როგორც'; +$lang['loggedinas'] = 'შესული ხართ როგორც:'; $lang['user'] = 'ლოგინი'; $lang['pass'] = 'პაროლი'; $lang['newpass'] = 'ახალი პაროლი'; @@ -95,12 +95,12 @@ $lang['license'] = 'ვიკი ლიცენზირებუ $lang['licenseok'] = 'ამ გვერდის რედაქტირებით თვენ ეთანხმებით ლიცენზიას:'; $lang['searchmedia'] = 'საძებო სახელი:'; $lang['searchmedia_in'] = 'ძებნა %-ში'; -$lang['txt_upload'] = 'აირჩიეთ ასატვირთი ფაილი'; -$lang['txt_filename'] = 'ატვირთვა როგორც (არჩევითი)'; +$lang['txt_upload'] = 'აირჩიეთ ასატვირთი ფაილი:'; +$lang['txt_filename'] = 'ატვირთვა როგორც (არჩევითი):'; $lang['txt_overwrt'] = 'გადაწერა ზემოდან'; $lang['maxuploadsize'] = 'მაქსიმალური ზომა %'; -$lang['lockedby'] = 'დაბლოკილია'; -$lang['lockexpire'] = 'განიბლოკება'; +$lang['lockedby'] = 'დაბლოკილია:'; +$lang['lockexpire'] = 'განიბლოკება:'; $lang['js']['willexpire'] = 'გვერდი განიბლოკება 1 წუთში'; $lang['js']['notsavedyet'] = 'შეუნახავი მონაცემები წაიშლება'; $lang['js']['searchmedia'] = 'ძებნა'; @@ -186,9 +186,9 @@ $lang['difflastrev'] = 'ბოლო ვერსია'; $lang['diffbothprevrev'] = 'Both sides previous revision'; $lang['diffbothnextrev'] = 'Both sides next revision'; $lang['line'] = 'ზოლი'; -$lang['breadcrumb'] = 'Trace'; -$lang['youarehere'] = 'თვენ ხართ აქ'; -$lang['lastmod'] = 'ბოლოს მოდიფიცირებული'; +$lang['breadcrumb'] = 'Trace:'; +$lang['youarehere'] = 'თვენ ხართ აქ:'; +$lang['lastmod'] = 'ბოლოს მოდიფიცირებული:'; $lang['deleted'] = 'წაშლილია'; $lang['created'] = 'შექმნილია'; $lang['restored'] = 'ძველი ვერსია აღდგენილია %'; @@ -240,18 +240,18 @@ $lang['admin_register'] = 'ახალი მომხმარებლ $lang['metaedit'] = 'Edit Metadata'; $lang['metasaveerr'] = 'Writing metadata failed'; $lang['metasaveok'] = 'Metadata saved'; -$lang['img_title'] = 'სათაური'; -$lang['img_caption'] = 'Caption'; -$lang['img_date'] = 'თარიღი'; -$lang['img_fname'] = 'ფაილის სახელი'; -$lang['img_fsize'] = 'ზომა'; -$lang['img_artist'] = 'ფოტოგრაფი'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'ფორმატი'; -$lang['img_camera'] = 'კამერა'; -$lang['img_keywords'] = 'Keywords'; -$lang['img_width'] = 'სიგანე'; -$lang['img_height'] = 'სიმაღლე'; +$lang['img_title'] = 'სათაური:'; +$lang['img_caption'] = 'Caption:'; +$lang['img_date'] = 'თარიღი:'; +$lang['img_fname'] = 'ფაილის სახელი:'; +$lang['img_fsize'] = 'ზომა:'; +$lang['img_artist'] = 'ფოტოგრაფი:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'ფორმატი:'; +$lang['img_camera'] = 'კამერა:'; +$lang['img_keywords'] = 'Keywords:'; +$lang['img_width'] = 'სიგანე:'; +$lang['img_height'] = 'სიმაღლე:'; $lang['subscr_subscribe_success'] = 'Added %s to subscription list for %s'; $lang['subscr_subscribe_error'] = 'Error adding %s to subscription list for %s'; $lang['subscr_subscribe_noaddress'] = 'There is no address associated with your login, you cannot be added to the subscription list'; diff --git a/inc/lang/kk/lang.php b/inc/lang/kk/lang.php index 4b111b118..74afa24e5 100644 --- a/inc/lang/kk/lang.php +++ b/inc/lang/kk/lang.php @@ -45,7 +45,7 @@ $lang['btn_draftdel'] = 'Шимайды өшіру'; $lang['btn_revert'] = 'Қалпына келтіру'; $lang['btn_register'] = 'Тіркеу'; $lang['btn_apply'] = 'Қолдану/Енгізу'; -$lang['loggedinas'] = 'түпнұсқамен кірген'; +$lang['loggedinas'] = 'түпнұсқамен кірген:'; $lang['user'] = 'Түпнұсқа'; $lang['pass'] = 'Құпиясөз'; $lang['newpass'] = 'Жаңа құпиясөз'; @@ -83,11 +83,11 @@ $lang['license'] = 'Басқаша көрсетілген болм $lang['licenseok'] = 'Ескерту: бұл бетті өңдеуіңізбен мазмұныңыз келесі лицензия бойынша беруге келесесіз:'; $lang['searchmedia'] = 'Іздеу файлдың атауы:'; $lang['searchmedia_in'] = '%s-мен іздеу:'; -$lang['txt_upload'] = 'Еңгізетін файлды таңдау'; -$lang['txt_filename'] = 'Келесідей еңгізу (қалауынша)'; +$lang['txt_upload'] = 'Еңгізетін файлды таңдау:'; +$lang['txt_filename'] = 'Келесідей еңгізу (қалауынша):'; $lang['txt_overwrt'] = 'Бар файлды қайта жазу'; -$lang['lockedby'] = 'Осы уақытта тойтарылған'; -$lang['lockexpire'] = 'Тойтару келесі уақытта бітеді'; +$lang['lockedby'] = 'Осы уақытта тойтарылған:'; +$lang['lockexpire'] = 'Тойтару келесі уақытта бітеді:'; $lang['js']['willexpire'] = 'Бұл бетті түзеу тойтаруыңыз бір минутта бітеді. Қақтығыс болмау және тойтару таймерді түсіру үшін қарап шығу пернені басыңыз.'; $lang['js']['notsavedyet'] = 'Сақталмаған өзгерістер жоғалатын болады.'; $lang['js']['searchmedia'] = 'Файлдарды іздеу'; @@ -124,7 +124,7 @@ $lang['created'] = 'ЖасалFан'; $lang['mail_new_user'] = 'Жаңа пайдаланушы'; $lang['qb_chars'] = 'Арнайы белгiлер'; $lang['btn_img_backto'] = 'Қайта оралу %s'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Камера'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Камера:'; $lang['i_chooselang'] = 'Тіл таңдау'; $lang['i_retry'] = 'Қайталау'; diff --git a/inc/lang/km/lang.php b/inc/lang/km/lang.php index 9f65ccd16..749fa419c 100644 --- a/inc/lang/km/lang.php +++ b/inc/lang/km/lang.php @@ -43,7 +43,7 @@ $lang['btn_recover'] = 'ស្រោះគំរោងឡើង'; $lang['btn_draftdel'] = 'លុបគំរោង'; $lang['btn_register'] = 'ចុះឈ្មោះ';//'Register'; -$lang['loggedinas'] = 'អ្នកប្រើ'; +$lang['loggedinas'] = 'អ្នកប្រើ:'; $lang['user'] = 'នាមបម្រើ'; $lang['pass'] = 'ពាក្សសម្ងត់'; $lang['newpass'] = 'ពាក្សសម្ងាត់ថ្មី'; @@ -80,11 +80,11 @@ $lang['resendpwdbadauth'] = 'សុំអាទោស​ រហស្សលេ $lang['resendpwdconfirm'] ='ខ្សែបន្ត'; $lang['resendpwdsuccess'] = 'ពាក្សសម្ងាតអ្នកបានផ្ញើហើយ។'; -$lang['txt_upload'] = 'ជ្រើសឯកសារដែលរុញ​ឡើង'; -$lang['txt_filename'] = 'រុញឡើងជា (ស្រេច​ចិត្ត)'; +$lang['txt_upload'] = 'ជ្រើសឯកសារដែលរុញ​ឡើង:'; +$lang['txt_filename'] = 'រុញឡើងជា (ស្រេច​ចិត្ត):'; $lang['txt_overwrt'] = 'កត់ពីលើ';//'Overwrite existing file'; -$lang['lockedby'] = 'ឥឡូវនេះចកជាប់​'; -$lang['lockexpire'] = 'សោជាប់ផុត​កំណត់ម៉ោង'; +$lang['lockedby'] = 'ឥឡូវនេះចកជាប់​:'; +$lang['lockexpire'] = 'សោជាប់ផុត​កំណត់ម៉ោង:'; $lang['js']['willexpire'] = 'សោអ្នកចំពោះកែតម្រូវទំព័រនេះ ហួសពែលក្នុងមួយនាទី។\nកុំឲ្យមានជម្លោះ ប្រើ «បង្ហាញ»​ ទៅកំណត់​ឡើង​វិញ។'; $lang['js']['notsavedyet'] = 'កម្រែមិនទានរុក្សាទកត្រូវបោះបង់។\nបន្តទៅទាឬទេ?'; @@ -125,9 +125,9 @@ $lang['current'] = 'ឥឡៅវ'; $lang['yours'] = 'តំណែអ្នាក'; $lang['diff'] = 'បង្ហាងអសទិសភាពជាមួយតំណែឥឡូវ '; $lang['line'] = 'ខ្សែ'; -$lang['breadcrumb'] = 'ដាន'; -$lang['youarehere'] = 'ដាន'; -$lang['lastmod'] = 'ពេលកែចុងក្រោយ'; +$lang['breadcrumb'] = 'ដាន:'; +$lang['youarehere'] = 'ដាន:'; +$lang['lastmod'] = 'ពេលកែចុងក្រោយ:'; $lang['by'] = 'និពន្ឋដោយ'; $lang['deleted'] = 'យកចេញ'; $lang['created'] = 'បង្កើត'; @@ -166,16 +166,16 @@ $lang['metaedit'] = 'កែទិន្នន័យអរូប';//'Edit Meta $lang['metasaveerr'] = 'ពំអាចកត់រទិន្នន័យអរូប';//'Writing metadata failed'; $lang['metasaveok'] = 'ទិន្នន័យអរូប'; $lang['btn_img_backto'] = 'ថយក្រោយ%s'; -$lang['img_title'] = 'អភិធេយ្យ'; -$lang['img_caption'] = 'ចំណងជើង'; -$lang['img_date'] = 'ថ្ងៃខែ';//'Date'; -$lang['img_fname'] = 'ឈ្មោះឯកសារ'; -$lang['img_fsize'] = 'ទំហំ';//'Size'; -$lang['img_artist'] = 'អ្នកថតរូប'; -$lang['img_copyr'] = 'រក្សា​សិទ្ធិ'; -$lang['img_format'] = 'ធុនប្រភេទ'; -$lang['img_camera'] = 'គ្រឿងថត'; -$lang['img_keywords']= 'មេពាក្ស';//'Keywords'; +$lang['img_title'] = 'អភិធេយ្យ:'; +$lang['img_caption'] = 'ចំណងជើង:'; +$lang['img_date'] = 'ថ្ងៃខែ:';//'Date'; +$lang['img_fname'] = 'ឈ្មោះឯកសារ:'; +$lang['img_fsize'] = 'ទំហំ:';//'Size'; +$lang['img_artist'] = 'អ្នកថតរូប:'; +$lang['img_copyr'] = 'រក្សា​សិទ្ធិ:'; +$lang['img_format'] = 'ធុនប្រភេទ:'; +$lang['img_camera'] = 'គ្រឿងថត:'; +$lang['img_keywords']= 'មេពាក្ស:';//'Keywords'; /* auth.class language support */ $lang['authtempfail'] = 'ការផ្ទៀងផ្ទាត់​ភាព​​ត្រឹមត្រូវឥតដំនេ។ ប្រើ ....'; diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index 592b953b9..ce9ed6174 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -59,7 +59,7 @@ $lang['btn_media'] = '미디어 관리자'; $lang['btn_deleteuser'] = '내 계정 제거'; $lang['btn_img_backto'] = '%s(으)로 돌아가기'; $lang['btn_mediaManager'] = '미디어 관리자에서 보기'; -$lang['loggedinas'] = '로그인한 사용자'; +$lang['loggedinas'] = '로그인한 사용자:'; $lang['user'] = '사용자 이름'; $lang['pass'] = '비밀번호'; $lang['newpass'] = '새 비밀번호'; @@ -104,12 +104,12 @@ $lang['license'] = '별도로 명시하지 않을 경우, 이 위 $lang['licenseok'] = '참고: 이 문서를 편집하면 내용은 다음 라이선스에 따라 배포하는 데 동의합니다:'; $lang['searchmedia'] = '파일 이름 검색:'; $lang['searchmedia_in'] = '%s에서 검색'; -$lang['txt_upload'] = '올릴 파일 선택'; -$lang['txt_filename'] = '올릴 파일 이름 (선택 사항)'; +$lang['txt_upload'] = '올릴 파일 선택:'; +$lang['txt_filename'] = '올릴 파일 이름 (선택 사항):'; $lang['txt_overwrt'] = '기존 파일에 덮어쓰기'; $lang['maxuploadsize'] = '최대 올리기 용량. 파일당 %s입니다.'; -$lang['lockedby'] = '현재 잠겨진 사용자'; -$lang['lockexpire'] = '잠금 해제 시간'; +$lang['lockedby'] = '현재 잠겨진 사용자:'; +$lang['lockexpire'] = '잠금 해제 시간:'; $lang['js']['willexpire'] = '잠시 후 편집 잠금이 해제됩니다.\n편집 충돌을 피하려면 미리 보기를 눌러 잠금 시간을 다시 설정하세요.'; $lang['js']['notsavedyet'] = '저장하지 않은 바뀜이 사라집니다.'; $lang['js']['searchmedia'] = '파일 검색'; @@ -194,9 +194,9 @@ $lang['difflastrev'] = '마지막 판'; $lang['diffbothprevrev'] = '양쪽 이전 판'; $lang['diffbothnextrev'] = '양쪽 다음 판'; $lang['line'] = '줄'; -$lang['breadcrumb'] = '추적'; -$lang['youarehere'] = '현재 위치'; -$lang['lastmod'] = '마지막으로 수정됨'; +$lang['breadcrumb'] = '추적:'; +$lang['youarehere'] = '현재 위치:'; +$lang['lastmod'] = '마지막으로 수정됨:'; $lang['by'] = '저자'; $lang['deleted'] = '제거됨'; $lang['created'] = '만듦'; @@ -249,18 +249,18 @@ $lang['admin_register'] = '새 사용자 추가'; $lang['metaedit'] = '메타데이터 편집'; $lang['metasaveerr'] = '메타데이터 쓰기 실패'; $lang['metasaveok'] = '메타데이터 저장됨'; -$lang['img_title'] = '제목'; -$lang['img_caption'] = '설명'; -$lang['img_date'] = '날짜'; -$lang['img_fname'] = '파일 이름'; -$lang['img_fsize'] = '크기'; -$lang['img_artist'] = '촬영자'; -$lang['img_copyr'] = '저작권'; -$lang['img_format'] = '포맷'; -$lang['img_camera'] = '카메라'; -$lang['img_keywords'] = '키워드'; -$lang['img_width'] = '너비'; -$lang['img_height'] = '높이'; +$lang['img_title'] = '제목:'; +$lang['img_caption'] = '설명:'; +$lang['img_date'] = '날짜:'; +$lang['img_fname'] = '파일 이름:'; +$lang['img_fsize'] = '크기:'; +$lang['img_artist'] = '촬영자:'; +$lang['img_copyr'] = '저작권:'; +$lang['img_format'] = '포맷:'; +$lang['img_camera'] = '카메라:'; +$lang['img_keywords'] = '키워드:'; +$lang['img_width'] = '너비:'; +$lang['img_height'] = '높이:'; $lang['subscr_subscribe_success'] = '%s 사용자가 %s 구독 목록에 추가했습니다'; $lang['subscr_subscribe_error'] = '%s 사용자가 %s 구독 목록에 추가하는데 실패했습니다'; $lang['subscr_subscribe_noaddress'] = '로그인으로 연결된 주소가 없기 때문에 구독 목록에 추가할 수 없습니다'; diff --git a/inc/lang/ku/lang.php b/inc/lang/ku/lang.php index 14f568b8e..b1b733ec9 100644 --- a/inc/lang/ku/lang.php +++ b/inc/lang/ku/lang.php @@ -35,7 +35,7 @@ $lang['btn_backtomedia'] = 'Back to Mediafile Selection'; $lang['btn_subscribe'] = 'Subscribe Changes'; $lang['btn_register'] = 'Register'; -$lang['loggedinas'] = 'Logged in as'; +$lang['loggedinas'] = 'Logged in as:'; $lang['user'] = 'Username'; $lang['pass'] = 'Password'; $lang['passchk'] = 'once again'; @@ -89,8 +89,8 @@ $lang['current'] = 'current'; $lang['yours'] = 'Your Version'; $lang['diff'] = 'show differences to current version'; $lang['line'] = 'Rêz'; -$lang['breadcrumb'] = 'Şop'; -$lang['lastmod'] = 'Guherandina dawî'; +$lang['breadcrumb'] = 'Şop:'; +$lang['lastmod'] = 'Guherandina dawî:'; $lang['by'] = 'by'; $lang['deleted'] = 'hat jê birin'; $lang['created'] = 'hat afirandin'; @@ -128,15 +128,15 @@ $lang['metaedit'] = 'Edit Metadata'; $lang['metasaveerr'] = 'Writing metadata failed'; $lang['metasaveok'] = 'Metadata saved'; $lang['btn_img_backto'] = 'Back to %s'; -$lang['img_title'] = 'Title'; -$lang['img_caption'] = 'Caption'; -$lang['img_date'] = 'Date'; -$lang['img_fname'] = 'Filename'; -$lang['img_fsize'] = 'Size'; -$lang['img_artist'] = 'Photographer'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords']= 'Keywords'; +$lang['img_title'] = 'Title:'; +$lang['img_caption'] = 'Caption:'; +$lang['img_date'] = 'Date:'; +$lang['img_fname'] = 'Filename:'; +$lang['img_fsize'] = 'Size:'; +$lang['img_artist'] = 'Photographer:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords']= 'Keywords:'; //Setup VIM: ex: et ts=2 : diff --git a/inc/lang/la/lang.php b/inc/lang/la/lang.php index 691b303ed..66cd13967 100644 --- a/inc/lang/la/lang.php +++ b/inc/lang/la/lang.php @@ -90,8 +90,8 @@ $lang['searchmedia_in'] = 'Quaere "%s":'; $lang['txt_upload'] = 'Eligere documenta oneranda:'; $lang['txt_filename'] = 'Onerare (optio):'; $lang['txt_overwrt'] = 'Documento ueteri imponere:'; -$lang['lockedby'] = 'Nunc hoc intercludit'; -$lang['lockexpire'] = 'Hoc apertum'; +$lang['lockedby'] = 'Nunc hoc intercludit:'; +$lang['lockexpire'] = 'Hoc apertum:'; $lang['js']['willexpire'] = 'Interclusio paginae recensendae uno minuto finita est.\nUt errores uites, \'praeuisio\' preme ut interclusionem ripristines.'; $lang['js']['notsavedyet'] = 'Res non seruatae amissurae sunt.'; $lang['js']['searchmedia'] = 'Quaere inter documenta'; @@ -203,16 +203,16 @@ $lang['metaedit'] = 'Res codicis mutare'; $lang['metasaveerr'] = 'Res codicis non scribitur.'; $lang['metasaveok'] = 'Res codicis seruatae.'; $lang['btn_img_backto'] = 'Redere ad %s'; -$lang['img_title'] = 'Titulus'; -$lang['img_caption'] = 'Descriptio'; -$lang['img_date'] = 'Dies'; -$lang['img_fname'] = 'Titulus documenti'; -$lang['img_fsize'] = 'Pondus'; -$lang['img_artist'] = 'Imaginum exprimitor\trix'; -$lang['img_copyr'] = 'Iura exemplarium'; -$lang['img_format'] = 'Forma'; -$lang['img_camera'] = 'Cella'; -$lang['img_keywords'] = 'Verba claues'; +$lang['img_title'] = 'Titulus:'; +$lang['img_caption'] = 'Descriptio:'; +$lang['img_date'] = 'Dies:'; +$lang['img_fname'] = 'Titulus documenti:'; +$lang['img_fsize'] = 'Pondus:'; +$lang['img_artist'] = 'Imaginum exprimitor\trix:'; +$lang['img_copyr'] = 'Iura exemplarium:'; +$lang['img_format'] = 'Forma:'; +$lang['img_camera'] = 'Cella:'; +$lang['img_keywords'] = 'Verba claues:'; $lang['subscr_subscribe_success'] = '%s additur indici subscriptionis quod %s'; $lang['subscr_subscribe_error'] = '%s non additur indici subscriptionis quod %s'; $lang['subscr_subscribe_noaddress'] = 'Cursus interretialis tuus deest, sic in indice subscriptionis non scribi potes'; diff --git a/inc/lang/lb/lang.php b/inc/lang/lb/lang.php index efb98f679..a1b6ccf84 100644 --- a/inc/lang/lb/lang.php +++ b/inc/lang/lb/lang.php @@ -41,7 +41,7 @@ $lang['btn_draft'] = 'Entworf änneren'; $lang['btn_recover'] = 'Entworf zeréckhuelen'; $lang['btn_draftdel'] = 'Entworf läschen'; $lang['btn_register'] = 'Registréieren'; -$lang['loggedinas'] = 'Ageloggt als'; +$lang['loggedinas'] = 'Ageloggt als:'; $lang['user'] = 'Benotzernumm'; $lang['pass'] = 'Passwuert'; $lang['newpass'] = 'Nei Passwuert'; @@ -77,11 +77,11 @@ $lang['resendpwdconfirm'] = 'De Konfirmatiounslink gouf iwwer Email gesché $lang['resendpwdsuccess'] = 'Däi nei Passwuert gouf iwwer Email geschéckt.'; $lang['license'] = 'Wann näischt anescht do steet, ass den Inhalt vun dësem Wiki ënner folgender Lizenz:'; $lang['licenseok'] = 'Pass op: Wanns de dës Säit änners, bass de dermat averstan dass den Inhalt ënner folgender Lizenz lizenzéiert gëtt:'; -$lang['txt_upload'] = 'Wiel eng Datei fir eropzelueden'; -$lang['txt_filename'] = 'Eroplueden als (optional)'; +$lang['txt_upload'] = 'Wiel eng Datei fir eropzelueden:'; +$lang['txt_filename'] = 'Eroplueden als (optional):'; $lang['txt_overwrt'] = 'Bestehend Datei iwwerschreiwen'; -$lang['lockedby'] = 'Am Moment gespaart vun'; -$lang['lockexpire'] = 'D\'Spär leeft of ëm'; +$lang['lockedby'] = 'Am Moment gespaart vun:'; +$lang['lockexpire'] = 'D\'Spär leeft of ëm:'; $lang['js']['willexpire'] = 'Deng Spär fir d\'Säit ze änneren leeft an enger Minutt of.\nFir Konflikter ze verhënneren, dréck op Kucken ouni ofzespäicheren.'; $lang['js']['notsavedyet'] = 'Net gespäicher Ännerunge gi verluer.\nWierklech weiderfueren?'; $lang['rssfailed'] = 'Et ass e Feeler virkomm beim erofluede vun dësem Feed: '; @@ -118,9 +118,9 @@ $lang['yours'] = 'Deng Versioun'; $lang['diff'] = 'Weis d\'Ënnerscheeder zuer aktueller Versioun'; $lang['diff2'] = 'Weis d\'Ënnerscheeder zwescht den ausgewielte Versiounen'; $lang['line'] = 'Linn'; -$lang['breadcrumb'] = 'Spuer'; -$lang['youarehere'] = 'Du bass hei'; -$lang['lastmod'] = 'Fir d\'lescht g\'ännert'; +$lang['breadcrumb'] = 'Spuer:'; +$lang['youarehere'] = 'Du bass hei:'; +$lang['lastmod'] = 'Fir d\'lescht g\'ännert:'; $lang['by'] = 'vun'; $lang['deleted'] = 'geläscht'; $lang['created'] = 'erstallt'; @@ -163,16 +163,16 @@ $lang['metaedit'] = 'Metadaten änneren'; $lang['metasaveerr'] = 'Feeler beim Schreiwe vun de Metadaten'; $lang['metasaveok'] = 'Metadate gespäichert'; $lang['btn_img_backto'] = 'Zeréck op %s'; -$lang['img_title'] = 'Titel'; -$lang['img_caption'] = 'Beschreiwung'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Dateinumm'; -$lang['img_fsize'] = 'Gréisst'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Schlësselwieder'; +$lang['img_title'] = 'Titel:'; +$lang['img_caption'] = 'Beschreiwung:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Dateinumm:'; +$lang['img_fsize'] = 'Gréisst:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Schlësselwieder:'; $lang['authtempfail'] = 'D\'Benotzerautentifikatioun ass de Moment net verfügbar. Wann dës Situatioun unhält, dann informéier w.e.g. de Wiki Admin.'; $lang['i_chooselang'] = 'Wiel deng Sprooch'; $lang['i_installer'] = 'DokuWiki Installer'; diff --git a/inc/lang/lt/lang.php b/inc/lang/lt/lang.php index 74c8c88e9..d6552d68c 100644 --- a/inc/lang/lt/lang.php +++ b/inc/lang/lt/lang.php @@ -46,7 +46,7 @@ $lang['btn_draft'] = 'Redaguoti juodraštį'; $lang['btn_recover'] = 'Atkurti juodraštį'; $lang['btn_draftdel'] = 'Šalinti juodraštį'; $lang['btn_register'] = 'Registruotis'; -$lang['loggedinas'] = 'Prisijungęs kaip'; +$lang['loggedinas'] = 'Prisijungęs kaip:'; $lang['user'] = 'Vartotojo vardas'; $lang['pass'] = 'Slaptažodis'; $lang['newpass'] = 'Naujas slaptažodis'; @@ -82,11 +82,11 @@ $lang['resendpwdconfirm'] = 'Patvirtinimo nuoroda išsiųsta el. paštu.'; $lang['resendpwdsuccess'] = 'Jūsų naujas slaptažodis buvo išsiųstas el. paštu.'; $lang['license'] = 'Jei nenurodyta kitaip, šio wiki turinys ginamas tokia licencija:'; $lang['licenseok'] = 'Pastaba: Redaguodami šį puslapį jūs sutinkate jog jūsų turinys atitinka licencijavima pagal šią licenciją'; -$lang['txt_upload'] = 'Išsirinkite atsiunčiamą bylą'; -$lang['txt_filename'] = 'Įveskite wikivardą (nebūtina)'; +$lang['txt_upload'] = 'Išsirinkite atsiunčiamą bylą:'; +$lang['txt_filename'] = 'Įveskite wikivardą (nebūtina):'; $lang['txt_overwrt'] = 'Perrašyti egzistuojančią bylą'; -$lang['lockedby'] = 'Užrakintas vartotojo'; -$lang['lockexpire'] = 'Užraktas bus nuimtas'; +$lang['lockedby'] = 'Užrakintas vartotojo:'; +$lang['lockexpire'] = 'Užraktas bus nuimtas:'; $lang['js']['willexpire'] = 'Šio puslapio redagavimo užrakto galiojimo laikas baigsis po minutės.\nNorėdami išvengti nesklandumų naudokite peržiūros mygtuką ir užraktas atsinaujins.'; $lang['js']['notsavedyet'] = 'Pakeitimai nebus išsaugoti.\nTikrai tęsti?'; $lang['rssfailed'] = 'Siunčiant šį feed\'ą įvyko klaida: '; @@ -125,9 +125,9 @@ $lang['yours'] = 'Jūsų versija'; $lang['diff'] = 'rodyti skirtumus tarp šios ir esamos versijos'; $lang['diff2'] = 'Parodyti skirtumus tarp pasirinktų versijų'; $lang['line'] = 'Linija'; -$lang['breadcrumb'] = 'Kelias'; -$lang['youarehere'] = 'Jūs esate čia'; -$lang['lastmod'] = 'Keista'; +$lang['breadcrumb'] = 'Kelias:'; +$lang['youarehere'] = 'Jūs esate čia:'; +$lang['lastmod'] = 'Keista:'; $lang['by'] = 'vartotojo'; $lang['deleted'] = 'ištrintas'; $lang['created'] = 'sukurtas'; @@ -164,16 +164,16 @@ $lang['metaedit'] = 'Redaguoti metaduomenis'; $lang['metasaveerr'] = 'Nepavyko išsaugoti metaduomenų'; $lang['metasaveok'] = 'Metaduomenys išsaugoti'; $lang['btn_img_backto'] = 'Atgal į %s'; -$lang['img_title'] = 'Pavadinimas'; -$lang['img_caption'] = 'Antraštė'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Bylos pavadinimas'; -$lang['img_fsize'] = 'Dydis'; -$lang['img_artist'] = 'Fotografas'; -$lang['img_copyr'] = 'Autorinės teisės'; -$lang['img_format'] = 'Formatas'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Raktiniai žodžiai'; +$lang['img_title'] = 'Pavadinimas:'; +$lang['img_caption'] = 'Antraštė:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Bylos pavadinimas:'; +$lang['img_fsize'] = 'Dydis:'; +$lang['img_artist'] = 'Fotografas:'; +$lang['img_copyr'] = 'Autorinės teisės:'; +$lang['img_format'] = 'Formatas:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Raktiniai žodžiai:'; $lang['authtempfail'] = 'Vartotojo tapatumo nustatymas laikinai nepasiekiamas. Jei ši situacija kartojasi, tai praneškite savo administratoriui.'; $lang['i_chooselang'] = 'Pasirinkite kalbą'; $lang['i_installer'] = 'DokuWiki Instaliatorius'; diff --git a/inc/lang/lv/lang.php b/inc/lang/lv/lang.php index 91fed262e..bea5ab72c 100644 --- a/inc/lang/lv/lang.php +++ b/inc/lang/lv/lang.php @@ -47,7 +47,7 @@ $lang['btn_revert'] = 'Atjaunot'; $lang['btn_register'] = 'Reģistrēties'; $lang['btn_apply'] = 'Labi'; $lang['btn_media'] = 'Mēdiju pārvaldnieks'; -$lang['loggedinas'] = 'Pieteicies kā'; +$lang['loggedinas'] = 'Pieteicies kā:'; $lang['user'] = 'Lietotājvārds'; $lang['pass'] = 'Parole'; $lang['newpass'] = 'Jaunā parole'; @@ -86,12 +86,12 @@ $lang['license'] = 'Ja nav norādīts citādi, viki saturs pieejam $lang['licenseok'] = 'Ievēro: Labojot lapu, tu piekrīti šādiem licenzes noteikumiem.'; $lang['searchmedia'] = 'Meklētais faila vārds: '; $lang['searchmedia_in'] = 'Meklēt iekš %s'; -$lang['txt_upload'] = 'Norādi augšupielādējamo failu'; -$lang['txt_filename'] = 'Ievadi vikivārdu (nav obligāts)'; +$lang['txt_upload'] = 'Norādi augšupielādējamo failu:'; +$lang['txt_filename'] = 'Ievadi vikivārdu (nav obligāts):'; $lang['txt_overwrt'] = 'Aizstāt esošo failu'; $lang['maxuploadsize'] = 'Augšuplādējamā faila ierobežojums: %s.'; -$lang['lockedby'] = 'Patlaban bloķējis '; -$lang['lockexpire'] = 'Bloķējums beigsies '; +$lang['lockedby'] = 'Patlaban bloķējis :'; +$lang['lockexpire'] = 'Bloķējums beigsies :'; $lang['js']['willexpire'] = 'Tavs bloķējums uz šo lapu pēc minūtes beigsies.\nLai izvairītos no konflikta, nospied Iepriekšapskata pogu\n un bloķējuma laiku sāks skaitīt no jauna.'; $lang['js']['notsavedyet'] = 'Veiktas bet nav saglabātas izmaiņas. Vai tiešām tās nevajag?'; @@ -173,9 +173,9 @@ $lang['diff_type'] = 'Skatīt atšķirības:'; $lang['diff_inline'] = 'Iekļauti'; $lang['diff_side'] = 'Blakus'; $lang['line'] = 'Rinda'; -$lang['breadcrumb'] = 'Apmeklēts'; -$lang['youarehere'] = 'Tu atrodies šeit'; -$lang['lastmod'] = 'Labota'; +$lang['breadcrumb'] = 'Apmeklēts:'; +$lang['youarehere'] = 'Tu atrodies šeit:'; +$lang['lastmod'] = 'Labota:'; $lang['by'] = ', labojis'; $lang['deleted'] = 'dzēsts'; $lang['created'] = 'izveidots'; @@ -229,18 +229,18 @@ $lang['metaedit'] = 'Labot metadatus'; $lang['metasaveerr'] = 'Metadati nav saglabāti'; $lang['metasaveok'] = 'Metadati saglabāti'; $lang['btn_img_backto'] = 'Atpakaļ uz %s'; -$lang['img_title'] = 'Virsraksts'; -$lang['img_caption'] = 'Apraksts'; -$lang['img_date'] = 'Datums'; -$lang['img_fname'] = 'Faila vārds'; -$lang['img_fsize'] = 'Izmērs'; -$lang['img_artist'] = 'Fotogrāfs'; -$lang['img_copyr'] = 'Autortiesības'; -$lang['img_format'] = 'Formāts'; -$lang['img_camera'] = 'Fotoaparāts'; -$lang['img_keywords'] = 'Atslēgvārdi'; -$lang['img_width'] = 'Platums'; -$lang['img_height'] = 'Augstums'; +$lang['img_title'] = 'Virsraksts:'; +$lang['img_caption'] = 'Apraksts:'; +$lang['img_date'] = 'Datums:'; +$lang['img_fname'] = 'Faila vārds:'; +$lang['img_fsize'] = 'Izmērs:'; +$lang['img_artist'] = 'Fotogrāfs:'; +$lang['img_copyr'] = 'Autortiesības:'; +$lang['img_format'] = 'Formāts:'; +$lang['img_camera'] = 'Fotoaparāts:'; +$lang['img_keywords'] = 'Atslēgvārdi:'; +$lang['img_width'] = 'Platums:'; +$lang['img_height'] = 'Augstums:'; $lang['btn_mediaManager'] = 'Skatīt mēdiju pārvaldniekā'; $lang['subscr_subscribe_success'] = '%s pievienots %s abonēšanas sarakstam'; $lang['subscr_subscribe_error'] = 'Kļūme pievienojot %s %s abonēšanas sarakstam.'; diff --git a/inc/lang/mg/lang.php b/inc/lang/mg/lang.php index c5ed669a9..6239c01fe 100644 --- a/inc/lang/mg/lang.php +++ b/inc/lang/mg/lang.php @@ -49,11 +49,11 @@ $lang['regbadpass'] = 'Tsy mitovy ny alahidy roa nomenao, avereno indray.'; $lang['regpwmail'] = 'Ny alahidy Wiki-nao'; $lang['reghere'] = 'Mbola tsy manana kaonty ianao? Manaova vaovao'; -$lang['txt_upload'] = 'Misafidiana rakitra halefa'; -$lang['txt_filename'] = 'Ampidiro ny anaran\'ny wiki (tsy voatery)'; +$lang['txt_upload'] = 'Misafidiana rakitra halefa:'; +$lang['txt_filename'] = 'Ampidiro ny anaran\'ny wiki (tsy voatery):'; $lang['txt_overwrt'] = 'Fafana izay rakitra efa misy?'; -$lang['lockedby'] = 'Mbola voahidin\'i'; -$lang['lockexpire'] = 'Afaka ny hidy amin\'ny'; +$lang['lockedby'] = 'Mbola voahidin\'i:'; +$lang['lockexpire'] = 'Afaka ny hidy amin\'ny:'; $lang['js']['willexpire'] = 'Efa ho lany fotoana afaka iray minitra ny hidy ahafahanao manova ny pejy.\nMba hialana amin\'ny conflit dia ampiasao ny bokotra topi-maso hamerenana ny timer-n\'ny hidy.'; $lang['js']['notsavedyet'] = 'Misy fiovana tsy voarakitra, ho very izany ireo.\nAzo antoka fa hotohizana?'; @@ -83,7 +83,7 @@ $lang['current'] = 'current'; $lang['yours'] = 'Kinova-nao'; $lang['diff'] = 'Asehoy ny tsy fitoviana amin\'ny kinova amin\'izao'; $lang['line'] = 'Andalana'; -$lang['breadcrumb'] = 'Taiza ianao'; +$lang['breadcrumb'] = 'Taiza ianao:'; $lang['lastmod'] = 'Novaina farany:'; $lang['by'] = '/'; $lang['deleted'] = 'voafafa'; diff --git a/inc/lang/mk/lang.php b/inc/lang/mk/lang.php index 6bf5fafc9..ddfae15c4 100644 --- a/inc/lang/mk/lang.php +++ b/inc/lang/mk/lang.php @@ -47,7 +47,7 @@ $lang['btn_recover'] = 'Поврати скица'; $lang['btn_draftdel'] = 'Избриши скица'; $lang['btn_revert'] = 'Обнови'; $lang['btn_register'] = 'Регистрирај се'; -$lang['loggedinas'] = 'Најавен/а како'; +$lang['loggedinas'] = 'Најавен/а како:'; $lang['user'] = 'Корисничко име'; $lang['pass'] = 'Лозинка'; $lang['newpass'] = 'Нова лозинка'; @@ -85,11 +85,11 @@ $lang['license'] = 'Освен каде што е наведено $lang['licenseok'] = 'Забелешка: со уредување на оваа страница се согласувате да ја лиценцирате вашата содржина под следнава лиценца:'; $lang['searchmedia'] = 'Барај име на датотека:'; $lang['searchmedia_in'] = 'Барај во %s'; -$lang['txt_upload'] = 'Избери датотека за качување'; -$lang['txt_filename'] = 'Качи како (неморално)'; +$lang['txt_upload'] = 'Избери датотека за качување:'; +$lang['txt_filename'] = 'Качи како (неморално):'; $lang['txt_overwrt'] = 'Пребриши ја веќе постоечката датотека'; -$lang['lockedby'] = 'Моментално заклучена од'; -$lang['lockexpire'] = 'Клучот истекува на'; +$lang['lockedby'] = 'Моментално заклучена од:'; +$lang['lockexpire'] = 'Клучот истекува на:'; $lang['js']['willexpire'] = 'Вашиот клуч за уредување на оваа страница ќе истече за една минута.\nЗа да избегнете конфликти и да го ресетирате бројачот за време, искористете го копчето за преглед.'; $lang['js']['notsavedyet'] = 'Незачуваните промени ќе бидат изгубени.\nСакате да продолжите?'; $lang['rssfailed'] = 'Се појави грешка при повлекувањето на овој канал:'; @@ -130,9 +130,9 @@ $lang['yours'] = 'Вашата верзија'; $lang['diff'] = 'Прикажи разлики со сегашната верзија'; $lang['diff2'] = 'Прикажи разлики помеѓу избраните ревизии'; $lang['line'] = 'Линија'; -$lang['breadcrumb'] = 'Следи'; -$lang['youarehere'] = 'Вие сте тука'; -$lang['lastmod'] = 'Последно изменета'; +$lang['breadcrumb'] = 'Следи:'; +$lang['youarehere'] = 'Вие сте тука:'; +$lang['lastmod'] = 'Последно изменета:'; $lang['by'] = 'од'; $lang['deleted'] = 'отстранета'; $lang['created'] = 'креирана'; @@ -172,16 +172,16 @@ $lang['metaedit'] = 'Уреди мета-податоци'; $lang['metasaveerr'] = 'Запишување на мета-податоците не успеа'; $lang['metasaveok'] = 'Мета-податоците се зачувани'; $lang['btn_img_backto'] = 'Назад до %s'; -$lang['img_title'] = 'Насловна линија'; -$lang['img_caption'] = 'Наслов'; -$lang['img_date'] = 'Датум'; -$lang['img_fname'] = 'Име на датотека'; -$lang['img_fsize'] = 'Големина'; -$lang['img_artist'] = 'Фотограф'; -$lang['img_copyr'] = 'Авторско право'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Камера'; -$lang['img_keywords'] = 'Клучни зборови'; +$lang['img_title'] = 'Насловна линија:'; +$lang['img_caption'] = 'Наслов:'; +$lang['img_date'] = 'Датум:'; +$lang['img_fname'] = 'Име на датотека:'; +$lang['img_fsize'] = 'Големина:'; +$lang['img_artist'] = 'Фотограф:'; +$lang['img_copyr'] = 'Авторско право:'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Камера:'; +$lang['img_keywords'] = 'Клучни зборови:'; $lang['subscr_subscribe_success'] = 'Додаден/а е %s во претплатничката листа за %s'; $lang['subscr_subscribe_error'] = 'Грешка при додавањето на %s во претплатничката листа за %s'; $lang['subscr_subscribe_noaddress'] = 'Нема адреса за е-пошта поврзана со Вашата најава, не може да бидете додадени на претплатничката листа'; diff --git a/inc/lang/mr/lang.php b/inc/lang/mr/lang.php index ab84e7353..72779dd10 100644 --- a/inc/lang/mr/lang.php +++ b/inc/lang/mr/lang.php @@ -54,7 +54,7 @@ $lang['btn_revert'] = 'पुनर्स्थापन'; $lang['btn_register'] = 'नोंदणी'; $lang['btn_apply'] = 'लागू'; $lang['btn_media'] = 'मिडिया व्यवस्थापक'; -$lang['loggedinas'] = 'लॉगिन नाव'; +$lang['loggedinas'] = 'लॉगिन नाव:'; $lang['user'] = 'वापरकर्ता'; $lang['pass'] = 'परवलीचा शब्द'; $lang['newpass'] = 'नवीन परवलीचा शब्द'; @@ -93,8 +93,8 @@ $lang['license'] = 'विशिष्ठ नोंद केल $lang['licenseok'] = 'नोंद : हे पृष्ठ संपादित केल्यास तुम्ही तुमचे योगदान खालील लायसन्स अंतर्गत येइल : '; $lang['searchmedia'] = 'फाईल शोधा:'; $lang['searchmedia_in'] = '%s मधे शोधा'; -$lang['txt_upload'] = 'अपलोड करण्याची फाइल निवडा'; -$lang['txt_filename'] = 'अपलोड उर्फ़ ( वैकल्पिक )'; +$lang['txt_upload'] = 'अपलोड करण्याची फाइल निवडा:'; +$lang['txt_filename'] = 'अपलोड उर्फ़ ( वैकल्पिक ):'; $lang['txt_overwrt'] = 'अस्तित्वात असलेल्या फाइलवरच सुरक्षित करा.'; $lang['lockedby'] = 'सध्या लॉक करणारा :'; $lang['lockexpire'] = 'सध्या लॉक करणारा :'; @@ -174,9 +174,9 @@ $lang['diff_type'] = 'फरक बघू:'; $lang['diff_inline'] = 'एका ओळीत'; $lang['diff_side'] = 'बाजूबाजूला'; $lang['line'] = 'ओळ'; -$lang['breadcrumb'] = 'मागमूस'; -$lang['youarehere'] = 'तुम्ही इथे आहात'; -$lang['lastmod'] = 'सर्वात शेवटचा बदल'; +$lang['breadcrumb'] = 'मागमूस:'; +$lang['youarehere'] = 'तुम्ही इथे आहात:'; +$lang['lastmod'] = 'सर्वात शेवटचा बदल:'; $lang['by'] = 'द्वारा'; $lang['deleted'] = 'काढून टाकले'; $lang['created'] = 'निर्माण केले'; @@ -228,18 +228,18 @@ $lang['metaedit'] = 'मेटाडेटा बदला'; $lang['metasaveerr'] = 'मेटाडेटा सुरक्षित झाला नाही'; $lang['metasaveok'] = 'मेटाडेटा सुरक्षित झाला'; $lang['btn_img_backto'] = 'परत जा %s'; -$lang['img_title'] = 'नाव'; -$lang['img_caption'] = 'टीप'; -$lang['img_date'] = 'तारीख'; -$lang['img_fname'] = 'फाइल नाव'; -$lang['img_fsize'] = 'साइझ'; -$lang['img_artist'] = 'फोटोग्राफर'; -$lang['img_copyr'] = 'कॉपीराइट'; -$lang['img_format'] = 'प्रकार'; -$lang['img_camera'] = 'कॅमेरा'; -$lang['img_keywords'] = 'मुख्य शब्द'; -$lang['img_width'] = 'रुंदी'; -$lang['img_height'] = 'उंची'; +$lang['img_title'] = 'नाव:'; +$lang['img_caption'] = 'टीप:'; +$lang['img_date'] = 'तारीख:'; +$lang['img_fname'] = 'फाइल नाव:'; +$lang['img_fsize'] = 'साइझ:'; +$lang['img_artist'] = 'फोटोग्राफर:'; +$lang['img_copyr'] = 'कॉपीराइट:'; +$lang['img_format'] = 'प्रकार:'; +$lang['img_camera'] = 'कॅमेरा:'; +$lang['img_keywords'] = 'मुख्य शब्द:'; +$lang['img_width'] = 'रुंदी:'; +$lang['img_height'] = 'उंची:'; $lang['btn_mediaManager'] = 'मिडिया व्यवस्थापकात बघू'; $lang['authtempfail'] = 'सदस्य अधिकृत करण्याची सुविधा सध्या चालू नाही. सतत हा मजकूर दिसल्यास कृपया तुमच्या विकीच्या व्यवस्थापकाशी सम्पर्क साधा.'; $lang['i_chooselang'] = 'तुमची भाषा निवडा'; diff --git a/inc/lang/ms/lang.php b/inc/lang/ms/lang.php index 02c0e2c91..303116429 100644 --- a/inc/lang/ms/lang.php +++ b/inc/lang/ms/lang.php @@ -47,7 +47,7 @@ $lang['btn_revert'] = 'Pulihkan'; $lang['btn_register'] = 'Daftaran'; $lang['btn_apply'] = 'Simpan'; $lang['btn_media'] = 'Manager media'; -$lang['loggedinas'] = 'Log masuk sebagai'; +$lang['loggedinas'] = 'Log masuk sebagai:'; $lang['user'] = 'Nama pengguna'; $lang['pass'] = 'Kata laluan'; $lang['newpass'] = 'Kata laluan baru'; @@ -83,10 +83,10 @@ $lang['license'] = 'Selain daripada yang dinyata, isi wiki ini dis $lang['licenseok'] = 'Perhatian: Dengan menyunting halaman ini, anda setuju untuk isi-isi anda dilesen menggunakan lesen berikut:'; $lang['searchmedia'] = 'Cari nama fail:'; $lang['searchmedia_in'] = 'Cari di %s'; -$lang['txt_upload'] = 'Pilih fail untuk diunggah'; -$lang['txt_filename'] = 'Unggah fail dengan nama (tidak wajib)'; +$lang['txt_upload'] = 'Pilih fail untuk diunggah:'; +$lang['txt_filename'] = 'Unggah fail dengan nama (tidak wajib):'; $lang['txt_overwrt'] = 'Timpa fail sekarang'; -$lang['lockedby'] = 'Halaman ini telah di'; +$lang['lockedby'] = 'Halaman ini telah di:'; $lang['fileupload'] = 'Muat naik fail'; $lang['uploadsucc'] = 'Pemuatan naik berjaya'; $lang['uploadfail'] = 'Ralat muat naik'; diff --git a/inc/lang/ne/lang.php b/inc/lang/ne/lang.php index a7d694d5b..ddf031242 100644 --- a/inc/lang/ne/lang.php +++ b/inc/lang/ne/lang.php @@ -44,7 +44,7 @@ $lang['btn_draft'] = ' ड्राफ्ट सम्पादन $lang['btn_recover'] = 'पहिलेको ड्राफ्ट हासिल गर्नुहोस '; $lang['btn_draftdel'] = ' ड्राफ्ट मेटाउनुहोस् '; $lang['btn_register'] = 'दर्ता गर्नुहोस्'; -$lang['loggedinas'] = 'प्रवेश गर्नुहोस् '; +$lang['loggedinas'] = 'प्रवेश गर्नुहोस् :'; $lang['user'] = 'प्रयोगकर्ता '; $lang['pass'] = 'प्रवेशशव्द'; $lang['newpass'] = 'नयाँ प्रवेशशव्द'; @@ -80,10 +80,10 @@ $lang['resendpwdconfirm'] = 'तपाईको इमेलमा कन $lang['resendpwdsuccess'] = 'तपाईको प्रवेशशव्द इमेलबाट पठाइएको छ। '; $lang['license'] = 'खुलाइएको बाहेक, यस विकिका विषयवस्तुहरु निम्त प्रमाण द्वारा प्रमाणिक गरिएको छ।'; $lang['licenseok'] = 'नोट: यस पृष्ठ सम्पादन गरी तपाईले आफ्नो विषयवस्तु तलको प्रमाण पत्र अन्तर्गत प्रमाणिक गर्न राजी हुनु हुनेछ ।'; -$lang['txt_upload'] = 'अपलोड गर्नलाई फाइल छा्न्नुहो्स्'; -$lang['txt_filename'] = 'अर्को रुपमा अपलोड गर्नुहोस् (ऐच्छिक)'; +$lang['txt_upload'] = 'अपलोड गर्नलाई फाइल छा्न्नुहो्स्:'; +$lang['txt_filename'] = 'अर्को रुपमा अपलोड गर्नुहोस् (ऐच्छिक):'; $lang['txt_overwrt'] = 'रहेको उहि नामको फाइललाई मेटाउने'; -$lang['lockedby'] = 'अहिले ताल्चा लगाइएको'; +$lang['lockedby'] = 'अहिले ताल्चा लगाइएको:'; $lang['lockexpire'] = 'ताल्चा अवधि सकिने :'; $lang['js']['willexpire'] = 'तपाईलले यो पृष्ठ सम्पादन गर्न लगाउनु भएको ताल्चाको अवधि एक मिनेट भित्र सकिदै छ। \n द्वन्द हुन नदिन पूर्वरुप वा ताल्चा समय परिवर्तन गर्नुहोस् ।'; $lang['js']['notsavedyet'] = 'तपाईले वचन गर्नु नभएको परिवर्रन हराउने छ। \n साच्चै जारी गर्नुहुन्छ ।'; @@ -123,9 +123,9 @@ $lang['yours'] = 'तपाईको संस्करण'; $lang['diff'] = 'हालको संस्करण सँगको भिन्नता'; $lang['diff2'] = 'रोजिएका संस्करण वीचका भिन्नताहरु '; $lang['line'] = 'हरफ'; -$lang['breadcrumb'] = 'छुट्ट्याउनुहोस् '; -$lang['youarehere'] = 'तपाई यहा हुनुहुन्छ'; -$lang['lastmod'] = 'अन्तिम पटक सच्याइएको'; +$lang['breadcrumb'] = 'छुट्ट्याउनुहोस् :'; +$lang['youarehere'] = 'तपाई यहा हुनुहुन्छ:'; +$lang['lastmod'] = 'अन्तिम पटक सच्याइएको:'; $lang['by'] = 'द्वारा '; $lang['deleted'] = 'हटाइएको'; $lang['created'] = 'निर्माण गरिएको'; @@ -159,16 +159,16 @@ $lang['metaedit'] = 'मेटाडेटा सम्पादन $lang['metasaveerr'] = 'मेटाडाटा लेखन असफल'; $lang['metasaveok'] = 'मेटाडाटा वचत भयो '; $lang['btn_img_backto'] = 'फिर्ता%s'; -$lang['img_title'] = 'शिर्षक'; -$lang['img_caption'] = 'निम्न लेख'; -$lang['img_date'] = 'मिति'; -$lang['img_fname'] = 'फाइलनाम'; -$lang['img_fsize'] = 'आकार'; -$lang['img_artist'] = 'चित्रकार'; -$lang['img_copyr'] = 'सर्वाधिकार'; -$lang['img_format'] = 'ढाचा'; -$lang['img_camera'] = 'क्यामेरा'; -$lang['img_keywords'] = 'खोज शब्द'; +$lang['img_title'] = 'शिर्षक:'; +$lang['img_caption'] = 'निम्न लेख:'; +$lang['img_date'] = 'मिति:'; +$lang['img_fname'] = 'फाइलनाम:'; +$lang['img_fsize'] = 'आकार:'; +$lang['img_artist'] = 'चित्रकार:'; +$lang['img_copyr'] = 'सर्वाधिकार:'; +$lang['img_format'] = 'ढाचा:'; +$lang['img_camera'] = 'क्यामेरा:'; +$lang['img_keywords'] = 'खोज शब्द:'; $lang['authtempfail'] = 'प्रयोगकर्ता प्रामाणिकरण अस्थाइरुपमा अनुपलब्ध छ। यदि यो समस्या रहि रहेमा तपाईको विकि एड्मिनलाई खवर गर्नुहोला ।'; $lang['i_chooselang'] = 'भाषा छान्नुहोस् '; $lang['i_installer'] = 'DokuWiki स्थापक'; diff --git a/inc/lang/nl/lang.php b/inc/lang/nl/lang.php index 04e3797be..dfdf56532 100644 --- a/inc/lang/nl/lang.php +++ b/inc/lang/nl/lang.php @@ -69,7 +69,7 @@ $lang['btn_media'] = 'Mediabeheerder'; $lang['btn_deleteuser'] = 'Verwijder mijn account'; $lang['btn_img_backto'] = 'Terug naar %s'; $lang['btn_mediaManager'] = 'In mediabeheerder bekijken'; -$lang['loggedinas'] = 'Ingelogd als'; +$lang['loggedinas'] = 'Ingelogd als:'; $lang['user'] = 'Gebruikersnaam'; $lang['pass'] = 'Wachtwoord'; $lang['newpass'] = 'Nieuw wachtwoord'; @@ -114,12 +114,12 @@ $lang['license'] = 'Tenzij anders vermeld valt de inhoud van deze $lang['licenseok'] = 'Let op: Door deze pagina aan te passen geef je de inhoud vrij onder de volgende licentie:'; $lang['searchmedia'] = 'Bestandsnaam zoeken:'; $lang['searchmedia_in'] = 'Zoek in %s'; -$lang['txt_upload'] = 'Selecteer een bestand om te uploaden'; -$lang['txt_filename'] = 'Vul nieuwe naam in (optioneel)'; +$lang['txt_upload'] = 'Selecteer een bestand om te uploaden:'; +$lang['txt_filename'] = 'Vul nieuwe naam in (optioneel):'; $lang['txt_overwrt'] = 'Overschrijf bestaand bestand'; $lang['maxuploadsize'] = 'Max %s per bestand'; -$lang['lockedby'] = 'Momenteel in gebruik door'; -$lang['lockexpire'] = 'Exclusief gebruiksrecht vervalt op'; +$lang['lockedby'] = 'Momenteel in gebruik door:'; +$lang['lockexpire'] = 'Exclusief gebruiksrecht vervalt op:'; $lang['js']['willexpire'] = 'Je exclusieve gebruiksrecht voor het aanpassen van deze pagina verloopt over een minuut.\nKlik op de Voorbeeld-knop om het exclusieve gebruiksrecht te verlengen.'; $lang['js']['notsavedyet'] = 'Nog niet bewaarde wijzigingen zullen verloren gaan. Weet je zeker dat je wilt doorgaan?'; @@ -206,9 +206,9 @@ $lang['difflastrev'] = 'Laatste revisie'; $lang['diffbothprevrev'] = 'Beide kanten vorige revisie'; $lang['diffbothnextrev'] = 'Beide kanten volgende revisie'; $lang['line'] = 'Regel'; -$lang['breadcrumb'] = 'Spoor'; -$lang['youarehere'] = 'Je bent hier'; -$lang['lastmod'] = 'Laatst gewijzigd'; +$lang['breadcrumb'] = 'Spoor:'; +$lang['youarehere'] = 'Je bent hier:'; +$lang['lastmod'] = 'Laatst gewijzigd:'; $lang['by'] = 'door'; $lang['deleted'] = 'verwijderd'; $lang['created'] = 'aangemaakt'; @@ -261,18 +261,18 @@ $lang['admin_register'] = 'Nieuwe gebruiker toevoegen'; $lang['metaedit'] = 'Metadata wijzigen'; $lang['metasaveerr'] = 'Schrijven van metadata mislukt'; $lang['metasaveok'] = 'Metadata bewaard'; -$lang['img_title'] = 'Titel'; -$lang['img_caption'] = 'Bijschrift'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Bestandsnaam'; -$lang['img_fsize'] = 'Grootte'; -$lang['img_artist'] = 'Fotograaf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formaat'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Trefwoorden'; -$lang['img_width'] = 'Breedte'; -$lang['img_height'] = 'Hoogte'; +$lang['img_title'] = 'Titel:'; +$lang['img_caption'] = 'Bijschrift:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Bestandsnaam:'; +$lang['img_fsize'] = 'Grootte:'; +$lang['img_artist'] = 'Fotograaf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formaat:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Trefwoorden:'; +$lang['img_width'] = 'Breedte:'; +$lang['img_height'] = 'Hoogte:'; $lang['subscr_subscribe_success'] = '%s is ingeschreven voor %s'; $lang['subscr_subscribe_error'] = 'Fout bij inschrijven van %s voor %s'; $lang['subscr_subscribe_noaddress'] = 'Er is geen e-mailadres gekoppeld aan uw account, u kunt daardoor niet worden ingeschreven.'; diff --git a/inc/lang/no/lang.php b/inc/lang/no/lang.php index 8b3c4937f..6156fa34c 100644 --- a/inc/lang/no/lang.php +++ b/inc/lang/no/lang.php @@ -67,7 +67,7 @@ $lang['btn_media'] = 'Mediefiler'; $lang['btn_deleteuser'] = 'Fjern min konto'; $lang['btn_img_backto'] = 'Tilbake til %s'; $lang['btn_mediaManager'] = 'Vis i mediefilbehandler'; -$lang['loggedinas'] = 'Innlogget som'; +$lang['loggedinas'] = 'Innlogget som:'; $lang['user'] = 'Brukernavn'; $lang['pass'] = 'Passord'; $lang['newpass'] = 'Nytt passord'; @@ -112,12 +112,12 @@ $lang['license'] = 'Der annet ikke er angitt, er innholdet på den $lang['licenseok'] = 'Merk: Ved å endre på denne siden godtar du at ditt innhold utgis under følgende lisens:'; $lang['searchmedia'] = 'Søk filnavn'; $lang['searchmedia_in'] = 'Søk i %s'; -$lang['txt_upload'] = 'Velg fil som skal lastes opp'; -$lang['txt_filename'] = 'Skriv inn wikinavn (alternativt)'; +$lang['txt_upload'] = 'Velg fil som skal lastes opp:'; +$lang['txt_filename'] = 'Skriv inn wikinavn (alternativt):'; $lang['txt_overwrt'] = 'Overskriv eksisterende fil'; $lang['maxuploadsize'] = 'Opplast maks % per fil.'; -$lang['lockedby'] = 'Låst av'; -$lang['lockexpire'] = 'Låsingen utløper'; +$lang['lockedby'] = 'Låst av:'; +$lang['lockexpire'] = 'Låsingen utløper:'; $lang['js']['willexpire'] = 'Din redigeringslås for dette dokumentet kommer snart til å utløpe.\nFor å unngå versjonskonflikter bør du forhåndsvise dokumentet ditt for å forlenge redigeringslåsen.'; $lang['js']['notsavedyet'] = 'Ulagrede endringer vil gå tapt! Vil du fortsette?'; @@ -204,9 +204,9 @@ $lang['difflastrev'] = 'Siste revisjon'; $lang['diffbothprevrev'] = 'Begge sider forrige revisjon'; $lang['diffbothnextrev'] = 'Begge sider neste revisjon'; $lang['line'] = 'Linje'; -$lang['breadcrumb'] = 'Spor'; -$lang['youarehere'] = 'Du er her'; -$lang['lastmod'] = 'Sist endret'; +$lang['breadcrumb'] = 'Spor:'; +$lang['youarehere'] = 'Du er her:'; +$lang['lastmod'] = 'Sist endret:'; $lang['by'] = 'av'; $lang['deleted'] = 'fjernet'; $lang['created'] = 'opprettet'; @@ -259,18 +259,18 @@ $lang['admin_register'] = 'Legg til ny bruker'; $lang['metaedit'] = 'Rediger metadata'; $lang['metasaveerr'] = 'Skriving av metadata feilet'; $lang['metasaveok'] = 'Metadata lagret'; -$lang['img_title'] = 'Tittel'; -$lang['img_caption'] = 'Bildetekst'; -$lang['img_date'] = 'Dato'; -$lang['img_fname'] = 'Filnavn'; -$lang['img_fsize'] = 'Størrelse'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Opphavsrett'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Nøkkelord'; -$lang['img_width'] = 'Bredde'; -$lang['img_height'] = 'Høyde'; +$lang['img_title'] = 'Tittel:'; +$lang['img_caption'] = 'Bildetekst:'; +$lang['img_date'] = 'Dato:'; +$lang['img_fname'] = 'Filnavn:'; +$lang['img_fsize'] = 'Størrelse:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Opphavsrett:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Nøkkelord:'; +$lang['img_width'] = 'Bredde:'; +$lang['img_height'] = 'Høyde:'; $lang['subscr_subscribe_success'] = 'La til %s som abonnent på %s'; $lang['subscr_subscribe_error'] = 'Klarte ikke å legge til %s som abonnent på %s'; $lang['subscr_subscribe_noaddress'] = 'Brukeren din er ikke registrert med noen adresse. Du kan derfor ikke legges til som abonnent.'; diff --git a/inc/lang/pl/lang.php b/inc/lang/pl/lang.php index e635cb995..c6ff4983e 100644 --- a/inc/lang/pl/lang.php +++ b/inc/lang/pl/lang.php @@ -63,7 +63,7 @@ $lang['btn_media'] = 'Menadżer multimediów'; $lang['btn_deleteuser'] = 'Usuń moje konto'; $lang['btn_img_backto'] = 'Wróć do %s'; $lang['btn_mediaManager'] = 'Zobacz w menadżerze multimediów'; -$lang['loggedinas'] = 'Zalogowany jako'; +$lang['loggedinas'] = 'Zalogowany jako:'; $lang['user'] = 'Użytkownik'; $lang['pass'] = 'Hasło'; $lang['newpass'] = 'Nowe hasło'; @@ -108,12 +108,12 @@ $lang['license'] = 'Wszystkie treści w tym wiki, którym nie przy $lang['licenseok'] = 'Uwaga: edytując tę stronę zgadzasz się na publikowanie jej treści pod licencją:'; $lang['searchmedia'] = 'Szukaj pliku o nazwie:'; $lang['searchmedia_in'] = 'Szukaj w %s'; -$lang['txt_upload'] = 'Wybierz plik do wysłania'; -$lang['txt_filename'] = 'Nazwa pliku (opcjonalnie)'; +$lang['txt_upload'] = 'Wybierz plik do wysłania:'; +$lang['txt_filename'] = 'Nazwa pliku (opcjonalnie):'; $lang['txt_overwrt'] = 'Nadpisać istniejący plik?'; $lang['maxuploadsize'] = 'Maksymalny rozmiar wysyłanych danych wynosi %s dla jednego pliku.'; -$lang['lockedby'] = 'Aktualnie zablokowane przez'; -$lang['lockexpire'] = 'Blokada wygasa'; +$lang['lockedby'] = 'Aktualnie zablokowane przez:'; +$lang['lockexpire'] = 'Blokada wygasa:'; $lang['js']['willexpire'] = 'Twoja blokada edycji tej strony wygaśnie w ciągu minuty. \nW celu uniknięcia konfliktów użyj przycisku podglądu aby odnowić blokadę.'; $lang['js']['notsavedyet'] = 'Nie zapisane zmiany zostaną utracone. Czy na pewno kontynuować?'; @@ -198,9 +198,9 @@ $lang['diffprevrev'] = 'Poprzednia wersja'; $lang['diffnextrev'] = 'Nowa wersja'; $lang['difflastrev'] = 'Ostatnia wersja'; $lang['line'] = 'Linia'; -$lang['breadcrumb'] = 'Ślad'; -$lang['youarehere'] = 'Jesteś tutaj'; -$lang['lastmod'] = 'ostatnio zmienione'; +$lang['breadcrumb'] = 'Ślad:'; +$lang['youarehere'] = 'Jesteś tutaj:'; +$lang['lastmod'] = 'ostatnio zmienione:'; $lang['by'] = 'przez'; $lang['deleted'] = 'usunięto'; $lang['created'] = 'utworzono'; @@ -253,18 +253,18 @@ $lang['admin_register'] = 'Dodawanie użytkownika'; $lang['metaedit'] = 'Edytuj metadane'; $lang['metasaveerr'] = 'Zapis metadanych nie powiódł się'; $lang['metasaveok'] = 'Metadane zapisano'; -$lang['img_title'] = 'Tytuł'; -$lang['img_caption'] = 'Nagłówek'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nazwa pliku'; -$lang['img_fsize'] = 'Rozmiar'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Prawa autorskie'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Aparat'; -$lang['img_keywords'] = 'Słowa kluczowe'; -$lang['img_width'] = 'Szerokość'; -$lang['img_height'] = 'Wysokość'; +$lang['img_title'] = 'Tytuł:'; +$lang['img_caption'] = 'Nagłówek:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nazwa pliku:'; +$lang['img_fsize'] = 'Rozmiar:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Prawa autorskie:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Aparat:'; +$lang['img_keywords'] = 'Słowa kluczowe:'; +$lang['img_width'] = 'Szerokość:'; +$lang['img_height'] = 'Wysokość:'; $lang['subscr_subscribe_success'] = 'Dodano %s do listy subskrypcji %s'; $lang['subscr_subscribe_error'] = 'Błąd podczas dodawania %s do listy subskrypcji %s'; $lang['subscr_subscribe_noaddress'] = 'Brak adresu skojarzonego z twoim loginem, nie możesz zostać dodany(a) do listy subskrypcji'; diff --git a/inc/lang/pt-br/lang.php b/inc/lang/pt-br/lang.php index d5539f921..53ed3fccd 100644 --- a/inc/lang/pt-br/lang.php +++ b/inc/lang/pt-br/lang.php @@ -67,7 +67,7 @@ $lang['btn_register'] = 'Cadastre-se'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Gerenciador de mídias'; $lang['btn_deleteuser'] = 'Remover minha conta'; -$lang['loggedinas'] = 'Identificado(a) como'; +$lang['loggedinas'] = 'Identificado(a) como:'; $lang['user'] = 'Nome de usuário'; $lang['pass'] = 'Senha'; $lang['newpass'] = 'Nova senha'; @@ -112,12 +112,12 @@ $lang['license'] = 'Exceto onde for informado ao contrário, o con $lang['licenseok'] = 'Observe: editando esta página você aceita disponibilizar o seu conteúdo sob a seguinte licença:'; $lang['searchmedia'] = 'Buscar arquivo:'; $lang['searchmedia_in'] = 'Buscar em %s'; -$lang['txt_upload'] = 'Selecione o arquivo a ser enviado'; -$lang['txt_filename'] = 'Enviar como (opcional)'; +$lang['txt_upload'] = 'Selecione o arquivo a ser enviado:'; +$lang['txt_filename'] = 'Enviar como (opcional):'; $lang['txt_overwrt'] = 'Substituir o arquivo existente'; $lang['maxuploadsize'] = 'Tamanho máximo de %s por arquivo.'; -$lang['lockedby'] = 'Atualmente bloqueada por'; -$lang['lockexpire'] = 'O bloqueio expira em'; +$lang['lockedby'] = 'Atualmente bloqueada por:'; +$lang['lockexpire'] = 'O bloqueio expira em:'; $lang['js']['willexpire'] = 'O seu bloqueio de edição deste página irá expirar em um minuto.\nPara evitar conflitos de edição, clique no botão de visualização para reiniciar o temporizador de bloqueio.'; $lang['js']['notsavedyet'] = 'As alterações não salvas serão perdidas. Deseja realmente continuar?'; @@ -199,9 +199,9 @@ $lang['diff_type'] = 'Ver as diferenças:'; $lang['diff_inline'] = 'Mescladas'; $lang['diff_side'] = 'Lado a lado'; $lang['line'] = 'Linha'; -$lang['breadcrumb'] = 'Visitou'; -$lang['youarehere'] = 'Você está aqui'; -$lang['lastmod'] = 'Última modificação'; +$lang['breadcrumb'] = 'Visitou:'; +$lang['youarehere'] = 'Você está aqui:'; +$lang['lastmod'] = 'Última modificação:'; $lang['by'] = 'por'; $lang['deleted'] = 'removida'; $lang['created'] = 'criada'; @@ -255,18 +255,18 @@ $lang['metaedit'] = 'Editar metadados'; $lang['metasaveerr'] = 'Não foi possível escrever os metadados'; $lang['metasaveok'] = 'Os metadados foram salvos'; $lang['btn_img_backto'] = 'Voltar para %s'; -$lang['img_title'] = 'Título'; -$lang['img_caption'] = 'Descrição'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Nome do arquivo'; -$lang['img_fsize'] = 'Tamanho'; -$lang['img_artist'] = 'Fotógrafo'; -$lang['img_copyr'] = 'Direitos autorais'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Câmera'; -$lang['img_keywords'] = 'Palavras-chave'; -$lang['img_width'] = 'Largura'; -$lang['img_height'] = 'Altura'; +$lang['img_title'] = 'Título:'; +$lang['img_caption'] = 'Descrição:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Nome do arquivo:'; +$lang['img_fsize'] = 'Tamanho:'; +$lang['img_artist'] = 'Fotógrafo:'; +$lang['img_copyr'] = 'Direitos autorais:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Câmera:'; +$lang['img_keywords'] = 'Palavras-chave:'; +$lang['img_width'] = 'Largura:'; +$lang['img_height'] = 'Altura:'; $lang['btn_mediaManager'] = 'Ver no gerenciador de mídias'; $lang['subscr_subscribe_success'] = 'Adicionado %s à lista de monitoramentos de %s'; $lang['subscr_subscribe_error'] = 'Ocorreu um erro na adição de %s à lista de monitoramentos de %s'; diff --git a/inc/lang/pt/lang.php b/inc/lang/pt/lang.php index b2bb2dc34..89de24c58 100644 --- a/inc/lang/pt/lang.php +++ b/inc/lang/pt/lang.php @@ -52,7 +52,7 @@ $lang['btn_register'] = 'Registar'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Gestor de Media'; $lang['btn_deleteuser'] = 'Remover a Minha Conta'; -$lang['loggedinas'] = 'Está em sessão como'; +$lang['loggedinas'] = 'Está em sessão como:'; $lang['user'] = 'Utilizador'; $lang['pass'] = 'Senha'; $lang['newpass'] = 'Nova senha'; @@ -93,11 +93,11 @@ $lang['license'] = 'Excepto menção em contrário, o conteúdo ne $lang['licenseok'] = 'Nota: Ao editar esta página você aceita disponibilizar o seu conteúdo sob a seguinte licença:'; $lang['searchmedia'] = 'Procurar nome de ficheiro:'; $lang['searchmedia_in'] = 'Procurar em %s'; -$lang['txt_upload'] = 'Escolha ficheiro para carregar'; -$lang['txt_filename'] = 'Carregar como (opcional)'; +$lang['txt_upload'] = 'Escolha ficheiro para carregar:'; +$lang['txt_filename'] = 'Carregar como (opcional):'; $lang['txt_overwrt'] = 'Escrever por cima do ficheiro já existente'; -$lang['lockedby'] = 'Bloqueado por'; -$lang['lockexpire'] = 'Expira em'; +$lang['lockedby'] = 'Bloqueado por:'; +$lang['lockexpire'] = 'Expira em:'; $lang['js']['willexpire'] = 'O bloqueio de edição para este documento irá expirar num minuto.\nPara evitar conflitos use o botão Prever para re-iniciar o temporizador de bloqueio.'; $lang['js']['notsavedyet'] = 'Alterações não gravadas serão perdidas.'; $lang['js']['searchmedia'] = 'Procurar por ficheiros'; @@ -178,9 +178,9 @@ $lang['diff_type'] = 'Ver diferenças'; $lang['diff_inline'] = 'Embutido'; $lang['diff_side'] = 'Lado a lado'; $lang['line'] = 'Linha'; -$lang['breadcrumb'] = 'Está em'; -$lang['youarehere'] = 'Está aqui'; -$lang['lastmod'] = 'Esta página foi modificada pela última vez em'; +$lang['breadcrumb'] = 'Está em:'; +$lang['youarehere'] = 'Está aqui:'; +$lang['lastmod'] = 'Esta página foi modificada pela última vez em:'; $lang['by'] = 'por'; $lang['deleted'] = 'Documento automaticamente removido.'; $lang['created'] = 'Criação deste novo documento.'; @@ -234,18 +234,18 @@ $lang['metaedit'] = 'Editar Metadata'; $lang['metasaveerr'] = 'Falhou a escrita de Metadata'; $lang['metasaveok'] = 'Metadata gravada'; $lang['btn_img_backto'] = 'De volta a %s'; -$lang['img_title'] = 'Título'; -$lang['img_caption'] = 'Legenda'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Ficheiro'; -$lang['img_fsize'] = 'Tamanho'; -$lang['img_artist'] = 'Fotógrafo'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Formato'; -$lang['img_camera'] = 'Câmara'; -$lang['img_keywords'] = 'Palavras-Chave'; -$lang['img_width'] = 'Largura'; -$lang['img_height'] = 'Altura'; +$lang['img_title'] = 'Título:'; +$lang['img_caption'] = 'Legenda:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Ficheiro:'; +$lang['img_fsize'] = 'Tamanho:'; +$lang['img_artist'] = 'Fotógrafo:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Formato:'; +$lang['img_camera'] = 'Câmara:'; +$lang['img_keywords'] = 'Palavras-Chave:'; +$lang['img_width'] = 'Largura:'; +$lang['img_height'] = 'Altura:'; $lang['btn_mediaManager'] = 'Ver em gestor de media'; $lang['subscr_subscribe_success'] = 'Adicionado %s à lista de subscrição para %s'; $lang['subscr_subscribe_error'] = 'Erro ao adicionar %s à lista de subscrição para %s'; diff --git a/inc/lang/ro/lang.php b/inc/lang/ro/lang.php index 31b2d7eba..cd7d4fcc3 100644 --- a/inc/lang/ro/lang.php +++ b/inc/lang/ro/lang.php @@ -53,7 +53,7 @@ $lang['btn_revert'] = 'Revenire'; $lang['btn_register'] = 'Înregistrează'; $lang['btn_apply'] = 'Aplică'; $lang['btn_media'] = 'Administrare media'; -$lang['loggedinas'] = 'Autentificat ca'; +$lang['loggedinas'] = 'Autentificat ca:'; $lang['user'] = 'Utilizator'; $lang['pass'] = 'Parola'; $lang['newpass'] = 'Parola nouă'; @@ -92,11 +92,11 @@ $lang['license'] = 'Exceptând locurile unde este altfel specifica $lang['licenseok'] = 'Notă: Prin editarea acestei pagini ești de acord să publici conțintul sub următoarea licență:'; $lang['searchmedia'] = 'Caută numele fișierului:'; $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_upload'] = 'Selectează fișierul de încărcat:'; +$lang['txt_filename'] = 'Încarcă fișierul ca (opțional):'; $lang['txt_overwrt'] = 'Suprascrie fișierul existent'; -$lang['lockedby'] = 'Momentan blocat de'; -$lang['lockexpire'] = 'Blocarea expiră la'; +$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.'; $lang['js']['notsavedyet'] = 'Există modificări nesalvate care se vor pierde. Dorești să continui?'; @@ -178,9 +178,9 @@ $lang['diff_type'] = 'Vezi diferențe:'; $lang['diff_inline'] = 'Succesiv'; $lang['diff_side'] = 'Alăturate'; $lang['line'] = 'Linia'; -$lang['breadcrumb'] = 'Traseu'; -$lang['youarehere'] = 'Ești aici'; -$lang['lastmod'] = 'Ultima modificare'; +$lang['breadcrumb'] = 'Traseu:'; +$lang['youarehere'] = 'Ești aici:'; +$lang['lastmod'] = 'Ultima modificare:'; $lang['by'] = 'de către'; $lang['deleted'] = 'șters'; $lang['created'] = 'creat'; @@ -233,18 +233,18 @@ $lang['metaedit'] = 'Editează metadata'; $lang['metasaveerr'] = 'Scrierea metadatelor a eșuat'; $lang['metasaveok'] = 'Metadatele au fost salvate'; $lang['btn_img_backto'] = 'Înapoi la %s'; -$lang['img_title'] = 'Titlu'; -$lang['img_caption'] = 'Legendă'; -$lang['img_date'] = 'Dată'; -$lang['img_fname'] = 'Nume fișier'; -$lang['img_fsize'] = 'Dimensiune'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Drept de autor'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Cuvinte cheie'; -$lang['img_width'] = 'Lățime'; -$lang['img_height'] = 'Înălțime'; +$lang['img_title'] = 'Titlu:'; +$lang['img_caption'] = 'Legendă:'; +$lang['img_date'] = 'Dată:'; +$lang['img_fname'] = 'Nume fișier:'; +$lang['img_fsize'] = 'Dimensiune:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Drept de autor:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Cuvinte cheie:'; +$lang['img_width'] = 'Lățime:'; +$lang['img_height'] = 'Înălțime:'; $lang['btn_mediaManager'] = 'Vizualizează în administratorul media'; $lang['subscr_subscribe_success'] = 'Adăugat %s la lista de abonare pentru %s'; $lang['subscr_subscribe_error'] = 'Eroare la adăugarea %s la lista de abonare pentru %s'; diff --git a/inc/lang/ru/lang.php b/inc/lang/ru/lang.php index 4cd3e5f0b..c36c611c0 100644 --- a/inc/lang/ru/lang.php +++ b/inc/lang/ru/lang.php @@ -72,7 +72,7 @@ $lang['btn_media'] = 'Управление медиафайлами' $lang['btn_deleteuser'] = 'Удалить мой аккаунт'; $lang['btn_img_backto'] = 'Вернуться к %s'; $lang['btn_mediaManager'] = 'Просмотр в «управлении медиафайлами»'; -$lang['loggedinas'] = 'Зашли как'; +$lang['loggedinas'] = 'Зашли как:'; $lang['user'] = 'Логин'; $lang['pass'] = 'Пароль'; $lang['newpass'] = 'Новый пароль'; @@ -117,12 +117,12 @@ $lang['license'] = 'За исключением случаев, к $lang['licenseok'] = 'Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии:'; $lang['searchmedia'] = 'Поиск по имени файла:'; $lang['searchmedia_in'] = 'Поиск в %s'; -$lang['txt_upload'] = 'Выберите файл для загрузки'; -$lang['txt_filename'] = 'Введите имя файла в вики (необязательно)'; +$lang['txt_upload'] = 'Выберите файл для загрузки:'; +$lang['txt_filename'] = 'Введите имя файла в вики (необязательно):'; $lang['txt_overwrt'] = 'Перезаписать существующий файл'; $lang['maxuploadsize'] = 'Максимальный размер загружаемого файла %s'; -$lang['lockedby'] = 'В данный момент заблокирован'; -$lang['lockexpire'] = 'Блокировка истекает в'; +$lang['lockedby'] = 'В данный момент заблокирован:'; +$lang['lockexpire'] = 'Блокировка истекает в:'; $lang['js']['willexpire'] = 'Ваша блокировка этой страницы на редактирование истекает в течение минуты.\nЧтобы предотвратить конфликты используйте кнопку «Просмотр» для сброса таймера блокировки.'; $lang['js']['notsavedyet'] = 'Несохранённые изменения будут потеряны. Вы действительно хотите продолжить?'; $lang['js']['searchmedia'] = 'Поиск файлов'; @@ -205,9 +205,9 @@ $lang['diffprevrev'] = 'Предыдущая версия'; $lang['diffnextrev'] = 'Следущая версия'; $lang['difflastrev'] = 'Последняя версия'; $lang['line'] = 'Строка'; -$lang['breadcrumb'] = 'Вы посетили'; -$lang['youarehere'] = 'Вы находитесь здесь'; -$lang['lastmod'] = 'Последние изменения'; +$lang['breadcrumb'] = 'Вы посетили:'; +$lang['youarehere'] = 'Вы находитесь здесь:'; +$lang['lastmod'] = 'Последние изменения:'; $lang['by'] = ' —'; $lang['deleted'] = 'удалено'; $lang['created'] = 'создано'; @@ -260,18 +260,18 @@ $lang['admin_register'] = 'Добавить пользователя'; $lang['metaedit'] = 'Править метаданные'; $lang['metasaveerr'] = 'Ошибка записи метаданных'; $lang['metasaveok'] = 'Метаданные сохранены'; -$lang['img_title'] = 'Название'; -$lang['img_caption'] = 'Подпись'; -$lang['img_date'] = 'Дата'; -$lang['img_fname'] = 'Имя файла'; -$lang['img_fsize'] = 'Размер'; -$lang['img_artist'] = 'Фотограф'; -$lang['img_copyr'] = 'Авторские права'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Модель'; -$lang['img_keywords'] = 'Ключевые слова'; -$lang['img_width'] = 'Ширина'; -$lang['img_height'] = 'Высота'; +$lang['img_title'] = 'Название:'; +$lang['img_caption'] = 'Подпись:'; +$lang['img_date'] = 'Дата:'; +$lang['img_fname'] = 'Имя файла:'; +$lang['img_fsize'] = 'Размер:'; +$lang['img_artist'] = 'Фотограф:'; +$lang['img_copyr'] = 'Авторские права:'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Модель:'; +$lang['img_keywords'] = 'Ключевые слова:'; +$lang['img_width'] = 'Ширина:'; +$lang['img_height'] = 'Высота:'; $lang['subscr_subscribe_success'] = 'Добавлен %s в подписку на %s'; $lang['subscr_subscribe_error'] = 'Невозможно добавить %s в подписку на %s'; $lang['subscr_subscribe_noaddress'] = 'Нет адреса электронной почты, сопоставленного с вашей учётной записью. Вы не можете подписаться на рассылку'; diff --git a/inc/lang/sk/lang.php b/inc/lang/sk/lang.php index 3ba220a2d..e501cb7fc 100644 --- a/inc/lang/sk/lang.php +++ b/inc/lang/sk/lang.php @@ -51,7 +51,7 @@ $lang['btn_register'] = 'Registrovať'; $lang['btn_apply'] = 'Použiť'; $lang['btn_media'] = 'Správa médií'; $lang['btn_deleteuser'] = 'Zrušiť môj účet'; -$lang['loggedinas'] = 'Prihlásený(á) ako'; +$lang['loggedinas'] = 'Prihlásený(á) ako:'; $lang['user'] = 'Užívateľské meno'; $lang['pass'] = 'Heslo'; $lang['newpass'] = 'Nové heslo'; @@ -96,8 +96,8 @@ $lang['license'] = 'Ak nie je uvedené inak, obsah tejto wiki je u $lang['licenseok'] = 'Poznámka: Zmenou tejto stránky súhlasíte s uverejnením obsahu pod nasledujúcou licenciou:'; $lang['searchmedia'] = 'Hľadať meno súboru:'; $lang['searchmedia_in'] = 'Hľadať v %s'; -$lang['txt_upload'] = 'Vyberte súbor ako prílohu'; -$lang['txt_filename'] = 'Uložiť ako (voliteľné)'; +$lang['txt_upload'] = 'Vyberte súbor ako prílohu:'; +$lang['txt_filename'] = 'Uložiť ako (voliteľné):'; $lang['txt_overwrt'] = 'Prepísať existujúci súbor'; $lang['maxuploadsize'] = 'Obmedzenie max. %s na súbor.'; $lang['lockedby'] = 'Práve zamknuté:'; @@ -183,9 +183,9 @@ $lang['diff_type'] = 'Prehľad zmien:'; $lang['diff_inline'] = 'Vnorený'; $lang['diff_side'] = 'Vedľa seba'; $lang['line'] = 'Riadok'; -$lang['breadcrumb'] = 'História'; -$lang['youarehere'] = 'Nachádzate sa'; -$lang['lastmod'] = 'Posledná úprava'; +$lang['breadcrumb'] = 'História:'; +$lang['youarehere'] = 'Nachádzate sa:'; +$lang['lastmod'] = 'Posledná úprava:'; $lang['by'] = 'od'; $lang['deleted'] = 'odstránené'; $lang['created'] = 'vytvorené'; @@ -239,18 +239,18 @@ $lang['metaedit'] = 'Upraviť metainformácie'; $lang['metasaveerr'] = 'Zápis metainformácií zlyhal'; $lang['metasaveok'] = 'Metainformácie uložené'; $lang['btn_img_backto'] = 'Späť na %s'; -$lang['img_title'] = 'Titul'; -$lang['img_caption'] = 'Popis'; -$lang['img_date'] = 'Dátum'; -$lang['img_fname'] = 'Názov súboru'; -$lang['img_fsize'] = 'Veľkosť'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Kopírovacie práva'; -$lang['img_format'] = 'Formát'; -$lang['img_camera'] = 'Fotoaparát'; -$lang['img_keywords'] = 'Kľúčové slová'; -$lang['img_width'] = 'Šírka'; -$lang['img_height'] = 'Výška'; +$lang['img_title'] = 'Titul:'; +$lang['img_caption'] = 'Popis:'; +$lang['img_date'] = 'Dátum:'; +$lang['img_fname'] = 'Názov súboru:'; +$lang['img_fsize'] = 'Veľkosť:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Kopírovacie práva:'; +$lang['img_format'] = 'Formát:'; +$lang['img_camera'] = 'Fotoaparát:'; +$lang['img_keywords'] = 'Kľúčové slová:'; +$lang['img_width'] = 'Šírka:'; +$lang['img_height'] = 'Výška:'; $lang['btn_mediaManager'] = 'Prezrieť v správcovi médií'; $lang['subscr_subscribe_success'] = 'Používateľ %s bol pridaný do zoznamu hlásení o zmenách %s'; $lang['subscr_subscribe_error'] = 'Chyba pri pridaní používateľa %s do zoznamu hlásení o zmenách %s'; diff --git a/inc/lang/sl/lang.php b/inc/lang/sl/lang.php index c834611dc..f76dbb7d1 100644 --- a/inc/lang/sl/lang.php +++ b/inc/lang/sl/lang.php @@ -57,7 +57,7 @@ $lang['btn_media'] = 'Urejevalnik predstavnih vsebin'; $lang['btn_deleteuser'] = 'Odstrani račun'; $lang['btn_img_backto'] = 'Nazaj na %s'; $lang['btn_mediaManager'] = 'Poglej v urejevalniku predstavnih vsebin'; -$lang['loggedinas'] = 'Prijava kot'; +$lang['loggedinas'] = 'Prijava kot:'; $lang['user'] = 'Uporabniško ime'; $lang['pass'] = 'Geslo'; $lang['newpass'] = 'Novo geslo'; @@ -101,11 +101,11 @@ $lang['license'] = 'V kolikor ni posebej določeno, je vsebina Wik $lang['licenseok'] = 'Opomba: z urejanjem vsebine strani, se strinjate z objavo pod pogoji dovoljenja:'; $lang['searchmedia'] = 'Poišči ime datoteke:'; $lang['searchmedia_in'] = 'Poišči v %s'; -$lang['txt_upload'] = 'Izberite datoteko za pošiljanje'; -$lang['txt_filename'] = 'Pošlji z imenom (izborno)'; +$lang['txt_upload'] = 'Izberite datoteko za pošiljanje:'; +$lang['txt_filename'] = 'Pošlji z imenom (izborno):'; $lang['txt_overwrt'] = 'Prepiši obstoječo datoteko'; -$lang['lockedby'] = 'Trenutno je zaklenjeno s strani'; -$lang['lockexpire'] = 'Zaklep preteče ob'; +$lang['lockedby'] = 'Trenutno je zaklenjeno s strani:'; +$lang['lockexpire'] = 'Zaklep preteče ob:'; $lang['js']['willexpire'] = 'Zaklep za urejevanje bo pretekel čez eno minuto.\nV izogib sporom, uporabite predogled, da se merilnik časa za zaklep ponastavi.'; $lang['js']['notsavedyet'] = 'Neshranjene spremembe bodo izgubljene.'; $lang['js']['searchmedia'] = 'Poišči datoteke'; @@ -187,9 +187,9 @@ $lang['diffprevrev'] = 'Prejšnja revizija'; $lang['diffnextrev'] = 'Naslednja revizija'; $lang['difflastrev'] = 'Zadnja revizija'; $lang['line'] = 'Vrstica'; -$lang['breadcrumb'] = 'Sled'; -$lang['youarehere'] = 'Trenutno dejavna stran'; -$lang['lastmod'] = 'Zadnja sprememba'; +$lang['breadcrumb'] = 'Sled:'; +$lang['youarehere'] = 'Trenutno dejavna stran:'; +$lang['lastmod'] = 'Zadnja sprememba:'; $lang['by'] = 'uporabnika'; $lang['deleted'] = 'odstranjena'; $lang['created'] = 'ustvarjena'; @@ -242,18 +242,18 @@ $lang['admin_register'] = 'Dodaj novega uporabnika'; $lang['metaedit'] = 'Uredi metapodatke'; $lang['metasaveerr'] = 'Zapisovanje metapodatkov je spodletelo'; $lang['metasaveok'] = 'Metapodatki so shranjeni'; -$lang['img_title'] = 'Naslov'; -$lang['img_caption'] = 'Opis'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Ime datoteke'; -$lang['img_fsize'] = 'Velikost'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Avtorska pravica'; -$lang['img_format'] = 'Zapis'; -$lang['img_camera'] = 'Fotoaparat'; -$lang['img_keywords'] = 'Ključne besede'; -$lang['img_width'] = 'Širina'; -$lang['img_height'] = 'Višina'; +$lang['img_title'] = 'Naslov:'; +$lang['img_caption'] = 'Opis:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Ime datoteke:'; +$lang['img_fsize'] = 'Velikost:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Avtorska pravica:'; +$lang['img_format'] = 'Zapis:'; +$lang['img_camera'] = 'Fotoaparat:'; +$lang['img_keywords'] = 'Ključne besede:'; +$lang['img_width'] = 'Širina:'; +$lang['img_height'] = 'Višina:'; $lang['subscr_subscribe_success'] = 'Uporabniški račun %s je dodan na seznam naročnin na %s'; $lang['subscr_subscribe_error'] = 'Napaka med dodajanjem %s na seznam naročnin na %s'; $lang['subscr_subscribe_noaddress'] = 'S trenutnimi prijavnimi podatki ni povezanega elektronskega naslova, zato uporabniškega računa ni mogoče dodati na seznam naročnikov.'; diff --git a/inc/lang/sq/lang.php b/inc/lang/sq/lang.php index c31cdd360..49984097c 100644 --- a/inc/lang/sq/lang.php +++ b/inc/lang/sq/lang.php @@ -49,7 +49,7 @@ $lang['btn_recover'] = 'Rekupero skicën'; $lang['btn_draftdel'] = 'Fshi skicën'; $lang['btn_revert'] = 'Kthe si më parë'; $lang['btn_register'] = 'Regjsitrohuni'; -$lang['loggedinas'] = 'Regjistruar si '; +$lang['loggedinas'] = 'Regjistruar si :'; $lang['user'] = 'Nofka e përdoruesit:'; $lang['pass'] = 'Fjalëkalimi'; $lang['newpass'] = 'Fjalëkalim i ri'; @@ -87,11 +87,11 @@ $lang['license'] = 'Përveç rasteve të përcaktuara, përmbajtja $lang['licenseok'] = 'Shënim: Duke redaktuar këtë faqe ju bini dakort të liçensoni përmbajtjen tuaj nën liçensën e mëposhtme:'; $lang['searchmedia'] = 'Kërko emrin e skedarit:'; $lang['searchmedia_in'] = 'Kërko në %s'; -$lang['txt_upload'] = 'Zgjidh skedarin për ngarkim'; -$lang['txt_filename'] = 'Ngarko si (alternative)'; +$lang['txt_upload'] = 'Zgjidh skedarin për ngarkim:'; +$lang['txt_filename'] = 'Ngarko si (alternative):'; $lang['txt_overwrt'] = 'Zëvendëso skedarin ekzistues'; -$lang['lockedby'] = 'Kyçur momentalisht nga'; -$lang['lockexpire'] = 'Kyçi skadon në'; +$lang['lockedby'] = 'Kyçur momentalisht nga:'; +$lang['lockexpire'] = 'Kyçi skadon në:'; $lang['js']['willexpire'] = 'Kyçi juaj për redaktimin e kësaj faqeje është duke skaduar.\nPër të shmangur konflikte përdorni butonin Shiko Paraprakisht për të rivendosur kohën e kyçjes.'; $lang['js']['notsavedyet'] = 'Ndryshimet e paruajtura do të humbasin.\nVazhdo me të vërtetë?'; $lang['rssfailed'] = 'Ndoshi një gabim gjatë kapjes së këtij lajmi:'; @@ -134,9 +134,9 @@ $lang['yours'] = 'Versioni Juaj'; $lang['diff'] = 'Trego ndryshimet nga rishikimet aktuale'; $lang['diff2'] = 'Trego ndryshimet mes rishikimeve të përzgjedhura'; $lang['line'] = 'Vijë'; -$lang['breadcrumb'] = 'Gjurmë'; -$lang['youarehere'] = 'Ju jeni këtu'; -$lang['lastmod'] = 'Redaktuar për herë të fundit'; +$lang['breadcrumb'] = 'Gjurmë:'; +$lang['youarehere'] = 'Ju jeni këtu:'; +$lang['lastmod'] = 'Redaktuar për herë të fundit:'; $lang['by'] = 'nga'; $lang['deleted'] = 'u fshi'; $lang['created'] = 'u krijua'; @@ -180,16 +180,16 @@ $lang['metaedit'] = 'Redakto Metadata'; $lang['metasaveerr'] = 'Shkrimi i metadata-ve dështoi'; $lang['metasaveok'] = 'Metadata u ruajt'; $lang['btn_img_backto'] = 'Mbrapa te %s'; -$lang['img_title'] = 'Titulli '; -$lang['img_caption'] = 'Titra'; -$lang['img_date'] = 'Data'; -$lang['img_fname'] = 'Emri Skedarit'; -$lang['img_fsize'] = 'Madhësia'; -$lang['img_artist'] = 'Autor'; -$lang['img_copyr'] = 'Mbajtësi i të drejtave të autorit'; -$lang['img_format'] = 'Formati'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Fjalë Kyçe'; +$lang['img_title'] = 'Titulli :'; +$lang['img_caption'] = 'Titra:'; +$lang['img_date'] = 'Data:'; +$lang['img_fname'] = 'Emri Skedarit:'; +$lang['img_fsize'] = 'Madhësia:'; +$lang['img_artist'] = 'Autor:'; +$lang['img_copyr'] = 'Mbajtësi i të drejtave të autorit:'; +$lang['img_format'] = 'Formati:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Fjalë Kyçe:'; $lang['subscr_subscribe_success'] = 'Iu shtua %s listës së abonimeve për %s'; $lang['subscr_subscribe_error'] = 'Gabim gjatë shtimit të %s listës së abonimeve për %s'; $lang['subscr_subscribe_noaddress'] = 'Nuk ekziston asnjë adresë e lidhur me regjistrimin tuaj, ju nuk mund t\'i shtoheni listës së abonimeve.'; diff --git a/inc/lang/sr/lang.php b/inc/lang/sr/lang.php index 4b44704ad..22a500e76 100644 --- a/inc/lang/sr/lang.php +++ b/inc/lang/sr/lang.php @@ -46,7 +46,7 @@ $lang['btn_recover'] = 'Опорави нацрт'; $lang['btn_draftdel'] = 'Обриши нацрт'; $lang['btn_revert'] = 'Врати на пређашњу верзију'; $lang['btn_register'] = 'Региструј се'; -$lang['loggedinas'] = 'Пријављен као'; +$lang['loggedinas'] = 'Пријављен као:'; $lang['user'] = 'Корисничко име'; $lang['pass'] = 'Лозинка'; $lang['newpass'] = 'Нова лозинка'; @@ -84,11 +84,11 @@ $lang['license'] = 'Осим где је другачије наз $lang['licenseok'] = 'Напомена: Изменом ове стране слажете се да ће ваше измене бити под следећом лиценцом:'; $lang['searchmedia'] = 'Претражи по имену фајла'; $lang['searchmedia_in'] = 'Претражи у %s'; -$lang['txt_upload'] = 'Изаберите датотеку за слање'; -$lang['txt_filename'] = 'Унесите вики-име (опционо)'; +$lang['txt_upload'] = 'Изаберите датотеку за слање:'; +$lang['txt_filename'] = 'Унесите вики-име (опционо):'; $lang['txt_overwrt'] = 'Препишите тренутни фајл'; -$lang['lockedby'] = 'Тренутно закључано од стране'; -$lang['lockexpire'] = 'Закључавање истиче'; +$lang['lockedby'] = 'Тренутно закључано од стране:'; +$lang['lockexpire'] = 'Закључавање истиче:'; $lang['js']['willexpire'] = 'Ваше закључавање за измену ове странице ће да истекне за један минут.\nДа би сте избегли конфликте, искористите дугме за преглед како би сте ресетовали тајмер закључавања.'; $lang['js']['notsavedyet'] = 'Несачуване измене ће бити изгубљене. Да ли стварно желите да наставите?'; @@ -156,9 +156,9 @@ $lang['diff'] = 'прикажи разлике до трену $lang['diff2'] = 'Прикажи разлике између одабраних ревизија'; $lang['difflink'] = 'Постави везу ка овом компаративном приказу'; $lang['line'] = 'Линија'; -$lang['breadcrumb'] = 'Траг'; -$lang['youarehere'] = 'Сада сте овде'; -$lang['lastmod'] = 'Последњи пут мењано'; +$lang['breadcrumb'] = 'Траг:'; +$lang['youarehere'] = 'Сада сте овде:'; +$lang['lastmod'] = 'Последњи пут мењано:'; $lang['by'] = 'од'; $lang['deleted'] = 'избрисано'; $lang['created'] = 'направљено'; @@ -202,16 +202,16 @@ $lang['metaedit'] = 'Измени мета-податке'; $lang['metasaveerr'] = 'Записивање мета-података није било успешно'; $lang['metasaveok'] = 'Мета-подаци су сачувани'; $lang['btn_img_backto'] = 'Натраг на %s'; -$lang['img_title'] = 'Наслов'; -$lang['img_caption'] = 'Назив'; -$lang['img_date'] = 'Датум'; -$lang['img_fname'] = 'Име фајла'; -$lang['img_fsize'] = 'Величина'; -$lang['img_artist'] = 'Фотограф'; -$lang['img_copyr'] = 'Права копирања'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Камера'; -$lang['img_keywords'] = 'Кључне речи'; +$lang['img_title'] = 'Наслов:'; +$lang['img_caption'] = 'Назив:'; +$lang['img_date'] = 'Датум:'; +$lang['img_fname'] = 'Име фајла:'; +$lang['img_fsize'] = 'Величина:'; +$lang['img_artist'] = 'Фотограф:'; +$lang['img_copyr'] = 'Права копирања:'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Камера:'; +$lang['img_keywords'] = 'Кључне речи:'; $lang['subscr_subscribe_success'] = '%s је додат на списак претплатника %s'; $lang['subscr_subscribe_error'] = 'Грешка приликом додавања %s на списак претплатника %s'; $lang['subscr_subscribe_noaddress'] = 'Не постоји адреса повезана са вашим подацима, стога вас не можемо додати на списак претплатника.'; diff --git a/inc/lang/sv/lang.php b/inc/lang/sv/lang.php index c057d8705..375ed3ee8 100644 --- a/inc/lang/sv/lang.php +++ b/inc/lang/sv/lang.php @@ -64,7 +64,7 @@ $lang['btn_register'] = 'Registrera'; $lang['btn_apply'] = 'Verkställ'; $lang['btn_media'] = 'Media Hanteraren'; $lang['btn_deleteuser'] = 'Ta bort Mitt Konto'; -$lang['loggedinas'] = 'Inloggad som'; +$lang['loggedinas'] = 'Inloggad som:'; $lang['user'] = 'Användarnamn'; $lang['pass'] = 'Lösenord'; $lang['newpass'] = 'Nytt lösenord'; @@ -109,12 +109,12 @@ $lang['license'] = 'Om inte annat angivet, innehållet i denna wik $lang['licenseok'] = 'Notera: Genom att ändra i denna sidan så accepterar du att licensiera ditt bidrag under följande licenser:'; $lang['searchmedia'] = 'Sök efter filnamn:'; $lang['searchmedia_in'] = 'Sök i %s'; -$lang['txt_upload'] = 'Välj fil att ladda upp'; -$lang['txt_filename'] = 'Ladda upp som (ej obligatoriskt)'; +$lang['txt_upload'] = 'Välj fil att ladda upp:'; +$lang['txt_filename'] = 'Ladda upp som (ej obligatoriskt):'; $lang['txt_overwrt'] = 'Skriv över befintlig fil'; $lang['maxuploadsize'] = 'Max %s per uppladdad fil.'; -$lang['lockedby'] = 'Låst av'; -$lang['lockexpire'] = 'Lås upphör att gälla'; +$lang['lockedby'] = 'Låst av:'; +$lang['lockexpire'] = 'Lås upphör att gälla:'; $lang['js']['willexpire'] = 'Ditt redigeringslås för detta dokument kommer snart att upphöra.\nFör att undvika versionskonflikter bör du förhandsgranska ditt dokument för att förlänga redigeringslåset.'; $lang['js']['notsavedyet'] = 'Det finns ändringar som inte är sparade. Är du säker på att du vill fortsätta?'; @@ -194,9 +194,9 @@ $lang['difflink'] = 'Länk till den här jämförelsesidan'; $lang['diff_type'] = 'Visa skillnader:'; $lang['diff_side'] = 'Sida vid sida'; $lang['line'] = 'Rad'; -$lang['breadcrumb'] = 'Spår'; -$lang['youarehere'] = 'Här är du'; -$lang['lastmod'] = 'Senast uppdaterad'; +$lang['breadcrumb'] = 'Spår:'; +$lang['youarehere'] = 'Här är du:'; +$lang['lastmod'] = 'Senast uppdaterad:'; $lang['by'] = 'av'; $lang['deleted'] = 'raderad'; $lang['created'] = 'skapad'; @@ -250,18 +250,18 @@ $lang['metaedit'] = 'Redigera metadata'; $lang['metasaveerr'] = 'Skrivning av metadata misslyckades'; $lang['metasaveok'] = 'Metadata sparad'; $lang['btn_img_backto'] = 'Tillbaka till %s'; -$lang['img_title'] = 'Rubrik'; -$lang['img_caption'] = 'Bildtext'; -$lang['img_date'] = 'Datum'; -$lang['img_fname'] = 'Filnamn'; -$lang['img_fsize'] = 'Storlek'; -$lang['img_artist'] = 'Fotograf'; -$lang['img_copyr'] = 'Copyright'; -$lang['img_format'] = 'Format'; -$lang['img_camera'] = 'Kamera'; -$lang['img_keywords'] = 'Nyckelord'; -$lang['img_width'] = 'Bredd'; -$lang['img_height'] = 'Höjd'; +$lang['img_title'] = 'Rubrik:'; +$lang['img_caption'] = 'Bildtext:'; +$lang['img_date'] = 'Datum:'; +$lang['img_fname'] = 'Filnamn:'; +$lang['img_fsize'] = 'Storlek:'; +$lang['img_artist'] = 'Fotograf:'; +$lang['img_copyr'] = 'Copyright:'; +$lang['img_format'] = 'Format:'; +$lang['img_camera'] = 'Kamera:'; +$lang['img_keywords'] = 'Nyckelord:'; +$lang['img_width'] = 'Bredd:'; +$lang['img_height'] = 'Höjd:'; $lang['btn_mediaManager'] = 'Se mediahanteraren'; $lang['subscr_subscribe_success'] = 'La till %s till prenumerationslista %s'; $lang['subscr_subscribe_noaddress'] = 'Det finns ingen adress associerad med din inloggning, du kan inte bli tillagd i prenumerationslistan'; diff --git a/inc/lang/th/lang.php b/inc/lang/th/lang.php index 8aebfe1a5..ff871cdf6 100644 --- a/inc/lang/th/lang.php +++ b/inc/lang/th/lang.php @@ -52,7 +52,7 @@ $lang['btn_recover'] = 'กู้คืนเอกสารฉบั $lang['btn_draftdel'] = 'ลบเอกสารฉบับร่าง'; $lang['btn_revert'] = 'กู้คืน'; $lang['btn_register'] = 'สร้างบัญชีผู้ใช้'; -$lang['loggedinas'] = 'ลงชื่อเข้าใช้เป็น'; +$lang['loggedinas'] = 'ลงชื่อเข้าใช้เป็น:'; $lang['user'] = 'ชื่อผู้ใช้:'; $lang['pass'] = 'รหัสผ่าน'; $lang['newpass'] = 'รหัสผ่านใหม่'; @@ -90,11 +90,11 @@ $lang['license'] = 'เว้นแต่จะได้แจ้ $lang['licenseok'] = 'โปรดทราบ: เมื่อเริ่มแก้ไขหน้านี้ ถือว่าคุณตกลงให้สิทธิ์กับเนื้อหาของคุณอยู่ภายใต้สัญญาอนุญาตินี้'; $lang['searchmedia'] = 'สืบค้นไฟล์ชื่อ:'; $lang['searchmedia_in'] = 'สืบค้นใน %s'; -$lang['txt_upload'] = 'เลือกไฟล์ที่จะอัพโหลด'; -$lang['txt_filename'] = 'อัพโหลดเป็น(ตัวเลือก)'; +$lang['txt_upload'] = 'เลือกไฟล์ที่จะอัพโหลด:'; +$lang['txt_filename'] = 'อัพโหลดเป็น(ตัวเลือก):'; $lang['txt_overwrt'] = 'เขียนทับไฟล์ที่มีอยู่แล้ว'; -$lang['lockedby'] = 'ตอนนี้ถูกล๊อคโดย'; -$lang['lockexpire'] = 'การล๊อคจะหมดอายุเมื่อ'; +$lang['lockedby'] = 'ตอนนี้ถูกล๊อคโดย:'; +$lang['lockexpire'] = 'การล๊อคจะหมดอายุเมื่อ:'; $lang['js']['willexpire'] = 'การล๊อคเพื่อแก้ไขหน้านี้กำลังจะหมดเวลาในอีก \n นาที เพื่อที่จะหลีกเลี่ยงข้อขัดแย้งให้ใช้ปุ่ม "Preview" เพื่อรีเซ็ทเวลาใหม่'; $lang['js']['notsavedyet'] = 'การแก้ไขที่ไม่ได้บันทึกจะสูญหาย \n ต้องการทำต่อจริงๆหรือ?'; $lang['rssfailed'] = 'มีข้อผิดพลาดขณะดูดฟีดนี้'; @@ -137,9 +137,9 @@ $lang['yours'] = 'ฉบับของคุณ'; $lang['diff'] = 'แสดงจุดแตกต่างกับฉบับปัจจุบัน'; $lang['diff2'] = 'แสดงจุดแตกต่างระหว่างฉบับที่เลือกไว้'; $lang['line'] = 'บรรทัด'; -$lang['breadcrumb'] = 'ตามรอย'; -$lang['youarehere'] = 'คุณอยู่ที่นี่'; -$lang['lastmod'] = 'แก้ไขครั้งล่าสุด'; +$lang['breadcrumb'] = 'ตามรอย:'; +$lang['youarehere'] = 'คุณอยู่ที่นี่:'; +$lang['lastmod'] = 'แก้ไขครั้งล่าสุด:'; $lang['by'] = 'โดย'; $lang['deleted'] = 'ถูกถอดออก'; $lang['created'] = 'ถูกสร้าง'; @@ -182,16 +182,16 @@ $lang['metaedit'] = 'แก้ไขข้อมูลเมต้ $lang['metasaveerr'] = 'มีข้อผิดพลาดในการเขียนข้อมูลเมต้า'; $lang['metasaveok'] = 'บันทึกเมต้าดาต้าแล้ว'; $lang['btn_img_backto'] = 'กลับไปยัง %s'; -$lang['img_title'] = 'ชื่อภาพ'; -$lang['img_caption'] = 'คำบรรยายภาพ'; -$lang['img_date'] = 'วันที่'; -$lang['img_fname'] = 'ชื่อไฟล์'; -$lang['img_fsize'] = 'ขนาดภาพ'; -$lang['img_artist'] = 'ผู้สร้างสรรค์'; -$lang['img_copyr'] = 'ผู้ถือลิขสิทธิ์'; -$lang['img_format'] = 'รูปแบบ'; -$lang['img_camera'] = 'กล้อง'; -$lang['img_keywords'] = 'คำหลัก'; +$lang['img_title'] = 'ชื่อภาพ:'; +$lang['img_caption'] = 'คำบรรยายภาพ:'; +$lang['img_date'] = 'วันที่:'; +$lang['img_fname'] = 'ชื่อไฟล์:'; +$lang['img_fsize'] = 'ขนาดภาพ:'; +$lang['img_artist'] = 'ผู้สร้างสรรค์:'; +$lang['img_copyr'] = 'ผู้ถือลิขสิทธิ์:'; +$lang['img_format'] = 'รูปแบบ:'; +$lang['img_camera'] = 'กล้อง:'; +$lang['img_keywords'] = 'คำหลัก:'; $lang['authtempfail'] = 'ระบบตรวจสอบสิทธิ์ผู้ใช้ไม่พร้อมใช้งานชั่วคราว หากสถานการณ์ยังไม่เปลี่ยนแปลง กรุณาแจ้งผู้ดูแลระบวิกิของคุณ'; $lang['i_chooselang'] = 'เลือกภาษาของคุณ'; $lang['i_installer'] = 'ตัวติดตั้งโดกุวิกิ'; diff --git a/inc/lang/tr/lang.php b/inc/lang/tr/lang.php index c314eb8aa..2b58ba4f2 100644 --- a/inc/lang/tr/lang.php +++ b/inc/lang/tr/lang.php @@ -58,7 +58,7 @@ $lang['btn_media'] = 'Çokluortam Yöneticisi'; $lang['btn_deleteuser'] = 'Hesabımı Sil'; $lang['btn_img_backto'] = 'Şuna dön: %s'; $lang['btn_mediaManager'] = 'Ortam oynatıcısında göster'; -$lang['loggedinas'] = 'Giriş ismi'; +$lang['loggedinas'] = 'Giriş ismi:'; $lang['user'] = 'Kullanıcı ismi'; $lang['pass'] = 'Parola'; $lang['newpass'] = 'Yeni Parola'; @@ -103,8 +103,8 @@ $lang['license'] = 'Aksi belirtilmediği halde, bu wikinin içeri $lang['licenseok'] = 'Not: Bu sayfayı değiştirerek yazınızın şu lisans ile yayınlanmasını kabul etmiş olacaksınız:'; $lang['searchmedia'] = 'Dosya Adı Ara:'; $lang['searchmedia_in'] = '%s içinde ara'; -$lang['txt_upload'] = 'Yüklenecek dosyayı seç'; -$lang['txt_filename'] = 'Dosya adı (zorunlu değil)'; +$lang['txt_upload'] = 'Yüklenecek dosyayı seç:'; +$lang['txt_filename'] = 'Dosya adı (zorunlu değil):'; $lang['txt_overwrt'] = 'Mevcut dosyanın üstüne yaz'; $lang['maxuploadsize'] = 'Yükleme dosya başına en fazla %s'; $lang['lockedby'] = 'Şu an şunun tarafından kilitli:'; @@ -185,9 +185,9 @@ $lang['diff2'] = 'Seçili sürümler arasındaki farkı göster' $lang['difflink'] = 'Karşılaştırma görünümüne bağlantı'; $lang['diff_type'] = 'farklı görünüş'; $lang['line'] = 'Satır'; -$lang['breadcrumb'] = 'İz'; -$lang['youarehere'] = 'Buradasınız'; -$lang['lastmod'] = 'Son değiştirilme'; +$lang['breadcrumb'] = 'İz:'; +$lang['youarehere'] = 'Buradasınız:'; +$lang['lastmod'] = 'Son değiştirilme:'; $lang['by'] = 'Değiştiren:'; $lang['deleted'] = 'silindi'; $lang['created'] = 'oluşturuldu'; @@ -236,18 +236,18 @@ $lang['admin_register'] = 'Yeni kullanıcı ekle...'; $lang['metaedit'] = 'Metaverileri Değiştir'; $lang['metasaveerr'] = 'Metaveri yazma başarısız '; $lang['metasaveok'] = 'Metaveri kaydedildi'; -$lang['img_title'] = 'Başlık'; -$lang['img_caption'] = 'Serlevha'; -$lang['img_date'] = 'Tarih'; -$lang['img_fname'] = 'Dosya Adı'; -$lang['img_fsize'] = 'Boyut'; -$lang['img_artist'] = 'Fotoğrafçı'; -$lang['img_copyr'] = 'Telif Hakkı'; -$lang['img_format'] = 'Biçim'; -$lang['img_camera'] = 'Fotoğraf Makinası'; -$lang['img_keywords'] = 'Anahtar Sözcükler'; -$lang['img_width'] = 'Genişlik'; -$lang['img_height'] = 'Yükseklik'; +$lang['img_title'] = 'Başlık:'; +$lang['img_caption'] = 'Serlevha:'; +$lang['img_date'] = 'Tarih:'; +$lang['img_fname'] = 'Dosya Adı:'; +$lang['img_fsize'] = 'Boyut:'; +$lang['img_artist'] = 'Fotoğrafçı:'; +$lang['img_copyr'] = 'Telif Hakkı:'; +$lang['img_format'] = 'Biçim:'; +$lang['img_camera'] = 'Fotoğraf Makinası:'; +$lang['img_keywords'] = 'Anahtar Sözcükler:'; +$lang['img_width'] = 'Genişlik:'; +$lang['img_height'] = 'Yükseklik:'; $lang['subscr_m_new_header'] = 'Üyelik ekle'; $lang['subscr_m_current_header'] = 'Üyeliğini onayla'; $lang['subscr_m_unsubscribe'] = 'Üyelik iptali'; diff --git a/inc/lang/uk/lang.php b/inc/lang/uk/lang.php index 09b2b6d1d..56f064c9f 100644 --- a/inc/lang/uk/lang.php +++ b/inc/lang/uk/lang.php @@ -53,7 +53,7 @@ $lang['btn_revert'] = 'Відновити'; $lang['btn_register'] = 'Реєстрація'; $lang['btn_apply'] = 'Застосувати'; $lang['btn_deleteuser'] = 'Видалити мій аккаунт'; -$lang['loggedinas'] = 'Ви'; +$lang['loggedinas'] = 'Ви:'; $lang['user'] = 'Користувач'; $lang['pass'] = 'Пароль'; $lang['newpass'] = 'Новий пароль'; @@ -94,11 +94,11 @@ $lang['license'] = 'Якщо не вказано інше, вмі $lang['licenseok'] = 'Примітка. Редагуючи ці сторінку, ви погоджуєтесь на розповсюдження інформації за такою ліцензією:'; $lang['searchmedia'] = 'Пошук файлу:'; $lang['searchmedia_in'] = 'Шукати у %s'; -$lang['txt_upload'] = 'Виберіть файл для завантаження'; -$lang['txt_filename'] = 'Завантажити як (не обов\'язкове)'; +$lang['txt_upload'] = 'Виберіть файл для завантаження:'; +$lang['txt_filename'] = 'Завантажити як (не обов\'язкове):'; $lang['txt_overwrt'] = 'Перезаписати існуючий файл'; -$lang['lockedby'] = 'Заблоковано'; -$lang['lockexpire'] = 'Блокування завершується в'; +$lang['lockedby'] = 'Заблоковано:'; +$lang['lockexpire'] = 'Блокування завершується в:'; $lang['js']['willexpire'] = 'Блокування редагування цієї сторінки закінчується через хвилину.\n Щоб уникнути конфліктів використовуйте кнопку перегляду для продовження блокування.'; $lang['js']['notsavedyet'] = 'Незбережені зміни будуть втрачені. Дійсно продовжити?'; @@ -172,9 +172,9 @@ $lang['diff_type'] = 'Переглянути відмінності: $lang['diff_inline'] = 'Вбудувати'; $lang['diff_side'] = 'Поряд'; $lang['line'] = 'Рядок'; -$lang['breadcrumb'] = 'Відвідано'; -$lang['youarehere'] = 'Ви тут'; -$lang['lastmod'] = 'В останнє змінено'; +$lang['breadcrumb'] = 'Відвідано:'; +$lang['youarehere'] = 'Ви тут:'; +$lang['lastmod'] = 'В останнє змінено:'; $lang['by'] = ' '; $lang['deleted'] = 'знищено'; $lang['created'] = 'створено'; @@ -224,16 +224,16 @@ $lang['metaedit'] = 'Редагувати метадані'; $lang['metasaveerr'] = 'Помилка запису метаданих'; $lang['metasaveok'] = 'Метадані збережено'; $lang['btn_img_backto'] = 'Повернутися до %s'; -$lang['img_title'] = 'Назва'; -$lang['img_caption'] = 'Підпис'; -$lang['img_date'] = 'Дата'; -$lang['img_fname'] = 'Ім’я файлу'; -$lang['img_fsize'] = 'Розмір'; -$lang['img_artist'] = 'Фотограф'; -$lang['img_copyr'] = 'Авторські права'; -$lang['img_format'] = 'Формат'; -$lang['img_camera'] = 'Камера'; -$lang['img_keywords'] = 'Ключові слова'; +$lang['img_title'] = 'Назва:'; +$lang['img_caption'] = 'Підпис:'; +$lang['img_date'] = 'Дата:'; +$lang['img_fname'] = 'Ім’я файлу:'; +$lang['img_fsize'] = 'Розмір:'; +$lang['img_artist'] = 'Фотограф:'; +$lang['img_copyr'] = 'Авторські права:'; +$lang['img_format'] = 'Формат:'; +$lang['img_camera'] = 'Камера:'; +$lang['img_keywords'] = 'Ключові слова:'; $lang['subscr_subscribe_success'] = 'Додано %s до списку підписки для %s'; $lang['subscr_subscribe_error'] = 'Помилка при додавані %s до списку підписки для %s'; $lang['subscr_subscribe_noaddress'] = 'Немає адреси, асоційованої з Вашим логіном, тому Ви не можете бути додані до списку підписки.'; diff --git a/inc/lang/vi/lang.php b/inc/lang/vi/lang.php index ccc179eec..b2349d0b0 100644 --- a/inc/lang/vi/lang.php +++ b/inc/lang/vi/lang.php @@ -45,7 +45,7 @@ $lang['btn_revert'] = 'Phục hồi'; $lang['btn_register'] = 'Đăng ký'; $lang['btn_apply'] = 'Chấp nhận'; $lang['btn_media'] = 'Quản lý tệp tin'; -$lang['loggedinas'] = 'Username đang dùng'; +$lang['loggedinas'] = 'Username đang dùng:'; $lang['user'] = 'Username'; $lang['pass'] = 'Mật khẩu'; $lang['newpass'] = 'Mật khẩu mới'; @@ -84,11 +84,11 @@ $lang['license'] = 'Trừ khi có ghi chú khác, nội dung trên $lang['licenseok'] = 'Lưu ý: Bằng cách chỉnh sửa trang này, bạn đồng ý cấp giấy phép nội dung của bạn theo giấy phép sau:'; $lang['searchmedia'] = 'Tìm tên file:'; $lang['searchmedia_in'] = 'Tìm ở %s'; -$lang['txt_upload'] = 'Chọn tệp để tải lên'; -$lang['txt_filename'] = 'Điền wikiname (tuỳ ý)'; +$lang['txt_upload'] = 'Chọn tệp để tải lên:'; +$lang['txt_filename'] = 'Điền wikiname (tuỳ ý):'; $lang['txt_overwrt'] = 'Ghi đè file trùng'; -$lang['lockedby'] = 'Đang khoá bởi'; -$lang['lockexpire'] = 'Sẽ được mở khóa vào lúc'; +$lang['lockedby'] = 'Đang khoá bởi:'; +$lang['lockexpire'] = 'Sẽ được mở khóa vào lúc:'; $lang['js']['willexpire'] = 'Trong một phút nữa bài viết sẽ được mở khóa để cho phép người khác chỉnh sửa.\nĐể tránh xung đột, bạn nên bấm nút Duyệt trước để lập lại thời gian khoá bài'; $lang['js']['notsavedyet'] = 'Hiện có những thay đổi chưa được bảo lưu, và sẽ mất.\nBạn thật sự muốn tiếp tục?'; $lang['js']['searchmedia'] = 'Tìm kiếm tập tin'; @@ -156,9 +156,9 @@ $lang['diff_type'] = 'Xem sự khác biệt:'; $lang['diff_inline'] = 'Nội tuyến'; $lang['diff_side'] = 'Xếp cạnh nhau'; $lang['line'] = 'Dòng'; -$lang['breadcrumb'] = 'Trang đã xem'; -$lang['youarehere'] = 'Bạn đang ở đây'; -$lang['lastmod'] = 'Thời điểm thay đổi'; +$lang['breadcrumb'] = 'Trang đã xem:'; +$lang['youarehere'] = 'Bạn đang ở đây:'; +$lang['lastmod'] = 'Thời điểm thay đổi:'; $lang['by'] = 'do'; $lang['deleted'] = 'bị xoá'; $lang['created'] = 'được tạo ra'; @@ -193,18 +193,18 @@ $lang['metaedit'] = 'Sửa Metadata'; $lang['metasaveerr'] = 'Thất bại khi viết metadata'; $lang['metasaveok'] = 'Metadata đã được lưu'; $lang['btn_img_backto'] = 'Quay lại %s'; -$lang['img_title'] = 'Tiêu đề'; -$lang['img_caption'] = 'Ghi chú'; -$lang['img_date'] = 'Ngày'; -$lang['img_fname'] = 'Tên file'; -$lang['img_fsize'] = 'Kích cỡ'; -$lang['img_artist'] = 'Người chụp'; -$lang['img_copyr'] = 'Bản quyền'; -$lang['img_format'] = 'Định dạng'; -$lang['img_camera'] = 'Camera'; -$lang['img_keywords'] = 'Từ khóa'; -$lang['img_width'] = 'Rộng'; -$lang['img_height'] = 'Cao'; +$lang['img_title'] = 'Tiêu đề:'; +$lang['img_caption'] = 'Ghi chú:'; +$lang['img_date'] = 'Ngày:'; +$lang['img_fname'] = 'Tên file:'; +$lang['img_fsize'] = 'Kích cỡ:'; +$lang['img_artist'] = 'Người chụp:'; +$lang['img_copyr'] = 'Bản quyền:'; +$lang['img_format'] = 'Định dạng:'; +$lang['img_camera'] = 'Camera:'; +$lang['img_keywords'] = 'Từ khóa:'; +$lang['img_width'] = 'Rộng:'; +$lang['img_height'] = 'Cao:'; $lang['btn_mediaManager'] = 'Xem trong trình quản lý tệp media'; $lang['i_chooselang'] = 'Chọn ngôn ngữ'; $lang['i_retry'] = 'Thử lại'; diff --git a/inc/lang/zh-tw/lang.php b/inc/lang/zh-tw/lang.php index 84afec97a..03d5d54a1 100644 --- a/inc/lang/zh-tw/lang.php +++ b/inc/lang/zh-tw/lang.php @@ -57,7 +57,7 @@ $lang['btn_register'] = '註冊'; $lang['btn_apply'] = '套用'; $lang['btn_media'] = '多媒體管理器'; $lang['btn_deleteuser'] = '移除我的帳號'; -$lang['loggedinas'] = '登入成'; +$lang['loggedinas'] = '登入成:'; $lang['user'] = '帳號'; $lang['pass'] = '密碼'; $lang['newpass'] = '新密碼'; @@ -102,12 +102,12 @@ $lang['license'] = '若無特別註明,本 wiki 上的內容都 $lang['licenseok'] = '注意:編輯此頁面表示您同意用以下授權方式發布您撰寫的內容:'; $lang['searchmedia'] = '搜尋檔名:'; $lang['searchmedia_in'] = '在 %s 裏搜尋'; -$lang['txt_upload'] = '請選擇要上傳的檔案'; -$lang['txt_filename'] = '請輸入要上傳至本 wiki 的檔案名稱 (非必要)'; +$lang['txt_upload'] = '請選擇要上傳的檔案:'; +$lang['txt_filename'] = '請輸入要上傳至本 wiki 的檔案名稱 (非必要):'; $lang['txt_overwrt'] = '是否要覆蓋原有檔案'; $lang['maxuploadsize'] = '每個上傳檔案不可大於 %s 。'; -$lang['lockedby'] = '目前已被下列人員鎖定'; -$lang['lockexpire'] = '預計解除鎖定於'; +$lang['lockedby'] = '目前已被下列人員鎖定:'; +$lang['lockexpire'] = '預計解除鎖定於:'; $lang['js']['willexpire'] = '本頁的編輯鎖定將在一分鐘內到期。要避免發生衝突,請按「預覽」鍵重設鎖定計時。'; $lang['js']['notsavedyet'] = '未儲存的變更將會遺失,繼續嗎?'; $lang['js']['searchmedia'] = '搜尋檔案'; @@ -188,9 +188,9 @@ $lang['diff_type'] = '檢視差異:'; $lang['diff_inline'] = '行內'; $lang['diff_side'] = '並排'; $lang['line'] = '行'; -$lang['breadcrumb'] = '足跡'; -$lang['youarehere'] = '您在這裏'; -$lang['lastmod'] = '上一次變更'; +$lang['breadcrumb'] = '足跡:'; +$lang['youarehere'] = '您在這裏:'; +$lang['lastmod'] = '上一次變更:'; $lang['by'] = '由'; $lang['deleted'] = '移除'; $lang['created'] = '建立'; @@ -244,18 +244,18 @@ $lang['metaedit'] = '編輯後設資料'; $lang['metasaveerr'] = '後設資料無法寫入'; $lang['metasaveok'] = '後設資料已儲存'; $lang['btn_img_backto'] = '回上一頁 %s'; -$lang['img_title'] = '標題'; -$lang['img_caption'] = '照片說明'; -$lang['img_date'] = '日期'; -$lang['img_fname'] = '檔名'; -$lang['img_fsize'] = '大小'; -$lang['img_artist'] = '攝影者'; -$lang['img_copyr'] = '版權'; -$lang['img_format'] = '格式'; -$lang['img_camera'] = '相機'; -$lang['img_keywords'] = '關鍵字'; -$lang['img_width'] = '寬度'; -$lang['img_height'] = '高度'; +$lang['img_title'] = '標題:'; +$lang['img_caption'] = '照片說明:'; +$lang['img_date'] = '日期:'; +$lang['img_fname'] = '檔名:'; +$lang['img_fsize'] = '大小:'; +$lang['img_artist'] = '攝影者:'; +$lang['img_copyr'] = '版權:'; +$lang['img_format'] = '格式:'; +$lang['img_camera'] = '相機:'; +$lang['img_keywords'] = '關鍵字:'; +$lang['img_width'] = '寬度:'; +$lang['img_height'] = '高度:'; $lang['btn_mediaManager'] = '在多媒體管理器中檢視'; $lang['subscr_subscribe_success'] = '已將 %s 加入至 %s 的訂閱列表'; $lang['subscr_subscribe_error'] = '將 %s 加入至 %s 的訂閱列表時發生錯誤'; diff --git a/inc/lang/zh/lang.php b/inc/lang/zh/lang.php index cc4888396..c8a76b66b 100644 --- a/inc/lang/zh/lang.php +++ b/inc/lang/zh/lang.php @@ -69,7 +69,7 @@ $lang['btn_media'] = '媒体管理器'; $lang['btn_deleteuser'] = '移除我的账户'; $lang['btn_img_backto'] = '返回到 %s'; $lang['btn_mediaManager'] = '在媒体管理器中查看'; -$lang['loggedinas'] = '登录为'; +$lang['loggedinas'] = '登录为:'; $lang['user'] = '用户名'; $lang['pass'] = '密码'; $lang['newpass'] = '请输入新密码'; @@ -114,12 +114,12 @@ $lang['license'] = '除额外注明的地方外,本维基上的 $lang['licenseok'] = '当您选择开始编辑本页,即寓示你同意将你贡献的内容按下列许可协议发布:'; $lang['searchmedia'] = '查找文件名:'; $lang['searchmedia_in'] = '在%s中查找'; -$lang['txt_upload'] = '选择要上传的文件'; -$lang['txt_filename'] = '上传并重命名为(可选)'; +$lang['txt_upload'] = '选择要上传的文件:'; +$lang['txt_filename'] = '上传并重命名为(可选):'; $lang['txt_overwrt'] = '覆盖已存在的同名文件'; $lang['maxuploadsize'] = '上传限制。每个文件 %s'; -$lang['lockedby'] = '目前已被下列人员锁定'; -$lang['lockexpire'] = '预计锁定解除于'; +$lang['lockedby'] = '目前已被下列人员锁定:'; +$lang['lockexpire'] = '预计锁定解除于:'; $lang['js']['willexpire'] = '您对本页的独有编辑权将于一分钟之后解除。\n为了防止与其他人的编辑冲突,请使用预览按钮重设计时器。'; $lang['js']['notsavedyet'] = '未保存的更改将丢失。 真的要继续?'; @@ -206,9 +206,9 @@ $lang['difflastrev'] = '上一修订版'; $lang['diffbothprevrev'] = '两侧同时换到之前的修订记录'; $lang['diffbothnextrev'] = '两侧同时换到之后的修订记录'; $lang['line'] = '行'; -$lang['breadcrumb'] = '您的足迹'; -$lang['youarehere'] = '您在这里'; -$lang['lastmod'] = '最后更改'; +$lang['breadcrumb'] = '您的足迹:'; +$lang['youarehere'] = '您在这里:'; +$lang['lastmod'] = '最后更改:'; $lang['by'] = '由'; $lang['deleted'] = '移除'; $lang['created'] = '创建'; @@ -261,18 +261,18 @@ $lang['admin_register'] = '添加新用户'; $lang['metaedit'] = '编辑元数据'; $lang['metasaveerr'] = '写入元数据失败'; $lang['metasaveok'] = '元数据已保存'; -$lang['img_title'] = '标题'; -$lang['img_caption'] = '说明'; -$lang['img_date'] = '日期'; -$lang['img_fname'] = '名称'; -$lang['img_fsize'] = '大小'; -$lang['img_artist'] = '摄影师'; -$lang['img_copyr'] = '版权'; -$lang['img_format'] = '格式'; -$lang['img_camera'] = '相机'; -$lang['img_keywords'] = '关键字'; -$lang['img_width'] = '宽度'; -$lang['img_height'] = '高度'; +$lang['img_title'] = '标题:'; +$lang['img_caption'] = '说明:'; +$lang['img_date'] = '日期:'; +$lang['img_fname'] = '名称:'; +$lang['img_fsize'] = '大小:'; +$lang['img_artist'] = '摄影师:'; +$lang['img_copyr'] = '版权:'; +$lang['img_format'] = '格式:'; +$lang['img_camera'] = '相机:'; +$lang['img_keywords'] = '关键字:'; +$lang['img_width'] = '宽度:'; +$lang['img_height'] = '高度:'; $lang['subscr_subscribe_success'] = '添加 %s 到 %s 的订阅列表'; $lang['subscr_subscribe_error'] = '添加 %s 到 %s 的订阅列表中出现错误'; $lang['subscr_subscribe_noaddress'] = '没有与您登录信息相关联的地址,您无法被添加到订阅列表'; diff --git a/inc/media.php b/inc/media.php index b5347d145..185d0a5ba 100644 --- a/inc/media.php +++ b/inc/media.php @@ -1042,7 +1042,7 @@ function media_details($image, $auth, $rev=false, $meta=false) { foreach($tags as $tag){ if ($tag['value']) { $value = cleanText($tag['value']); - echo '
'.$lang[$tag['tag'][1]].':
'; + echo '
'.$lang[$tag['tag'][1]].'
'; if ($tag['tag'][2] == 'date') echo dformat($value); else echo hsc($value); echo '
'.NL; @@ -1225,7 +1225,7 @@ function media_file_diff($image, $l_rev, $r_rev, $ns, $auth, $fromajax){ foreach($tags as $tag){ $value = cleanText($tag['value']); if (!$value) $value = '-'; - echo '
'.$lang[$tag['tag'][1]].':
'; + echo '
'.$lang[$tag['tag'][1]].'
'; echo '
'; if ($tag['highlighted']) { echo ''; @@ -1654,10 +1654,10 @@ function media_uploadform($ns, $auth, $fullscreen = false){ $form->addElement(formSecurityToken()); $form->addHidden('ns', hsc($ns)); $form->addElement(form_makeOpenTag('p')); - $form->addElement(form_makeFileField('upload', $lang['txt_upload'].':', 'upload__file')); + $form->addElement(form_makeFileField('upload', $lang['txt_upload'], 'upload__file')); $form->addElement(form_makeCloseTag('p')); $form->addElement(form_makeOpenTag('p')); - $form->addElement(form_makeTextField('mediaid', noNS($id), $lang['txt_filename'].':', 'upload__name')); + $form->addElement(form_makeTextField('mediaid', noNS($id), $lang['txt_filename'], 'upload__name')); $form->addElement(form_makeButton('submit', '', $lang['btn_upload'])); $form->addElement(form_makeCloseTag('p')); diff --git a/inc/template.php b/inc/template.php index 35b54b4c3..2455adb96 100644 --- a/inc/template.php +++ b/inc/template.php @@ -836,7 +836,7 @@ function tpl_breadcrumbs($sep = '•') { $crumbs_sep = ' '.$sep.' '; //render crumbs, highlight the last one - print ''.$lang['breadcrumb'].':'; + print ''.$lang['breadcrumb'].''; $last = count($crumbs); $i = 0; foreach($crumbs as $id => $name) { @@ -876,7 +876,7 @@ function tpl_youarehere($sep = ' » ') { $parts = explode(':', $ID); $count = count($parts); - echo ''.$lang['youarehere'].': '; + echo ''.$lang['youarehere'].' '; // always print the startpage echo ''; @@ -920,7 +920,7 @@ function tpl_userinfo() { global $INPUT; if($INPUT->server->str('REMOTE_USER')) { - print $lang['loggedinas'].': '.userlink(); + print $lang['loggedinas'].' '.userlink(); return true; } return false; @@ -962,7 +962,7 @@ function tpl_pageinfo($ret = false) { $out .= ''.$fn.''; $out .= ' · '; $out .= $lang['lastmod']; - $out .= ': '; + $out .= ' '; $out .= $date; if($INFO['editor']) { $out .= ' '.$lang['by'].' '; @@ -973,7 +973,7 @@ function tpl_pageinfo($ret = false) { if($INFO['locked']) { $out .= ' · '; $out .= $lang['lockedby']; - $out .= ': '; + $out .= ' '; $out .= ''.editorinfo($INFO['locked']).''; } if($ret) { @@ -1062,9 +1062,9 @@ function tpl_img_meta() { echo '
'; foreach($tags as $tag) { $label = $lang[$tag['langkey']]; - if(!$label) $label = $tag['langkey']; + if(!$label) $label = $tag['langkey'] . ':'; - echo '
'.$label.':
'; + echo '
'.$label.'
'; if ($tag['type'] == 'date') { echo dformat($tag['value']); } else { diff --git a/lib/plugins/acl/admin.php b/lib/plugins/acl/admin.php index de38aedd5..ebb097a04 100644 --- a/lib/plugins/acl/admin.php +++ b/lib/plugins/acl/admin.php @@ -779,8 +779,8 @@ class admin_plugin_acl extends DokuWiki_Admin_Plugin { } echo ''."\n"; @@ -93,6 +108,11 @@ function formSecurityToken($print = true) { * * @author Andreas Gohr * @author Chris Smith + * + * @param string $id pageid + * @param bool $htmlClient add info about whether is mobile browser + * @return array with info for a request of $id + * */ function basicinfo($id, $htmlClient=true){ global $USERINFO; @@ -139,6 +159,8 @@ function basicinfo($id, $htmlClient=true){ * array. * * @author Andreas Gohr + * + * @return array with info about current document */ function pageinfo() { global $ID; @@ -246,6 +268,8 @@ function pageinfo() { /** * Return information about the current media item as an associative array. + * + * @return array with info about current media item */ function mediainfo(){ global $NS; @@ -261,6 +285,10 @@ function mediainfo(){ * Build an string of URL parameters * * @author Andreas Gohr + * + * @param array $params array with key-value pairs + * @param string $sep series of pairs are separated by this character + * @return string query string */ function buildURLparams($params, $sep = '&') { $url = ''; @@ -281,6 +309,10 @@ function buildURLparams($params, $sep = '&') { * Skips keys starting with '_', values get HTML encoded * * @author Andreas Gohr + * + * @param array $params array with (attribute name-attribute value) pairs + * @param bool $skipempty skip empty string values? + * @return string */ function buildAttributes($params, $skipempty = false) { $url = ''; @@ -302,6 +334,8 @@ function buildAttributes($params, $skipempty = false) { * This builds the breadcrumb trail and returns it as array * * @author Andreas Gohr + * + * @return array(pageid=>name, ... ) */ function breadcrumbs() { // we prepare the breadcrumbs early for quick session closing @@ -361,6 +395,10 @@ function breadcrumbs() { * Urlencoding is ommitted when the second parameter is false * * @author Andreas Gohr + * + * @param string $id pageid being filtered + * @param bool $ue apply urlencoding? + * @return string */ function idfilter($id, $ue = true) { global $conf; @@ -574,6 +612,8 @@ function ml($id = '', $more = '', $direct = true, $sep = '&', $abs = false) * Consider using wl() instead, unless you absoutely need the doku.php endpoint * * @author Andreas Gohr + * + * @return string */ function script() { return DOKU_BASE.DOKU_SCRIPT; @@ -600,6 +640,7 @@ function script() { * * @author Andreas Gohr * @author Michael Klier + * * @param string $text - optional text to check, if not given the globals are used * @return bool - true if a spam word was found */ @@ -668,6 +709,7 @@ function checkwordblock($text = '') { * headers * * @author Andreas Gohr + * * @param boolean $single If set only a single IP is returned * @return string */ @@ -739,6 +781,8 @@ function clientIP($single = false) { * Adapted from the example code at url below * * @link http://www.brainhandles.com/2007/10/15/detecting-mobile-browsers/#code + * + * @return bool if true, client is mobile browser; otherwise false */ function clientismobile() { /* @var Input $INPUT */ @@ -763,6 +807,7 @@ function clientismobile() { * If $conf['dnslookups'] is disabled it simply returns the input string * * @author Glen Harris + * * @param string $ips comma separated list of IP addresses * @return string a comma separated list of hostnames */ @@ -789,6 +834,9 @@ function gethostsbyaddrs($ips) { * removes stale lockfiles * * @author Andreas Gohr + * + * @param string $id page id + * @return bool page is locked? */ function checklock($id) { global $conf; @@ -819,6 +867,8 @@ function checklock($id) { * Lock a page for editing * * @author Andreas Gohr + * + * @param string $id page id to lock */ function lock($id) { global $conf; @@ -841,6 +891,7 @@ function lock($id) { * Unlock a page if it was locked by the user * * @author Andreas Gohr + * * @param string $id page id to unlock * @return bool true if a lock was removed */ @@ -866,6 +917,9 @@ function unlock($id) { * * @see formText() for 2crlf conversion * @author Andreas Gohr + * + * @param string $text + * @return string */ function cleanText($text) { $text = preg_replace("/(\015\012)|(\015)/", "\012", $text); @@ -885,6 +939,9 @@ function cleanText($text) { * * @see cleanText() for 2unix conversion * @author Andreas Gohr + * + * @param string $text + * @return string */ function formText($text) { $text = str_replace("\012", "\015\012", $text); @@ -895,6 +952,10 @@ function formText($text) { * Returns the specified local text in raw format * * @author Andreas Gohr + * + * @param string $id page id + * @param string $ext extension of file being read, default 'txt' + * @return string */ function rawLocale($id, $ext = 'txt') { return io_readFile(localeFN($id, $ext)); @@ -904,6 +965,10 @@ function rawLocale($id, $ext = 'txt') { * Returns the raw WikiText * * @author Andreas Gohr + * + * @param string $id page id + * @param string $rev timestamp when a revision of wikitext is desired + * @return string */ function rawWiki($id, $rev = '') { return io_readWikiPage(wikiFN($id, $rev), $id, $rev); @@ -914,6 +979,9 @@ function rawWiki($id, $rev = '') { * * @triggers COMMON_PAGETPL_LOAD * @author Andreas Gohr + * + * @param string $id the id of the page to be created + * @return string parsed pagetemplate content */ function pageTemplate($id) { global $conf; @@ -965,6 +1033,9 @@ function pageTemplate($id) { * This works on data from COMMON_PAGETPL_LOAD * * @author Andreas Gohr + * + * @param array $data array with event data + * @return string */ function parsePageTemplate(&$data) { /** @@ -1032,6 +1103,11 @@ function parsePageTemplate(&$data) { * The returned order is prefix, section and suffix. * * @author Andreas Gohr + * + * @param string $range in form "from-to" + * @param string $id page id + * @param string $rev optional, the revision timestamp + * @return array with three slices */ function rawWikiSlices($range, $id, $rev = '') { $text = io_readWikiPage(wikiFN($id, $rev), $id, $rev); @@ -1056,6 +1132,12 @@ function rawWikiSlices($range, $id, $rev = '') { * lines between sections if needed (used on saving). * * @author Andreas Gohr + * + * @param string $pre prefix + * @param string $text text in the middle + * @param string $suf suffix + * @param bool $pretty add additional empty lines between sections + * @return string */ function con($pre, $text, $suf, $pretty = false) { if($pretty) { @@ -1080,6 +1162,11 @@ function con($pre, $text, $suf, $pretty = false) { * * @author Andreas Gohr * @author Ben Coburn + * + * @param string $id page id + * @param string $text wikitext being saved + * @param string $summary summary of text update + * @param bool $minor mark this saved version as minor update */ function saveWikiText($id, $text, $summary, $minor = false) { /* Note to developers: @@ -1184,6 +1271,9 @@ function saveWikiText($id, $text, $summary, $minor = false) { * revision date * * @author Andreas Gohr + * + * @param string $id page id + * @return int|string revision timestamp */ function saveOldRevision($id) { $oldf = wikiFN($id); @@ -1203,8 +1293,8 @@ function saveOldRevision($id) { * @param string $summary What changed * @param boolean $minor Is this a minor edit? * @param array $replace Additional string substitutions, @KEY@ to be replaced by value - * * @return bool + * * @author Andreas Gohr */ function notify($id, $who, $rev = '', $summary = '', $minor = false, $replace = array()) { @@ -1242,6 +1332,8 @@ function notify($id, $who, $rev = '', $summary = '', $minor = false, $replace = * * @author Andreas Gohr * @author Todd Augsburger + * + * @return array|string */ function getGoogleQuery() { /* @var Input $INPUT */ @@ -1283,6 +1375,7 @@ function getGoogleQuery() { * @param int $size A file size * @param int $dec A number of decimal places * @return string human readable size + * * @author Martin Benjamin * @author Aidan Lister * @version 1.0.0 @@ -1304,6 +1397,9 @@ function filesize_h($size, $dec = 1) { * Return the given timestamp as human readable, fuzzy age * * @author Andreas Gohr + * + * @param int $dt timestamp + * @return string */ function datetime_h($dt) { global $lang; @@ -1338,6 +1434,10 @@ function datetime_h($dt) { * * @see datetime_h * @author Andreas Gohr + * + * @param int|null $dt timestamp when given, null will take current timestamp + * @param string $format empty default to $conf['dformat'], or provide format as recognized by strftime() + * @return string */ function dformat($dt = null, $format = '') { global $conf; @@ -1355,6 +1455,7 @@ function dformat($dt = null, $format = '') { * * @author * @link http://www.php.net/manual/en/function.date.php#54072 + * * @param int $int_date: current date in UNIX timestamp * @return string */ @@ -1371,6 +1472,9 @@ function date_iso8601($int_date) { * * @author Harry Fuecks * @author Christopher Smith + * + * @param string $email email address + * @return string */ function obfuscate($email) { global $conf; @@ -1398,6 +1502,10 @@ function obfuscate($email) { * Removes quoting backslashes * * @author Andreas Gohr + * + * @param string $string + * @param string $char backslashed character + * @return string */ function unslash($string, $char = "'") { return str_replace('\\'.$char, $char, $string); @@ -1408,6 +1516,9 @@ function unslash($string, $char = "'") { * * @author * @link http://de3.php.net/manual/en/ini.core.php#79564 + * + * @param string $v shorthands + * @return int|string */ function php_to_byte($v) { $l = substr($v, -1); @@ -1437,6 +1548,9 @@ function php_to_byte($v) { /** * Wrapper around preg_quote adding the default delimiter + * + * @param string $string + * @return string */ function preg_quote_cb($string) { return preg_quote($string, '/'); @@ -1606,6 +1720,7 @@ function userlink($username = null, $textonly = false) { * When no image exists, returns an empty string * * @author Andreas Gohr + * * @param string $type - type of image 'badge' or 'button' * @return string */ @@ -1636,9 +1751,8 @@ function license_img($type) { * @author Filip Oscadal * @author Andreas Gohr * - * @param int $mem Size of memory you want to allocate in bytes - * @param int $bytes - * @internal param int $used already allocated memory (see above) + * @param int $mem Size of memory you want to allocate in bytes + * @param int $bytes already allocated memory (see above) * @return bool */ function is_mem_available($mem, $bytes = 1048576) { @@ -1669,6 +1783,8 @@ function is_mem_available($mem, $bytes = 1048576) { * * @link http://support.microsoft.com/kb/q176113/ * @author Andreas Gohr + * + * @param string $url url being directed to */ function send_redirect($url) { /* @var Input $INPUT */ @@ -1740,6 +1856,10 @@ function valid_input_set($param, $valid_values, $array, $exc = '') { /** * Read a preference from the DokuWiki cookie * (remembering both keys & values are urlencoded) + * + * @param string $pref preference key + * @param string $default value returned when preference not found + * @return string preference value */ function get_doku_pref($pref, $default) { $enc_pref = urlencode($pref); @@ -1758,6 +1878,9 @@ function get_doku_pref($pref, $default) { /** * Add a preference to the DokuWiki cookie * (remembering $_COOKIE['DOKU_PREFS'] is urlencoded) + * + * @param string $pref preference key + * @param string $val preference value */ function set_doku_pref($pref, $val) { global $conf; -- cgit v1.2.3 From 0bb378687e0397cf4268ea411c65d60e6a51ddc6 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 20 May 2014 23:00:48 +0200 Subject: add replacements to event data of COMMON_NOTIFY_ADDRESSLIST --- inc/common.php | 2 +- inc/subscription.php | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/inc/common.php b/inc/common.php index f51053cc0..aea6065d0 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1310,7 +1310,7 @@ function notify($id, $who, $rev = '', $summary = '', $minor = false, $replace = } elseif($who == 'subscribers') { if(!actionOK('subscribe')) return false; //subscribers enabled? if($conf['useacl'] && $INPUT->server->str('REMOTE_USER') && $minor) return false; //skip minors - $data = array('id' => $id, 'addresslist' => '', 'self' => false); + $data = array('id' => $id, 'addresslist' => '', 'self' => false, 'replacements' => $replace); trigger_event( 'COMMON_NOTIFY_ADDRESSLIST', $data, array(new Subscription(), 'notifyaddresses') diff --git a/inc/subscription.php b/inc/subscription.php index a6f3dec44..aab6de926 100644 --- a/inc/subscription.php +++ b/inc/subscription.php @@ -650,9 +650,11 @@ class Subscription { * @todo move the whole functionality into this class, trigger SUBSCRIPTION_NOTIFY_ADDRESSLIST instead, * use an array for the addresses within it * - * @param array &$data Containing $id (the page id), $self (whether the author - * should be notified, $addresslist (current email address - * list) + * @param array &$data Containing the entries: + * - $id (the page id), + * - $self (whether the author should be notified, + * - $addresslist (current email address list) + * - $replacements (array of additional string substitutions, @KEY@ to be replaced by value) */ public function notifyaddresses(&$data) { if(!$this->isenabled()) return; -- cgit v1.2.3 From f168548c334622dbfa567a8f7bb998271195656e Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 20 May 2014 23:01:31 +0200 Subject: phpdocs, fallthrough, unused var in common.php --- inc/common.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inc/common.php b/inc/common.php index aea6065d0..cd180e29e 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1536,6 +1536,7 @@ function php_to_byte($v) { /** @noinspection PhpMissingBreakStatementInspection */ case 'M': $ret *= 1024; + /** @noinspection PhpMissingBreakStatementInspection */ case 'K': $ret *= 1024; break; @@ -1597,7 +1598,7 @@ function editorinfo($username, $textonly = false) { /** * Returns users realname w/o link * - * @param string|bool $username or false when currently logged-in user should be used + * @param string|null $username or null when currently logged-in user should be used * @param bool $textonly true returns only plain text, true allows returning html * @return string html or plain text(not escaped) of formatted user name * @@ -1729,7 +1730,6 @@ function license_img($type) { global $conf; if(!$conf['license']) return ''; if(!is_array($license[$conf['license']])) return ''; - $lic = $license[$conf['license']]; $try = array(); $try[] = 'lib/images/license/'.$type.'/'.$conf['license'].'.png'; $try[] = 'lib/images/license/'.$type.'/'.$conf['license'].'.gif'; -- cgit v1.2.3 From b4b6c9a156df8ab4655a518790afb625ea927adb Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Tue, 20 May 2014 23:25:28 +0200 Subject: Phpdocs --- inc/common.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inc/common.php b/inc/common.php index cd180e29e..0fe33c5b1 100644 --- a/inc/common.php +++ b/inc/common.php @@ -1585,7 +1585,7 @@ function shorten($keep, $short, $max, $min = 9, $char = '…') { * Return the users realname or e-mail address for use * in page footer and recent changes pages * - * @param string|bool $username or false when currently logged-in user should be used + * @param string|null $username or null when currently logged-in user should be used * @param bool $textonly true returns only plain text, true allows returning html * @return string html or plain text(not escaped) of formatted user name * @@ -1858,7 +1858,7 @@ function valid_input_set($param, $valid_values, $array, $exc = '') { * (remembering both keys & values are urlencoded) * * @param string $pref preference key - * @param string $default value returned when preference not found + * @param mixed $default value returned when preference not found * @return string preference value */ function get_doku_pref($pref, $default) { -- cgit v1.2.3 From 4f1e2cb398542551e71f50494ed57c567a732980 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 21 May 2014 10:20:37 +0200 Subject: PHPdocs changelog --- inc/changelog.php | 47 ++++++++++++++++++++++++++++++++++------------- 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/inc/changelog.php b/inc/changelog.php index f0788d896..8c14f21b0 100644 --- a/inc/changelog.php +++ b/inc/changelog.php @@ -18,6 +18,9 @@ define('DOKU_CHANGE_TYPE_REVERT', 'R'); * parses a changelog line into it's components * * @author Ben Coburn + * + * @param string $line changelog line + * @return array|bool parsed line or false */ function parseChangelogLine($line) { $tmp = explode("\t", $line); @@ -43,7 +46,7 @@ function parseChangelogLine($line) { * @param String $summary Summary of the change * @param mixed $extra In case of a revert the revision (timestmp) of the reverted page * @param array $flags Additional flags in a key value array. - * Availible flags: + * Available flags: * - ExternalEdit - mark as an external edit. * * @author Andreas Gohr @@ -116,6 +119,15 @@ function addLogEntry($date, $id, $type=DOKU_CHANGE_TYPE_EDIT, $summary='', $extr * @author Andreas Gohr * @author Esther Brunner * @author Ben Coburn + * + * @param int $date Timestamp of the change + * @param String $id Name of the affected page + * @param String $type Type of the change see DOKU_CHANGE_TYPE_* + * @param String $summary Summary of the change + * @param mixed $extra In case of a revert the revision (timestmp) of the reverted page + * @param array $flags Additional flags in a key value array. + * Available flags: + * - (none, so far) */ function addMediaLogEntry($date, $id, $type=DOKU_CHANGE_TYPE_EDIT, $summary='', $extra='', $flags=null){ global $conf; @@ -294,6 +306,12 @@ function getRecentsSince($from,$to=null,$ns='',$flags=0){ * @see getRecents() * @author Andreas Gohr * @author Ben Coburn + * + * @param string $line changelog line + * @param string $ns restrict to given namespace + * @param int $flags flags to control which changes are included + * @param array $seen listing of seen pages + * @return array|bool false or array with info about a change */ function _handleRecent($line,$ns,$flags,&$seen){ if(empty($line)) return false; //skip empty lines @@ -778,9 +796,9 @@ abstract class ChangeLog { * Read chunk and return array with lines of given chunck. * Has no check if $head and $tail are really at a new line * - * @param $fp resource filepointer - * @param $head int start point chunck - * @param $tail int end point chunck + * @param resource $fp resource filepointer + * @param int $head start point chunck + * @param int $tail end point chunck * @return array lines read from chunck */ protected function readChunk($fp, $head, $tail) { @@ -804,8 +822,8 @@ abstract class ChangeLog { /** * Set pointer to first new line after $finger and return its position * - * @param resource $fp filepointer - * @param $finger int a pointer + * @param resource $fp filepointer + * @param int $finger a pointer * @return int pointer */ protected function getNewlinepointer($fp, $finger) { @@ -886,7 +904,7 @@ abstract class ChangeLog { */ protected function retrieveRevisionsAround($rev, $max) { //get lines from changelog - list($fp, $lines, $starthead, $starttail, $eof) = $this->readloglines($rev); + list($fp, $lines, $starthead, $starttail, /* $eof */) = $this->readloglines($rev); if(empty($lines)) return false; //parse chunk containing $rev, and read forward more chunks until $max/2 is reached @@ -1010,7 +1028,7 @@ class MediaChangelog extends ChangeLog { * @author Kate Arzamastseva */ function getRevisionInfo($id, $rev, $chunk_size = 8192, $media = false) { - dbg_deprecated('class PageChangeLog or class MediaChanglog'); + dbg_deprecated('class PageChangeLog or class MediaChangelog'); if($media) { $changelog = new MediaChangeLog($id, $chunk_size); } else { @@ -1025,10 +1043,6 @@ function getRevisionInfo($id, $rev, $chunk_size = 8192, $media = false) { * only that a line with the date exists in the changelog. * By default the current revision is skipped. * - * id: the page of interest - * first: skip the first n changelog lines - * num: number of revisions to return - * * The current revision is automatically skipped when the page exists. * See $INFO['meta']['last_change'] for the current revision. * @@ -1041,9 +1055,16 @@ function getRevisionInfo($id, $rev, $chunk_size = 8192, $media = false) { * * @author Ben Coburn * @author Kate Arzamastseva + * + * @param string $id the page of interest + * @param int $first skip the first n changelog lines + * @param int $num number of revisions to return + * @param int $chunk_size + * @param bool $media + * @return array */ function getRevisions($id, $first, $num, $chunk_size = 8192, $media = false) { - dbg_deprecated('class PageChangeLog or class MediaChanglog'); + dbg_deprecated('class PageChangeLog or class MediaChangelog'); if($media) { $changelog = new MediaChangeLog($id, $chunk_size); } else { -- cgit v1.2.3 From 16ac1f4e01580b4679a076a8f895536b1e7d712c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Radovan=20Buro=C5=88?= Date: Wed, 21 May 2014 10:25:56 +0200 Subject: translation update --- inc/lang/cs/lang.php | 5 +++-- lib/plugins/revert/lang/cs/lang.php | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/inc/lang/cs/lang.php b/inc/lang/cs/lang.php index a491c1533..061f1f063 100644 --- a/inc/lang/cs/lang.php +++ b/inc/lang/cs/lang.php @@ -17,6 +17,7 @@ * @author Zbyněk Křivka * @author Gerrit Uitslag * @author Petr Klíma + * @author Radovan Buroň */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -61,6 +62,8 @@ $lang['btn_register'] = 'Registrovat'; $lang['btn_apply'] = 'Použít'; $lang['btn_media'] = 'Správa médií'; $lang['btn_deleteuser'] = 'Odstranit můj účet'; +$lang['btn_img_backto'] = 'Zpět na %s'; +$lang['btn_mediaManager'] = 'Zobrazit ve správě médií'; $lang['loggedinas'] = 'Přihlášen(a) jako'; $lang['user'] = 'Uživatelské jméno'; $lang['pass'] = 'Heslo'; @@ -248,7 +251,6 @@ $lang['admin_register'] = 'Přidat nového uživatele'; $lang['metaedit'] = 'Upravit Metadata'; $lang['metasaveerr'] = 'Chyba při zápisu metadat'; $lang['metasaveok'] = 'Metadata uložena'; -$lang['btn_img_backto'] = 'Zpět na %s'; $lang['img_title'] = 'Titulek'; $lang['img_caption'] = 'Popis'; $lang['img_date'] = 'Datum'; @@ -261,7 +263,6 @@ $lang['img_camera'] = 'Typ fotoaparátu'; $lang['img_keywords'] = 'Klíčová slova'; $lang['img_width'] = 'Šířka'; $lang['img_height'] = 'Výška'; -$lang['btn_mediaManager'] = 'Zobrazit ve správě médií'; $lang['subscr_subscribe_success'] = '%s byl přihlášen do seznamu odběratelů %s'; $lang['subscr_subscribe_error'] = 'Došlo k chybě při přihlašování %s do seznamu odběratelů %s'; $lang['subscr_subscribe_noaddress'] = 'K Vašemu loginu neexistuje žádná adresa, nemohl jste být přihlášen do seznamu odběratelů.'; diff --git a/lib/plugins/revert/lang/cs/lang.php b/lib/plugins/revert/lang/cs/lang.php index 69abaaade..e1b47bb8d 100644 --- a/lib/plugins/revert/lang/cs/lang.php +++ b/lib/plugins/revert/lang/cs/lang.php @@ -16,6 +16,7 @@ * @author Zbyněk Křivka * @author Gerrit Uitslag * @author Petr Klíma + * @author Radovan Buroň */ $lang['menu'] = 'Obnova zaspamovaných stránek'; $lang['filter'] = 'Hledat zaspamované stránky'; -- cgit v1.2.3 From 15851b98227ebf9671f8f7facd11426a72da6ea6 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 21 May 2014 11:16:33 +0200 Subject: getNS returns empty string instead of false --- inc/pageutils.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/inc/pageutils.php b/inc/pageutils.php index 8474c5697..b678aa7c3 100644 --- a/inc/pageutils.php +++ b/inc/pageutils.php @@ -146,19 +146,25 @@ function cleanID($raw_id,$ascii=false){ * Return namespacepart of a wiki ID * * @author Andreas Gohr + * + * @param string $id + * @return string */ function getNS($id){ $pos = strrpos((string)$id,':'); if($pos!==false){ return substr((string)$id,0,$pos); } - return false; + return ''; } /** * Returns the ID without the namespace * * @author Andreas Gohr + * + * @param string $id + * @return string */ function noNS($id) { $pos = strrpos($id, ':'); -- cgit v1.2.3 From 84657ea239c6b7c08f5e4ffb58170d6521cdbb44 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 21 May 2014 11:17:19 +0200 Subject: PHPdocs pageutils --- inc/pageutils.php | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 65 insertions(+), 2 deletions(-) diff --git a/inc/pageutils.php b/inc/pageutils.php index b678aa7c3..79b703ddc 100644 --- a/inc/pageutils.php +++ b/inc/pageutils.php @@ -17,6 +17,10 @@ * If the second parameter is true (default) the ID is cleaned. * * @author Andreas Gohr + * + * @param string $param the $_REQUEST variable name, default 'id' + * @param bool $clean if true, ID is cleaned + * @return mixed|string */ function getID($param='id',$clean=true){ /** @var Input $INPUT */ @@ -179,6 +183,9 @@ function noNS($id) { * Returns the current namespace * * @author Nathan Fritz + * + * @param string $id + * @return string */ function curNS($id) { return noNS(getNS($id)); @@ -188,6 +195,9 @@ function curNS($id) { * Returns the ID without the namespace or current namespace for 'start' pages * * @author Nathan Fritz + * + * @param string $id + * @return string */ function noNSorNS($id) { global $conf; @@ -208,6 +218,7 @@ function noNSorNS($id) { * @param string $title The headline title * @param array|bool $check Existing IDs (title => number) * @return string the title + * * @author Andreas Gohr */ function sectionID($title,&$check) { @@ -238,6 +249,11 @@ function sectionID($title,&$check) { * parameters as for wikiFN * * @author Chris Smith + * + * @param string $id page id + * @param string|int $rev empty or revision timestamp + * @param bool $clean flag indicating that $id should be cleaned (see wikiFN as well) + * @return bool exists? */ function page_exists($id,$rev='',$clean=true) { return @file_exists(wikiFN($id,$rev,$clean)); @@ -296,6 +312,9 @@ function wikiFN($raw_id,$rev='',$clean=true){ * Returns the full path to the file for locking the page while editing. * * @author Ben Coburn + * + * @param string $id page id + * @return string full path */ function wikiLockFN($id) { global $conf; @@ -307,6 +326,10 @@ function wikiLockFN($id) { * returns the full path to the meta file specified by ID and extension * * @author Steven Danz + * + * @param string $id page id + * @param string $ext file extension + * @return string full path */ function metaFN($id,$ext){ global $conf; @@ -320,6 +343,10 @@ function metaFN($id,$ext){ * returns the full path to the media's meta file specified by ID and extension * * @author Kate Arzamastseva + * + * @param string $id media id + * @param string $ext extension of media + * @return string */ function mediaMetaFN($id,$ext){ global $conf; @@ -334,6 +361,9 @@ function mediaMetaFN($id,$ext){ * * @author Esther Brunner * @author Michael Hamann + * + * @param string $id page id + * @return array */ function metaFiles($id){ $basename = metaFN($id, ''); @@ -349,6 +379,10 @@ function metaFiles($id){ * * @author Andreas Gohr * @author Kate Arzamastseva + * + * @param string $id media id + * @param string|int $rev empty string or revision timestamp + * @return string full path */ function mediaFN($id, $rev=''){ global $conf; @@ -371,6 +405,7 @@ function mediaFN($id, $rev=''){ * @param string $id The id of the local file * @param string $ext The file extension (usually txt) * @return string full filepath to localized file + * * @author Andreas Gohr */ function localeFN($id,$ext='txt'){ @@ -396,6 +431,11 @@ function localeFN($id,$ext='txt'){ * http://www.php.net/manual/en/function.realpath.php#57016 * * @author + * + * @param string $ns namespace which is context of id + * @param string $id relative id + * @param bool $clean flag indicating that id should be cleaned + * @return mixed|string */ function resolve_id($ns,$id,$clean=true){ global $conf; @@ -441,6 +481,10 @@ function resolve_id($ns,$id,$clean=true){ * Returns a full media id * * @author Andreas Gohr + * + * @param string $ns namespace which is context of id + * @param string &$page (reference) relative media id, updated to resolved id + * @param bool &$exists (reference) updated with existance of media */ function resolve_mediaid($ns,&$page,&$exists){ $page = resolve_id($ns,$page); @@ -452,6 +496,10 @@ function resolve_mediaid($ns,&$page,&$exists){ * Returns a full page id * * @author Andreas Gohr + * + * @param string $ns namespace which is context of id + * @param string &$page (reference) relative page id, updated to resolved id + * @param bool &$exists (reference) updated with existance of media */ function resolve_pageid($ns,&$page,&$exists){ global $conf; @@ -543,6 +591,9 @@ function getCacheName($data,$ext=''){ * Checks a pageid against $conf['hidepages'] * * @author Andreas Gohr + * + * @param string $id page id + * @return bool */ function isHiddenPage($id){ $data = array( @@ -556,7 +607,7 @@ function isHiddenPage($id){ /** * callback checks if page is hidden * - * @param array $data event data see isHiddenPage() + * @param array $data event data - see isHiddenPage() */ function _isHiddenPage(&$data) { global $conf; @@ -575,6 +626,9 @@ function _isHiddenPage(&$data) { * Reverse of isHiddenPage * * @author Andreas Gohr + * + * @param string $id page id + * @return bool */ function isVisiblePage($id){ return !isHiddenPage($id); @@ -587,8 +641,10 @@ function isVisiblePage($id){ * “*”. Output is escaped. * * @author Adrian Lang + * + * @param string $id page id + * @return string */ - function prettyprint_id($id) { if (!$id || $id === ':') { return '*'; @@ -611,6 +667,10 @@ function prettyprint_id($id) { * * @author Andreas Gohr * @see urlencode + * + * @param string $file file name + * @param bool $safe if true, only encoded when non ASCII characters detected + * @return string */ function utf8_encodeFN($file,$safe=true){ global $conf; @@ -636,6 +696,9 @@ function utf8_encodeFN($file,$safe=true){ * * @author Andreas Gohr * @see urldecode + * + * @param string $file file name + * @return string */ function utf8_decodeFN($file){ global $conf; -- cgit v1.2.3 From 6c0879f6b25dd03183827bdda461ceb599eb939a Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 21 May 2014 11:57:36 +0200 Subject: change getNS output check to empty string as well --- inc/io.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/io.php b/inc/io.php index 27a34b045..dce676bbb 100644 --- a/inc/io.php +++ b/inc/io.php @@ -31,7 +31,7 @@ function io_sweepNS($id,$basedir='datadir'){ $delone = false; //scan all namespaces - while(($id = getNS($id)) !== false){ + while(($id = getNS($id)) !== ''){ $dir = $conf[$basedir].'/'.utf8_encodeFN(str_replace(':','/',$id)); //try to delete dir else return -- cgit v1.2.3 From 5e92d22dea593e8c7fe19d1dc1e7f030ef2604c9 Mon Sep 17 00:00:00 2001 From: Caillot Date: Wed, 21 May 2014 21:31:37 +0200 Subject: translation update --- inc/lang/fr/lang.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 1f11608e6..c5407afa0 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -32,6 +32,7 @@ * @author Wild * @author ggallon * @author David VANTYGHEM + * @author Caillot */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -52,7 +53,7 @@ $lang['btn_newer'] = '<< Plus récent'; $lang['btn_older'] = 'Moins récent >>'; $lang['btn_revs'] = 'Anciennes révisions'; $lang['btn_recent'] = 'Derniers changements'; -$lang['btn_upload'] = 'Envoyer'; +$lang['btn_upload'] = 'Téléverser'; $lang['btn_cancel'] = 'Annuler'; $lang['btn_index'] = 'Plan du site'; $lang['btn_secedit'] = 'Modifier'; @@ -62,7 +63,7 @@ $lang['btn_admin'] = 'Administrer'; $lang['btn_update'] = 'Mettre à jour'; $lang['btn_delete'] = 'Effacer'; $lang['btn_back'] = 'Retour'; -$lang['btn_backlink'] = 'Liens vers cette page'; +$lang['btn_backlink'] = 'Liens de retour'; $lang['btn_backtomedia'] = 'Retour à la sélection du fichier média'; $lang['btn_subscribe'] = 'S\'abonner à cette page'; $lang['btn_profile'] = 'Mettre à jour le profil'; @@ -76,7 +77,7 @@ $lang['btn_register'] = 'Créer un compte'; $lang['btn_apply'] = 'Appliquer'; $lang['btn_media'] = 'Gestionnaire de médias'; $lang['btn_deleteuser'] = 'Supprimer mon compte'; -$lang['btn_img_backto'] = 'Retour à %s'; +$lang['btn_img_backto'] = 'Retour vers %s'; $lang['btn_mediaManager'] = 'Voir dans le gestionnaire de médias'; $lang['loggedinas'] = 'Connecté en tant que '; $lang['user'] = 'Utilisateur'; @@ -88,20 +89,20 @@ $lang['remember'] = 'Mémoriser'; $lang['fullname'] = 'Nom'; $lang['email'] = 'Adresse de courriel'; $lang['profile'] = 'Profil utilisateur'; -$lang['badlogin'] = 'L\'utilisateur ou le mot de passe est incorrect.'; +$lang['badlogin'] = 'Le nom d\'utilisateur ou le mot de passe est incorrect.'; $lang['badpassconfirm'] = 'Désolé, le mot de passe est erroné'; $lang['minoredit'] = 'Modification mineure'; -$lang['draftdate'] = 'Brouillon enregistré de manière automatique le'; +$lang['draftdate'] = 'Brouillon enregistré automatiquement le'; $lang['nosecedit'] = 'La page a changé entre temps, les informations de la section sont obsolètes ; la page complète a été chargée à la place.'; $lang['regmissing'] = 'Désolé, vous devez remplir tous les champs.'; -$lang['reguexists'] = 'Désolé, ce nom d\'utilisateur est déjà utilisé.'; +$lang['reguexists'] = 'Désolé, ce nom d\'utilisateur est déjà pris.'; $lang['regsuccess'] = 'L\'utilisateur a été créé. Le mot de passe a été expédié par courriel.'; $lang['regsuccess2'] = 'L\'utilisateur a été créé.'; $lang['regmailfail'] = 'On dirait qu\'il y a eu une erreur lors de l\'envoi du mot de passe de messagerie. Veuillez contacter l\'administrateur !'; $lang['regbadmail'] = 'L\'adresse de courriel semble incorrecte. Si vous pensez que c\'est une erreur, contactez l\'administrateur.'; $lang['regbadpass'] = 'Les deux mots de passe fournis sont différents, veuillez recommencez.'; $lang['regpwmail'] = 'Votre mot de passe DokuWiki'; -$lang['reghere'] = 'Vous n\'avez pas encore de compte ? Enregistrez-vous ici '; +$lang['reghere'] = 'Vous n\'avez pas encore de compte ? Inscrivez-vous'; $lang['profna'] = 'Ce wiki ne permet pas de modifier les profils'; $lang['profnochange'] = 'Pas de modification, rien à faire.'; $lang['profnoempty'] = 'Un nom ou une adresse de courriel vide n\'est pas permis.'; -- cgit v1.2.3 From d4837e2388a7e698d70fc8451c687f0c7ec439a6 Mon Sep 17 00:00:00 2001 From: Johan Vervloet Date: Thu, 22 May 2014 13:56:02 +0200 Subject: translation update --- inc/lang/nl/lang.php | 1 + lib/plugins/extension/lang/nl/lang.php | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/inc/lang/nl/lang.php b/inc/lang/nl/lang.php index 04e3797be..beefc8eb3 100644 --- a/inc/lang/nl/lang.php +++ b/inc/lang/nl/lang.php @@ -23,6 +23,7 @@ * @author Remon * @author gicalle * @author Rene + * @author Johan Vervloet */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; diff --git a/lib/plugins/extension/lang/nl/lang.php b/lib/plugins/extension/lang/nl/lang.php index c1c72e812..a54924e93 100644 --- a/lib/plugins/extension/lang/nl/lang.php +++ b/lib/plugins/extension/lang/nl/lang.php @@ -5,6 +5,7 @@ * * @author Rene * @author Gerrit Uitslag + * @author Johan Vervloet */ $lang['menu'] = 'Uitbreidingen'; $lang['tab_plugins'] = 'Geïnstalleerde Plugins'; @@ -64,16 +65,16 @@ $lang['msg_enabled'] = 'Plugin %s ingeschakeld'; $lang['msg_disabled'] = 'Plugin %s uitgeschakeld'; $lang['msg_delete_success'] = 'Uitbreiding gedeinstalleerd'; $lang['msg_template_install_success'] = 'Template %s werd succesvol geïnstalleerd'; -$lang['msg_template_update_success'] = 'Template %s werd succesvol ge-update'; +$lang['msg_template_update_success'] = 'Template %s werd succesvol geüpdatet'; $lang['msg_plugin_install_success'] = 'Plugin %s werd succesvol geïnstalleerd'; -$lang['msg_plugin_update_success'] = 'Plugin %s werd succesvol ge-update'; +$lang['msg_plugin_update_success'] = 'Plugin %s werd succesvol geüpdatet'; $lang['msg_upload_failed'] = 'Uploaden van het bestand is mislukt'; $lang['missing_dependency'] = 'niet aanwezige of uitgeschakelde afhankelijkheid %s'; $lang['security_issue'] = 'Veiligheids kwestie: %s'; $lang['security_warning'] = 'Veiligheids Waarschuwing %s'; $lang['update_available'] = 'Update: Nieuwe versie %s is beschikbaar.'; $lang['wrong_folder'] = 'Plugin onjuist geïnstalleerd: Hernoem de plugin directory van "%s" naar"%s"'; -$lang['url_change'] = 'URL gewijzigd: Download URL is gewijzigd sinds de laatste download. Controleer of de nieuwe URL juist is voordat u de uitbreiding update.
Nieuw:%s
Vorig: %s'; +$lang['url_change'] = 'URL gewijzigd: Download URL is gewijzigd sinds de laatste download. Controleer of de nieuwe URL juist is voordat u de uitbreiding updatet.
Nieuw:%s
Vorig: %s'; $lang['error_badurl'] = 'URLs moeten beginnen met http of https'; $lang['error_dircreate'] = 'De tijdelijke map kon niet worden gemaakt om de download te ontvangen'; $lang['error_download'] = 'Het is niet mogelijk het bestand te downloaden: %s'; -- cgit v1.2.3 From 2d338eab8c1f980abd8a8ee35b068b84750867a0 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 24 May 2014 11:18:08 +0200 Subject: removed unset $cache parameter in _audio _video #698 --- inc/parser/xhtml.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php index cf36a8175..e4afb9eb8 100644 --- a/inc/parser/xhtml.php +++ b/inc/parser/xhtml.php @@ -1297,7 +1297,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $poster = media_alternativefiles($src, array('jpg', 'png'), true); $posterUrl = ''; if (!empty($poster)) { - $posterUrl = ml(reset($poster),array('cache'=>$cache),true,'&'); + $posterUrl = ml(reset($poster),'',true,'&'); } $out = ''; @@ -1309,7 +1309,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // output source for each alternative video format foreach($alternatives as $mime => $file) { - $url = ml($file,array('cache'=>$cache),true,'&'); + $url = ml($file,'',true,'&'); $title = $atts['title'] ? $atts['title'] : $this->_xmlEntities(utf8_basename(noNS($file))); $out .= ''.NL; @@ -1345,7 +1345,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // output source for each alternative audio format foreach($alternatives as $mime => $file) { - $url = ml($file,array('cache'=>$cache),true,'&'); + $url = ml($file,'',true,'&'); $title = $atts['title'] ? $atts['title'] : $this->_xmlEntities(utf8_basename(noNS($file))); $out .= ''.NL; -- cgit v1.2.3 From 2c2835c2888035a0b3b1fd8b096a962a0a5c40b5 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 24 May 2014 11:23:52 +0200 Subject: reformatting --- inc/parser/renderer.php | 285 +++++++++++++++++++++++++++++++----------------- 1 file changed, 182 insertions(+), 103 deletions(-) diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index e92b81bd7..71eeda952 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -44,7 +44,7 @@ class Doku_Renderer extends DokuWiki_Plugin { * * Has to be overidden by decendend classes */ - function getFormat(){ + function getFormat() { trigger_error('getFormat() not implemented in '.get_class($this), E_USER_WARNING); } @@ -60,15 +60,15 @@ class Doku_Renderer extends DokuWiki_Plugin { /** * handle plugin rendering * - * @param string $name Plugin name - * @param mixed $data custom data set by handler + * @param string $name Plugin name + * @param mixed $data custom data set by handler * @param string $state matched state if any * @param string $match raw matched syntax */ - function plugin($name,$data,$state='',$match=''){ - $plugin = plugin_load('syntax',$name); - if($plugin != null){ - $plugin->render($this->getFormat(),$this,$data); + function plugin($name, $data, $state = '', $match = '') { + $plugin = plugin_load('syntax', $name); + if($plugin != null) { + $plugin->render($this->getFormat(), $this, $data); } } @@ -78,9 +78,9 @@ class Doku_Renderer extends DokuWiki_Plugin { */ function nest($instructions) { - foreach ( $instructions as $instruction ) { + foreach($instructions as $instruction) { // execute the callback against ourself - if (method_exists($this,$instruction[0])) { + if(method_exists($this, $instruction[0])) { call_user_func_array(array($this, $instruction[0]), $instruction[1] ? $instruction[1] : array()); } } @@ -89,186 +89,265 @@ class Doku_Renderer extends DokuWiki_Plugin { // dummy closing instruction issued by Doku_Handler_Nest, normally the syntax mode should // override this instruction when instantiating Doku_Handler_Nest - however plugins will not // be able to - as their instructions require data. - function nest_close() {} + function nest_close() { + } - function document_start() {} + function document_start() { + } - function document_end() {} + function document_end() { + } - function render_TOC() { return ''; } + function render_TOC() { + return ''; + } - function toc_additem($id, $text, $level) {} + function toc_additem($id, $text, $level) { + } - function header($text, $level, $pos) {} + function header($text, $level, $pos) { + } - function section_open($level) {} + function section_open($level) { + } - function section_close() {} + function section_close() { + } - function cdata($text) {} + function cdata($text) { + } - function p_open() {} + function p_open() { + } - function p_close() {} + function p_close() { + } - function linebreak() {} + function linebreak() { + } - function hr() {} + function hr() { + } - function strong_open() {} + function strong_open() { + } - function strong_close() {} + function strong_close() { + } - function emphasis_open() {} + function emphasis_open() { + } - function emphasis_close() {} + function emphasis_close() { + } - function underline_open() {} + function underline_open() { + } - function underline_close() {} + function underline_close() { + } - function monospace_open() {} + function monospace_open() { + } - function monospace_close() {} + function monospace_close() { + } - function subscript_open() {} + function subscript_open() { + } - function subscript_close() {} + function subscript_close() { + } - function superscript_open() {} + function superscript_open() { + } - function superscript_close() {} + function superscript_close() { + } - function deleted_open() {} + function deleted_open() { + } - function deleted_close() {} + function deleted_close() { + } - function footnote_open() {} + function footnote_open() { + } - function footnote_close() {} + function footnote_close() { + } - function listu_open() {} + function listu_open() { + } - function listu_close() {} + function listu_close() { + } - function listo_open() {} + function listo_open() { + } - function listo_close() {} + function listo_close() { + } - function listitem_open($level) {} + function listitem_open($level) { + } - function listitem_close() {} + function listitem_close() { + } - function listcontent_open() {} + function listcontent_open() { + } - function listcontent_close() {} + function listcontent_close() { + } - function unformatted($text) {} + function unformatted($text) { + } - function php($text) {} + function php($text) { + } - function phpblock($text) {} + function phpblock($text) { + } - function html($text) {} + function html($text) { + } - function htmlblock($text) {} + function htmlblock($text) { + } - function preformatted($text) {} + function preformatted($text) { + } - function quote_open() {} + function quote_open() { + } - function quote_close() {} + function quote_close() { + } - function file($text, $lang = null, $file = null ) {} + function file($text, $lang = null, $file = null) { + } - function code($text, $lang = null, $file = null ) {} + function code($text, $lang = null, $file = null) { + } - function acronym($acronym) {} + function acronym($acronym) { + } - function smiley($smiley) {} + function smiley($smiley) { + } - function wordblock($word) {} + function wordblock($word) { + } - function entity($entity) {} + function entity($entity) { + } // 640x480 ($x=640, $y=480) - function multiplyentity($x, $y) {} + function multiplyentity($x, $y) { + } - function singlequoteopening() {} + function singlequoteopening() { + } - function singlequoteclosing() {} + function singlequoteclosing() { + } - function apostrophe() {} + function apostrophe() { + } - function doublequoteopening() {} + function doublequoteopening() { + } - function doublequoteclosing() {} + function doublequoteclosing() { + } // $link like 'SomePage' - function camelcaselink($link) {} + function camelcaselink($link) { + } - function locallink($hash, $name = null) {} + function locallink($hash, $name = null) { + } // $link like 'wiki:syntax', $title could be an array (media) - function internallink($link, $title = null) {} + function internallink($link, $title = null) { + } // $link is full URL with scheme, $title could be an array (media) - function externallink($link, $title = null) {} + function externallink($link, $title = null) { + } - function rss ($url,$params) {} + function rss($url, $params) { + } // $link is the original link - probably not much use // $wikiName is an indentifier for the wiki // $wikiUri is the URL fragment to append to some known URL - function interwikilink($link, $title = null, $wikiName, $wikiUri) {} + function interwikilink($link, $title = null, $wikiName, $wikiUri) { + } // Link to file on users OS, $title could be an array (media) - function filelink($link, $title = null) {} + function filelink($link, $title = null) { + } // Link to a Windows share, , $title could be an array (media) - function windowssharelink($link, $title = null) {} + function windowssharelink($link, $title = null) { + } // function email($address, $title = null) {} - function emaillink($address, $name = null) {} + function emaillink($address, $name = null) { + } - function internalmedia ($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null) {} + function internalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null) { + } - function externalmedia ($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null) {} + function externalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null) { + } - function internalmedialink ( - $src,$title=null,$align=null,$width=null,$height=null,$cache=null - ) {} + function internalmedialink( + $src, $title = null, $align = null, $width = null, $height = null, $cache = null + ) { + } function externalmedialink( - $src,$title=null,$align=null,$width=null,$height=null,$cache=null - ) {} - - function table_open($maxcols = null, $numrows = null, $pos = null){} + $src, $title = null, $align = null, $width = null, $height = null, $cache = null + ) { + } - function table_close($pos = null){} + function table_open($maxcols = null, $numrows = null, $pos = null) { + } - function tablethead_open(){} + function table_close($pos = null) { + } - function tablethead_close(){} + function tablethead_open() { + } - function tablerow_open(){} + function tablethead_close() { + } - function tablerow_close(){} + function tablerow_open() { + } - function tableheader_open($colspan = 1, $align = null, $rowspan = 1){} + function tablerow_close() { + } - function tableheader_close(){} + function tableheader_open($colspan = 1, $align = null, $rowspan = 1) { + } - function tablecell_open($colspan = 1, $align = null, $rowspan = 1){} + function tableheader_close() { + } - function tablecell_close(){} + function tablecell_open($colspan = 1, $align = null, $rowspan = 1) { + } + function tablecell_close() { + } // util functions follow, you probably won't need to reimplement them - /** * Removes any Namespace from the given name but keeps * casing and special chars @@ -294,13 +373,13 @@ class Doku_Renderer extends DokuWiki_Plugin { /** * Resolve an interwikilink */ - function _resolveInterWiki(&$shortcut, $reference, &$exists=null) { + function _resolveInterWiki(&$shortcut, $reference, &$exists = null) { //get interwiki URL if(isset($this->interwiki[$shortcut])) { $url = $this->interwiki[$shortcut]; } else { // Default to Google I'm feeling lucky - $url = 'http://www.google.com/search?q={URL}&btnI=lucky'; + $url = 'http://www.google.com/search?q={URL}&btnI=lucky'; $shortcut = 'go'; } @@ -310,8 +389,8 @@ class Doku_Renderer extends DokuWiki_Plugin { //replace placeholder if(preg_match('#\{(URL|NAME|SCHEME|HOST|PORT|PATH|QUERY)\}#', $url)) { //use placeholders - $url = str_replace('{URL}', rawurlencode($reference), $url); - $url = str_replace('{NAME}', $reference, $url); + $url = str_replace('{URL}', rawurlencode($reference), $url); + $url = str_replace('{NAME}', $reference, $url); $parsed = parse_url($reference); if(!$parsed['port']) $parsed['port'] = 80; $url = str_replace('{SCHEME}', $parsed['scheme'], $url); @@ -321,15 +400,15 @@ class Doku_Renderer extends DokuWiki_Plugin { $url = str_replace('{QUERY}', $parsed['query'], $url); } else { //default - $url = $url . rawurlencode($reference); + $url = $url.rawurlencode($reference); } //handle as wiki links if($url{0} === ':') { list($id, $urlparam) = explode('?', $url, 2); - $url = wl(cleanID($id), $urlparam); + $url = wl(cleanID($id), $urlparam); $exists = page_exists($id); } - if($hash) $url .= '#' . rawurlencode($hash); + if($hash) $url .= '#'.rawurlencode($hash); return $url; } -- cgit v1.2.3 From 7783971742e69fbd5ad26b0daf75bd4a3043aff0 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 24 May 2014 13:59:49 +0200 Subject: more reformatting --- inc/parser/code.php | 12 +- inc/parser/metadata.php | 286 ++++++++++++++++++++++++------------------------ 2 files changed, 152 insertions(+), 146 deletions(-) diff --git a/inc/parser/code.php b/inc/parser/code.php index d77ffd1aa..00b956c27 100644 --- a/inc/parser/code.php +++ b/inc/parser/code.php @@ -7,25 +7,25 @@ if(!defined('DOKU_INC')) die('meh.'); class Doku_Renderer_code extends Doku_Renderer { - var $_codeblock=0; + var $_codeblock = 0; /** * Send the wanted code block to the browser * * When the correct block was found it exits the script. */ - function code($text, $language = null, $filename='' ) { + function code($text, $language = null, $filename = '') { global $INPUT; if(!$language) $language = 'txt'; if(!$filename) $filename = 'snippet.'.$language; $filename = utf8_basename($filename); $filename = utf8_stripspecials($filename, '_'); - if($this->_codeblock == $INPUT->str('codeblock')){ + if($this->_codeblock == $INPUT->str('codeblock')) { header("Content-Type: text/plain; charset=utf-8"); header("Content-Disposition: attachment; filename=$filename"); header("X-Robots-Tag: noindex"); - echo trim($text,"\r\n"); + echo trim($text, "\r\n"); exit; } @@ -35,7 +35,7 @@ class Doku_Renderer_code extends Doku_Renderer { /** * Wraps around code() */ - function file($text, $language = null, $filename='') { + function file($text, $language = null, $filename = '') { $this->code($text, $language, $filename); } @@ -53,7 +53,7 @@ class Doku_Renderer_code extends Doku_Renderer { * * @returns string 'code' */ - function getFormat(){ + function getFormat() { return 'code'; } } diff --git a/inc/parser/metadata.php b/inc/parser/metadata.php index 82a268fd6..e19aa602a 100644 --- a/inc/parser/metadata.php +++ b/inc/parser/metadata.php @@ -6,14 +6,14 @@ */ if(!defined('DOKU_INC')) die('meh.'); -if ( !defined('DOKU_LF') ) { +if(!defined('DOKU_LF')) { // Some whitespace to help View > Source - define ('DOKU_LF',"\n"); + define ('DOKU_LF', "\n"); } -if ( !defined('DOKU_TAB') ) { +if(!defined('DOKU_TAB')) { // Some whitespace to help View > Source - define ('DOKU_TAB',"\t"); + define ('DOKU_TAB', "\t"); } /** @@ -21,55 +21,55 @@ if ( !defined('DOKU_TAB') ) { */ class Doku_Renderer_metadata extends Doku_Renderer { - var $doc = ''; + var $doc = ''; var $meta = array(); var $persistent = array(); var $headers = array(); var $capture = true; - var $store = ''; + var $store = ''; var $firstimage = ''; - function getFormat(){ + function getFormat() { return 'metadata'; } - function document_start(){ + function document_start() { global $ID; $this->headers = array(); // external pages are missing create date - if(!$this->persistent['date']['created']){ + if(!$this->persistent['date']['created']) { $this->persistent['date']['created'] = filectime(wikiFN($ID)); } - if(!isset($this->persistent['user'])){ + if(!isset($this->persistent['user'])) { $this->persistent['user'] = ''; } - if(!isset($this->persistent['creator'])){ + if(!isset($this->persistent['creator'])) { $this->persistent['creator'] = ''; } // reset metadata to persistent values $this->meta = $this->persistent; } - function document_end(){ + function document_end() { global $ID; // store internal info in metadata (notoc,nocache) $this->meta['internal'] = $this->info; - if (!isset($this->meta['description']['abstract'])){ + if(!isset($this->meta['description']['abstract'])) { // cut off too long abstracts $this->doc = trim($this->doc); - if (strlen($this->doc) > 500) + if(strlen($this->doc) > 500) $this->doc = utf8_substr($this->doc, 0, 500).'…'; $this->meta['description']['abstract'] = $this->doc; } $this->meta['relation']['firstimage'] = $this->firstimage; - if(!isset($this->meta['date']['modified'])){ + if(!isset($this->meta['date']['modified'])) { $this->meta['date']['modified'] = filemtime(wikiFN($ID)); } @@ -79,54 +79,57 @@ class Doku_Renderer_metadata extends Doku_Renderer { global $conf; //only add items within configured levels - if($level >= $conf['toptoclevel'] && $level <= $conf['maxtoclevel']){ + if($level >= $conf['toptoclevel'] && $level <= $conf['maxtoclevel']) { // the TOC is one of our standard ul list arrays ;-) $this->meta['description']['tableofcontents'][] = array( - 'hid' => $id, - 'title' => $text, - 'type' => 'ul', - 'level' => $level-$conf['toptoclevel']+1 + 'hid' => $id, + 'title' => $text, + 'type' => 'ul', + 'level' => $level - $conf['toptoclevel'] + 1 ); } } function header($text, $level, $pos) { - if (!isset($this->meta['title'])) $this->meta['title'] = $text; + if(!isset($this->meta['title'])) $this->meta['title'] = $text; // add the header to the TOC - $hid = $this->_headerToLink($text,'true'); + $hid = $this->_headerToLink($text, 'true'); $this->toc_additem($hid, $text, $level); // add to summary - if ($this->capture && ($level > 1)) $this->doc .= DOKU_LF.$text.DOKU_LF; + if($this->capture && ($level > 1)) $this->doc .= DOKU_LF.$text.DOKU_LF; } - function section_open($level){} - function section_close(){} + function section_open($level) { + } + + function section_close() { + } - function cdata($text){ - if ($this->capture) $this->doc .= $text; + function cdata($text) { + if($this->capture) $this->doc .= $text; } - function p_open(){ - if ($this->capture) $this->doc .= DOKU_LF; + function p_open() { + if($this->capture) $this->doc .= DOKU_LF; } - function p_close(){ - if ($this->capture){ - if (strlen($this->doc) > 250) $this->capture = false; + function p_close() { + if($this->capture) { + if(strlen($this->doc) > 250) $this->capture = false; else $this->doc .= DOKU_LF; } } - function linebreak(){ - if ($this->capture) $this->doc .= DOKU_LF; + function linebreak() { + if($this->capture) $this->doc .= DOKU_LF; } - function hr(){ - if ($this->capture){ - if (strlen($this->doc) > 250) $this->capture = false; + function hr() { + if($this->capture) { + if(strlen($this->doc) > 250) $this->capture = false; else $this->doc .= DOKU_LF.'----------'.DOKU_LF; } } @@ -141,7 +144,7 @@ class Doku_Renderer_metadata extends Doku_Renderer { * @author Andreas Gohr */ function footnote_open() { - if ($this->capture){ + if($this->capture) { // move current content to store and record footnote $this->store = $this->doc; $this->doc = ''; @@ -157,141 +160,144 @@ class Doku_Renderer_metadata extends Doku_Renderer { * @author Andreas Gohr */ function footnote_close() { - if ($this->capture){ + if($this->capture) { // restore old content - $this->doc = $this->store; + $this->doc = $this->store; $this->store = ''; } } - function listu_open(){ - if ($this->capture) $this->doc .= DOKU_LF; + function listu_open() { + if($this->capture) $this->doc .= DOKU_LF; } - function listu_close(){ - if ($this->capture && (strlen($this->doc) > 250)) $this->capture = false; + function listu_close() { + if($this->capture && (strlen($this->doc) > 250)) $this->capture = false; } - function listo_open(){ - if ($this->capture) $this->doc .= DOKU_LF; + function listo_open() { + if($this->capture) $this->doc .= DOKU_LF; } - function listo_close(){ - if ($this->capture && (strlen($this->doc) > 250)) $this->capture = false; + function listo_close() { + if($this->capture && (strlen($this->doc) > 250)) $this->capture = false; } - function listitem_open($level){ - if ($this->capture) $this->doc .= str_repeat(DOKU_TAB, $level).'* '; + function listitem_open($level) { + if($this->capture) $this->doc .= str_repeat(DOKU_TAB, $level).'* '; } - function listitem_close(){ - if ($this->capture) $this->doc .= DOKU_LF; + function listitem_close() { + if($this->capture) $this->doc .= DOKU_LF; } - function listcontent_open(){} - function listcontent_close(){} + function listcontent_open() { + } - function unformatted($text){ - if ($this->capture) $this->doc .= $text; + function listcontent_close() { } - function preformatted($text){ - if ($this->capture) $this->doc .= $text; + function unformatted($text) { + if($this->capture) $this->doc .= $text; } - function file($text, $lang = null, $file = null){ - if ($this->capture){ + function preformatted($text) { + if($this->capture) $this->doc .= $text; + } + + function file($text, $lang = null, $file = null) { + if($this->capture) { $this->doc .= DOKU_LF.$text; - if (strlen($this->doc) > 250) $this->capture = false; + if(strlen($this->doc) > 250) $this->capture = false; else $this->doc .= DOKU_LF; } } - function quote_open(){ - if ($this->capture) $this->doc .= DOKU_LF.DOKU_TAB.'"'; + function quote_open() { + if($this->capture) $this->doc .= DOKU_LF.DOKU_TAB.'"'; } - function quote_close(){ - if ($this->capture){ + function quote_close() { + if($this->capture) { $this->doc .= '"'; - if (strlen($this->doc) > 250) $this->capture = false; + if(strlen($this->doc) > 250) $this->capture = false; else $this->doc .= DOKU_LF; } } - function code($text, $language = null, $file = null){ - if ($this->capture){ + function code($text, $language = null, $file = null) { + if($this->capture) { $this->doc .= DOKU_LF.$text; - if (strlen($this->doc) > 250) $this->capture = false; + if(strlen($this->doc) > 250) $this->capture = false; else $this->doc .= DOKU_LF; - } + } } - function acronym($acronym){ - if ($this->capture) $this->doc .= $acronym; + function acronym($acronym) { + if($this->capture) $this->doc .= $acronym; } - function smiley($smiley){ - if ($this->capture) $this->doc .= $smiley; + function smiley($smiley) { + if($this->capture) $this->doc .= $smiley; } - function entity($entity){ - if ($this->capture) $this->doc .= $entity; + function entity($entity) { + if($this->capture) $this->doc .= $entity; } - function multiplyentity($x, $y){ - if ($this->capture) $this->doc .= $x.'×'.$y; + function multiplyentity($x, $y) { + if($this->capture) $this->doc .= $x.'×'.$y; } - function singlequoteopening(){ + function singlequoteopening() { global $lang; - if ($this->capture) $this->doc .= $lang['singlequoteopening']; + if($this->capture) $this->doc .= $lang['singlequoteopening']; } - function singlequoteclosing(){ + function singlequoteclosing() { global $lang; - if ($this->capture) $this->doc .= $lang['singlequoteclosing']; + if($this->capture) $this->doc .= $lang['singlequoteclosing']; } function apostrophe() { global $lang; - if ($this->capture) $this->doc .= $lang['apostrophe']; + if($this->capture) $this->doc .= $lang['apostrophe']; } - function doublequoteopening(){ + function doublequoteopening() { global $lang; - if ($this->capture) $this->doc .= $lang['doublequoteopening']; + if($this->capture) $this->doc .= $lang['doublequoteopening']; } - function doublequoteclosing(){ + function doublequoteclosing() { global $lang; - if ($this->capture) $this->doc .= $lang['doublequoteclosing']; + if($this->capture) $this->doc .= $lang['doublequoteclosing']; } function camelcaselink($link) { $this->internallink($link, $link); } - function locallink($hash, $name = null){ + function locallink($hash, $name = null) { if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } } /** * keep track of internal links in $this->meta['relation']['references'] */ - function internallink($id, $name = null){ + function internallink($id, $name = null) { global $ID; if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } $parts = explode('?', $id, 2); - if (count($parts) === 2) { + if(count($parts) === 2) { $id = $parts[0]; } @@ -307,80 +313,80 @@ class Doku_Renderer_metadata extends Doku_Renderer { // p_set_metadata($id, $data); // add link title to summary - if ($this->capture){ + if($this->capture) { $name = $this->_getLinkTitle($name, $default, $id); $this->doc .= $name; } } - function externallink($url, $name = null){ + function externallink($url, $name = null) { if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } - if ($this->capture){ - $this->doc .= $this->_getLinkTitle($name, '<' . $url . '>'); + if($this->capture) { + $this->doc .= $this->_getLinkTitle($name, '<'.$url.'>'); } } - function interwikilink($match, $name = null, $wikiName, $wikiUri){ + function interwikilink($match, $name = null, $wikiName, $wikiUri) { if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } - if ($this->capture){ + if($this->capture) { list($wikiUri, $hash) = explode('#', $wikiUri, 2); $name = $this->_getLinkTitle($name, $wikiUri); $this->doc .= $name; } } - function windowssharelink($url, $name = null){ + function windowssharelink($url, $name = null) { if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } - if ($this->capture){ - if ($name) $this->doc .= $name; + if($this->capture) { + if($name) $this->doc .= $name; else $this->doc .= '<'.$url.'>'; } } - function emaillink($address, $name = null){ + function emaillink($address, $name = null) { if(is_array($name)) { $this->_firstimage($name['src']); - if ($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); + if($name['type'] == 'internalmedia') $this->_recordMediaUsage($name['src']); } - if ($this->capture){ - if ($name) $this->doc .= $name; + if($this->capture) { + if($name) $this->doc .= $name; else $this->doc .= '<'.$address.'>'; } } - function internalmedia($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null){ - if ($this->capture && $title) $this->doc .= '['.$title.']'; + function internalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null) { + if($this->capture && $title) $this->doc .= '['.$title.']'; $this->_firstimage($src); $this->_recordMediaUsage($src); } - function externalmedia($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null){ - if ($this->capture && $title) $this->doc .= '['.$title.']'; + function externalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null) { + if($this->capture && $title) $this->doc .= '['.$title.']'; $this->_firstimage($src); } - function rss($url,$params) { + function rss($url, $params) { $this->meta['relation']['haspart'][$url] = true; $this->meta['date']['valid']['age'] = - isset($this->meta['date']['valid']['age']) ? - min($this->meta['date']['valid']['age'],$params['refresh']) : - $params['refresh']; + isset($this->meta['date']['valid']['age']) ? + min($this->meta['date']['valid']['age'], $params['refresh']) : + $params['refresh']; } //---------------------------------------------------------- @@ -392,19 +398,19 @@ class Doku_Renderer_metadata extends Doku_Renderer { * * @author Andreas Gohr */ - function _simpleTitle($name){ + function _simpleTitle($name) { global $conf; if(is_array($name)) return ''; - if($conf['useslash']){ + if($conf['useslash']) { $nssep = '[:;/]'; - }else{ + } else { $nssep = '[:;]'; } - $name = preg_replace('!.*'.$nssep.'!','',$name); + $name = preg_replace('!.*'.$nssep.'!', '', $name); //if there is a hash we use the anchor name only - $name = preg_replace('!.*#!','',$name); + $name = preg_replace('!.*#!', '', $name); return $name; } @@ -415,12 +421,12 @@ class Doku_Renderer_metadata extends Doku_Renderer { * @param boolean $create Create a new unique ID? * @author Andreas Gohr */ - function _headerToLink($title, $create=false) { - if($create){ - return sectionID($title,$this->headers); - }else{ + function _headerToLink($title, $create = false) { + if($create) { + return sectionID($title, $this->headers); + } else { $check = false; - return sectionID($title,$check); + return sectionID($title, $check); } } @@ -429,16 +435,16 @@ class Doku_Renderer_metadata extends Doku_Renderer { * * @author Harry Fuecks */ - function _getLinkTitle($title, $default, $id=null) { + function _getLinkTitle($title, $default, $id = null) { global $conf; $isImage = false; - if (is_array($title)){ + if(is_array($title)) { if($title['title']) return '['.$title['title'].']'; - } else if (is_null($title) || trim($title)==''){ - if (useHeading('content') && $id){ - $heading = p_get_first_heading($id,METADATA_DONT_RENDER); - if ($heading) return $heading; + } else if(is_null($title) || trim($title) == '') { + if(useHeading('content') && $id) { + $heading = p_get_first_heading($id, METADATA_DONT_RENDER); + if($heading) return $heading; } return $default; } else { @@ -446,15 +452,15 @@ class Doku_Renderer_metadata extends Doku_Renderer { } } - function _firstimage($src){ + function _firstimage($src) { if($this->firstimage) return; global $ID; - list($src,$hash) = explode('#',$src,2); - if(!media_isexternal($src)){ - resolve_mediaid(getNS($ID),$src, $exists); + list($src, $hash) = explode('#', $src, 2); + if(!media_isexternal($src)) { + resolve_mediaid(getNS($ID), $src, $exists); } - if(preg_match('/.(jpe?g|gif|png)$/i',$src)){ + if(preg_match('/.(jpe?g|gif|png)$/i', $src)) { $this->firstimage = $src; } } @@ -463,7 +469,7 @@ class Doku_Renderer_metadata extends Doku_Renderer { global $ID; list ($src, $hash) = explode('#', $src, 2); - if (media_isexternal($src)) return; + if(media_isexternal($src)) return; resolve_mediaid(getNS($ID), $src, $exists); $this->meta['relation']['media'][$src] = $exists; } -- cgit v1.2.3 From cfa2b40e6bb053ff32af7199e4177fbbb92b0a57 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 24 May 2014 14:00:43 +0200 Subject: added doc blocks to all functions in renderer --- inc/parser/renderer.php | 492 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 447 insertions(+), 45 deletions(-) diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index 71eeda952..a486ed106 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -13,52 +13,79 @@ if(!defined('DOKU_INC')) die('meh.'); * Inherits from DokuWiki_Plugin for giving additional functions to render plugins */ class Doku_Renderer extends DokuWiki_Plugin { - var $info = array( + /** @var array Settings, control the behavior of the renderer */ + public $info = array( 'cache' => true, // may the rendered result cached? 'toc' => true, // render the TOC? ); - var $doc = ''; + /** @var array contains the smiley configuration, set in p_render() */ + public $smileys = array(); + /** @var array contains the entity configuration, set in p_render() */ + public $entities = array(); + /** @var array contains the acronym configuration, set in p_render() */ + public $acronyms = array(); + /** @var array contains the interwiki configuration, set in p_render() */ + public $interwiki = array(); - // keep some config options - var $acronyms = array(); - var $smileys = array(); - var $badwords = array(); - var $entities = array(); - var $interwiki = array(); + /** + * @var string the rendered document, this will be cached after the renderer ran through + */ + public $doc = ''; - // allows renderer to be used again, clean out any per-use values + /** + * clean out any per-use values + * + * This is called before each use of the renderer object and should be used to + * completely reset the state of the renderer to be reused for a new document + */ function reset() { } - function nocache() { - $this->info['cache'] = false; - } - - function notoc() { - $this->info['toc'] = false; + /** + * Allow the plugin to prevent DokuWiki from reusing an instance + * + * Since most renderer plugins fail to implement Doku_Renderer::reset() we default + * to reinstantiating the renderer here + * + * @return bool false if the plugin has to be instantiated + */ + function isSingleton() { + return false; } /** * Returns the format produced by this renderer. * - * Has to be overidden by decendend classes + * Has to be overidden by sub classes + * + * @return string */ function getFormat() { trigger_error('getFormat() not implemented in '.get_class($this), E_USER_WARNING); + return ''; } /** - * Allow the plugin to prevent DokuWiki from reusing an instance + * Disable caching of this renderer's output + */ + function nocache() { + $this->info['cache'] = false; + } + + /** + * Disable TOC generation for this renderer's output * - * @return bool false if the plugin has to be instantiated + * This might not be used for certain sub renderer */ - function isSingleton() { - return false; + function notoc() { + $this->info['toc'] = false; } /** - * handle plugin rendering + * Handle plugin rendering + * + * Most likely this needs NOT to be overwritten by sub classes * * @param string $name Plugin name * @param mixed $data custom data set by handler @@ -66,6 +93,7 @@ class Doku_Renderer extends DokuWiki_Plugin { * @param string $match raw matched syntax */ function plugin($name, $data, $state = '', $match = '') { + /** @var DokuWiki_Syntax_Plugin $plugin */ $plugin = plugin_load('syntax', $name); if($plugin != null) { $plugin->render($this->getFormat(), $this, $data); @@ -75,9 +103,10 @@ class Doku_Renderer extends DokuWiki_Plugin { /** * handle nested render instructions * this method (and nest_close method) should not be overloaded in actual renderer output classes + * + * @param array $instructions */ function nest($instructions) { - foreach($instructions as $instruction) { // execute the callback against ourself if(method_exists($this, $instruction[0])) { @@ -86,267 +115,638 @@ class Doku_Renderer extends DokuWiki_Plugin { } } - // dummy closing instruction issued by Doku_Handler_Nest, normally the syntax mode should - // override this instruction when instantiating Doku_Handler_Nest - however plugins will not - // be able to - as their instructions require data. + /** + * dummy closing instruction issued by Doku_Handler_Nest + * + * normally the syntax mode should override this instruction when instantiating Doku_Handler_Nest - + * however plugins will not be able to - as their instructions require data. + */ function nest_close() { } + #region Syntax modes - sub classes will need to implement them to fill $doc + + /** + * Initialize the document + */ function document_start() { } + /** + * Finalize the document + */ function document_end() { } + /** + * Render the Table of Contents + * + * @return string + */ function render_TOC() { return ''; } + /** + * Add an item to the TOC + * + * @param string $id the hash link + * @param string $text the text to display + * @param int $level the nesting level + */ function toc_additem($id, $text, $level) { } + /** + * Render a heading + * + * @param string $text the text to display + * @param int $level header level + * @param int $pos byte position in the original source + */ function header($text, $level, $pos) { } + /** + * Open a new section + * + * @param int $level section level (as determined by the previous header) + */ function section_open($level) { } + /** + * Close the current section + */ function section_close() { } + /** + * Render plain text data + * + * @param $text + */ function cdata($text) { } + /** + * Open a paragraph + */ function p_open() { } + /** + * Close a paragraph + */ function p_close() { } + /** + * Create a line breake + */ function linebreak() { } + /** + * Create a horizontal line + */ function hr() { } + /** + * Start strong (bold) formatting + */ function strong_open() { } + /** + * Stop strong (bold) formatting + */ function strong_close() { } + /** + * Start emphasis (italics) formatting + */ function emphasis_open() { } + /** + * Stop emphasis (italics) formatting + */ function emphasis_close() { } + /** + * Start underline formatting + */ function underline_open() { } + /** + * Stop underline formatting + */ function underline_close() { } + /** + * Start monospace formatting + */ function monospace_open() { } + /** + * Stop monospace formatting + */ function monospace_close() { } + /** + * Start a subscript + */ function subscript_open() { } + /** + * Stop a subscript + */ function subscript_close() { } + /** + * Start a superscript + */ function superscript_open() { } + /** + * Stop a superscript + */ function superscript_close() { } + /** + * Start deleted (strike-through) formatting + */ function deleted_open() { } + /** + * Stop deleted (strike-through) formatting + */ function deleted_close() { } + /** + * Start a footnote + */ function footnote_open() { } + /** + * Stop a footnote + */ function footnote_close() { } + /** + * Open an unordered list + */ function listu_open() { } + /** + * Close an unordered list + */ function listu_close() { } + /** + * Open an ordered list + */ function listo_open() { } + /** + * Close an ordered list + */ function listo_close() { } + /** + * Open a list item + * + * @param int $level the nesting level + */ function listitem_open($level) { } + /** + * Close a list item + */ function listitem_close() { } + /** + * Start the content of a list item + */ function listcontent_open() { } + /** + * Stop the content of a list item + */ function listcontent_close() { } + /** + * Output unformatted $text + * + * Defaults to $this->cdata() + * + * @param string $text + */ function unformatted($text) { + $this->cdata($text); } + /** + * Output inline PHP code + * + * If $conf['phpok'] is true this should evaluate the given code and append the result + * to $doc + * + * @param string $text The PHP code + */ function php($text) { } + /** + * Output block level PHP code + * + * If $conf['phpok'] is true this should evaluate the given code and append the result + * to $doc + * + * @param string $text The PHP code + */ function phpblock($text) { } + /** + * Output raw inline HTML + * + * If $conf['htmlok'] is true this should add the code as is to $doc + * + * @param string $text The HTML + */ function html($text) { } + /** + * Output raw block-level HTML + * + * If $conf['htmlok'] is true this should add the code as is to $doc + * + * @param string $text The HTML + */ function htmlblock($text) { } + /** + * Output preformatted text + * + * @param string $text + */ function preformatted($text) { } + /** + * Start a block quote + */ function quote_open() { } + /** + * Stop a block quote + */ function quote_close() { } + /** + * Display text as file content, optionally syntax highlighted + * + * @param string $text text to show + * @param string $lang programming language to use for syntax highlighting + * @param string $file file path label + */ function file($text, $lang = null, $file = null) { } + /** + * Display text as code content, optionally syntax highlighted + * + * @param string $text text to show + * @param string $lang programming language to use for syntax highlighting + * @param string $file file path label + */ function code($text, $lang = null, $file = null) { } + /** + * Format an acronym + * + * Uses $this->acronyms + * + * @param string $acronym + */ function acronym($acronym) { } + /** + * Format a smiley + * + * Uses $this->smiley + * + * @param string $smiley + */ function smiley($smiley) { } - function wordblock($word) { - } - + /** + * Format an entity + * + * Entities are basically small text replacements + * + * Uses $this->entities + * + * @param string $entity + */ function entity($entity) { } - // 640x480 ($x=640, $y=480) + /** + * Typographically format a multiply sign + * + * Example: ($x=640, $y=480) should result in "640×480" + * + * @param string|int $x first value + * @param string|int $y second value + */ function multiplyentity($x, $y) { } + /** + * Render an opening single quote char (language specific) + */ function singlequoteopening() { } + /** + * Render a closing single quote char (language specific) + */ function singlequoteclosing() { } + /** + * Render an apostrophe char (language specific) + */ function apostrophe() { } + /** + * Render an opening double quote char (language specific) + */ function doublequoteopening() { } + /** + * Render an closinging double quote char (language specific) + */ function doublequoteclosing() { } - // $link like 'SomePage' + /** + * Render a CamelCase link + * + * @param string $link The link name + * @see http://en.wikipedia.org/wiki/CamelCase + */ function camelcaselink($link) { } + /** + * Render a page local link + * + * @param string $hash hash link identifier + * @param string $name name for the link + */ function locallink($hash, $name = null) { } - // $link like 'wiki:syntax', $title could be an array (media) + /** + * Render a wiki internal link + * + * @param string $link page ID to link to. eg. 'wiki:syntax' + * @param string|array $title name for the link, array for media file + */ function internallink($link, $title = null) { } - // $link is full URL with scheme, $title could be an array (media) + /** + * Render an external link + * + * @param string $link full URL with scheme + * @param string|array $title name for the link, array for media file + */ function externallink($link, $title = null) { } + /** + * Render the output of an RSS feed + * + * @param string $url URL of the feed + * @param array $params Finetuning of the output + */ function rss($url, $params) { } - // $link is the original link - probably not much use - // $wikiName is an indentifier for the wiki - // $wikiUri is the URL fragment to append to some known URL + /** + * Render an interwiki link + * + * You may want to use $this->_resolveInterWiki() here + * + * @param string $link original link - probably not much use + * @param string|array $title name for the link, array for media file + * @param string $wikiName indentifier (shortcut) for the remote wiki + * @param string $wikiUri the fragment parsed from the original link + */ function interwikilink($link, $title = null, $wikiName, $wikiUri) { } - // Link to file on users OS, $title could be an array (media) + /** + * Link to file on users OS + * + * @param string $link the link + * @param string|array $title name for the link, array for media file + */ function filelink($link, $title = null) { } - // Link to a Windows share, , $title could be an array (media) + /** + * Link to windows share + * + * @param string $link the link + * @param string|array $title name for the link, array for media file + */ function windowssharelink($link, $title = null) { } -// function email($address, $title = null) {} + /** + * Render a linked E-Mail Address + * + * Should honor $conf['mailguard'] setting + * + * @param string $address Email-Address + * @param string $name Display name + */ function emaillink($address, $name = null) { } + /** + * Render an internal media file + * + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param string $linking linkonly|detail|nolink + */ function internalmedia($src, $title = null, $align = null, $width = null, $height = null, $cache = null, $linking = null) { } + /** + * Render an external media file + * + * @param string $src full media URL + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param string $linking linkonly|detail|nolink + */ function externalmedia($src, $title = null, $align = null, $width = null, $height = null, $cache = null, $linking = null) { } - function internalmedialink( - $src, $title = null, $align = null, $width = null, $height = null, $cache = null - ) { + /** + * Render a link to an internal media file + * + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + */ + function internalmedialink($src, $title = null, $align = null, + $width = null, $height = null, $cache = null) { } - function externalmedialink( - $src, $title = null, $align = null, $width = null, $height = null, $cache = null - ) { + /** + * Render a link to an external media file + * + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + */ + function externalmedialink($src, $title = null, $align = null, + $width = null, $height = null, $cache = null) { } + /** + * Start a table + * + * @param int $maxcols maximum number of columns + * @param int $numrows NOT IMPLEMENTED + * @param int $pos byte position in the original source + */ function table_open($maxcols = null, $numrows = null, $pos = null) { } + /** + * Close a table + * + * @param int $pos byte position in the original source + */ function table_close($pos = null) { } + /** + * Open a table header + */ function tablethead_open() { } + /** + * Close a table header + */ function tablethead_close() { } + /** + * Open a table row + */ function tablerow_open() { } + /** + * Close a table row + */ function tablerow_close() { } + /** + * Open a table header cell + * + * @param int $colspan + * @param string $align left|center|right + * @param int $rowspan + */ function tableheader_open($colspan = 1, $align = null, $rowspan = 1) { } + /** + * Close a table header cell + */ function tableheader_close() { } + /** + * Open a table cell + * + * @param int $colspan + * @param string $align left|center|right + * @param int $rowspan + */ function tablecell_open($colspan = 1, $align = null, $rowspan = 1) { } + /** + * Close a table cell + */ function tablecell_close() { } - // util functions follow, you probably won't need to reimplement them + #endregion + + #region util functions, you probably won't need to reimplement them /** * Removes any Namespace from the given name but keeps @@ -412,6 +812,8 @@ class Doku_Renderer extends DokuWiki_Plugin { return $url; } + + #endregion } -- cgit v1.2.3 From 3dd5c2254a659d7d66017f016e3e0d3d89f479c6 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 24 May 2014 15:17:26 +0200 Subject: added doc blocks for xhtml renderer --- inc/parser/renderer.php | 4 +- inc/parser/xhtml.php | 1040 +++++++++++++++++++++++++++++++---------------- 2 files changed, 696 insertions(+), 348 deletions(-) diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php index a486ed106..5eddc903e 100644 --- a/inc/parser/renderer.php +++ b/inc/parser/renderer.php @@ -202,7 +202,7 @@ class Doku_Renderer extends DokuWiki_Plugin { } /** - * Create a line breake + * Create a line break */ function linebreak() { } @@ -607,7 +607,7 @@ class Doku_Renderer extends DokuWiki_Plugin { * Should honor $conf['mailguard'] setting * * @param string $address Email-Address - * @param string $name Display name + * @param string|array $name name for the link, array for media file */ function emaillink($address, $name = null) { } diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php index e4afb9eb8..5c0353688 100644 --- a/inc/parser/xhtml.php +++ b/inc/parser/xhtml.php @@ -7,37 +7,53 @@ */ if(!defined('DOKU_INC')) die('meh.'); -if ( !defined('DOKU_LF') ) { +if(!defined('DOKU_LF')) { // Some whitespace to help View > Source - define ('DOKU_LF',"\n"); + define ('DOKU_LF', "\n"); } -if ( !defined('DOKU_TAB') ) { +if(!defined('DOKU_TAB')) { // Some whitespace to help View > Source - define ('DOKU_TAB',"\t"); + define ('DOKU_TAB', "\t"); } /** - * The Renderer + * The XHTML Renderer + * + * This is DokuWiki's main renderer used to display page content in the wiki */ class Doku_Renderer_xhtml extends Doku_Renderer { + /** @var array store the table of contents */ + public $toc = array(); + + /** @var array A stack of section edit data */ + protected $sectionedits = array(); - // @access public - var $doc = ''; // will contain the whole document - var $toc = array(); // will contain the Table of Contents + /** @var int last section edit id, used by startSectionEdit */ + protected $lastsecid = 0; - var $sectionedits = array(); // A stack of section edit data - private $lastsecid = 0; // last section edit id, used by startSectionEdit + /** @var array the list of headers used to create unique link ids */ + protected $headers = array(); - var $headers = array(); /** @var array a list of footnotes, list starts at 1! */ - var $footnotes = array(); - var $lastlevel = 0; - var $node = array(0,0,0,0,0); - var $store = ''; + protected $footnotes = array(); + + /** @var int current section level */ + protected $lastlevel = 0; + /** @var array section node tracker */ + protected $node = array(0, 0, 0, 0, 0); + + /** @var string temporary $doc store */ + protected $store = ''; - var $_counter = array(); // used as global counter, introduced for table classes - var $_codeblock = 0; // counts the code and file blocks, used to provide download links + /** @var array global counter, for table classes etc. */ + protected $_counter = array(); // + + /** @var int counts the code and file blocks, used to provide download links */ + protected $_codeblock = 0; + + /** @var array list of allowed URL schemes */ + protected $schemes = null; /** * Register a new edit section range @@ -50,43 +66,53 @@ class Doku_Renderer_xhtml extends Doku_Renderer { */ public function startSectionEdit($start, $type, $title = null) { $this->sectionedits[] = array(++$this->lastsecid, $start, $type, $title); - return 'sectionedit' . $this->lastsecid; + return 'sectionedit'.$this->lastsecid; } /** * Finish an edit section range * - * @param $end int The byte position for the edit end; null for the rest of + * @param $end int The byte position for the edit end; null for the rest of * the page * @author Adrian Lang */ public function finishSectionEdit($end = null) { list($id, $start, $type, $title) = array_pop($this->sectionedits); - if (!is_null($end) && $end <= $start) { + if(!is_null($end) && $end <= $start) { return; } - $this->doc .= "'; + $this->doc .= "[$start-".(is_null($end) ? '' : $end).'] -->'; } - function getFormat(){ + /** + * Returns the format produced by this renderer. + * + * @return string always 'xhtml' + */ + function getFormat() { return 'xhtml'; } - + /** + * Initialize the document + */ function document_start() { //reset some internals $this->toc = array(); $this->headers = array(); } + /** + * Finalize the document + */ function document_end() { // Finish open section edits. - while (count($this->sectionedits) > 0) { - if ($this->sectionedits[count($this->sectionedits) - 1][1] <= 1) { + while(count($this->sectionedits) > 0) { + if($this->sectionedits[count($this->sectionedits) - 1][1] <= 1) { // If there is only one section, do not write a section edit // marker. array_pop($this->sectionedits); @@ -95,12 +121,12 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } } - if ( count ($this->footnotes) > 0 ) { + if(count($this->footnotes) > 0) { $this->doc .= '
'.DOKU_LF; - foreach ( $this->footnotes as $id => $footnote ) { + foreach($this->footnotes as $id => $footnote) { // check its not a placeholder that indicates actual footnote text is elsewhere - if (substr($footnote, 0, 5) != "@@FNT") { + if(substr($footnote, 0, 5) != "@@FNT") { // open the footnote and set the anchor and backlink $this->doc .= '
'; @@ -110,8 +136,8 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // get any other footnotes that use the same markup $alt = array_keys($this->footnotes, "@@FNT$id"); - if (count($alt)) { - foreach ($alt as $ref) { + if(count($alt)) { + foreach($alt as $ref) { // set anchor and backlink for the other footnotes $this->doc .= ', '; $this->doc .= ($ref).') '.DOKU_LF; @@ -120,7 +146,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // add footnote markup and close this footnote $this->doc .= $footnote; - $this->doc .= '
' . DOKU_LF; + $this->doc .= '
'.DOKU_LF; } } $this->doc .= ''.DOKU_LF; @@ -128,139 +154,221 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // Prepare the TOC global $conf; - if($this->info['toc'] && is_array($this->toc) && $conf['tocminheads'] && count($this->toc) >= $conf['tocminheads']){ + if($this->info['toc'] && is_array($this->toc) && $conf['tocminheads'] && count($this->toc) >= $conf['tocminheads']) { global $TOC; $TOC = $this->toc; } // make sure there are no empty paragraphs - $this->doc = preg_replace('#

\s*

#','',$this->doc); + $this->doc = preg_replace('#

\s*

#', '', $this->doc); } + /** + * Add an item to the TOC + * + * @param string $id the hash link + * @param string $text the text to display + * @param int $level the nesting level + */ function toc_additem($id, $text, $level) { global $conf; //handle TOC - if($level >= $conf['toptoclevel'] && $level <= $conf['maxtoclevel']){ - $this->toc[] = html_mktocitem($id, $text, $level-$conf['toptoclevel']+1); + if($level >= $conf['toptoclevel'] && $level <= $conf['maxtoclevel']) { + $this->toc[] = html_mktocitem($id, $text, $level - $conf['toptoclevel'] + 1); } } + /** + * Render a heading + * + * @param string $text the text to display + * @param int $level header level + * @param int $pos byte position in the original source + */ function header($text, $level, $pos) { global $conf; if(!$text) return; //skip empty headlines - $hid = $this->_headerToLink($text,true); + $hid = $this->_headerToLink($text, true); //only add items within configured levels $this->toc_additem($hid, $text, $level); // adjust $node to reflect hierarchy of levels - $this->node[$level-1]++; - if ($level < $this->lastlevel) { - for ($i = 0; $i < $this->lastlevel-$level; $i++) { - $this->node[$this->lastlevel-$i-1] = 0; + $this->node[$level - 1]++; + if($level < $this->lastlevel) { + for($i = 0; $i < $this->lastlevel - $level; $i++) { + $this->node[$this->lastlevel - $i - 1] = 0; } } $this->lastlevel = $level; - if ($level <= $conf['maxseclevel'] && + if($level <= $conf['maxseclevel'] && count($this->sectionedits) > 0 && - $this->sectionedits[count($this->sectionedits) - 1][2] === 'section') { + $this->sectionedits[count($this->sectionedits) - 1][2] === 'section' + ) { $this->finishSectionEdit($pos - 1); } // write the header $this->doc .= DOKU_LF.'doc .= ' class="' . $this->startSectionEdit($pos, 'section', $text) . '"'; + if($level <= $conf['maxseclevel']) { + $this->doc .= ' class="'.$this->startSectionEdit($pos, 'section', $text).'"'; } $this->doc .= ' id="'.$hid.'">'; $this->doc .= $this->_xmlEntities($text); $this->doc .= "".DOKU_LF; } + /** + * Open a new section + * + * @param int $level section level (as determined by the previous header) + */ function section_open($level) { - $this->doc .= '
' . DOKU_LF; + $this->doc .= '
'.DOKU_LF; } + /** + * Close the current section + */ function section_close() { $this->doc .= DOKU_LF.'
'.DOKU_LF; } + /** + * Render plain text data + * + * @param $text + */ function cdata($text) { $this->doc .= $this->_xmlEntities($text); } + /** + * Open a paragraph + */ function p_open() { $this->doc .= DOKU_LF.'

'.DOKU_LF; } + /** + * Close a paragraph + */ function p_close() { $this->doc .= DOKU_LF.'

'.DOKU_LF; } + /** + * Create a line break + */ function linebreak() { $this->doc .= '
'.DOKU_LF; } + /** + * Create a horizontal line + */ function hr() { $this->doc .= '
'.DOKU_LF; } + /** + * Start strong (bold) formatting + */ function strong_open() { $this->doc .= ''; } + /** + * Stop strong (bold) formatting + */ function strong_close() { $this->doc .= ''; } + /** + * Start emphasis (italics) formatting + */ function emphasis_open() { $this->doc .= ''; } + /** + * Stop emphasis (italics) formatting + */ function emphasis_close() { $this->doc .= ''; } + /** + * Start underline formatting + */ function underline_open() { $this->doc .= ''; } + /** + * Stop underline formatting + */ function underline_close() { $this->doc .= ''; } + /** + * Start monospace formatting + */ function monospace_open() { $this->doc .= ''; } + /** + * Stop monospace formatting + */ function monospace_close() { $this->doc .= ''; } + /** + * Start a subscript + */ function subscript_open() { $this->doc .= ''; } + /** + * Stop a subscript + */ function subscript_close() { $this->doc .= ''; } + /** + * Start a superscript + */ function superscript_open() { $this->doc .= ''; } + /** + * Stop a superscript + */ function superscript_close() { $this->doc .= ''; } + /** + * Start deleted (strike-through) formatting + */ function deleted_open() { $this->doc .= ''; } + /** + * Stop deleted (strike-through) formatting + */ function deleted_close() { $this->doc .= ''; } @@ -296,14 +404,14 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $fnid++; // recover footnote into the stack and restore old content - $footnote = $this->doc; - $this->doc = $this->store; + $footnote = $this->doc; + $this->doc = $this->store; $this->store = ''; // check to see if this footnote has been seen before $i = array_search($footnote, $this->footnotes); - if ($i === false) { + if($i === false) { // its a new footnote, add it to the $footnotes array $this->footnotes[$fnid] = $footnote; } else { @@ -315,38 +423,71 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= ''.$fnid.')'; } + /** + * Open an unordered list + */ function listu_open() { $this->doc .= '
    '.DOKU_LF; } + /** + * Close an unordered list + */ function listu_close() { $this->doc .= '
'.DOKU_LF; } + /** + * Open an ordered list + */ function listo_open() { $this->doc .= '
    '.DOKU_LF; } + /** + * Close an ordered list + */ function listo_close() { $this->doc .= '
'.DOKU_LF; } + /** + * Open a list item + * + * @param int $level the nesting level + */ function listitem_open($level) { $this->doc .= '
  • '; } + /** + * Close a list item + */ function listitem_close() { $this->doc .= '
  • '.DOKU_LF; } + /** + * Start the content of a list item + */ function listcontent_open() { $this->doc .= '
    '; } + /** + * Stop the content of a list item + */ function listcontent_close() { $this->doc .= '
    '.DOKU_LF; } + /** + * Output unformatted $text + * + * Defaults to $this->cdata() + * + * @param string $text + */ function unformatted($text) { $this->doc .= $this->_xmlEntities($text); } @@ -354,15 +495,15 @@ class Doku_Renderer_xhtml extends Doku_Renderer { /** * Execute PHP code if allowed * - * @param string $text PHP code that is either executed or printed - * @param string $wrapper html element to wrap result if $conf['phpok'] is okff + * @param string $text PHP code that is either executed or printed + * @param string $wrapper html element to wrap result if $conf['phpok'] is okff * * @author Andreas Gohr */ - function php($text, $wrapper='code') { + function php($text, $wrapper = 'code') { global $conf; - if($conf['phpok']){ + if($conf['phpok']) { ob_start(); eval($text); $this->doc .= ob_get_contents(); @@ -372,6 +513,14 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } } + /** + * Output block level PHP code + * + * If $conf['phpok'] is true this should evaluate the given code and append the result + * to $doc + * + * @param string $text The PHP code + */ function phpblock($text) { $this->php($text, 'pre'); } @@ -379,75 +528,110 @@ class Doku_Renderer_xhtml extends Doku_Renderer { /** * Insert HTML if allowed * - * @param string $text html text - * @param string $wrapper html element to wrap result if $conf['htmlok'] is okff + * @param string $text html text + * @param string $wrapper html element to wrap result if $conf['htmlok'] is okff * * @author Andreas Gohr */ - function html($text, $wrapper='code') { + function html($text, $wrapper = 'code') { global $conf; - if($conf['htmlok']){ + if($conf['htmlok']) { $this->doc .= $text; } else { $this->doc .= p_xhtml_cached_geshi($text, 'html4strict', $wrapper); } } + /** + * Output raw block-level HTML + * + * If $conf['htmlok'] is true this should add the code as is to $doc + * + * @param string $text The HTML + */ function htmlblock($text) { $this->html($text, 'pre'); } + /** + * Start a block quote + */ function quote_open() { $this->doc .= '
    '.DOKU_LF; } + /** + * Stop a block quote + */ function quote_close() { $this->doc .= '
    '.DOKU_LF; } + /** + * Output preformatted text + * + * @param string $text + */ function preformatted($text) { - $this->doc .= '
    ' . trim($this->_xmlEntities($text),"\n\r") . '
    '. DOKU_LF; + $this->doc .= '
    '.trim($this->_xmlEntities($text), "\n\r").'
    '.DOKU_LF; } - function file($text, $language=null, $filename=null) { - $this->_highlight('file',$text,$language,$filename); + /** + * Display text as file content, optionally syntax highlighted + * + * @param string $text text to show + * @param string $language programming language to use for syntax highlighting + * @param string $filename file path label + */ + function file($text, $language = null, $filename = null) { + $this->_highlight('file', $text, $language, $filename); } - function code($text, $language=null, $filename=null) { - $this->_highlight('code',$text,$language,$filename); + /** + * Display text as code content, optionally syntax highlighted + * + * @param string $text text to show + * @param string $language programming language to use for syntax highlighting + * @param string $filename file path label + */ + function code($text, $language = null, $filename = null) { + $this->_highlight('code', $text, $language, $filename); } /** * Use GeSHi to highlight language syntax in code and file blocks * * @author Andreas Gohr + * @param string $type code|file + * @param string $text text to show + * @param string $language programming language to use for syntax highlighting + * @param string $filename file path label */ - function _highlight($type, $text, $language=null, $filename=null) { - global $conf; + function _highlight($type, $text, $language = null, $filename = null) { global $ID; global $lang; - if($filename){ + if($filename) { // add icon - list($ext) = mimetype($filename,false); - $class = preg_replace('/[^_\-a-z0-9]+/i','_',$ext); + list($ext) = mimetype($filename, false); + $class = preg_replace('/[^_\-a-z0-9]+/i', '_', $ext); $class = 'mediafile mf_'.$class; $this->doc .= '
    '.DOKU_LF; - $this->doc .= '
    '; + $this->doc .= '
    '; $this->doc .= hsc($filename); $this->doc .= '
    '.DOKU_LF.'
    '; } - if ($text{0} == "\n") { + if($text{0} == "\n") { $text = substr($text, 1); } - if (substr($text, -1) == "\n") { + if(substr($text, -1) == "\n") { $text = substr($text, 0, -1); } - if ( is_null($language) ) { + if(is_null($language)) { $this->doc .= '
    '.$this->_xmlEntities($text).'
    '.DOKU_LF; } else { $class = 'code'; //we always need the code class to make the syntax highlighting apply @@ -456,16 +640,23 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= "
    ".p_xhtml_cached_geshi($text, $language, '').'
    '.DOKU_LF; } - if($filename){ + if($filename) { $this->doc .= '
    '.DOKU_LF; } $this->_codeblock++; } + /** + * Format an acronym + * + * Uses $this->acronyms + * + * @param string $acronym + */ function acronym($acronym) { - if ( array_key_exists($acronym, $this->acronyms) ) { + if(array_key_exists($acronym, $this->acronyms)) { $title = $this->_xmlEntities($this->acronyms[$acronym]); @@ -477,73 +668,109 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } } + /** + * Format a smiley + * + * Uses $this->smiley + * + * @param string $smiley + */ function smiley($smiley) { - if ( array_key_exists($smiley, $this->smileys) ) { - $title = $this->_xmlEntities($this->smileys[$smiley]); + if(array_key_exists($smiley, $this->smileys)) { $this->doc .= ''.
-                    $this->_xmlEntities($smiley).''; + $this->_xmlEntities($smiley).'" />'; } else { $this->doc .= $this->_xmlEntities($smiley); } } - /* - * not used - function wordblock($word) { - if ( array_key_exists($word, $this->badwords) ) { - $this->doc .= '** BLEEP **'; - } else { - $this->doc .= $this->_xmlEntities($word); - } - } - */ - + /** + * Format an entity + * + * Entities are basically small text replacements + * + * Uses $this->entities + * + * @param string $entity + */ function entity($entity) { - if ( array_key_exists($entity, $this->entities) ) { + if(array_key_exists($entity, $this->entities)) { $this->doc .= $this->entities[$entity]; } else { $this->doc .= $this->_xmlEntities($entity); } } + /** + * Typographically format a multiply sign + * + * Example: ($x=640, $y=480) should result in "640×480" + * + * @param string|int $x first value + * @param string|int $y second value + */ function multiplyentity($x, $y) { $this->doc .= "$x×$y"; } + /** + * Render an opening single quote char (language specific) + */ function singlequoteopening() { global $lang; $this->doc .= $lang['singlequoteopening']; } + /** + * Render a closing single quote char (language specific) + */ function singlequoteclosing() { global $lang; $this->doc .= $lang['singlequoteclosing']; } + /** + * Render an apostrophe char (language specific) + */ function apostrophe() { global $lang; $this->doc .= $lang['apostrophe']; } + /** + * Render an opening double quote char (language specific) + */ function doublequoteopening() { global $lang; $this->doc .= $lang['doublequoteopening']; } + /** + * Render an closinging double quote char (language specific) + */ function doublequoteclosing() { global $lang; $this->doc .= $lang['doublequoteclosing']; } /** + * Render a CamelCase link + * + * @param string $link The link name + * @see http://en.wikipedia.org/wiki/CamelCase */ function camelcaselink($link) { - $this->internallink($link,$link); + $this->internallink($link, $link); } - - function locallink($hash, $name = null){ + /** + * Render a page local link + * + * @param string $hash hash link identifier + * @param string $name name for the link + */ + function locallink($hash, $name = null) { global $ID; $name = $this->_getLinkTitle($name, $hash, $isImage); $hash = $this->_headerToLink($hash); @@ -559,23 +786,23 @@ class Doku_Renderer_xhtml extends Doku_Renderer { * $search,$returnonly & $linktype are not for the renderer but are used * elsewhere - no need to implement them in other renderers * - * @param string $id pageid - * @param string|null $name link name - * @param string|null $search adds search url param - * @param bool $returnonly whether to return html or write to doc attribute - * @param string $linktype type to set use of headings - * @return void|string writes to doc attribute or returns html depends on $returnonly * @author Andreas Gohr + * @param string $id pageid + * @param string|null $name link name + * @param string|null $search adds search url param + * @param bool $returnonly whether to return html or write to doc attribute + * @param string $linktype type to set use of headings + * @return void|string writes to doc attribute or returns html depends on $returnonly */ - function internallink($id, $name = null, $search=null,$returnonly=false,$linktype='content') { + function internallink($id, $name = null, $search = null, $returnonly = false, $linktype = 'content') { global $conf; global $ID; global $INFO; $params = ''; - $parts = explode('?', $id, 2); - if (count($parts) === 2) { - $id = $parts[0]; + $parts = explode('?', $id, 2); + if(count($parts) === 2) { + $id = $parts[0]; $params = $parts[1]; } @@ -583,7 +810,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // We need this check because _simpleTitle needs // correct $id and resolve_pageid() use cleanID($id) // (some things could be lost) - if ($id === '') { + if($id === '') { $id = $ID; } @@ -591,22 +818,22 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $default = $this->_simpleTitle($id); // now first resolve and clean up the $id - resolve_pageid(getNS($ID),$id,$exists); + resolve_pageid(getNS($ID), $id, $exists); $name = $this->_getLinkTitle($name, $default, $isImage, $id, $linktype); - if ( !$isImage ) { - if ( $exists ) { - $class='wikilink1'; + if(!$isImage) { + if($exists) { + $class = 'wikilink1'; } else { - $class='wikilink2'; - $link['rel']='nofollow'; + $class = 'wikilink2'; + $link['rel'] = 'nofollow'; } } else { - $class='media'; + $class = 'media'; } //keep hash anchor - @list($id,$hash) = explode('#',$id,2); + @list($id, $hash) = explode('#', $id, 2); if(!empty($hash)) $hash = $this->_headerToLink($hash); //prepare for formating @@ -615,37 +842,43 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $link['pre'] = ''; $link['suf'] = ''; // highlight link to current page - if ($id == $INFO['id']) { - $link['pre'] = ''; - $link['suf'] = ''; + if($id == $INFO['id']) { + $link['pre'] = ''; + $link['suf'] = ''; } - $link['more'] = ''; - $link['class'] = $class; - $link['url'] = wl($id, $params); - $link['name'] = $name; - $link['title'] = $id; + $link['more'] = ''; + $link['class'] = $class; + $link['url'] = wl($id, $params); + $link['name'] = $name; + $link['title'] = $id; //add search string - if($search){ - ($conf['userewrite']) ? $link['url'].='?' : $link['url'].='&'; - if(is_array($search)){ - $search = array_map('rawurlencode',$search); - $link['url'] .= 's[]='.join('&s[]=',$search); - }else{ + if($search) { + ($conf['userewrite']) ? $link['url'] .= '?' : $link['url'] .= '&'; + if(is_array($search)) { + $search = array_map('rawurlencode', $search); + $link['url'] .= 's[]='.join('&s[]=', $search); + } else { $link['url'] .= 's='.rawurlencode($search); } } //keep hash - if($hash) $link['url'].='#'.$hash; + if($hash) $link['url'] .= '#'.$hash; //output formatted - if($returnonly){ + if($returnonly) { return $this->_formatLink($link); - }else{ + } else { $this->doc .= $this->_formatLink($link); } } + /** + * Render an external link + * + * @param string $url full URL with scheme + * @param string|array $name name for the link, array for media file + */ function externallink($url, $name = null) { global $conf; @@ -653,21 +886,21 @@ class Doku_Renderer_xhtml extends Doku_Renderer { // url might be an attack vector, only allow registered protocols if(is_null($this->schemes)) $this->schemes = getSchemes(); - list($scheme) = explode('://',$url); + list($scheme) = explode('://', $url); $scheme = strtolower($scheme); - if(!in_array($scheme,$this->schemes)) $url = ''; + if(!in_array($scheme, $this->schemes)) $url = ''; // is there still an URL? - if(!$url){ + if(!$url) { $this->doc .= $name; return; } // set class - if ( !$isImage ) { - $class='urlextern'; + if(!$isImage) { + $class = 'urlextern'; } else { - $class='media'; + $class = 'media'; } //prepare for formating @@ -679,8 +912,8 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $link['class'] = $class; $link['url'] = $url; - $link['name'] = $name; - $link['title'] = $this->_xmlEntities($url); + $link['name'] = $name; + $link['title'] = $this->_xmlEntities($url); if($conf['relnofollow']) $link['more'] .= ' rel="nofollow"'; //output formatted @@ -688,11 +921,19 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } /** + * Render an interwiki link + * + * You may want to use $this->_resolveInterWiki() here + * + * @param string $match original link - probably not much use + * @param string|array $name name for the link, array for media file + * @param string $wikiName indentifier (shortcut) for the remote wiki + * @param string $wikiUri the fragment parsed from the original link */ function interwikilink($match, $name = null, $wikiName, $wikiUri) { global $conf; - $link = array(); + $link = array(); $link['target'] = $conf['target']['interwiki']; $link['pre'] = ''; $link['suf'] = ''; @@ -701,10 +942,10 @@ class Doku_Renderer_xhtml extends Doku_Renderer { //get interwiki URL $exists = null; - $url = $this->_resolveInterWiki($wikiName, $wikiUri, $exists); + $url = $this->_resolveInterWiki($wikiName, $wikiUri, $exists); if(!$isImage) { - $class = preg_replace('/[^_\-a-z0-9]+/i', '_', $wikiName); + $class = preg_replace('/[^_\-a-z0-9]+/i', '_', $wikiName); $link['class'] = "interwiki iw_$class"; } else { $link['class'] = 'media'; @@ -723,7 +964,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } } - $link['url'] = $url; + $link['url'] = $url; $link['title'] = htmlspecialchars($link['url']); //output formatted @@ -731,54 +972,66 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } /** + * Link to windows share + * + * @param string $url the link + * @param string|array $name name for the link, array for media file */ function windowssharelink($url, $name = null) { global $conf; - global $lang; + //simple setup $link['target'] = $conf['target']['windows']; $link['pre'] = ''; - $link['suf'] = ''; + $link['suf'] = ''; $link['style'] = ''; $link['name'] = $this->_getLinkTitle($name, $url, $isImage); - if ( !$isImage ) { + if(!$isImage) { $link['class'] = 'windows'; } else { $link['class'] = 'media'; } $link['title'] = $this->_xmlEntities($url); - $url = str_replace('\\','/',$url); - $url = 'file:///'.$url; - $link['url'] = $url; + $url = str_replace('\\', '/', $url); + $url = 'file:///'.$url; + $link['url'] = $url; //output formatted $this->doc .= $this->_formatLink($link); } + /** + * Render a linked E-Mail Address + * + * Honors $conf['mailguard'] setting + * + * @param string $address Email-Address + * @param string|array $name name for the link, array for media file + */ function emaillink($address, $name = null) { global $conf; //simple setup - $link = array(); + $link = array(); $link['target'] = ''; $link['pre'] = ''; - $link['suf'] = ''; + $link['suf'] = ''; $link['style'] = ''; $link['more'] = ''; $name = $this->_getLinkTitle($name, '', $isImage); - if ( !$isImage ) { - $link['class']='mail'; + if(!$isImage) { + $link['class'] = 'mail'; } else { - $link['class']='media'; + $link['class'] = 'media'; } $address = $this->_xmlEntities($address); $address = obfuscate($address); $title = $address; - if(empty($name)){ + if(empty($name)) { $name = $address; } @@ -792,73 +1045,97 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= $this->_formatLink($link); } - function internalmedia ($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null, $return=NULL) { + /** + * Render an internal media file + * + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param string $linking linkonly|detail|nolink + * @param bool $return return HTML instead of adding to $doc + * @return void|string + */ + function internalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null, $return = false) { global $ID; - list($src,$hash) = explode('#',$src,2); - resolve_mediaid(getNS($ID),$src, $exists); + list($src, $hash) = explode('#', $src, 2); + resolve_mediaid(getNS($ID), $src, $exists); $noLink = false; $render = ($linking == 'linkonly') ? false : true; - $link = $this->_getMediaLinkConf($src, $title, $align, $width, $height, $cache, $render); + $link = $this->_getMediaLinkConf($src, $title, $align, $width, $height, $cache, $render); - list($ext,$mime,$dl) = mimetype($src,false); - if(substr($mime,0,5) == 'image' && $render){ - $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),($linking=='direct')); - }elseif(($mime == 'application/x-shockwave-flash' || media_supportedav($mime)) && $render){ + list($ext, $mime) = mimetype($src, false); + if(substr($mime, 0, 5) == 'image' && $render) { + $link['url'] = ml($src, array('id' => $ID, 'cache' => $cache), ($linking == 'direct')); + } elseif(($mime == 'application/x-shockwave-flash' || media_supportedav($mime)) && $render) { // don't link movies $noLink = true; - }else{ + } else { // add file icons - $class = preg_replace('/[^_\-a-z0-9]+/i','_',$ext); + $class = preg_replace('/[^_\-a-z0-9]+/i', '_', $ext); $link['class'] .= ' mediafile mf_'.$class; - $link['url'] = ml($src,array('id'=>$ID,'cache'=>$cache),true); - if ($exists) $link['title'] .= ' (' . filesize_h(filesize(mediaFN($src))).')'; + $link['url'] = ml($src, array('id' => $ID, 'cache' => $cache), true); + if($exists) $link['title'] .= ' ('.filesize_h(filesize(mediaFN($src))).')'; } if($hash) $link['url'] .= '#'.$hash; //markup non existing files - if (!$exists) { + if(!$exists) { $link['class'] .= ' wikilink2'; } //output formatted - if ($return) { - if ($linking == 'nolink' || $noLink) return $link['name']; + if($return) { + if($linking == 'nolink' || $noLink) return $link['name']; else return $this->_formatLink($link); } else { - if ($linking == 'nolink' || $noLink) $this->doc .= $link['name']; + if($linking == 'nolink' || $noLink) $this->doc .= $link['name']; else $this->doc .= $this->_formatLink($link); } } - function externalmedia ($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $linking=null) { - list($src,$hash) = explode('#',$src,2); + /** + * Render an external media file + * + * @param string $src full media URL + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param string $linking linkonly|detail|nolink + */ + function externalmedia($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $linking = null) { + list($src, $hash) = explode('#', $src, 2); $noLink = false; $render = ($linking == 'linkonly') ? false : true; - $link = $this->_getMediaLinkConf($src, $title, $align, $width, $height, $cache, $render); + $link = $this->_getMediaLinkConf($src, $title, $align, $width, $height, $cache, $render); - $link['url'] = ml($src,array('cache'=>$cache)); + $link['url'] = ml($src, array('cache' => $cache)); - list($ext,$mime,$dl) = mimetype($src,false); - if(substr($mime,0,5) == 'image' && $render){ + list($ext, $mime) = mimetype($src, false); + if(substr($mime, 0, 5) == 'image' && $render) { // link only jpeg images // if ($ext != 'jpg' && $ext != 'jpeg') $noLink = true; - }elseif(($mime == 'application/x-shockwave-flash' || media_supportedav($mime)) && $render){ + } elseif(($mime == 'application/x-shockwave-flash' || media_supportedav($mime)) && $render) { // don't link movies $noLink = true; - }else{ + } else { // add file icons - $class = preg_replace('/[^_\-a-z0-9]+/i','_',$ext); + $class = preg_replace('/[^_\-a-z0-9]+/i', '_', $ext); $link['class'] .= ' mediafile mf_'.$class; } if($hash) $link['url'] .= '#'.$hash; //output formatted - if ($linking == 'nolink' || $noLink) $this->doc .= $link['name']; + if($linking == 'nolink' || $noLink) $this->doc .= $link['name']; else $this->doc .= $this->_formatLink($link); } @@ -867,7 +1144,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer { * * @author Andreas Gohr */ - function rss ($url,$params){ + function rss($url, $params) { global $lang; global $conf; @@ -876,17 +1153,21 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $feed->set_feed_url($url); //disable warning while fetching - if (!defined('DOKU_E_LEVEL')) { $elvl = error_reporting(E_ERROR); } + if(!defined('DOKU_E_LEVEL')) { + $elvl = error_reporting(E_ERROR); + } $rc = $feed->init(); - if (!defined('DOKU_E_LEVEL')) { error_reporting($elvl); } + if(isset($elvl)) { + error_reporting($elvl); + } //decide on start and end - if($params['reverse']){ - $mod = -1; - $start = $feed->get_item_quantity()-1; + if($params['reverse']) { + $mod = -1; + $start = $feed->get_item_quantity() - 1; $end = $start - ($params['max']); $end = ($end < -1) ? -1 : $end; - }else{ + } else { $mod = 1; $start = 0; $end = $feed->get_item_quantity(); @@ -894,36 +1175,38 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } $this->doc .= '
      '; - if($rc){ - for ($x = $start; $x != $end; $x += $mod) { + if($rc) { + for($x = $start; $x != $end; $x += $mod) { $item = $feed->get_item($x); $this->doc .= '
    • '; // support feeds without links $lnkurl = $item->get_permalink(); - if($lnkurl){ + if($lnkurl) { // title is escaped by SimplePie, we unescape here because it // is escaped again in externallink() FS#1705 - $this->externallink($item->get_permalink(), - html_entity_decode($item->get_title(), ENT_QUOTES, 'UTF-8')); - }else{ + $this->externallink( + $item->get_permalink(), + html_entity_decode($item->get_title(), ENT_QUOTES, 'UTF-8') + ); + } else { $this->doc .= ' '.$item->get_title(); } - if($params['author']){ + if($params['author']) { $author = $item->get_author(0); - if($author){ + if($author) { $name = $author->get_name(); if(!$name) $name = $author->get_email(); if($name) $this->doc .= ' '.$lang['by'].' '.$name; } } - if($params['date']){ + if($params['date']) { $this->doc .= ' ('.$item->get_local_date($conf['dformat']).')'; } - if($params['details']){ + if($params['details']) { $this->doc .= '
      '; - if($conf['htmlok']){ + if($conf['htmlok']) { $this->doc .= $item->get_description(); - }else{ + } else { $this->doc .= strip_tags($item->get_description()); } $this->doc .= '
      '; @@ -931,11 +1214,11 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= '
    • '; } - }else{ + } else { $this->doc .= '
    • '; $this->doc .= ''.$lang['rssfailed'].''; $this->externallink($url); - if($conf['allowdebug']){ + if($conf['allowdebug']) { $this->doc .= ''; } $this->doc .= '
    • '; @@ -943,89 +1226,130 @@ class Doku_Renderer_xhtml extends Doku_Renderer { $this->doc .= '
    '; } - // $numrows not yet implemented - function table_open($maxcols = null, $numrows = null, $pos = null){ - global $lang; + /** + * Start a table + * + * @param int $maxcols maximum number of columns + * @param int $numrows NOT IMPLEMENTED + * @param int $pos byte position in the original source + */ + function table_open($maxcols = null, $numrows = null, $pos = null) { // initialize the row counter used for classes $this->_counter['row_counter'] = 0; - $class = 'table'; - if ($pos !== null) { - $class .= ' ' . $this->startSectionEdit($pos, 'table'); + $class = 'table'; + if($pos !== null) { + $class .= ' '.$this->startSectionEdit($pos, 'table'); } - $this->doc .= '
    ' . - DOKU_LF; + $this->doc .= '
    '. + DOKU_LF; } - function table_close($pos = null){ + /** + * Close a table + * + * @param int $pos byte position in the original source + */ + function table_close($pos = null) { $this->doc .= '
    '.DOKU_LF; - if ($pos !== null) { + if($pos !== null) { $this->finishSectionEdit($pos); } } - function tablethead_open(){ - $this->doc .= DOKU_TAB . '' . DOKU_LF; + /** + * Open a table header + */ + function tablethead_open() { + $this->doc .= DOKU_TAB.''.DOKU_LF; } - function tablethead_close(){ - $this->doc .= DOKU_TAB . '' . DOKU_LF; + /** + * Close a table header + */ + function tablethead_close() { + $this->doc .= DOKU_TAB.''.DOKU_LF; } - function tablerow_open(){ + /** + * Open a table row + */ + function tablerow_open() { // initialize the cell counter used for classes $this->_counter['cell_counter'] = 0; - $class = 'row' . $this->_counter['row_counter']++; - $this->doc .= DOKU_TAB . '' . DOKU_LF . DOKU_TAB . DOKU_TAB; + $class = 'row'.$this->_counter['row_counter']++; + $this->doc .= DOKU_TAB.''.DOKU_LF.DOKU_TAB.DOKU_TAB; } - function tablerow_close(){ - $this->doc .= DOKU_LF . DOKU_TAB . '' . DOKU_LF; + /** + * Close a table row + */ + function tablerow_close() { + $this->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; } - function tableheader_open($colspan = 1, $align = null, $rowspan = 1){ - $class = 'class="col' . $this->_counter['cell_counter']++; - if ( !is_null($align) ) { + /** + * Open a table header cell + * + * @param int $colspan + * @param string $align left|center|right + * @param int $rowspan + */ + function tableheader_open($colspan = 1, $align = null, $rowspan = 1) { + $class = 'class="col'.$this->_counter['cell_counter']++; + if(!is_null($align)) { $class .= ' '.$align.'align'; } $class .= '"'; - $this->doc .= ' 1 ) { - $this->_counter['cell_counter'] += $colspan-1; + $this->doc .= ' 1) { + $this->_counter['cell_counter'] += $colspan - 1; $this->doc .= ' colspan="'.$colspan.'"'; } - if ( $rowspan > 1 ) { + if($rowspan > 1) { $this->doc .= ' rowspan="'.$rowspan.'"'; } $this->doc .= '>'; } - function tableheader_close(){ + /** + * Close a table header cell + */ + function tableheader_close() { $this->doc .= ''; } - function tablecell_open($colspan = 1, $align = null, $rowspan = 1){ - $class = 'class="col' . $this->_counter['cell_counter']++; - if ( !is_null($align) ) { + /** + * Open a table cell + * + * @param int $colspan + * @param string $align left|center|right + * @param int $rowspan + */ + function tablecell_open($colspan = 1, $align = null, $rowspan = 1) { + $class = 'class="col'.$this->_counter['cell_counter']++; + if(!is_null($align)) { $class .= ' '.$align.'align'; } $class .= '"'; $this->doc .= ' 1 ) { - $this->_counter['cell_counter'] += $colspan-1; + if($colspan > 1) { + $this->_counter['cell_counter'] += $colspan - 1; $this->doc .= ' colspan="'.$colspan.'"'; } - if ( $rowspan > 1 ) { + if($rowspan > 1) { $this->doc .= ' rowspan="'.$rowspan.'"'; } $this->doc .= '>'; } - function tablecell_close(){ + /** + * Close a table cell + */ + function tablecell_close() { $this->doc .= ''; } - //---------------------------------------------------------- - // Utils + #region Utility functions /** * Build a link @@ -1034,29 +1358,29 @@ class Doku_Renderer_xhtml extends Doku_Renderer { * * @author Andreas Gohr */ - function _formatLink($link){ + function _formatLink($link) { //make sure the url is XHTML compliant (skip mailto) - if(substr($link['url'],0,7) != 'mailto:'){ - $link['url'] = str_replace('&','&',$link['url']); - $link['url'] = str_replace('&amp;','&',$link['url']); + if(substr($link['url'], 0, 7) != 'mailto:') { + $link['url'] = str_replace('&', '&', $link['url']); + $link['url'] = str_replace('&amp;', '&', $link['url']); } //remove double encodings in titles - $link['title'] = str_replace('&amp;','&',$link['title']); + $link['title'] = str_replace('&amp;', '&', $link['title']); // be sure there are no bad chars in url or title // (we can't do this for name because it can contain an img tag) - $link['url'] = strtr($link['url'],array('>'=>'%3E','<'=>'%3C','"'=>'%22')); - $link['title'] = strtr($link['title'],array('>'=>'>','<'=>'<','"'=>'"')); + $link['url'] = strtr($link['url'], array('>' => '%3E', '<' => '%3C', '"' => '%22')); + $link['title'] = strtr($link['title'], array('>' => '>', '<' => '<', '"' => '"')); - $ret = ''; + $ret = ''; $ret .= $link['pre']; $ret .= ' + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param bool $render should the media be embedded inline or just linked + * @return string */ - function _media ($src, $title=null, $align=null, $width=null, - $height=null, $cache=null, $render = true) { + function _media($src, $title = null, $align = null, $width = null, + $height = null, $cache = null, $render = true) { $ret = ''; - list($ext,$mime,$dl) = mimetype($src); - if(substr($mime,0,5) == 'image'){ + list($ext, $mime) = mimetype($src); + if(substr($mime, 0, 5) == 'image') { // first get the $title - if (!is_null($title)) { - $title = $this->_xmlEntities($title); - }elseif($ext == 'jpg' || $ext == 'jpeg'){ + if(!is_null($title)) { + $title = $this->_xmlEntities($title); + } elseif($ext == 'jpg' || $ext == 'jpeg') { //try to use the caption from IPTC/EXIF require_once(DOKU_INC.'inc/JpegMeta.php'); - $jpeg =new JpegMeta(mediaFN($src)); + $jpeg = new JpegMeta(mediaFN($src)); if($jpeg !== false) $cap = $jpeg->getTitle(); - if($cap){ + if(!empty($cap)) { $title = $this->_xmlEntities($cap); } } - if (!$render) { + if(!$render) { // if the picture is not supposed to be rendered // return the title of the picture - if (!$title) { + if(!$title) { // just show the sourcename $title = $this->_xmlEntities(utf8_basename(noNS($src))); } return $title; } //add image tag - $ret .= ' $width, 'h' => $height, 'cache' => $cache)).'"'; $ret .= ' class="media'.$align.'"'; - if ($title) { - $ret .= ' title="' . $title . '"'; - $ret .= ' alt="' . $title .'"'; - }else{ + if($title) { + $ret .= ' title="'.$title.'"'; + $ret .= ' alt="'.$title.'"'; + } else { $ret .= ' alt=""'; } - if ( !is_null($width) ) + if(!is_null($width)) $ret .= ' width="'.$this->_xmlEntities($width).'"'; - if ( !is_null($height) ) + if(!is_null($height)) $ret .= ' height="'.$this->_xmlEntities($height).'"'; $ret .= ' />'; - }elseif(media_supportedav($mime, 'video') || media_supportedav($mime, 'audio')){ + } elseif(media_supportedav($mime, 'video') || media_supportedav($mime, 'audio')) { // first get the $title $title = !is_null($title) ? $this->_xmlEntities($title) : false; - if (!$render) { + if(!$render) { // if the file is not supposed to be rendered // return the title of the file (just the sourcename if there is no title) return $title ? $title : $this->_xmlEntities(utf8_basename(noNS($src))); } - $att = array(); + $att = array(); $att['class'] = "media$align"; - if ($title) { + if($title) { $att['title'] = $title; } - if (media_supportedav($mime, 'video')) { + if(media_supportedav($mime, 'video')) { //add video $ret .= $this->_video($src, $width, $height, $att); } - if (media_supportedav($mime, 'audio')) { + if(media_supportedav($mime, 'audio')) { //add audio $ret .= $this->_audio($src, $att); } - }elseif($mime == 'application/x-shockwave-flash'){ - if (!$render) { + } elseif($mime == 'application/x-shockwave-flash') { + if(!$render) { // if the flash is not supposed to be rendered // return the title of the flash - if (!$title) { + if(!$title) { // just show the sourcename $title = utf8_basename(noNS($src)); } return $this->_xmlEntities($title); } - $att = array(); + $att = array(); $att['class'] = "media$align"; if($align == 'right') $att['align'] = 'right'; - if($align == 'left') $att['align'] = 'left'; - $ret .= html_flashobject(ml($src,array('cache'=>$cache),true,'&'),$width,$height, - array('quality' => 'high'), - null, - $att, - $this->_xmlEntities($title)); - }elseif($title){ + if($align == 'left') $att['align'] = 'left'; + $ret .= html_flashobject( + ml($src, array('cache' => $cache), true, '&'), $width, $height, + array('quality' => 'high'), + null, + $att, + $this->_xmlEntities($title) + ); + } elseif($title) { // well at least we have a title to display $ret .= $this->_xmlEntities($title); - }else{ + } else { // just show the sourcename $ret .= $this->_xmlEntities(utf8_basename(noNS($src))); } @@ -1171,23 +1505,30 @@ class Doku_Renderer_xhtml extends Doku_Renderer { return $ret; } + /** + * Escape string for output + * + * @param $string + * @return string + */ function _xmlEntities($string) { - return htmlspecialchars($string,ENT_QUOTES,'UTF-8'); + return htmlspecialchars($string, ENT_QUOTES, 'UTF-8'); } /** * Creates a linkid from a headline * + * @author Andreas Gohr * @param string $title The headline title * @param boolean $create Create a new unique ID? - * @author Andreas Gohr + * @return string */ - function _headerToLink($title,$create=false) { - if($create){ - return sectionID($title,$this->headers); - }else{ + function _headerToLink($title, $create = false) { + if($create) { + return sectionID($title, $this->headers); + } else { $check = false; - return sectionID($title,$check); + return sectionID($title, $check); } } @@ -1195,18 +1536,22 @@ class Doku_Renderer_xhtml extends Doku_Renderer { * Construct a title and handle images in titles * * @author Harry Fuecks + * @param string|array $title either string title or media array + * @param string $default default title if nothing else is found + * @param bool $isImage will be set to true if it's a media file + * @param null|string $id linked page id (used to extract title from first heading) + * @param string $linktype content|navigation + * @return string HTML of the title, might be full image tag or just escaped text */ - function _getLinkTitle($title, $default, & $isImage, $id=null, $linktype='content') { - global $conf; - + function _getLinkTitle($title, $default, &$isImage, $id = null, $linktype = 'content') { $isImage = false; - if ( is_array($title) ) { + if(is_array($title)) { $isImage = true; return $this->_imageTitle($title); - } elseif ( is_null($title) || trim($title)=='') { - if (useHeading($linktype) && $id) { + } elseif(is_null($title) || trim($title) == '') { + if(useHeading($linktype) && $id) { $heading = p_get_first_heading($id); - if ($heading) { + if($heading) { return $this->_xmlEntities($heading); } } @@ -1217,48 +1562,51 @@ class Doku_Renderer_xhtml extends Doku_Renderer { } /** - * Returns an HTML code for images used in link titles + * Returns HTML code for images used in link titles * - * @todo Resolve namespace on internal images * @author Andreas Gohr + * @param string $img + * @return string HTML img tag or similar */ function _imageTitle($img) { global $ID; // some fixes on $img['src'] // see internalmedia() and externalmedia() - list($img['src'],$hash) = explode('#',$img['src'],2); - if ($img['type'] == 'internalmedia') { - resolve_mediaid(getNS($ID),$img['src'],$exists); + list($img['src']) = explode('#', $img['src'], 2); + if($img['type'] == 'internalmedia') { + resolve_mediaid(getNS($ID), $img['src'], $exists); } - return $this->_media($img['src'], - $img['title'], - $img['align'], - $img['width'], - $img['height'], - $img['cache']); + return $this->_media( + $img['src'], + $img['title'], + $img['align'], + $img['width'], + $img['height'], + $img['cache'] + ); } /** - * _getMediaLinkConf is a helperfunction to internalmedia() and externalmedia() - * which returns a basic link to a media. + * helperfunction to return a basic link to a media + * + * used in internalmedia() and externalmedia() * - * @author Pierre Spring - * @param string $src - * @param string $title - * @param string $align - * @param string $width - * @param string $height - * @param string $cache - * @param string $render - * @access protected - * @return array + * @author Pierre Spring + * @param string $src media ID + * @param string $title descriptive text + * @param string $align left|center|right + * @param int $width width of media in pixel + * @param int $height height of media in pixel + * @param string $cache cache|recache|nocache + * @param bool $render should the media be embedded inline or just linked + * @return array associative array with link config */ function _getMediaLinkConf($src, $title, $align, $width, $height, $cache, $render) { global $conf; - $link = array(); + $link = array(); $link['class'] = 'media'; $link['style'] = ''; $link['pre'] = ''; @@ -1271,50 +1619,49 @@ class Doku_Renderer_xhtml extends Doku_Renderer { return $link; } - /** * Embed video(s) in HTML * * @author Anika Henke * - * @param string $src - ID of video to embed - * @param int $width - width of the video in pixels - * @param int $height - height of the video in pixels - * @param array $atts - additional attributes for the Dokuwiki installation instructions'; $lang['i_funcna'] = 'PHP function %s is not available. Maybe your hosting provider disabled it for some reason?'; $lang['i_phpver'] = 'Your PHP version %s is lower than the needed %s. You need to upgrade your PHP install.'; +$lang['i_mbfuncoverload'] = 'mbstring.func_overload must be disabled in php.ini to run DokuWiki.'; $lang['i_permfail'] = '%s is not writable by DokuWiki. You need to fix the permission settings of this directory!'; $lang['i_confexists'] = '%s already exists'; $lang['i_writeerr'] = 'Unable to create %s. You will need to check directory/file permissions and create the file manually.'; diff --git a/install.php b/install.php index acc96d3e6..20402d3ff 100644 --- a/install.php +++ b/install.php @@ -533,6 +533,11 @@ function check_functions(){ $ok = false; } + if(ini_get('mbstring.func_overload') != 0){ + $error[] = $lang['i_mbfuncoverload']; + $ok = false; + } + $funcs = explode(' ','addslashes call_user_func chmod copy fgets '. 'file file_exists fseek flush filesize ftell fopen '. 'glob header ignore_user_abort ini_get mail mkdir '. -- cgit v1.2.3 From ef11fcfcd6213789fb126766301a6ffaf8f83055 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 25 May 2014 11:36:55 +0200 Subject: revert return of getNS to false again --- inc/io.php | 2 +- inc/pageutils.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/inc/io.php b/inc/io.php index dce676bbb..27a34b045 100644 --- a/inc/io.php +++ b/inc/io.php @@ -31,7 +31,7 @@ function io_sweepNS($id,$basedir='datadir'){ $delone = false; //scan all namespaces - while(($id = getNS($id)) !== ''){ + while(($id = getNS($id)) !== false){ $dir = $conf[$basedir].'/'.utf8_encodeFN(str_replace(':','/',$id)); //try to delete dir else return diff --git a/inc/pageutils.php b/inc/pageutils.php index 79b703ddc..5f62926e4 100644 --- a/inc/pageutils.php +++ b/inc/pageutils.php @@ -152,14 +152,14 @@ function cleanID($raw_id,$ascii=false){ * @author Andreas Gohr * * @param string $id - * @return string + * @return string|bool the namespace part or false if the given ID has no namespace (root) */ function getNS($id){ $pos = strrpos((string)$id,':'); if($pos!==false){ return substr((string)$id,0,$pos); } - return ''; + return false; } /** -- cgit v1.2.3 From 6fc4ea2c9a414260900dbe10478d307dc3e952c0 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 25 May 2014 12:16:22 +0200 Subject: removed some unused lines in HTTPClient --- inc/HTTPClient.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/inc/HTTPClient.php b/inc/HTTPClient.php index b5956a7f8..4352bcb97 100644 --- a/inc/HTTPClient.php +++ b/inc/HTTPClient.php @@ -61,6 +61,9 @@ class DokuHTTPClient extends HTTPClient { } +/** + * Class HTTPClientException + */ class HTTPClientException extends Exception { } /** @@ -249,7 +252,6 @@ class HTTPClient { if (empty($port)) $port = 8080; }else{ $request_url = $path; - $server = $server; if (!isset($port)) $port = ($uri['scheme'] == 'https') ? 443 : 80; } @@ -280,7 +282,6 @@ class HTTPClient { } } $headers['Content-Length'] = strlen($data); - $rmethod = 'POST'; }elseif($method == 'GET'){ $data = ''; //no data allowed on GET requests } @@ -458,7 +459,7 @@ class HTTPClient { if ($chunk_size > 0) { $r_body .= $this->_readData($socket, $chunk_size, 'chunk'); - $byte = $this->_readData($socket, 2, 'chunk'); // read trailing \r\n + $this->_readData($socket, 2, 'chunk'); // read trailing \r\n } } while ($chunk_size && !$abort); }elseif(isset($this->resp_headers['content-length']) && !isset($this->resp_headers['transfer-encoding'])){ @@ -480,7 +481,6 @@ class HTTPClient { $r_body = $this->_readData($socket, $this->max_bodysize, 'response (content-length limited)', true); }else{ // read entire socket - $r_size = 0; while (!feof($socket)) { $r_body .= $this->_readData($socket, 4096, 'response (unlimited)', true); } @@ -509,7 +509,6 @@ class HTTPClient { if (!$this->keep_alive || (isset($this->resp_headers['connection']) && $this->resp_headers['connection'] == 'Close')) { // close socket - $status = socket_get_status($socket); fclose($socket); unset(self::$connections[$connectionId]); } -- cgit v1.2.3 From 7ac0b9fe750a5713353e6edce51493a8a75c4f6f Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 25 May 2014 12:24:14 +0200 Subject: just some more doc blocks --- inc/parser/parser.php | 5 +++++ lib/plugins/syntax.php | 11 ++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/inc/parser/parser.php b/inc/parser/parser.php index 252bd9170..df01f3302 100644 --- a/inc/parser/parser.php +++ b/inc/parser/parser.php @@ -200,6 +200,11 @@ class Doku_Parser_Mode_Plugin extends DokuWiki_Plugin implements Doku_Parser_Mod var $Lexer; var $allowedModes = array(); + /** + * Sort for applying this mode + * + * @return int + */ function getSort() { trigger_error('getSort() not implemented in '.get_class($this), E_USER_WARNING); } diff --git a/lib/plugins/syntax.php b/lib/plugins/syntax.php index 42a4903ec..4a301f927 100644 --- a/lib/plugins/syntax.php +++ b/lib/plugins/syntax.php @@ -20,9 +20,12 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * Syntax Type * * Needs to return one of the mode types defined in $PARSER_MODES in parser.php + * + * @return string */ function getType(){ trigger_error('getType() not implemented in '.get_class($this), E_USER_WARNING); + return ''; } /** @@ -31,6 +34,8 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * Defines the mode types for other dokuwiki markup that maybe nested within the * plugin's own markup. Needs to return an array of one or more of the mode types * defined in $PARSER_MODES in parser.php + * + * @return array */ function getAllowedTypes() { return array(); @@ -47,6 +52,7 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { * 'stack' - Special case. Plugin wraps other paragraphs. * * @see Doku_Handler_Block + * @return string */ function getPType(){ return 'normal'; @@ -99,7 +105,10 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode_Plugin { } /** - * There should be no need to override these functions + * There should be no need to override this function + * + * @param string $mode + * @return bool */ function accepts($mode) { -- cgit v1.2.3 From 95955792a0c7a7e7f74b563af841f25fd4466d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schplurtz=20le=20D=C3=A9boulonn=C3=A9?= Date: Mon, 26 May 2014 01:26:39 +0200 Subject: translation update --- inc/lang/fr/lang.php | 4 ++++ lib/plugins/extension/lang/fr/lang.php | 1 + 2 files changed, 5 insertions(+) diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index c5407afa0..7631a120f 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -33,6 +33,7 @@ * @author ggallon * @author David VANTYGHEM * @author Caillot + * @author Schplurtz le Déboulonné */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -211,6 +212,8 @@ $lang['diff_side'] = 'Côte à côte'; $lang['diffprevrev'] = 'Révision précédente'; $lang['diffnextrev'] = 'Prochaine révision'; $lang['difflastrev'] = 'Dernière révision'; +$lang['diffbothprevrev'] = 'Les deux révisions précédentes'; +$lang['diffbothnextrev'] = 'Les deux révisions suivantes'; $lang['line'] = 'Ligne'; $lang['breadcrumb'] = 'Piste'; $lang['youarehere'] = 'Vous êtes ici'; @@ -306,6 +309,7 @@ $lang['i_problems'] = 'L\'installateur a détecté les problèmes ind $lang['i_modified'] = 'Pour des raisons de sécurité, ce script ne fonctionne qu\'avec une installation neuve et non modifiée de DokuWiki. Vous devriez ré-extraire les fichiers depuis le paquet téléchargé ou consulter les instructions d\'installation de DokuWiki'; $lang['i_funcna'] = 'La fonction PHP %s n\'est pas disponible. Peut-être que votre hébergeur web l\'a désactivée ?'; $lang['i_phpver'] = 'Votre version de PHP (%s) est antérieure à la version requise (%s). Vous devez mettre à jour votre installation de PHP.'; +$lang['i_mbfuncoverload'] = 'Il faut désactiver mbstring.func_overload dans php.ini pour DokuWiki'; $lang['i_permfail'] = '%s n\'est pas accessible en écriture pour DokuWiki. Vous devez corriger les autorisations de ce répertoire !'; $lang['i_confexists'] = '%s existe déjà'; $lang['i_writeerr'] = 'Impossible de créer %s. Vous devez vérifier les autorisations des répertoires/fichiers et créer le fichier manuellement.'; diff --git a/lib/plugins/extension/lang/fr/lang.php b/lib/plugins/extension/lang/fr/lang.php index c2dae0fc9..8e4997f12 100644 --- a/lib/plugins/extension/lang/fr/lang.php +++ b/lib/plugins/extension/lang/fr/lang.php @@ -85,3 +85,4 @@ $lang['nopluginperms'] = 'Impossible d\'écrire dans le dossier des gref $lang['git'] = 'Cette extension a été installé via git, vous voudrez peut-être ne pas la mettre à jour ici.'; $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.'; -- cgit v1.2.3 From f35c7beb388b7c878104dc83f9cf604beb79ea88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Schplurtz=20le=20D=C3=A9boulonn=C3=A9?= Date: Mon, 26 May 2014 02:06:12 +0200 Subject: translation update --- lib/plugins/extension/lang/fr/intro_install.txt | 2 +- lib/plugins/extension/lang/fr/intro_templates.txt | 2 +- lib/plugins/extension/lang/fr/lang.php | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/plugins/extension/lang/fr/intro_install.txt b/lib/plugins/extension/lang/fr/intro_install.txt index 6f68a2606..5d287b818 100644 --- a/lib/plugins/extension/lang/fr/intro_install.txt +++ b/lib/plugins/extension/lang/fr/intro_install.txt @@ -1 +1 @@ -Ici, vous pouvez installer des extensions, greffons et modèles. Soit en les téléversant, soit en indiquant un URL de téléchargement. \ No newline at end of file +Ici, vous pouvez installer des extensions, greffons et thèmes. Soit en les téléversant, soit en indiquant un URL de téléchargement. \ No newline at end of file diff --git a/lib/plugins/extension/lang/fr/intro_templates.txt b/lib/plugins/extension/lang/fr/intro_templates.txt index fefdb5538..a0a1336ea 100644 --- a/lib/plugins/extension/lang/fr/intro_templates.txt +++ b/lib/plugins/extension/lang/fr/intro_templates.txt @@ -1 +1 @@ -Voici la liste des modèles actuellement installés. Le [[?do=admin&page=config|gestionnaire de configuration]] vous permet de choisir le modèle à utiliser. \ No newline at end of file +Voici la liste des thèmes actuellement installés. Le [[?do=admin&page=config|gestionnaire de configuration]] vous permet de choisir le thème à utiliser. \ No newline at end of file diff --git a/lib/plugins/extension/lang/fr/lang.php b/lib/plugins/extension/lang/fr/lang.php index c2dae0fc9..f060ff465 100644 --- a/lib/plugins/extension/lang/fr/lang.php +++ b/lib/plugins/extension/lang/fr/lang.php @@ -7,7 +7,7 @@ */ $lang['menu'] = 'Gestionnaire d\'extension'; $lang['tab_plugins'] = 'Greffons installés'; -$lang['tab_templates'] = 'Modèles installés'; +$lang['tab_templates'] = 'Thèmes installés'; $lang['tab_search'] = 'Rechercher et installer'; $lang['tab_install'] = 'Installation manuelle'; $lang['notimplemented'] = 'Cette fonctionnalité n\'est pas encore installée'; @@ -57,13 +57,13 @@ $lang['status_enabled'] = 'activé'; $lang['status_disabled'] = 'désactivé'; $lang['status_unmodifiable'] = 'non modifiable'; $lang['status_plugin'] = 'greffon'; -$lang['status_template'] = 'modèle'; +$lang['status_template'] = 'thème'; $lang['status_bundled'] = 'fourni'; $lang['msg_enabled'] = 'Greffon %s activé'; $lang['msg_disabled'] = 'Greffon %s désactivé'; $lang['msg_delete_success'] = 'Extension désinstallée'; -$lang['msg_template_install_success'] = 'Modèle %s installée avec succès'; -$lang['msg_template_update_success'] = 'Modèle %s mis à jour avec succès'; +$lang['msg_template_install_success'] = 'Thème %s installée avec succès'; +$lang['msg_template_update_success'] = 'Thème %s mis à jour avec succès'; $lang['msg_plugin_install_success'] = 'Greffon %s installé avec succès'; $lang['msg_plugin_update_success'] = 'Greffon %s mis à jour avec succès'; $lang['msg_upload_failed'] = 'Téléversement échoué'; @@ -80,7 +80,7 @@ $lang['error_decompress'] = 'Impossible de décompresser le fichier téléc $lang['error_findfolder'] = 'Impossible d\'idnetifier 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 %s. 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['noperms'] = 'Impossible d\'écrire dans le dossier des extensions.'; -$lang['notplperms'] = 'Impossible d\'écrire dans le dossier des modèles.'; +$lang['notplperms'] = 'Impossible d\'écrire dans le dossier des thèmes.'; $lang['nopluginperms'] = 'Impossible d\'écrire dans le dossier des greffons.'; $lang['git'] = 'Cette extension a été installé via git, vous voudrez peut-être ne pas la mettre à jour ici.'; $lang['install_url'] = 'Installez depuis l\'URL :'; -- cgit v1.2.3 From 8f2758f6b53b11db38d83ea9ad838ed802a6e635 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Mon, 26 May 2014 10:44:20 +0200 Subject: made $capture public in metadata renderer some plugins (eg. the tag plugin) rely on it --- inc/parser/metadata.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/parser/metadata.php b/inc/parser/metadata.php index 9552fedff..25bf3fe3d 100644 --- a/inc/parser/metadata.php +++ b/inc/parser/metadata.php @@ -48,7 +48,7 @@ class Doku_Renderer_metadata extends Doku_Renderer { protected $firstimage = ''; /** @var bool determines if enough data for the abstract was collected, yet */ - protected $capture = true; + public $capture = true; /** @var int number of bytes captured for abstract */ protected $captured = 0; -- cgit v1.2.3 From 84c50c494ac3b4f524ce81304691d7fed3975b68 Mon Sep 17 00:00:00 2001 From: Antonio Castilla Date: Thu, 29 May 2014 12:46:31 +0200 Subject: translation update --- inc/lang/es/lang.php | 2 ++ lib/plugins/authmysql/lang/es/settings.php | 4 ++++ lib/plugins/authpgsql/lang/es/settings.php | 16 ++++++++++++++++ lib/plugins/usermanager/lang/es/lang.php | 7 +++++++ 4 files changed, 29 insertions(+) diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 9525a4c08..487c34cf9 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -34,6 +34,7 @@ * @author Juan De La Cruz * @author Fernando * @author Eloy + * @author Antonio Castilla */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -311,6 +312,7 @@ $lang['i_problems'] = 'El instalador encontró algunos problemas, se $lang['i_modified'] = 'Por razones de seguridad este script sólo funcionará con una instalación nueva y no modificada de Dokuwiki. Usted debe extraer nuevamente los ficheros del paquete bajado, o bien consultar las instrucciones de instalación de Dokuwiki completas.'; $lang['i_funcna'] = 'La función de PHP %s no está disponible. ¿Tal vez su proveedor de hosting la ha deshabilitado por alguna razón?'; $lang['i_phpver'] = 'Su versión de PHP %s es menor que la necesaria %s. Es necesario que actualice su instalación de PHP.'; +$lang['i_mbfuncoverload'] = 'mbstring.func_overload se debe deshabilitar en php.ini para que funcione DokuWiki.'; $lang['i_permfail'] = 'DokuWili no puede escribir %s. ¡Es necesario establecer correctamente los permisos de este directorio!'; $lang['i_confexists'] = '%s ya existe'; $lang['i_writeerr'] = 'Imposible crear %s. Se necesita que usted controle los permisos del fichero/directorio y que cree el fichero manualmente.'; diff --git a/lib/plugins/authmysql/lang/es/settings.php b/lib/plugins/authmysql/lang/es/settings.php index a247a44d7..b82620fc6 100644 --- a/lib/plugins/authmysql/lang/es/settings.php +++ b/lib/plugins/authmysql/lang/es/settings.php @@ -5,6 +5,7 @@ * * @author Antonio Bueno * @author Eloy + * @author Antonio Castilla */ $lang['server'] = 'Tu servidor MySQL'; $lang['user'] = 'Nombre de usuario MySQL'; @@ -31,5 +32,8 @@ $lang['getUserID'] = 'Sentencia SQL para obtener la clave primaria d $lang['delUser'] = 'Sentencia SQL para eliminar un usuario'; $lang['delUserRefs'] = 'Sentencia SQL para eliminar un usuario de todos los grupos'; $lang['updateUser'] = 'Sentencia SQL para actualizar un perfil de usuario'; +$lang['delUserGroup'] = 'Sentencia SQL para eliminar un usuario de un grupo dado'; +$lang['getGroupID'] = 'Sentencia SQL para obtener la clave principal de un grupo dado'; $lang['debug_o_0'] = 'ninguno'; $lang['debug_o_1'] = 'sólo errores'; +$lang['debug_o_2'] = 'todas las consultas SQL'; diff --git a/lib/plugins/authpgsql/lang/es/settings.php b/lib/plugins/authpgsql/lang/es/settings.php index bee2211f3..9e593df66 100644 --- a/lib/plugins/authpgsql/lang/es/settings.php +++ b/lib/plugins/authpgsql/lang/es/settings.php @@ -4,6 +4,22 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Antonio Bueno + * @author Antonio Castilla */ +$lang['server'] = 'Su servidor PostgreSQL'; +$lang['port'] = 'Puerto de su servidor PostgreSQL'; +$lang['user'] = 'Nombre de usuario PostgreSQL'; $lang['password'] = 'Contraseña del usuario indicado'; $lang['database'] = 'Base de datos a usar'; +$lang['debug'] = 'Muestra la información de depuración adicional'; +$lang['forwardClearPass'] = 'Pasar las contraseñas de usuario en texto plano a las siguientes sentencias de SQL, en lugar de utilizar la opción passcrypt'; +$lang['checkPass'] = 'Sentencia SQL para el control de las contraseñas'; +$lang['getUserInfo'] = 'Sentencia SQL para recuperar información del usuario'; +$lang['getGroups'] = 'Sentencia SQL para recuperar la pertenencia a grupos de un usuario'; +$lang['getUsers'] = 'Sentencia SQL para enumerar todos los usuarios'; +$lang['addUser'] = 'Sentencia de SQL para agregar un nuevo usuario'; +$lang['addGroup'] = 'Sentencia de SQL para agregar un nuevo grupo'; +$lang['addUserGroup'] = 'Sentencia SQL para agregar un usuario a un grupo existente'; +$lang['delGroup'] = 'Instrucción SQL para eliminar un grupo'; +$lang['getUserID'] = 'Sentencia SQL para obtener la clave principal de un usuario'; +$lang['delUser'] = 'Sentencia SQL para eliminar un usuario'; diff --git a/lib/plugins/usermanager/lang/es/lang.php b/lib/plugins/usermanager/lang/es/lang.php index 317fac2aa..6731193de 100644 --- a/lib/plugins/usermanager/lang/es/lang.php +++ b/lib/plugins/usermanager/lang/es/lang.php @@ -25,6 +25,7 @@ * @author Gerardo Zamudio * @author Mercè López mercelz@gmail.com * @author Antonio Bueno + * @author Antonio Castilla */ $lang['menu'] = 'Administración de usuarios'; $lang['noauth'] = '(la autenticación de usuarios no está disponible)'; @@ -69,3 +70,9 @@ $lang['add_ok'] = 'El usuario fue creado exitosamente'; $lang['add_fail'] = 'Falló la creación del usuario'; $lang['notify_ok'] = 'Se envió la notificación por correo electrónico'; $lang['notify_fail'] = 'No se pudo enviar la notificación por correo electrónico'; +$lang['import_error_badmail'] = 'Dirección de correo electrónico incorrecta'; +$lang['import_error_upload'] = 'Error al importar. El archivo csv no se pudo cargar o está vacío.'; +$lang['import_error_readfail'] = 'Error al importar. No se puede leer el archivo subido.'; +$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 como archivo CSV para la corrección'; -- cgit v1.2.3 From 3e5c46655be43b0d32ccbec276c6abdea1080b95 Mon Sep 17 00:00:00 2001 From: Antonio Castilla Date: Thu, 29 May 2014 13:21:31 +0200 Subject: translation update --- lib/plugins/authpgsql/lang/es/settings.php | 1 + lib/plugins/extension/lang/es/intro_install.txt | 1 + lib/plugins/extension/lang/es/intro_templates.txt | 1 + lib/plugins/extension/lang/es/lang.php | 14 ++++++++++++++ 4 files changed, 17 insertions(+) create mode 100644 lib/plugins/extension/lang/es/intro_install.txt create mode 100644 lib/plugins/extension/lang/es/intro_templates.txt diff --git a/lib/plugins/authpgsql/lang/es/settings.php b/lib/plugins/authpgsql/lang/es/settings.php index 9e593df66..2e02fc0ec 100644 --- a/lib/plugins/authpgsql/lang/es/settings.php +++ b/lib/plugins/authpgsql/lang/es/settings.php @@ -23,3 +23,4 @@ $lang['addUserGroup'] = 'Sentencia SQL para agregar un usuario a un gru $lang['delGroup'] = 'Instrucción SQL para eliminar un grupo'; $lang['getUserID'] = 'Sentencia SQL para obtener la clave principal de un usuario'; $lang['delUser'] = 'Sentencia SQL para eliminar un usuario'; +$lang['getGroupID'] = 'Sentencia SQL para obtener la clave principal de un grupo dado'; diff --git a/lib/plugins/extension/lang/es/intro_install.txt b/lib/plugins/extension/lang/es/intro_install.txt new file mode 100644 index 000000000..533396b27 --- /dev/null +++ b/lib/plugins/extension/lang/es/intro_install.txt @@ -0,0 +1 @@ +Aquí se puede instalar manualmente los plugins y las plantillas, ya sea cargándolos o dando una URL de descarga directa. \ No newline at end of file diff --git a/lib/plugins/extension/lang/es/intro_templates.txt b/lib/plugins/extension/lang/es/intro_templates.txt new file mode 100644 index 000000000..4ede9a1a9 --- /dev/null +++ b/lib/plugins/extension/lang/es/intro_templates.txt @@ -0,0 +1 @@ +Estas son las plantillas actualmente instalados en su DokuWiki. Puede seleccionar la plantilla que se utilizará en [[?do=admin&page=config|Configuration Manager]] \ No newline at end of file diff --git a/lib/plugins/extension/lang/es/lang.php b/lib/plugins/extension/lang/es/lang.php index 7de2f5265..16e87f587 100644 --- a/lib/plugins/extension/lang/es/lang.php +++ b/lib/plugins/extension/lang/es/lang.php @@ -4,14 +4,17 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author Antonio Bueno + * @author Antonio Castilla */ $lang['tab_plugins'] = 'Plugins instalados'; $lang['tab_templates'] = 'Plantillas instaladas'; $lang['tab_search'] = 'Buscar e instalar'; $lang['tab_install'] = 'Instalación manual'; +$lang['notimplemented'] = 'Esta característica no se ha implementado aún'; $lang['notinstalled'] = 'Esta expensión no está instalada'; $lang['alreadyenabled'] = 'Esta extensión ya había sido activada'; $lang['alreadydisabled'] = 'Esta extensión ya había sido desactivada'; +$lang['pluginlistsaveerror'] = 'Se ha producido un error al guardar la lista de plugins'; $lang['unknownauthor'] = 'autor desconocido'; $lang['unknownversion'] = 'versión desconocida'; $lang['btn_info'] = 'Mostrar más información'; @@ -21,17 +24,28 @@ $lang['btn_enable'] = 'Activar'; $lang['btn_disable'] = 'Desactivar'; $lang['btn_install'] = 'Instalar'; $lang['btn_reinstall'] = 'Reinstalar'; +$lang['js']['reallydel'] = '¿Realmente quiere desinstalar esta extensión?'; +$lang['search_for'] = 'Extensión de búsqueda :'; $lang['search'] = 'Buscar'; +$lang['extensionby'] = '%s por %s'; +$lang['screenshot'] = 'Captura de %s'; +$lang['popularity'] = 'Popularidad:%s%%'; $lang['homepage_link'] = 'Documentos'; $lang['bugs_features'] = 'Bugs'; $lang['tags'] = 'Etiquetas:'; +$lang['author_hint'] = 'Buscar extensiones de este autor'; $lang['installed'] = 'Instalado:'; $lang['downloadurl'] = 'URL de descarga:'; $lang['repository'] = 'Repositorio:'; +$lang['unknown'] = 'desconocido'; $lang['installed_version'] = 'Versión instalada:'; +$lang['install_date'] = 'Tú última actualización:'; $lang['available_version'] = 'Versión disponible:'; $lang['compatible'] = 'Compatible con:'; $lang['depends'] = 'Dependencias:'; +$lang['similar'] = 'Similar a:'; +$lang['conflicts'] = 'Conflictos con:'; +$lang['donate'] = '¿Cómo está?'; $lang['donate_action'] = '¡Págale un café al autor!'; $lang['status'] = 'Estado:'; $lang['status_installed'] = 'instalado'; -- cgit v1.2.3 From 5883ebc392a1e20e73055568ea00ad07a50caaba Mon Sep 17 00:00:00 2001 From: Murilo Date: Thu, 29 May 2014 22:05:58 +0200 Subject: translation update --- inc/lang/pt/lang.php | 13 ++++++++++--- lib/plugins/authad/lang/pt/settings.php | 2 ++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/inc/lang/pt/lang.php b/inc/lang/pt/lang.php index b2bb2dc34..903e974e0 100644 --- a/inc/lang/pt/lang.php +++ b/inc/lang/pt/lang.php @@ -2,13 +2,14 @@ /** * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * + * * @author José Carlos Monteiro * @author José Monteiro * @author Enrico Nicoletto * @author Fil * @author André Neves * @author José Campos zecarlosdecampos@gmail.com + * @author Murilo */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -44,6 +45,7 @@ $lang['btn_backtomedia'] = 'Voltar à Selecção de Media'; $lang['btn_subscribe'] = 'Subscrever Alterações'; $lang['btn_profile'] = 'Actualizar Perfil'; $lang['btn_reset'] = 'Limpar'; +$lang['btn_resendpwd'] = 'Definir nova senha'; $lang['btn_draft'] = 'Editar rascunho'; $lang['btn_recover'] = 'Recuperar rascunho'; $lang['btn_draftdel'] = 'Apagar rascunho'; @@ -52,6 +54,8 @@ $lang['btn_register'] = 'Registar'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Gestor de Media'; $lang['btn_deleteuser'] = 'Remover a Minha Conta'; +$lang['btn_img_backto'] = 'De volta a %s'; +$lang['btn_mediaManager'] = 'Ver em gestor de media'; $lang['loggedinas'] = 'Está em sessão como'; $lang['user'] = 'Utilizador'; $lang['pass'] = 'Senha'; @@ -84,6 +88,7 @@ $lang['profdeleteuser'] = 'Apagar Conta'; $lang['profdeleted'] = 'A sua conta de utilizador foi removida desta wiki'; $lang['pwdforget'] = 'Esqueceu a sua senha? Pedir nova senha'; $lang['resendna'] = 'Este wiki não suporta reenvio de senhas.'; +$lang['resendpwd'] = 'Definir nova senha para'; $lang['resendpwdmissing'] = 'É preciso preencher todos os campos.'; $lang['resendpwdnouser'] = 'Não foi possível encontrar este utilizador.'; $lang['resendpwdbadauth'] = 'O código de autenticação não é válido. Por favor, assegure-se de que o link de confirmação está completo.'; @@ -177,6 +182,9 @@ $lang['difflink'] = 'Ligação para esta vista de comparação'; $lang['diff_type'] = 'Ver diferenças'; $lang['diff_inline'] = 'Embutido'; $lang['diff_side'] = 'Lado a lado'; +$lang['diffprevrev'] = 'Revisão anterior'; +$lang['diffnextrev'] = 'Próxima revisão'; +$lang['difflastrev'] = 'Última revisão'; $lang['line'] = 'Linha'; $lang['breadcrumb'] = 'Está em'; $lang['youarehere'] = 'Está aqui'; @@ -233,7 +241,6 @@ $lang['admin_register'] = 'Registar Novo Utilizador'; $lang['metaedit'] = 'Editar Metadata'; $lang['metasaveerr'] = 'Falhou a escrita de Metadata'; $lang['metasaveok'] = 'Metadata gravada'; -$lang['btn_img_backto'] = 'De volta a %s'; $lang['img_title'] = 'Título'; $lang['img_caption'] = 'Legenda'; $lang['img_date'] = 'Data'; @@ -246,7 +253,6 @@ $lang['img_camera'] = 'Câmara'; $lang['img_keywords'] = 'Palavras-Chave'; $lang['img_width'] = 'Largura'; $lang['img_height'] = 'Altura'; -$lang['btn_mediaManager'] = 'Ver em gestor de media'; $lang['subscr_subscribe_success'] = 'Adicionado %s à lista de subscrição para %s'; $lang['subscr_subscribe_error'] = 'Erro ao adicionar %s à lista de subscrição para %s'; $lang['subscr_subscribe_noaddress'] = 'Não existe endereço algum associado com o seu nome de utilizador, não pode ser adicionado à lista de subscrição'; @@ -305,6 +311,7 @@ $lang['media_file'] = 'Ficheiro'; $lang['media_viewtab'] = 'Ver'; $lang['media_edittab'] = 'Editar'; $lang['media_historytab'] = 'Histórico'; +$lang['media_list_thumbs'] = 'Miniaturas'; $lang['media_list_rows'] = 'Linhas'; $lang['media_sort_name'] = 'Ordenar por nome'; $lang['media_sort_date'] = 'Ordenar por data'; diff --git a/lib/plugins/authad/lang/pt/settings.php b/lib/plugins/authad/lang/pt/settings.php index 45eff5e96..ef0f8f6d2 100644 --- a/lib/plugins/authad/lang/pt/settings.php +++ b/lib/plugins/authad/lang/pt/settings.php @@ -4,7 +4,9 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author André Neves + * @author Murilo */ +$lang['account_suffix'] = 'O sufixo da sua conta. Por exemplo, @my.domain.org'; $lang['admin_password'] = 'A senha para o utilizador acima.'; $lang['sso'] = 'Deve ser usado o Single-Sign-On via Kerberos ou NTLM?'; $lang['use_ssl'] = 'Usar ligação SSL? Se usada, não ative TLS abaixo.'; -- cgit v1.2.3 From 3dc402767b9058811762f67a7a3a21d50e81a65c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aivars=20Mi=C5=A1ka?= Date: Fri, 30 May 2014 08:30:58 +0200 Subject: translation update --- inc/lang/lv/lang.php | 23 +++++++++++++++++++---- lib/plugins/acl/lang/lv/lang.php | 4 ++-- lib/plugins/authad/lang/lv/lang.php | 8 ++++++++ lib/plugins/authad/lang/lv/settings.php | 8 ++++++++ lib/plugins/popularity/lang/lv/lang.php | 5 +++-- lib/plugins/revert/lang/lv/lang.php | 5 +++-- lib/plugins/usermanager/lang/lv/lang.php | 5 +++-- 7 files changed, 46 insertions(+), 12 deletions(-) create mode 100644 lib/plugins/authad/lang/lv/lang.php create mode 100644 lib/plugins/authad/lang/lv/settings.php diff --git a/inc/lang/lv/lang.php b/inc/lang/lv/lang.php index 91fed262e..b1fa9a1c4 100644 --- a/inc/lang/lv/lang.php +++ b/inc/lang/lv/lang.php @@ -1,8 +1,8 @@ */ $lang['encoding'] = 'utf-8'; @@ -47,6 +47,9 @@ $lang['btn_revert'] = 'Atjaunot'; $lang['btn_register'] = 'Reģistrēties'; $lang['btn_apply'] = 'Labi'; $lang['btn_media'] = 'Mēdiju pārvaldnieks'; +$lang['btn_deleteuser'] = 'Dzēst manu kontu'; +$lang['btn_img_backto'] = 'Atpakaļ uz %s'; +$lang['btn_mediaManager'] = 'Skatīt mēdiju pārvaldniekā'; $lang['loggedinas'] = 'Pieteicies kā'; $lang['user'] = 'Lietotājvārds'; $lang['pass'] = 'Parole'; @@ -58,6 +61,7 @@ $lang['fullname'] = 'Pilns vārds'; $lang['email'] = 'E-pasts'; $lang['profile'] = 'Lietotāja vārds'; $lang['badlogin'] = 'Atvaino, lietotājvārds vai parole aplama.'; +$lang['badpassconfirm'] = 'Atvaino, aplama parole'; $lang['minoredit'] = 'Sīki labojumi'; $lang['draftdate'] = 'Melnraksts automātiski saglabāts'; $lang['nosecedit'] = 'Lapa pa šo laiku ir mainījusies, sekcijas informācija novecojusi. Ielādēta lapas pilnās versija.'; @@ -74,6 +78,9 @@ $lang['profna'] = 'Labot profilu nav iespējams'; $lang['profnochange'] = 'Izmaiņu nav. Nav, ko darīt.'; $lang['profnoempty'] = 'Bez vārda vai e-pasta adreses nevar.'; $lang['profchanged'] = 'Profils veiksmīgi izlabots.'; +$lang['profnodelete'] = 'Šajā viki lietotājus izdzēst nevar'; +$lang['profdeleteuser'] = 'Dzēst kontu'; +$lang['profdeleted'] = 'Jūsu lietotāja konts ir izdzēsts'; $lang['pwdforget'] = 'Aizmirsi paroli? Saņem jaunu'; $lang['resendna'] = 'Paroļu izsūtīšanu nepiedāvāju.'; $lang['resendpwd'] = 'Uzstādīt jaunu paroli lietotājam'; @@ -172,6 +179,11 @@ $lang['difflink'] = 'Saite uz salīdzināšanas skatu.'; $lang['diff_type'] = 'Skatīt atšķirības:'; $lang['diff_inline'] = 'Iekļauti'; $lang['diff_side'] = 'Blakus'; +$lang['diffprevrev'] = 'Iepriekšējā versija'; +$lang['diffnextrev'] = 'Nākamā versija'; +$lang['difflastrev'] = 'Jaunākā versija'; +$lang['diffbothprevrev'] = 'Abās pusēs iepriekšējo versiju'; +$lang['diffbothnextrev'] = 'Abās pusēs nākamo versiju'; $lang['line'] = 'Rinda'; $lang['breadcrumb'] = 'Apmeklēts'; $lang['youarehere'] = 'Tu atrodies šeit'; @@ -228,7 +240,6 @@ $lang['admin_register'] = 'Pievienot jaunu lietotāju'; $lang['metaedit'] = 'Labot metadatus'; $lang['metasaveerr'] = 'Metadati nav saglabāti'; $lang['metasaveok'] = 'Metadati saglabāti'; -$lang['btn_img_backto'] = 'Atpakaļ uz %s'; $lang['img_title'] = 'Virsraksts'; $lang['img_caption'] = 'Apraksts'; $lang['img_date'] = 'Datums'; @@ -241,7 +252,6 @@ $lang['img_camera'] = 'Fotoaparāts'; $lang['img_keywords'] = 'Atslēgvārdi'; $lang['img_width'] = 'Platums'; $lang['img_height'] = 'Augstums'; -$lang['btn_mediaManager'] = 'Skatīt mēdiju pārvaldniekā'; $lang['subscr_subscribe_success'] = '%s pievienots %s abonēšanas sarakstam'; $lang['subscr_subscribe_error'] = 'Kļūme pievienojot %s %s abonēšanas sarakstam.'; $lang['subscr_subscribe_noaddress'] = 'Nav zināma jūsu e-pasta adrese, tāpēc nevarat abonēt.'; @@ -270,6 +280,7 @@ $lang['i_modified'] = 'Drošības nolūkos šis skripts darbosies tik Vai nu no jauna jāatarhivē faili no lejupielādētās pakas vai jāraugās pēc padoma pilnā Dokuwiki instalācijas instrukcijā '; $lang['i_funcna'] = 'PHP funkcija %s nav pieejama. Varbūt jūsu servera īpašnieks to kāda iemesla dēļ atslēdzis?'; $lang['i_phpver'] = 'Jūsu PHP versija %s ir par vecu. Vajag versiju %s. Atjaunojiet savu PHP instalāciju.'; +$lang['i_mbfuncoverload'] = 'Lai darbinātu DokuWiki, php.ini failā ir jāatspējo mbstring.func_overload.'; $lang['i_permfail'] = 'Dokuwiki nevar ierakstīt %s. Jālabo direktorijas tiesības!'; $lang['i_confexists'] = '%s jau ir'; $lang['i_writeerr'] = 'Nevar izveidot %s. Jāpārbauda direktorijas/faila tiesības un fails jāizveido pašam.'; @@ -281,6 +292,7 @@ $lang['i_policy'] = 'Sākotnējā ACL politika'; $lang['i_pol0'] = 'Atvērts Wiki (raksta, lasa un augšupielādē ikviens)'; $lang['i_pol1'] = 'Publisks Wiki (lasa ikviens, raksta un augšupielādē reģistrēti lietotāji)'; $lang['i_pol2'] = 'Slēgts Wiki (raksta, lasa un augšupielādē tikai reģistrēti lietotāji)'; +$lang['i_allowreg'] = 'Atļaut lietotājiem reģistrēties.'; $lang['i_retry'] = 'Atkārtot'; $lang['i_license'] = 'Ar kādu licenci saturs tiks publicēts:'; $lang['i_license_none'] = 'Nerādīt nekādu licences informāciju'; @@ -318,3 +330,6 @@ $lang['media_perm_read'] = 'Atvainojiet, jums nav tiesību skatīt failus. $lang['media_perm_upload'] = 'Atvainojiet, jums nav tiesību augšupielādēt. '; $lang['media_update'] = 'Augšupielādēt jaunu versiju'; $lang['media_restore'] = 'Atjaunot šo versiju'; +$lang['currentns'] = 'Pašreizējā sadaļa'; +$lang['searchresult'] = 'Meklēšanas rezultāti'; +$lang['plainhtml'] = 'Tīrs HTML'; diff --git a/lib/plugins/acl/lang/lv/lang.php b/lib/plugins/acl/lang/lv/lang.php index f478b32c6..dc23ccb4a 100644 --- a/lib/plugins/acl/lang/lv/lang.php +++ b/lib/plugins/acl/lang/lv/lang.php @@ -1,8 +1,8 @@ */ $lang['admin_acl'] = 'Piekļuves tiesību vadība'; diff --git a/lib/plugins/authad/lang/lv/lang.php b/lib/plugins/authad/lang/lv/lang.php new file mode 100644 index 000000000..74becf756 --- /dev/null +++ b/lib/plugins/authad/lang/lv/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['domain'] = 'Iežurnālēšanās domēns'; diff --git a/lib/plugins/authad/lang/lv/settings.php b/lib/plugins/authad/lang/lv/settings.php new file mode 100644 index 000000000..e32e91452 --- /dev/null +++ b/lib/plugins/authad/lang/lv/settings.php @@ -0,0 +1,8 @@ + + */ +$lang['domain_controllers'] = 'Ar komatiem atdalīts domēna kontroleru saraksts. Piemēram, srv1.domain.org,srv2.domain.org'; diff --git a/lib/plugins/popularity/lang/lv/lang.php b/lib/plugins/popularity/lang/lv/lang.php index f0c940b6f..a8ef37f7a 100644 --- a/lib/plugins/popularity/lang/lv/lang.php +++ b/lib/plugins/popularity/lang/lv/lang.php @@ -1,7 +1,8 @@ */ $lang['name'] = 'Popularitātes atsauksmes (ielāde var aizņemt kādu laiku)'; diff --git a/lib/plugins/revert/lang/lv/lang.php b/lib/plugins/revert/lang/lv/lang.php index 012d6cc4c..b87369233 100644 --- a/lib/plugins/revert/lang/lv/lang.php +++ b/lib/plugins/revert/lang/lv/lang.php @@ -1,7 +1,8 @@ */ $lang['menu'] = 'Piemēsloto lapu atjaunotājs'; diff --git a/lib/plugins/usermanager/lang/lv/lang.php b/lib/plugins/usermanager/lang/lv/lang.php index 620678ff5..4944da31e 100644 --- a/lib/plugins/usermanager/lang/lv/lang.php +++ b/lib/plugins/usermanager/lang/lv/lang.php @@ -1,7 +1,8 @@ * @author Aivars Miška */ -- cgit v1.2.3 From 6ff0365539729e7e6804d89e887c20052140cae5 Mon Sep 17 00:00:00 2001 From: Paulo Silva Date: Fri, 30 May 2014 12:06:24 +0200 Subject: translation update --- inc/lang/pt/lang.php | 10 ++++++++++ lib/plugins/authad/lang/pt/lang.php | 8 ++++++++ lib/plugins/authad/lang/pt/settings.php | 3 +++ 3 files changed, 21 insertions(+) create mode 100644 lib/plugins/authad/lang/pt/lang.php diff --git a/inc/lang/pt/lang.php b/inc/lang/pt/lang.php index 903e974e0..e643b4081 100644 --- a/inc/lang/pt/lang.php +++ b/inc/lang/pt/lang.php @@ -10,6 +10,7 @@ * @author André Neves * @author José Campos zecarlosdecampos@gmail.com * @author Murilo + * @author Paulo Silva */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -67,6 +68,7 @@ $lang['fullname'] = 'Nome completo'; $lang['email'] = 'Email'; $lang['profile'] = 'Perfil do Utilizador'; $lang['badlogin'] = 'O utilizador inválido ou senha inválida.'; +$lang['badpassconfirm'] = 'Infelizmente a palavra-passe não é a correcta'; $lang['minoredit'] = 'Alterações Menores'; $lang['draftdate'] = 'Rascunho automaticamente gravado em'; $lang['nosecedit'] = 'A página foi modificada entretanto. Como a informação da secção estava desactualizada, foi carregada a página inteira.'; @@ -86,6 +88,8 @@ $lang['profchanged'] = 'Perfil do utilizador actualizado com sucesso.' $lang['profnodelete'] = 'Esta wiki não suporta remoção de utilizadores'; $lang['profdeleteuser'] = 'Apagar Conta'; $lang['profdeleted'] = 'A sua conta de utilizador foi removida desta wiki'; +$lang['profconfdelete'] = 'Quero remover a minha conta desta wiki.
    Esta acção não pode ser anulada.'; +$lang['profconfdeletemissing'] = 'A caixa de confirmação não foi marcada'; $lang['pwdforget'] = 'Esqueceu a sua senha? Pedir nova senha'; $lang['resendna'] = 'Este wiki não suporta reenvio de senhas.'; $lang['resendpwd'] = 'Definir nova senha para'; @@ -291,6 +295,7 @@ $lang['i_policy'] = 'Politica ACL inicial'; $lang['i_pol0'] = 'Wiki Aberto (ler, escrever e carregar para todos)'; $lang['i_pol1'] = 'Wiki Público (ler para todos, escrever e carregar para utilizadores inscritos)'; $lang['i_pol2'] = 'Wiki Fechado (ler, escrever e carregar somente para utilizadores inscritos)'; +$lang['i_allowreg'] = 'Permitir aos utilizadores registarem-se por si próprios'; $lang['i_retry'] = 'Repetir'; $lang['i_license'] = 'Por favor escolha a licença sob a qual quer colocar o seu conteúdo:'; $lang['i_license_none'] = 'Não mostrar nenhuma informação de licença'; @@ -315,6 +320,7 @@ $lang['media_list_thumbs'] = 'Miniaturas'; $lang['media_list_rows'] = 'Linhas'; $lang['media_sort_name'] = 'Ordenar por nome'; $lang['media_sort_date'] = 'Ordenar por data'; +$lang['media_namespaces'] = 'Escolha o namespace'; $lang['media_files'] = 'Ficheiros em %s'; $lang['media_upload'] = 'Enviar para o grupo %s.'; $lang['media_search'] = 'Procurar no grupo %s.'; @@ -326,3 +332,7 @@ $lang['media_perm_read'] = 'Perdão, não tem permissão para ler ficheiro $lang['media_perm_upload'] = 'Perdão, não tem permissão para enviar ficheiros.'; $lang['media_update'] = 'enviar nova versão'; $lang['media_restore'] = 'Restaurar esta versão'; +$lang['currentns'] = 'Namespace actual'; +$lang['searchresult'] = 'Resultado da pesquisa'; +$lang['plainhtml'] = 'HTML simples'; +$lang['wikimarkup'] = 'Markup de Wiki'; diff --git a/lib/plugins/authad/lang/pt/lang.php b/lib/plugins/authad/lang/pt/lang.php new file mode 100644 index 000000000..f307bc901 --- /dev/null +++ b/lib/plugins/authad/lang/pt/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['domain'] = 'Domínio de Início de Sessão'; diff --git a/lib/plugins/authad/lang/pt/settings.php b/lib/plugins/authad/lang/pt/settings.php index ef0f8f6d2..dc60d7259 100644 --- a/lib/plugins/authad/lang/pt/settings.php +++ b/lib/plugins/authad/lang/pt/settings.php @@ -5,8 +5,11 @@ * * @author André Neves * @author Murilo + * @author Paulo Silva */ $lang['account_suffix'] = 'O sufixo da sua conta. Por exemplo, @my.domain.org'; +$lang['domain_controllers'] = 'Uma lista separada por vírgulas de Controladores de Domínio (AD DC). Ex.: srv1.domain.org,srv2.domain.org'; +$lang['admin_username'] = 'Um utilizador com privilégios na Active Directory que tenha acesso aos dados de todos os outros utilizadores. Opcional, mas necessário para certas ações como enviar emails de subscrição.'; $lang['admin_password'] = 'A senha para o utilizador acima.'; $lang['sso'] = 'Deve ser usado o Single-Sign-On via Kerberos ou NTLM?'; $lang['use_ssl'] = 'Usar ligação SSL? Se usada, não ative TLS abaixo.'; -- cgit v1.2.3 From 9a72776194fc27b31238ade37ba590b4e0217cf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0lker=20R=2E=20Kapa=C3=A7?= Date: Sat, 31 May 2014 00:11:23 +0200 Subject: translation update --- inc/lang/tr/lang.php | 17 +++++++++ lib/plugins/authmysql/lang/tr/settings.php | 29 +++++++++++++++ lib/plugins/authpgsql/lang/tr/settings.php | 13 +++++++ lib/plugins/extension/lang/tr/lang.php | 60 ++++++++++++++++++++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 lib/plugins/authpgsql/lang/tr/settings.php create mode 100644 lib/plugins/extension/lang/tr/lang.php diff --git a/inc/lang/tr/lang.php b/inc/lang/tr/lang.php index c314eb8aa..fe015ec49 100644 --- a/inc/lang/tr/lang.php +++ b/inc/lang/tr/lang.php @@ -12,6 +12,7 @@ * @author Mustafa Aslan * @author huseyin can * @author ilker rifat kapaç + * @author İlker R. Kapaç */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -184,6 +185,12 @@ $lang['diff'] = 'Kullanılan sürüm ile farkları göster'; $lang['diff2'] = 'Seçili sürümler arasındaki farkı göster'; $lang['difflink'] = 'Karşılaştırma görünümüne bağlantı'; $lang['diff_type'] = 'farklı görünüş'; +$lang['diff_side'] = 'Yan yana'; +$lang['diffprevrev'] = 'Önceki sürüm'; +$lang['diffnextrev'] = 'Sonraki sürüm'; +$lang['difflastrev'] = 'Son sürüm'; +$lang['diffbothprevrev'] = 'İki taraf da önceki sürüm'; +$lang['diffbothnextrev'] = 'İki taraf da sonraki sürüm'; $lang['line'] = 'Satır'; $lang['breadcrumb'] = 'İz'; $lang['youarehere'] = 'Buradasınız'; @@ -204,6 +211,7 @@ $lang['skip_to_content'] = 'Bağlanmak için kaydır'; $lang['sidebar'] = 'kaydırma çubuğu'; $lang['mail_newpage'] = 'sayfa eklenme:'; $lang['mail_changed'] = 'sayfa değiştirilme:'; +$lang['mail_subscribe_list'] = 'isimalanındaki değişmiş sayfalar: '; $lang['mail_new_user'] = 'yeni kullanıcı'; $lang['mail_upload'] = 'dosya yüklendi:'; $lang['changes_type'] = 'görünüşü değiştir'; @@ -223,6 +231,8 @@ $lang['qb_h5'] = '5. Seviye Başlık'; $lang['qb_h'] = 'Başlık'; $lang['qb_hs'] = 'Başlığı seç'; $lang['qb_hplus'] = 'Daha yüksek başlık'; +$lang['qb_hminus'] = 'Daha Düşük Başlık'; +$lang['qb_hequal'] = 'Aynı Seviye Başlık'; $lang['qb_link'] = 'İç Bağlantı'; $lang['qb_extlink'] = 'Dış Bağlantı'; $lang['qb_hr'] = 'Yatay Çizgi'; @@ -232,6 +242,7 @@ $lang['qb_media'] = 'Resim ve başka dosyalar ekle'; $lang['qb_sig'] = 'İmza Ekle'; $lang['qb_smileys'] = 'Gülen Yüzler'; $lang['qb_chars'] = 'Özel Karakterler'; +$lang['upperns'] = 'ebeveyn isimalanına atla'; $lang['admin_register'] = 'Yeni kullanıcı ekle...'; $lang['metaedit'] = 'Metaverileri Değiştir'; $lang['metasaveerr'] = 'Metaveri yazma başarısız '; @@ -253,6 +264,7 @@ $lang['subscr_m_current_header'] = 'Üyeliğini onayla'; $lang['subscr_m_unsubscribe'] = 'Üyelik iptali'; $lang['subscr_m_subscribe'] = 'Kayıt ol'; $lang['subscr_m_receive'] = 'Al'; +$lang['subscr_style_every'] = 'her değişiklikte e-posta gönder'; $lang['authtempfail'] = 'Kullanıcı doğrulama geçici olarak yapılamıyor. Eğer bu durum devam ederse lütfen Wiki yöneticine haber veriniz.'; $lang['authpwdexpire'] = 'Şifreniz %d gün sonra geçersiz hale gelecek, yakın bir zamanda değiştirmelisiniz.'; $lang['i_chooselang'] = 'Dili seçiniz'; @@ -275,8 +287,12 @@ $lang['i_policy'] = 'İlk ACL ayarı'; $lang['i_pol0'] = 'Tamamen Açık Wiki (herkes okuyabilir, yazabilir ve dosya yükleyebilir)'; $lang['i_pol1'] = 'Açık Wiki (herkes okuyabilir, ancak sadece üye olanlar yazabilir ve dosya yükleyebilir)'; $lang['i_pol2'] = 'Kapalı Wiki (sadece üye olanlar okuyabilir, yazabilir ve dosya yükleyebilir)'; +$lang['i_allowreg'] = 'Kullanıcıların kendi kendilerine üye olmalarına için ver'; $lang['i_retry'] = 'Tekrar Dene'; $lang['i_license'] = 'Lütfen içeriği hangi lisans altında yayınlamak istediğniizi belirtin:'; +$lang['i_license_none'] = 'Hiç bir lisans bilgisi gösterme'; +$lang['i_pop_field'] = 'Lütfen DokuWiki deneyimini geliştirmemizde, bize yardım edin:'; +$lang['i_pop_label'] = 'DokuWiki geliştiricilerine ayda bir, anonim kullanım bilgisini gönder'; $lang['recent_global'] = '%s namespace\'i içerisinde yapılan değişiklikleri görüntülemektesiniz. Wiki\'deki tüm değişiklikleri de bu adresten görebilirsiniz. '; $lang['years'] = '%d yıl önce'; $lang['months'] = '%d ay önce'; @@ -296,6 +312,7 @@ $lang['media_list_thumbs'] = 'Küçük resimler'; $lang['media_list_rows'] = 'Satırlar'; $lang['media_sort_name'] = 'İsim'; $lang['media_sort_date'] = 'Tarih'; +$lang['media_namespaces'] = 'İsimalanı seçin'; $lang['media_files'] = '%s deki dosyalar'; $lang['media_upload'] = '%s dizinine yükle'; $lang['media_search'] = '%s dizininde ara'; diff --git a/lib/plugins/authmysql/lang/tr/settings.php b/lib/plugins/authmysql/lang/tr/settings.php index f38b6a03b..ca6a7c6ad 100644 --- a/lib/plugins/authmysql/lang/tr/settings.php +++ b/lib/plugins/authmysql/lang/tr/settings.php @@ -4,9 +4,38 @@ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * * @author ilker rifat kapaç + * @author İlker R. Kapaç */ $lang['server'] = 'Sizin MySQL sunucunuz'; $lang['user'] = 'MySQL kullanıcısının adı'; $lang['password'] = 'Üstteki kullanıcı için şifre'; $lang['database'] = 'Kullanılacak veritabanı'; $lang['charset'] = 'Veritabanında kullanılacak karakter seti'; +$lang['debug'] = 'İlave hata ayıklama bilgisini görüntüle'; +$lang['checkPass'] = 'Şifreleri kontrol eden SQL ifadesi'; +$lang['getUserInfo'] = 'Kullanıcı bilgilerini getiren SQL ifadesi'; +$lang['getGroups'] = 'Kullanıcının grup üyeliklerini getiren SQL ifadesi'; +$lang['getUsers'] = 'Tüm kullanıcıları listeleyen SQL ifadesi'; +$lang['FilterLogin'] = 'Kullanıcıları giriş yaptıkları isimlere göre süzmek için SQL şartı'; +$lang['FilterName'] = 'Kullanıcıları tam isimlerine göre süzmek için SQL şartı'; +$lang['FilterEmail'] = 'Kullanıcıları e-posta adreslerine göre süzmek için SQL şartı'; +$lang['FilterGroup'] = 'Kullanıcıları üye oldukları grup isimlerine göre süzmek için SQL şartı'; +$lang['SortOrder'] = 'Kullanıcıları sıralamak için SQL şartı'; +$lang['addUser'] = 'Yeni bir kullanıcı ekleyen SQL ifadesi'; +$lang['addGroup'] = 'Yeni bir grup ekleyen SQL ifadesi'; +$lang['addUserGroup'] = 'Varolan gruba yeni bir kullanıcı ekleyen SQL ifadesi'; +$lang['delGroup'] = 'Grup silen SQL ifadesi'; +$lang['getUserID'] = 'Kullanıcının birincil anahtarını getiren SQL ifadesi'; +$lang['delUser'] = 'Kullanıcı silen SQL ifadesi'; +$lang['delUserRefs'] = 'Kullanıcıyı tüm gruplardan çıkartan SQL ifadesi'; +$lang['updateUser'] = 'Kullanıcı profilini güncelleyen SQL ifadesi'; +$lang['UpdateLogin'] = 'Kullanıcının giriş yaptığı ismi güncelleyen, güncelleme şartı'; +$lang['UpdatePass'] = 'Kullanıcının şifresini güncelleyen, güncelleme şartı'; +$lang['UpdateEmail'] = 'Kullanıcının e-posta adresini güncelleyen, güncelleme şartı'; +$lang['UpdateName'] = 'Kullanıcının tam adını güncelleyen, güncelleme şartı'; +$lang['UpdateTarget'] = 'Güncelleme esnasında kullanıcıyı belirleyen, sınır şartı'; +$lang['delUserGroup'] = 'Kullanıcıyı verilen gruptan silen SQL ifadesi'; +$lang['getGroupID'] = 'Verilen grubun birincil anahtarını getiren SQL ifadesi'; +$lang['debug_o_0'] = 'hiçbiri'; +$lang['debug_o_1'] = 'sadece hata olduğunda'; +$lang['debug_o_2'] = 'tüm SQL sorguları'; diff --git a/lib/plugins/authpgsql/lang/tr/settings.php b/lib/plugins/authpgsql/lang/tr/settings.php new file mode 100644 index 000000000..f6fef9cde --- /dev/null +++ b/lib/plugins/authpgsql/lang/tr/settings.php @@ -0,0 +1,13 @@ + + */ +$lang['server'] = 'PostgreSQL sunucunuz'; +$lang['port'] = 'PostgreSQL sunucunuzun kapısı (port)'; +$lang['user'] = 'PostgreSQL kullanıcısının adı'; +$lang['password'] = 'Yukarıdaki kullanıcı için şifre'; +$lang['database'] = 'Kullanılacak veritabanı'; +$lang['debug'] = 'İlave hata ayıklama bilgisini görüntüle'; diff --git a/lib/plugins/extension/lang/tr/lang.php b/lib/plugins/extension/lang/tr/lang.php new file mode 100644 index 000000000..dfabfa715 --- /dev/null +++ b/lib/plugins/extension/lang/tr/lang.php @@ -0,0 +1,60 @@ + + */ +$lang['menu'] = 'Genişletme Yöneticisi'; +$lang['tab_plugins'] = 'Kurulmuş Eklentiler'; +$lang['tab_templates'] = 'Kurulmuş Şablonlar'; +$lang['tab_search'] = 'Ara ve Kur'; +$lang['tab_install'] = 'Elle Kurulum'; +$lang['notimplemented'] = 'Bu özellik henüz uygulamaya geçmemiştir'; +$lang['notinstalled'] = 'Bu genişletme yüklü değildir'; +$lang['alreadyenabled'] = 'Bu genişletme zaten etkinleştirilmiştir.'; +$lang['alreadydisabled'] = 'Bu genişletme zaten pasifleştirilmiştir'; +$lang['pluginlistsaveerror'] = 'Eklenti listesini kaydederken bir hata oluştu.'; +$lang['unknownauthor'] = 'Bilinmeyen yazar'; +$lang['unknownversion'] = 'Bilinmeyen sürüm'; +$lang['btn_info'] = 'Daha fazla bilgi göster'; +$lang['btn_update'] = 'Güncelle'; +$lang['btn_uninstall'] = 'Kaldır'; +$lang['btn_enable'] = 'Etkinleştir'; +$lang['btn_disable'] = 'Pasifleştir'; +$lang['btn_install'] = 'Kur'; +$lang['btn_reinstall'] = 'Yeniden kur'; +$lang['js']['reallydel'] = 'Genişletme gerçekten kaldırılsın mı?'; +$lang['search_for'] = 'Genişletme Ara:'; +$lang['search'] = 'Ara'; +$lang['extensionby'] = '%s tarafından %s'; +$lang['screenshot'] = '%s ekran görüntüsü'; +$lang['popularity'] = 'Rağbet: %s%%'; +$lang['homepage_link'] = 'Belgeler'; +$lang['bugs_features'] = 'Hatalar'; +$lang['tags'] = 'Etiketler:'; +$lang['author_hint'] = 'Bu yazarın genişletmelerini ara.'; +$lang['installed'] = 'Kurulu:'; +$lang['downloadurl'] = 'İndirme bağlantısı:'; +$lang['repository'] = 'Veri havuzu:'; +$lang['unknown'] = 'bilinmeyen'; +$lang['installed_version'] = 'Kurulu sürüm:'; +$lang['install_date'] = 'Son güncellemeniz:'; +$lang['available_version'] = 'Müsait sürüm:'; +$lang['compatible'] = 'Şununla uyumlu:'; +$lang['depends'] = 'Şuna bağımlı'; +$lang['similar'] = 'Şununla benzer'; +$lang['conflicts'] = 'Şununla çelişir'; +$lang['donate'] = 'Beğendiniz mi?'; +$lang['donate_action'] = 'Yazara bir kahve ısmarlayın!'; +$lang['repo_retry'] = 'Yeniden dene'; +$lang['provides'] = 'Sağlar:'; +$lang['status'] = 'Durum:'; +$lang['status_installed'] = 'kurulu'; +$lang['status_not_installed'] = 'kurulu değil'; +$lang['status_protected'] = 'korunmuş'; +$lang['status_enabled'] = 'etkin'; +$lang['status_disabled'] = 'hizmet dışı'; +$lang['status_unmodifiable'] = 'değiştirilemez'; +$lang['status_plugin'] = 'eklenti'; +$lang['status_template'] = 'şablon'; -- cgit v1.2.3 From abcba964d86c82f5cbf2c365420cdb4ffdbe5d7c Mon Sep 17 00:00:00 2001 From: Myeongjin Date: Sun, 1 Jun 2014 10:11:34 +0200 Subject: translation update --- inc/lang/ko/lang.php | 1 + lib/plugins/extension/lang/ko/lang.php | 1 + 2 files changed, 2 insertions(+) diff --git a/inc/lang/ko/lang.php b/inc/lang/ko/lang.php index 592b953b9..04caae4d8 100644 --- a/inc/lang/ko/lang.php +++ b/inc/lang/ko/lang.php @@ -289,6 +289,7 @@ $lang['i_modified'] = '보안 상의 이유로 이 스크립트는 다운로드한 압축 패키지를 다시 설치하거나 도쿠위키 설치 과정을 참고해서 설치하세요.'; $lang['i_funcna'] = '%s PHP 함수를 사용할 수 없습니다. 호스트 제공자가 어떤 이유에서인지 막아 놓았을지 모릅니다.'; $lang['i_phpver'] = 'PHP %s 버전은 필요한 %s 버전보다 오래되었습니다. PHP를 업그레이드할 필요가 있습니다.'; +$lang['i_mbfuncoverload'] = '도쿠위키를 실행하려면 mbstring.func_overload를 php.ini에서 비활성화해야 합니다.'; $lang['i_permfail'] = '%s는 도쿠위키가 쓰기 가능 권한이 없습니다. 먼저 이 디렉터리에 쓰기 권한이 설정되어야 합니다!'; $lang['i_confexists'] = '%s(은)는 이미 존재합니다'; $lang['i_writeerr'] = '%s(을)를 만들 수 없습니다. 먼저 디렉터리/파일 권한을 확인하고 파일을 수동으로 만드세요.'; diff --git a/lib/plugins/extension/lang/ko/lang.php b/lib/plugins/extension/lang/ko/lang.php index db0a49aef..53c9b4481 100644 --- a/lib/plugins/extension/lang/ko/lang.php +++ b/lib/plugins/extension/lang/ko/lang.php @@ -86,3 +86,4 @@ $lang['nopluginperms'] = '플러그인 디렉터리에 쓸 수 없습니 $lang['git'] = '이 확장 기능은 git을 통해 설치되었으며, 여기에서 업데이트할 수 없을 수 있습니다.'; $lang['install_url'] = 'URL에서 설치:'; $lang['install_upload'] = '확장 기능 올리기:'; +$lang['repo_error'] = '플러그인 저장소에 연결할 수 없습니다. 서버가 www.dokuwiki.org에 연결할 수 있는지 확인하고 프록시 설정을 확인하세요.'; -- cgit v1.2.3 From e1f856bac8f154dbb5a51c739630e38115fbbe0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aivars=20Mi=C5=A1ka?= Date: Tue, 10 Jun 2014 16:51:41 +0200 Subject: translation update --- inc/lang/lv/lang.php | 3 +++ lib/plugins/authad/lang/lv/settings.php | 3 +++ lib/plugins/authldap/lang/lv/settings.php | 9 +++++++++ lib/plugins/authmysql/lang/lv/settings.php | 10 ++++++++++ lib/plugins/authpgsql/lang/lv/settings.php | 9 +++++++++ lib/plugins/extension/lang/lv/intro_templates.txt | 1 + lib/plugins/extension/lang/lv/lang.php | 8 ++++++++ lib/plugins/usermanager/lang/lv/import.txt | 9 +++++++++ 8 files changed, 52 insertions(+) create mode 100644 lib/plugins/authldap/lang/lv/settings.php create mode 100644 lib/plugins/authmysql/lang/lv/settings.php create mode 100644 lib/plugins/authpgsql/lang/lv/settings.php create mode 100644 lib/plugins/extension/lang/lv/intro_templates.txt create mode 100644 lib/plugins/extension/lang/lv/lang.php create mode 100644 lib/plugins/usermanager/lang/lv/import.txt diff --git a/inc/lang/lv/lang.php b/inc/lang/lv/lang.php index b1fa9a1c4..e754a9dfd 100644 --- a/inc/lang/lv/lang.php +++ b/inc/lang/lv/lang.php @@ -81,6 +81,8 @@ $lang['profchanged'] = 'Profils veiksmīgi izlabots.'; $lang['profnodelete'] = 'Šajā viki lietotājus izdzēst nevar'; $lang['profdeleteuser'] = 'Dzēst kontu'; $lang['profdeleted'] = 'Jūsu lietotāja konts ir izdzēsts'; +$lang['profconfdelete'] = 'Es vēlos dzēst savu kontu no viki.
    Šo darbību vairs nevarēs atsaukt.'; +$lang['profconfdeletemissing'] = 'Nav atzīmēta apstiprinājuma rūtiņa.'; $lang['pwdforget'] = 'Aizmirsi paroli? Saņem jaunu'; $lang['resendna'] = 'Paroļu izsūtīšanu nepiedāvāju.'; $lang['resendpwd'] = 'Uzstādīt jaunu paroli lietotājam'; @@ -333,3 +335,4 @@ $lang['media_restore'] = 'Atjaunot šo versiju'; $lang['currentns'] = 'Pašreizējā sadaļa'; $lang['searchresult'] = 'Meklēšanas rezultāti'; $lang['plainhtml'] = 'Tīrs HTML'; +$lang['wikimarkup'] = 'Viki iezīmēšana valoda'; diff --git a/lib/plugins/authad/lang/lv/settings.php b/lib/plugins/authad/lang/lv/settings.php index e32e91452..5272d27d0 100644 --- a/lib/plugins/authad/lang/lv/settings.php +++ b/lib/plugins/authad/lang/lv/settings.php @@ -5,4 +5,7 @@ * * @author Aivars Miška */ +$lang['account_suffix'] = 'Jūsu konta sufikss. Piemēram, @my.domain.org'; $lang['domain_controllers'] = 'Ar komatiem atdalīts domēna kontroleru saraksts. Piemēram, srv1.domain.org,srv2.domain.org'; +$lang['admin_password'] = 'Minētā lietotāja parole.'; +$lang['expirywarn'] = 'Cik dienas iepriekš brīdināt lietotāju par paroles termiņa beigām. Ierakstīt 0, lai atspējotu.'; diff --git a/lib/plugins/authldap/lang/lv/settings.php b/lib/plugins/authldap/lang/lv/settings.php new file mode 100644 index 000000000..90986e4f1 --- /dev/null +++ b/lib/plugins/authldap/lang/lv/settings.php @@ -0,0 +1,9 @@ + + */ +$lang['starttls'] = 'Lietot TLS savienojumus?'; +$lang['bindpw'] = 'Lietotāja parole'; diff --git a/lib/plugins/authmysql/lang/lv/settings.php b/lib/plugins/authmysql/lang/lv/settings.php new file mode 100644 index 000000000..8550363c9 --- /dev/null +++ b/lib/plugins/authmysql/lang/lv/settings.php @@ -0,0 +1,10 @@ + + */ +$lang['user'] = 'MySQL lietotāja vārds'; +$lang['password'] = 'Lietotāja parole'; +$lang['delUser'] = 'SQL pieprasījums lietotāja dzēšanai'; diff --git a/lib/plugins/authpgsql/lang/lv/settings.php b/lib/plugins/authpgsql/lang/lv/settings.php new file mode 100644 index 000000000..889b9566c --- /dev/null +++ b/lib/plugins/authpgsql/lang/lv/settings.php @@ -0,0 +1,9 @@ + + */ +$lang['password'] = 'Lietotāja parole'; +$lang['delUser'] = 'SQL pieprasījums lietotāja dzēšanai'; diff --git a/lib/plugins/extension/lang/lv/intro_templates.txt b/lib/plugins/extension/lang/lv/intro_templates.txt new file mode 100644 index 000000000..1014c7c1e --- /dev/null +++ b/lib/plugins/extension/lang/lv/intro_templates.txt @@ -0,0 +1 @@ +DokuWiki ir instalēti šādi šabloni. Lietojamo šablonu var norādīt [[?do=admin&page=config|Konfigurācijas lapā]]. \ No newline at end of file diff --git a/lib/plugins/extension/lang/lv/lang.php b/lib/plugins/extension/lang/lv/lang.php new file mode 100644 index 000000000..e7e9bdfd9 --- /dev/null +++ b/lib/plugins/extension/lang/lv/lang.php @@ -0,0 +1,8 @@ + + */ +$lang['msg_delete_success'] = 'Papildinājums atinstalēts'; diff --git a/lib/plugins/usermanager/lang/lv/import.txt b/lib/plugins/usermanager/lang/lv/import.txt new file mode 100644 index 000000000..0006ae850 --- /dev/null +++ b/lib/plugins/usermanager/lang/lv/import.txt @@ -0,0 +1,9 @@ +===== Masveida lietotāju imports ===== + +Vajag CSV failu ar vismaz četrām lietotāju datu kolonām šādā secībā: identifikators, pilns vārds, e-pasta adrese un grupas. + +CSV lauki jāatdala ar komatiem (,) un virknes — ar pēdiņām (%%""%%). Backslash (\) can be used for escaping. +Derīga faila paraugam izmantojiem augtāk redzamo "Lietotāju eksportu". +Dublētus identifikatorus ignorēs. + +Paroli katram veiksmīgi importētajam lietotājam izveidos un nosūtīs pa e-pastu. \ No newline at end of file -- cgit v1.2.3 From 3d52ea03ba3d0277a133d3f51870215b07a4594a Mon Sep 17 00:00:00 2001 From: YoBoY Date: Tue, 10 Jun 2014 22:51:34 +0200 Subject: translation update --- inc/lang/fr/lang.php | 3 ++- inc/lang/fr/subscr_form.txt | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/inc/lang/fr/lang.php b/inc/lang/fr/lang.php index 7631a120f..4d1ea14d4 100644 --- a/inc/lang/fr/lang.php +++ b/inc/lang/fr/lang.php @@ -34,6 +34,7 @@ * @author David VANTYGHEM * @author Caillot * @author Schplurtz le Déboulonné + * @author YoBoY */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -66,7 +67,7 @@ $lang['btn_delete'] = 'Effacer'; $lang['btn_back'] = 'Retour'; $lang['btn_backlink'] = 'Liens de retour'; $lang['btn_backtomedia'] = 'Retour à la sélection du fichier média'; -$lang['btn_subscribe'] = 'S\'abonner à cette page'; +$lang['btn_subscribe'] = 'Gérer souscriptions'; $lang['btn_profile'] = 'Mettre à jour le profil'; $lang['btn_reset'] = 'Réinitialiser'; $lang['btn_resendpwd'] = 'Définir un nouveau mot de passe'; diff --git a/inc/lang/fr/subscr_form.txt b/inc/lang/fr/subscr_form.txt index 94e70afbd..d68c05e6a 100644 --- a/inc/lang/fr/subscr_form.txt +++ b/inc/lang/fr/subscr_form.txt @@ -1,3 +1,3 @@ -====== Gestion de l'abonnement ====== +====== Gestion des souscriptions ====== -Cette page vous permet de gérer vos abonnements à la page et à la catégorie courantes. \ No newline at end of file +Cette page vous permet de gérer vos souscriptions pour suivre les modifications sur la page et sur la catégorie courante. \ No newline at end of file -- cgit v1.2.3 From 15046da6a171e605141e88032b3d25a4292838b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1ty=C3=A1s=20Jani?= Date: Thu, 12 Jun 2014 10:21:37 +0200 Subject: translation update --- inc/lang/hu/lang.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/inc/lang/hu/lang.php b/inc/lang/hu/lang.php index 6efccad39..c5a3259fb 100644 --- a/inc/lang/hu/lang.php +++ b/inc/lang/hu/lang.php @@ -13,6 +13,7 @@ * @author Marton Sebok * @author Serenity87HUN * @author Marina Vladi + * @author Mátyás Jani */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -59,7 +60,7 @@ $lang['btn_media'] = 'Médiakezelő'; $lang['btn_deleteuser'] = 'Felhasználói fiókom eltávolítása'; $lang['btn_img_backto'] = 'Vissza %s'; $lang['btn_mediaManager'] = 'Megtekintés a médiakezelőben'; -$lang['loggedinas'] = 'Belépett felhasználó: '; +$lang['loggedinas'] = 'Belépett felhasználó'; $lang['user'] = 'Azonosító'; $lang['pass'] = 'Jelszó'; $lang['newpass'] = 'Új jelszó'; -- cgit v1.2.3 From d96ca44fc9a1ee346cfda97d7a66b8d7716e6031 Mon Sep 17 00:00:00 2001 From: Tanguy Ortolo Date: Sun, 8 Jun 2014 19:10:25 +0200 Subject: Replace two non-free icons by free alternatives --- lib/plugins/extension/images/disabled.png | Bin 1486 -> 1396 bytes lib/plugins/extension/images/enabled.png | Bin 1231 -> 1398 bytes lib/plugins/extension/images/license.txt | 4 ++-- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/plugins/extension/images/disabled.png b/lib/plugins/extension/images/disabled.png index 7a0dbb3b5..93a813642 100644 Binary files a/lib/plugins/extension/images/disabled.png and b/lib/plugins/extension/images/disabled.png differ diff --git a/lib/plugins/extension/images/enabled.png b/lib/plugins/extension/images/enabled.png index 7c051cda1..92d958802 100644 Binary files a/lib/plugins/extension/images/enabled.png and b/lib/plugins/extension/images/enabled.png differ diff --git a/lib/plugins/extension/images/license.txt b/lib/plugins/extension/images/license.txt index 254b9cdf6..44e176ac9 100644 --- a/lib/plugins/extension/images/license.txt +++ b/lib/plugins/extension/images/license.txt @@ -1,4 +1,4 @@ -enabled.png - CC-BY-ND, (c) Emey87 http://www.iconfinder.com/icondetails/65590/48/lightbulb_icon -disabled.png - CC-BY-ND, (c) Emey87 http://www.iconfinder.com/icondetails/65589/48/idea_lightbulb_off_icon +enabled.png - CC0, (c) Tanguy Ortolo +disabled.png - public domain, (c) Tango Desktop Project http://commons.wikimedia.org/wiki/File:Dialog-information.svg plugin.png - public domain, (c) nicubunu, http://openclipart.org/detail/15093/blue-jigsaw-piece-07-by-nicubunu template.png - public domain, (c) mathec, http://openclipart.org/detail/166596/palette-by-mathec -- cgit v1.2.3 From 8c66b72dd479bad18be7571cb97f8b09cc65488c Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Thu, 19 Jun 2014 12:01:49 +0200 Subject: fix IE upload when Array prototype has been modified The edittable plugin broke uploading in IE8 (and maybe others) because the Handsontable script adds a function to the Array prototype and the uploading script did not properly check that. --- lib/scripts/fileuploader.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/scripts/fileuploader.js b/lib/scripts/fileuploader.js index e75b8d3a5..d6278950b 100644 --- a/lib/scripts/fileuploader.js +++ b/lib/scripts/fileuploader.js @@ -226,7 +226,9 @@ qq.obj2url = function(obj, temp, prefixDone){ } else if ((typeof obj != 'undefined') && (obj !== null) && (typeof obj === "object")){ // for anything else but a scalar, we will use for-in-loop for (var i in obj){ - add(obj[i], i); + if(obj.hasOwnProperty(i) && typeof obj[i] != 'function') { + add(obj[i], i); + } } } else { uristrings.push(encodeURIComponent(temp) + '=' + encodeURIComponent(obj)); -- cgit v1.2.3 From 2613efa18dacc46df06cc448fee733c0467a073f Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 22 Jun 2014 00:00:41 +0200 Subject: allow config presets with installer this adds the ability to place a install.conf file next to the install.php which contains additional config options to be written to conf/local.php on completion of the installer. The install.conf is automatically deleted then. This is useful for automated DokuWiki installers or downloaders that take care of downloading DokuWiki and then drop the user in the default install dialog for initial setup. These tools may set up host specific things options like rewrites, image magic path or file permission settings in this preset. --- install.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/install.php b/install.php index 20402d3ff..767dd332f 100644 --- a/install.php +++ b/install.php @@ -58,6 +58,7 @@ $dokuwiki_hash = array( '2013-05-10' => '7b62b75245f57f122d3e0f8ed7989623', '2013-12-08' => '263c76af309fbf083867c18a34ff5214', '2014-05-05' => '263c76af309fbf083867c18a34ff5214', + 'devel' => 'b3ddc3f793eac8c135176e535054c00a', ); @@ -350,6 +351,16 @@ function store_data($d){ */ EOT; + // add any config options set by a previous installer + $preset = __DIR__.'/install.conf'; + if(file_exists($preset)){ + $output .= "# preset config options\n"; + $output .= file_get_contents($preset); + $output .= "\n\n"; + $output .= "# options selected in installer\n"; + @unlink($preset); + } + $output .= '$conf[\'title\'] = \''.addslashes($d['title'])."';\n"; $output .= '$conf[\'lang\'] = \''.addslashes($LC)."';\n"; $output .= '$conf[\'license\'] = \''.addslashes($d['license'])."';\n"; -- cgit v1.2.3 From 5fd5f78803a876c5808be4d3ba63cc5b85754f25 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 22 Jun 2014 21:00:52 +0200 Subject: fixed template color replacement preview --- lib/tpl/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/tpl/index.php b/lib/tpl/index.php index 3c00ab8e8..558f262a7 100644 --- a/lib/tpl/index.php +++ b/lib/tpl/index.php @@ -46,7 +46,7 @@ require_once(DOKU_INC.'inc/init.php'); // get merged style.ini define('SIMPLE_TEST', true); // hack to prevent css output and headers require_once(DOKU_INC.'lib/exe/css.php'); -$ini = css_styleini(tpl_incdir()); +$ini = css_styleini($conf['template']); if ($ini) { echo ''; -- cgit v1.2.3 From e8a2a143c4b67d54a907322b992320c2c778dafa Mon Sep 17 00:00:00 2001 From: Michael Hamann Date: Wed, 25 Jun 2014 15:55:20 +0200 Subject: Quick fix for #765 - ACL checks in the media manager ajax calls This should be superseded by a proper rewrite of the media manager code --- inc/template.php | 10 +++++----- lib/exe/ajax.php | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/inc/template.php b/inc/template.php index 2455adb96..c02c9f1ae 100644 --- a/inc/template.php +++ b/inc/template.php @@ -1428,14 +1428,14 @@ function tpl_mediaFileList() { * @author Kate Arzamastseva */ function tpl_mediaFileDetails($image, $rev) { - global $AUTH, $NS, $conf, $DEL, $lang; + global $conf, $DEL, $lang; /** @var Input $INPUT */ global $INPUT; $removed = (!file_exists(mediaFN($image)) && file_exists(mediaMetaFN($image, '.changes')) && $conf['mediarevisions']); if(!$image || (!file_exists(mediaFN($image)) && !$removed) || $DEL) return; if($rev && !file_exists(mediaFN($image, $rev))) $rev = false; - if(isset($NS) && getNS($image) != $NS) return; + $ns = getNS($image); $do = $INPUT->str('mediado'); $opened_tab = $INPUT->str('tab_details'); @@ -1471,13 +1471,13 @@ function tpl_mediaFileDetails($image, $rev) { echo '
    '.NL; if($opened_tab == 'view') { - media_tab_view($image, $NS, $AUTH, $rev); + media_tab_view($image, $ns, null, $rev); } elseif($opened_tab == 'edit' && !$removed) { - media_tab_edit($image, $NS, $AUTH); + media_tab_edit($image, $ns); } elseif($opened_tab == 'history' && $conf['mediarevisions']) { - media_tab_history($image, $NS, $AUTH); + media_tab_history($image, $ns); } echo '
    '.NL; diff --git a/lib/exe/ajax.php b/lib/exe/ajax.php index 1000094bc..a200a3ded 100644 --- a/lib/exe/ajax.php +++ b/lib/exe/ajax.php @@ -254,7 +254,7 @@ function ajax_mediadiff(){ $image = ''; if ($INPUT->has('image')) $image = cleanID($INPUT->str('image')); - $NS = $INPUT->post->str('ns'); + $NS = getNS($image); $auth = auth_quickaclcheck("$NS:*"); media_diff($image, $NS, $auth, true); } -- cgit v1.2.3 From 19c79f280ec0a6badedd7c65be041ef5fdcb8cb9 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Wed, 25 Jun 2014 19:17:45 +0200 Subject: icreased message version --- doku.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doku.php b/doku.php index afaf79c2f..da3643544 100644 --- a/doku.php +++ b/doku.php @@ -9,7 +9,7 @@ */ // update message version -$updateVersion = 44; +$updateVersion = 45; // xdebug_start_profiling(); -- cgit v1.2.3 From 9743dcfbdf435d214e3ef1fd24aae0ca50a9c87f Mon Sep 17 00:00:00 2001 From: Ednei Date: Mon, 30 Jun 2014 16:01:43 +0200 Subject: translation update --- inc/lang/pt-br/lang.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/inc/lang/pt-br/lang.php b/inc/lang/pt-br/lang.php index 53ed3fccd..4f1baf22c 100644 --- a/inc/lang/pt-br/lang.php +++ b/inc/lang/pt-br/lang.php @@ -23,6 +23,7 @@ * @author Leone Lisboa Magevski * @author Dário Estevão * @author Juliano Marconi Lanigra + * @author Ednei */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -67,6 +68,8 @@ $lang['btn_register'] = 'Cadastre-se'; $lang['btn_apply'] = 'Aplicar'; $lang['btn_media'] = 'Gerenciador de mídias'; $lang['btn_deleteuser'] = 'Remover minha conta'; +$lang['btn_img_backto'] = 'Voltar para %s'; +$lang['btn_mediaManager'] = 'Ver no gerenciador de mídias'; $lang['loggedinas'] = 'Identificado(a) como:'; $lang['user'] = 'Nome de usuário'; $lang['pass'] = 'Senha'; @@ -198,6 +201,9 @@ $lang['difflink'] = 'Link para esta página de comparações'; $lang['diff_type'] = 'Ver as diferenças:'; $lang['diff_inline'] = 'Mescladas'; $lang['diff_side'] = 'Lado a lado'; +$lang['diffprevrev'] = 'Revisão anterior'; +$lang['diffnextrev'] = 'Próxima revisão'; +$lang['difflastrev'] = 'Última revisão'; $lang['line'] = 'Linha'; $lang['breadcrumb'] = 'Visitou:'; $lang['youarehere'] = 'Você está aqui:'; @@ -254,7 +260,6 @@ $lang['admin_register'] = 'Adicionar novo usuário'; $lang['metaedit'] = 'Editar metadados'; $lang['metasaveerr'] = 'Não foi possível escrever os metadados'; $lang['metasaveok'] = 'Os metadados foram salvos'; -$lang['btn_img_backto'] = 'Voltar para %s'; $lang['img_title'] = 'Título:'; $lang['img_caption'] = 'Descrição:'; $lang['img_date'] = 'Data:'; @@ -267,7 +272,6 @@ $lang['img_camera'] = 'Câmera:'; $lang['img_keywords'] = 'Palavras-chave:'; $lang['img_width'] = 'Largura:'; $lang['img_height'] = 'Altura:'; -$lang['btn_mediaManager'] = 'Ver no gerenciador de mídias'; $lang['subscr_subscribe_success'] = 'Adicionado %s à lista de monitoramentos de %s'; $lang['subscr_subscribe_error'] = 'Ocorreu um erro na adição de %s à lista de monitoramentos de %s'; $lang['subscr_subscribe_noaddress'] = 'Como não há nenhum endereço associado ao seu usuário, você não pode ser adicionado à lista de monitoramento'; @@ -296,6 +300,7 @@ $lang['i_modified'] = 'Por questões de segurança, esse script funci Você pode extrair novamente os arquivos do pacote original ou consultar as instruções de instalação do DokuWiki.'; $lang['i_funcna'] = 'A função PHP %s não está disponível. O seu host a mantém desabilitada por algum motivo?'; $lang['i_phpver'] = 'A sua versão do PHP (%s) é inferior à necessária (%s). Você precisa atualizar a sua instalação do PHP.'; +$lang['i_mbfuncoverload'] = 'mbstring.func_overload precisa ser desabilitado no php.ini para executar o DokuWiki'; $lang['i_permfail'] = 'O DokuWiki não tem permissão de escrita em %s. Você precisa corrigir as configurações de permissão nesse diretório!'; $lang['i_confexists'] = '%s já existe'; $lang['i_writeerr'] = 'Não foi possível criar %s. É necessário checar as permissões de arquivos/diretórios e criar o arquivo manualmente.'; -- cgit v1.2.3 From cedfb22bac4b6df73fc632fd5b19a3893f62268b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20Bergstr=C3=B6m?= Date: Tue, 1 Jul 2014 02:55:55 +0200 Subject: translation update --- inc/lang/sv/lang.php | 7 ++++--- lib/plugins/revert/lang/sv/lang.php | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/inc/lang/sv/lang.php b/inc/lang/sv/lang.php index 375ed3ee8..1f129c621 100644 --- a/inc/lang/sv/lang.php +++ b/inc/lang/sv/lang.php @@ -20,6 +20,7 @@ * @author Henrik * @author Tor Härnqvist * @author Hans Iwan Bratt + * @author Mikael Bergström */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -62,8 +63,10 @@ $lang['btn_draftdel'] = 'Radera utkast'; $lang['btn_revert'] = 'Återställ'; $lang['btn_register'] = 'Registrera'; $lang['btn_apply'] = 'Verkställ'; -$lang['btn_media'] = 'Media Hanteraren'; +$lang['btn_media'] = 'Mediahanteraren'; $lang['btn_deleteuser'] = 'Ta bort Mitt Konto'; +$lang['btn_img_backto'] = 'Tillbaka till %s'; +$lang['btn_mediaManager'] = 'Se mediahanteraren'; $lang['loggedinas'] = 'Inloggad som:'; $lang['user'] = 'Användarnamn'; $lang['pass'] = 'Lösenord'; @@ -249,7 +252,6 @@ $lang['admin_register'] = 'Lägg till ny användare'; $lang['metaedit'] = 'Redigera metadata'; $lang['metasaveerr'] = 'Skrivning av metadata misslyckades'; $lang['metasaveok'] = 'Metadata sparad'; -$lang['btn_img_backto'] = 'Tillbaka till %s'; $lang['img_title'] = 'Rubrik:'; $lang['img_caption'] = 'Bildtext:'; $lang['img_date'] = 'Datum:'; @@ -262,7 +264,6 @@ $lang['img_camera'] = 'Kamera:'; $lang['img_keywords'] = 'Nyckelord:'; $lang['img_width'] = 'Bredd:'; $lang['img_height'] = 'Höjd:'; -$lang['btn_mediaManager'] = 'Se mediahanteraren'; $lang['subscr_subscribe_success'] = 'La till %s till prenumerationslista %s'; $lang['subscr_subscribe_noaddress'] = 'Det finns ingen adress associerad med din inloggning, du kan inte bli tillagd i prenumerationslistan'; $lang['subscr_unsubscribe_success'] = '%s borttagen från prenumerationslistan för %s'; diff --git a/lib/plugins/revert/lang/sv/lang.php b/lib/plugins/revert/lang/sv/lang.php index e605a17d4..504332bae 100644 --- a/lib/plugins/revert/lang/sv/lang.php +++ b/lib/plugins/revert/lang/sv/lang.php @@ -19,6 +19,7 @@ * @author Henrik * @author Tor Härnqvist * @author Hans Iwan Bratt + * @author Mikael Bergström */ $lang['menu'] = 'Hantera återställningar'; $lang['filter'] = 'Sök efter spamsidor'; -- cgit v1.2.3 From f95ecbbf8b1de8bc1270d3cf91dfdf055ea5c78c Mon Sep 17 00:00:00 2001 From: Angus Gratton Date: Tue, 1 Jul 2014 08:35:07 +1000 Subject: authplain: Escape ':' in any data field as '\:' ':' is the field delimiter in the authplain flat text conf/users.auth.php file, but it's also used as an internal delimiter for the 'mediawiki' password hash format. Currently using this hash format corrupts the file This change escapes ':' as '\:' in any field in the users.auth.php file, and any '\' as '\\'. Also adds test cases for escaping modes. --- lib/plugins/authplain/_test/escaping.test.php | 82 +++++++++++++++++++++++++++ lib/plugins/authplain/auth.php | 33 +++++++++-- 2 files changed, 110 insertions(+), 5 deletions(-) create mode 100644 lib/plugins/authplain/_test/escaping.test.php diff --git a/lib/plugins/authplain/_test/escaping.test.php b/lib/plugins/authplain/_test/escaping.test.php new file mode 100644 index 000000000..cd5294157 --- /dev/null +++ b/lib/plugins/authplain/_test/escaping.test.php @@ -0,0 +1,82 @@ +auth = new auth_plugin_authplain(); + } + + function setUp() { + global $config_cascade; + parent::setUp(); + $name = $config_cascade['plainauth.users']['default']; + copy($name, $name.".orig"); + $this->reloadUsers(); + } + + function tearDown() { + global $config_cascade; + parent::tearDown(); + $name = $config_cascade['plainauth.users']['default']; + copy($name.".orig", $name); + } + + public function testMediawikiPasswordHash() { + global $conf; + $conf['passcrypt'] = 'mediawiki'; + $this->auth->createUser("mwuser", "12345", "Mediawiki User", "me@example.com"); + $this->reloadUsers(); + $this->assertTrue($this->auth->checkPass("mwuser", "12345")); + $mwuser = $this->auth->getUserData("mwuser"); + $this->assertStringStartsWith(":B:",$mwuser['pass']); + $this->assertEquals("Mediawiki User",$mwuser['name']); + } + + public function testNameWithColons() { + $name = ":Colon: User:"; + $this->auth->createUser("colonuser", "password", $name, "me@example.com"); + $this->reloadUsers(); + $user = $this->auth->getUserData("colonuser"); + $this->assertEquals($name,$user['name']); + } + + public function testNameWithBackslashes() { + $name = "\\Slash\\ User\\"; + $this->auth->createUser("slashuser", "password", $name, "me@example.com"); + $this->reloadUsers(); + $user = $this->auth->getUserData("slashuser"); + $this->assertEquals($name,$user['name']); + } + + public function testModifyUser() { + global $conf; + $conf['passcrypt'] = 'mediawiki'; + $user = $this->auth->getUserData("testuser"); + $user['name'] = "\\New:Crazy:Name\\"; + $user['pass'] = "awesome new password"; + $this->auth->modifyUser("testuser", $user); + $this->reloadUsers(); + + $saved = $this->auth->getUserData("testuser"); + $this->assertEquals($saved['name'], $user['name']); + $this->assertTrue($this->auth->checkPass("testuser", $user['pass'])); + } + +} + +?> \ No newline at end of file diff --git a/lib/plugins/authplain/auth.php b/lib/plugins/authplain/auth.php index 8c4ce0dd9..e53f56667 100644 --- a/lib/plugins/authplain/auth.php +++ b/lib/plugins/authplain/auth.php @@ -83,6 +83,27 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { return isset($this->users[$user]) ? $this->users[$user] : false; } + /** + * Creates a string suitable for saving as a line + * in the file database + * (delimiters escaped, etc.) + * + * @param string $user + * @param string $pass + * @param string $name + * @param string $mail + * @param array $grps list of groups the user is in + * @return string + */ + protected function _createUserLine($user, $pass, $name, $mail, $grps) { + $groups = join(',', $grps); + $userline = array($user, $pass, $name, $mail, $groups); + $userline = str_replace('\\', '\\\\', $userline); // escape \ as \\ + $userline = str_replace(':', '\\:', $userline); // escape : as \: + $userline = join(':', $userline)."\n"; + return $userline; + } + /** * Create a new User * @@ -115,8 +136,7 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { if(!is_array($grps)) $grps = array($conf['defaultgroup']); // prepare user line - $groups = join(',', $grps); - $userline = join(':', array($user, $pass, $name, $mail, $groups))."\n"; + $userline = $this->_createUserLine($user, $pass, $name, $mail, $grps); if(io_saveFile($config_cascade['plainauth.users']['default'], $userline, true)) { $this->users[$user] = compact('pass', 'name', 'mail', 'grps'); @@ -157,8 +177,7 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $userinfo[$field] = $value; } - $groups = join(',', $userinfo['grps']); - $userline = join(':', array($newuser, $userinfo['pass'], $userinfo['name'], $userinfo['mail'], $groups))."\n"; + $userline = $this->_createUserLine($newuser, $userinfo['pass'], $userinfo['name'], $userinfo['mail'], $userinfo['grps']); if(!$this->deleteUsers(array($user))) { msg('Unable to modify user data. Please inform the Wiki-Admin', -1); @@ -308,7 +327,11 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $line = trim($line); if(empty($line)) continue; - $row = explode(":", $line, 5); + /* NB: preg_split can be deprecated/replaced with str_getcsv once dokuwiki is min php 5.3 */ + $row = preg_split('/(?users[$row[0]]['pass'] = $row[1]; -- cgit v1.2.3 From cdef888bb16a8d7a76db1ee6645b7a412a614a0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 07:21:33 +0200 Subject: translation update --- inc/lang/es/edit.txt | 2 +- inc/lang/es/lang.php | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/inc/lang/es/edit.txt b/inc/lang/es/edit.txt index 55c3c1dc5..8a6a7b49d 100644 --- a/inc/lang/es/edit.txt +++ b/inc/lang/es/edit.txt @@ -1,2 +1,2 @@ -Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para sintaxis Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres testear algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. +Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para la sintaxis del Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres probar algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..e92f201b1 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -44,13 +45,13 @@ $lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; $lang['apostrophe'] = '’'; $lang['btn_edit'] = 'Editar esta página'; -$lang['btn_source'] = 'Ver fuente'; +$lang['btn_source'] = 'Ver la fuente de esta página'; $lang['btn_show'] = 'Ver página'; $lang['btn_create'] = 'Crear esta página'; $lang['btn_search'] = 'Buscar'; $lang['btn_save'] = 'Guardar'; $lang['btn_preview'] = 'Previsualización'; -$lang['btn_top'] = 'Ir hasta arriba'; +$lang['btn_top'] = 'Volver arriba'; $lang['btn_newer'] = '<< más reciente'; $lang['btn_older'] = 'menos reciente >>'; $lang['btn_revs'] = 'Revisiones antiguas'; -- cgit v1.2.3 From a3e7723b698dcd2d8e75f74927aacbe699b46942 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 07:46:28 +0200 Subject: translation update --- inc/lang/es/edit.txt | 2 +- inc/lang/es/lang.php | 11 ++++++----- lib/plugins/extension/lang/es/lang.php | 10 ++++++++++ 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/inc/lang/es/edit.txt b/inc/lang/es/edit.txt index 55c3c1dc5..8a6a7b49d 100644 --- a/inc/lang/es/edit.txt +++ b/inc/lang/es/edit.txt @@ -1,2 +1,2 @@ -Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para sintaxis Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres testear algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. +Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para la sintaxis del Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres probar algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..15a6e8191 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -44,13 +45,13 @@ $lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; $lang['apostrophe'] = '’'; $lang['btn_edit'] = 'Editar esta página'; -$lang['btn_source'] = 'Ver fuente'; +$lang['btn_source'] = 'Ver la fuente de esta página'; $lang['btn_show'] = 'Ver página'; $lang['btn_create'] = 'Crear esta página'; $lang['btn_search'] = 'Buscar'; $lang['btn_save'] = 'Guardar'; $lang['btn_preview'] = 'Previsualización'; -$lang['btn_top'] = 'Ir hasta arriba'; +$lang['btn_top'] = 'Volver arriba'; $lang['btn_newer'] = '<< más reciente'; $lang['btn_older'] = 'menos reciente >>'; $lang['btn_revs'] = 'Revisiones antiguas'; @@ -77,11 +78,11 @@ $lang['btn_draftdel'] = 'Eliminar borrador'; $lang['btn_revert'] = 'Restaurar'; $lang['btn_register'] = 'Registrarse'; $lang['btn_apply'] = 'Aplicar'; -$lang['btn_media'] = 'Gestor de ficheros'; +$lang['btn_media'] = 'Administrador de Ficheros'; $lang['btn_deleteuser'] = 'Elimina Mi Cuenta'; $lang['btn_img_backto'] = 'Volver a %s'; -$lang['btn_mediaManager'] = 'Ver en el Administrador de medios'; -$lang['loggedinas'] = 'Conectado como :'; +$lang['btn_mediaManager'] = 'Ver en el administrador de ficheros'; +$lang['loggedinas'] = 'Conectado como:'; $lang['user'] = 'Usuario'; $lang['pass'] = 'Contraseña'; $lang['newpass'] = 'Nueva contraseña'; diff --git a/lib/plugins/extension/lang/es/lang.php b/lib/plugins/extension/lang/es/lang.php index 16e87f587..c99e98865 100644 --- a/lib/plugins/extension/lang/es/lang.php +++ b/lib/plugins/extension/lang/es/lang.php @@ -5,7 +5,9 @@ * * @author Antonio Bueno * @author Antonio Castilla + * @author Jonathan Hernández */ +$lang['menu'] = 'Administrador de Extensiones '; $lang['tab_plugins'] = 'Plugins instalados'; $lang['tab_templates'] = 'Plantillas instaladas'; $lang['tab_search'] = 'Buscar e instalar'; @@ -47,6 +49,8 @@ $lang['similar'] = 'Similar a:'; $lang['conflicts'] = 'Conflictos con:'; $lang['donate'] = '¿Cómo está?'; $lang['donate_action'] = '¡Págale un café al autor!'; +$lang['repo_retry'] = 'Trate otra vez'; +$lang['provides'] = 'Provee: '; $lang['status'] = 'Estado:'; $lang['status_installed'] = 'instalado'; $lang['status_not_installed'] = 'no instalado'; @@ -56,6 +60,7 @@ $lang['status_disabled'] = 'desactivado'; $lang['status_unmodifiable'] = 'no modificable'; $lang['status_plugin'] = 'plugin'; $lang['status_template'] = 'plantilla'; +$lang['status_bundled'] = 'agrupado'; $lang['msg_enabled'] = 'Plugin %s activado'; $lang['msg_disabled'] = 'Plugin %s desactivado'; $lang['msg_delete_success'] = 'Extensión desinstalada'; @@ -64,3 +69,8 @@ $lang['msg_template_update_success'] = 'Plantilla %s actualizada con éxito'; $lang['msg_plugin_install_success'] = 'Plugin %s instalado con éxito'; $lang['msg_plugin_update_success'] = 'Plugin %s actualizado con éxito'; $lang['msg_upload_failed'] = 'Falló la carga del archivo'; +$lang['missing_dependency'] = 'Dependencia deshabilitada o perdida: %s'; +$lang['security_issue'] = 'Problema de seguridad: %s'; +$lang['security_warning'] = 'Aviso de seguridad: %s'; +$lang['update_available'] = 'Actualizar: Nueva versión %s disponible.'; +$lang['wrong_folder'] = '"Plugin" instalado incorrectamente: Cambie el nombre del directorio del plugin "%s" a "%s".'; -- cgit v1.2.3 From f5ff3ceb78b35e5a23887a9948f761457a4ab9cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 08:20:59 +0200 Subject: translation update --- inc/lang/es/edit.txt | 2 +- inc/lang/es/lang.php | 11 ++++++----- lib/plugins/extension/lang/es/lang.php | 18 ++++++++++++++++++ lib/plugins/usermanager/lang/es/lang.php | 7 ++++++- 4 files changed, 31 insertions(+), 7 deletions(-) diff --git a/inc/lang/es/edit.txt b/inc/lang/es/edit.txt index 55c3c1dc5..8a6a7b49d 100644 --- a/inc/lang/es/edit.txt +++ b/inc/lang/es/edit.txt @@ -1,2 +1,2 @@ -Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para sintaxis Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres testear algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. +Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para la sintaxis del Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres probar algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..15a6e8191 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -44,13 +45,13 @@ $lang['singlequoteopening'] = '‘'; $lang['singlequoteclosing'] = '’'; $lang['apostrophe'] = '’'; $lang['btn_edit'] = 'Editar esta página'; -$lang['btn_source'] = 'Ver fuente'; +$lang['btn_source'] = 'Ver la fuente de esta página'; $lang['btn_show'] = 'Ver página'; $lang['btn_create'] = 'Crear esta página'; $lang['btn_search'] = 'Buscar'; $lang['btn_save'] = 'Guardar'; $lang['btn_preview'] = 'Previsualización'; -$lang['btn_top'] = 'Ir hasta arriba'; +$lang['btn_top'] = 'Volver arriba'; $lang['btn_newer'] = '<< más reciente'; $lang['btn_older'] = 'menos reciente >>'; $lang['btn_revs'] = 'Revisiones antiguas'; @@ -77,11 +78,11 @@ $lang['btn_draftdel'] = 'Eliminar borrador'; $lang['btn_revert'] = 'Restaurar'; $lang['btn_register'] = 'Registrarse'; $lang['btn_apply'] = 'Aplicar'; -$lang['btn_media'] = 'Gestor de ficheros'; +$lang['btn_media'] = 'Administrador de Ficheros'; $lang['btn_deleteuser'] = 'Elimina Mi Cuenta'; $lang['btn_img_backto'] = 'Volver a %s'; -$lang['btn_mediaManager'] = 'Ver en el Administrador de medios'; -$lang['loggedinas'] = 'Conectado como :'; +$lang['btn_mediaManager'] = 'Ver en el administrador de ficheros'; +$lang['loggedinas'] = 'Conectado como:'; $lang['user'] = 'Usuario'; $lang['pass'] = 'Contraseña'; $lang['newpass'] = 'Nueva contraseña'; diff --git a/lib/plugins/extension/lang/es/lang.php b/lib/plugins/extension/lang/es/lang.php index 16e87f587..63742c3b3 100644 --- a/lib/plugins/extension/lang/es/lang.php +++ b/lib/plugins/extension/lang/es/lang.php @@ -5,7 +5,9 @@ * * @author Antonio Bueno * @author Antonio Castilla + * @author Jonathan Hernández */ +$lang['menu'] = 'Administrador de Extensiones '; $lang['tab_plugins'] = 'Plugins instalados'; $lang['tab_templates'] = 'Plantillas instaladas'; $lang['tab_search'] = 'Buscar e instalar'; @@ -47,6 +49,8 @@ $lang['similar'] = 'Similar a:'; $lang['conflicts'] = 'Conflictos con:'; $lang['donate'] = '¿Cómo está?'; $lang['donate_action'] = '¡Págale un café al autor!'; +$lang['repo_retry'] = 'Trate otra vez'; +$lang['provides'] = 'Provee: '; $lang['status'] = 'Estado:'; $lang['status_installed'] = 'instalado'; $lang['status_not_installed'] = 'no instalado'; @@ -56,6 +60,7 @@ $lang['status_disabled'] = 'desactivado'; $lang['status_unmodifiable'] = 'no modificable'; $lang['status_plugin'] = 'plugin'; $lang['status_template'] = 'plantilla'; +$lang['status_bundled'] = 'agrupado'; $lang['msg_enabled'] = 'Plugin %s activado'; $lang['msg_disabled'] = 'Plugin %s desactivado'; $lang['msg_delete_success'] = 'Extensión desinstalada'; @@ -64,3 +69,16 @@ $lang['msg_template_update_success'] = 'Plantilla %s actualizada con éxito'; $lang['msg_plugin_install_success'] = 'Plugin %s instalado con éxito'; $lang['msg_plugin_update_success'] = 'Plugin %s actualizado con éxito'; $lang['msg_upload_failed'] = 'Falló la carga del archivo'; +$lang['missing_dependency'] = 'Dependencia deshabilitada o perdida: %s'; +$lang['security_issue'] = 'Problema de seguridad: %s'; +$lang['security_warning'] = 'Aviso de seguridad: %s'; +$lang['update_available'] = 'Actualizar: Nueva versión %s disponible.'; +$lang['wrong_folder'] = '"Plugin" instalado incorrectamente: Cambie el nombre del directorio del plugin "%s" a "%s".'; +$lang['url_change'] = 'URL actualizada: El Download URL ha cambiado desde el último download. Verifica si el nuevo URL es valido antes de actualizar la extensión .
    Nuevo: %s
    Viejo: %s'; +$lang['error_badurl'] = 'URLs deberían empezar con http o https'; +$lang['error_dircreate'] = 'No es posible de crear un directorio temporero para poder recibir el download'; +$lang['error_download'] = 'No es posible descargar el documento: %s'; +$lang['git'] = 'Esta extensión fue instalada a través de git, quizás usted no quiera actualizarla aquí mismo.'; +$lang['install_url'] = 'Instalar desde URL:'; +$lang['install_upload'] = 'Subir Extensión:'; +$lang['repo_error'] = 'El repositorio de plugins no puede ser contactado. Asegúrese que su servidor pueda contactar www.dokuwiki.org y verificar la configuración de su proxy.'; diff --git a/lib/plugins/usermanager/lang/es/lang.php b/lib/plugins/usermanager/lang/es/lang.php index 6731193de..a557eacdd 100644 --- a/lib/plugins/usermanager/lang/es/lang.php +++ b/lib/plugins/usermanager/lang/es/lang.php @@ -26,6 +26,7 @@ * @author Mercè López mercelz@gmail.com * @author Antonio Bueno * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['menu'] = 'Administración de usuarios'; $lang['noauth'] = '(la autenticación de usuarios no está disponible)'; @@ -48,6 +49,9 @@ $lang['search'] = 'Buscar'; $lang['search_prompt'] = 'Realizar la búsqueda'; $lang['clear'] = 'Limpiar los filtros de la búsqueda'; $lang['filter'] = 'Filtrar'; +$lang['export_all'] = 'Exportar Todos los Usuarios (CSV)'; +$lang['export_filtered'] = 'Exportar Lista de Usuarios Filtrada (CSV)'; +$lang['import'] = 'Importar Nuevos Usuarios'; $lang['line'] = 'Línea nº'; $lang['error'] = 'Mensaje de error'; $lang['summary'] = 'Mostrando los usuarios %1$d-%2$d de %3$d encontrados. Cantidad total de usuarios %4$d.'; @@ -70,9 +74,10 @@ $lang['add_ok'] = 'El usuario fue creado exitosamente'; $lang['add_fail'] = 'Falló la creación del usuario'; $lang['notify_ok'] = 'Se envió la notificación por correo electrónico'; $lang['notify_fail'] = 'No se pudo enviar la notificación por correo electrónico'; +$lang['import_userlistcsv'] = 'Lista de usuarios (CSV): '; $lang['import_error_badmail'] = 'Dirección de correo electrónico incorrecta'; $lang['import_error_upload'] = 'Error al importar. El archivo csv no se pudo cargar o está vacío.'; $lang['import_error_readfail'] = 'Error al importar. No se puede leer el archivo subido.'; $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 como archivo CSV para la corrección'; +$lang['import_downloadfailures'] = 'Descarga errores en archivo CSV para la corrección'; -- cgit v1.2.3 From ede914601c5cbba0f5742cc3863e38fc38c783c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 08:25:59 +0200 Subject: translation update --- inc/lang/es/lang.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..f71d797be 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -274,7 +275,7 @@ $lang['metaedit'] = 'Editar metadatos'; $lang['metasaveerr'] = 'La escritura de los metadatos ha fallado'; $lang['metasaveok'] = 'Los metadatos han sido guardados'; $lang['img_title'] = 'Título:'; -$lang['img_caption'] = 'Epígrafe:'; +$lang['img_caption'] = 'Información: '; $lang['img_date'] = 'Fecha:'; $lang['img_fname'] = 'Nombre de fichero:'; $lang['img_fsize'] = 'Tamaño:'; -- cgit v1.2.3 From baf76e171c5981cd3a435c9a16188a8412785509 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 08:36:03 +0200 Subject: translation update --- inc/lang/es/lang.php | 5 +++-- inc/lang/es/uploadmail.txt | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..6d3a583d2 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -274,9 +275,9 @@ $lang['metaedit'] = 'Editar metadatos'; $lang['metasaveerr'] = 'La escritura de los metadatos ha fallado'; $lang['metasaveok'] = 'Los metadatos han sido guardados'; $lang['img_title'] = 'Título:'; -$lang['img_caption'] = 'Epígrafe:'; +$lang['img_caption'] = 'Información: '; $lang['img_date'] = 'Fecha:'; -$lang['img_fname'] = 'Nombre de fichero:'; +$lang['img_fname'] = 'Nombre del archivo:'; $lang['img_fsize'] = 'Tamaño:'; $lang['img_artist'] = 'Fotógrafo:'; $lang['img_copyr'] = 'Copyright:'; diff --git a/inc/lang/es/uploadmail.txt b/inc/lang/es/uploadmail.txt index 9d2f980d3..cf70d00d4 100644 --- a/inc/lang/es/uploadmail.txt +++ b/inc/lang/es/uploadmail.txt @@ -1,6 +1,7 @@ -Se ha subido un fichero a tu DokuWuki. Estos son los detalles: +Se ha subido un fichero a tu DokuWiki. Estos son los detalles: Archivo : @MEDIA@ +Ultima revisión: @OLD@ Fecha : @DATE@ Navegador : @BROWSER@ Dirección IP : @IPADDRESS@ -- cgit v1.2.3 From 3af8317e958bda36c0dc04da3d8486f6548c308e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Hern=C3=A1ndez?= Date: Fri, 4 Jul 2014 08:56:00 +0200 Subject: translation update --- inc/lang/es/edit.txt | 2 +- inc/lang/es/lang.php | 7 ++++--- inc/lang/es/uploadmail.txt | 3 ++- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/inc/lang/es/edit.txt b/inc/lang/es/edit.txt index 55c3c1dc5..4ed253bb3 100644 --- a/inc/lang/es/edit.txt +++ b/inc/lang/es/edit.txt @@ -1,2 +1,2 @@ -Edita la página y pulsa ''Guardar''. Mira [[wiki:syntax]] para sintaxis Wiki. Por favor edita la página solo si puedes **mejorarla**. Si quieres testear algunas cosas aprende a dar tus primeros pasos en el [[playground:playground]]. +Edita la página y pulsa ''Guardar''. Vaya a [[wiki:syntax]] para ver la sintaxis del Wiki. Por favor edite la página solo si puedes **mejorarla**. Si quieres probar algo relacionado a la sintaxis, aprende a dar tus primeros pasos en el [[playground:playground]]. diff --git a/inc/lang/es/lang.php b/inc/lang/es/lang.php index 61f4ca2bc..008517e9f 100644 --- a/inc/lang/es/lang.php +++ b/inc/lang/es/lang.php @@ -35,6 +35,7 @@ * @author Fernando * @author Eloy * @author Antonio Castilla + * @author Jonathan Hernández */ $lang['encoding'] = 'utf-8'; $lang['direction'] = 'ltr'; @@ -122,7 +123,7 @@ $lang['resendpwdnouser'] = 'Lo siento, no se encuentra este usuario en nue $lang['resendpwdbadauth'] = 'Lo siento, este código de autenticación no es válido. Asegúrate de haber usado el enlace de confirmación entero.'; $lang['resendpwdconfirm'] = 'Un enlace para confirmación ha sido enviado por correo electrónico.'; $lang['resendpwdsuccess'] = 'Tu nueva contraseña ha sido enviada por correo electrónico.'; -$lang['license'] = 'Excepto donde se indique lo contrario, el contenido de esta wiki se autoriza bajo la siguiente licencia:'; +$lang['license'] = 'Excepto donde se indique lo contrario, el contenido de este wiki esta bajo la siguiente licencia:'; $lang['licenseok'] = 'Nota: Al editar esta página, estás de acuerdo en autorizar su contenido bajo la siguiente licencia:'; $lang['searchmedia'] = 'Buscar archivo:'; $lang['searchmedia_in'] = 'Buscar en %s'; @@ -274,9 +275,9 @@ $lang['metaedit'] = 'Editar metadatos'; $lang['metasaveerr'] = 'La escritura de los metadatos ha fallado'; $lang['metasaveok'] = 'Los metadatos han sido guardados'; $lang['img_title'] = 'Título:'; -$lang['img_caption'] = 'Epígrafe:'; +$lang['img_caption'] = 'Información: '; $lang['img_date'] = 'Fecha:'; -$lang['img_fname'] = 'Nombre de fichero:'; +$lang['img_fname'] = 'Nombre del archivo:'; $lang['img_fsize'] = 'Tamaño:'; $lang['img_artist'] = 'Fotógrafo:'; $lang['img_copyr'] = 'Copyright:'; diff --git a/inc/lang/es/uploadmail.txt b/inc/lang/es/uploadmail.txt index 9d2f980d3..cf70d00d4 100644 --- a/inc/lang/es/uploadmail.txt +++ b/inc/lang/es/uploadmail.txt @@ -1,6 +1,7 @@ -Se ha subido un fichero a tu DokuWuki. Estos son los detalles: +Se ha subido un fichero a tu DokuWiki. Estos son los detalles: Archivo : @MEDIA@ +Ultima revisión: @OLD@ Fecha : @DATE@ Navegador : @BROWSER@ Dirección IP : @IPADDRESS@ -- cgit v1.2.3 From dc6ff004a94faa44d41f2747cc6a0141d072d6e8 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 4 Jul 2014 15:50:54 +0200 Subject: rephrased error message. #681 --- inc/plugin.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/inc/plugin.php b/inc/plugin.php index fd19ba668..fbfc0325f 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -35,10 +35,11 @@ class DokuWiki_Plugin { $info = DOKU_PLUGIN . '/' . $parts[2] . '/plugin.info.txt'; if(@file_exists($info)) return confToHash($info); - msg('getInfo() not implemented in ' . get_class($this) . - ' and ' . $info . ' not found.
    Do you have installed the last version of the plugin? ' . - 'If that is the case, this is a bug in the ' . $parts[2] . ' plugin and should be reported to the ' . - 'plugin author.', -1); + msg( + 'getInfo() not implemented in ' . get_class($this) . ' and ' . $info . ' not found.
    ' . + 'Verify you\'re running the latest version of the plugin. If the problem persists, send a ' . + 'bug report to the author of the ' . $parts[2] . ' plugin.', -1 + ); return array( 'date' => '0000-00-00', 'name' => $parts[2] . ' plugin', -- cgit v1.2.3 From 4ca83a77b85b265fbb47d93854865845e05645cd Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 4 Jul 2014 16:41:19 +0200 Subject: upgrade to jQuery 1.11.1 and jQuery-UI 1.11.0. #778 This now pulls all data from official jQuery sources. Either their CDN or their github account. Google tends to serve outdated or even broken files :-( Unfortunately there's no simple way to get the latest stable jQuery-UI so for now the version has to be adjusted manually in the script. --- inc/lang/af/jquery.ui.datepicker.js | 56 +- inc/lang/ar/jquery.ui.datepicker.js | 54 +- inc/lang/az/jquery.ui.datepicker.js | 56 +- inc/lang/bg/jquery.ui.datepicker.js | 58 +- inc/lang/ca/jquery.ui.datepicker.js | 56 +- inc/lang/cs/jquery.ui.datepicker.js | 56 +- inc/lang/da/jquery.ui.datepicker.js | 56 +- inc/lang/de-informal/jquery.ui.datepicker.js | 56 +- inc/lang/de/jquery.ui.datepicker.js | 56 +- inc/lang/el/jquery.ui.datepicker.js | 56 +- inc/lang/eo/jquery.ui.datepicker.js | 56 +- inc/lang/es/jquery.ui.datepicker.js | 56 +- inc/lang/et/jquery.ui.datepicker.js | 56 +- inc/lang/eu/jquery.ui.datepicker.js | 57 +- inc/lang/fa/jquery.ui.datepicker.js | 126 +- inc/lang/fi/jquery.ui.datepicker.js | 56 +- inc/lang/fo/jquery.ui.datepicker.js | 56 +- inc/lang/fr/jquery.ui.datepicker.js | 56 +- inc/lang/gl/jquery.ui.datepicker.js | 56 +- inc/lang/he/jquery.ui.datepicker.js | 56 +- inc/lang/hi/jquery.ui.datepicker.js | 56 +- inc/lang/hr/jquery.ui.datepicker.js | 56 +- inc/lang/hu/jquery.ui.datepicker.js | 57 +- inc/lang/id/jquery.ui.datepicker.js | 56 +- inc/lang/is/jquery.ui.datepicker.js | 56 +- inc/lang/it/jquery.ui.datepicker.js | 56 +- inc/lang/ja/jquery.ui.datepicker.js | 56 +- inc/lang/kk/jquery.ui.datepicker.js | 56 +- inc/lang/km/jquery.ui.datepicker.js | 56 +- inc/lang/ko/jquery.ui.datepicker.js | 56 +- inc/lang/lb/jquery.ui.datepicker.js | 56 +- inc/lang/lt/jquery.ui.datepicker.js | 56 +- inc/lang/lv/jquery.ui.datepicker.js | 56 +- inc/lang/mk/jquery.ui.datepicker.js | 56 +- inc/lang/ms/jquery.ui.datepicker.js | 56 +- inc/lang/nl/jquery.ui.datepicker.js | 56 +- inc/lang/no/jquery.ui.datepicker.js | 54 +- inc/lang/pl/jquery.ui.datepicker.js | 56 +- inc/lang/pt-br/jquery.ui.datepicker.js | 56 +- inc/lang/pt/jquery.ui.datepicker.js | 56 +- inc/lang/ro/jquery.ui.datepicker.js | 56 +- inc/lang/ru/jquery.ui.datepicker.js | 56 +- inc/lang/sk/jquery.ui.datepicker.js | 56 +- inc/lang/sl/jquery.ui.datepicker.js | 56 +- inc/lang/sq/jquery.ui.datepicker.js | 56 +- inc/lang/sr/jquery.ui.datepicker.js | 56 +- inc/lang/sv/jquery.ui.datepicker.js | 56 +- inc/lang/th/jquery.ui.datepicker.js | 56 +- inc/lang/tr/jquery.ui.datepicker.js | 56 +- inc/lang/uk/jquery.ui.datepicker.js | 56 +- inc/lang/vi/jquery.ui.datepicker.js | 56 +- inc/lang/zh-tw/jquery.ui.datepicker.js | 56 +- inc/lang/zh/jquery.ui.datepicker.js | 56 +- .../images/ui-bg_flat_0_aaaaaa_40x100.png | Bin 264 -> 251 bytes .../images/ui-bg_flat_75_ffffff_40x100.png | Bin 260 -> 247 bytes .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin 387 -> 374 bytes .../images/ui-bg_glass_65_ffffff_1x400.png | Bin 259 -> 246 bytes .../images/ui-bg_glass_75_dadada_1x400.png | Bin 314 -> 301 bytes .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin 314 -> 301 bytes .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin 384 -> 371 bytes .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin 332 -> 319 bytes .../images/ui-icons_222222_256x240.png | Bin 6837 -> 7006 bytes .../images/ui-icons_2e83ff_256x240.png | Bin 4601 -> 4599 bytes .../images/ui-icons_454545_256x240.png | Bin 6973 -> 7071 bytes .../images/ui-icons_888888_256x240.png | Bin 7044 -> 7092 bytes .../images/ui-icons_cd0a0a_256x240.png | Bin 4601 -> 4599 bytes lib/scripts/jquery/jquery-ui-theme/smoothness.css | 153 +- lib/scripts/jquery/jquery-ui.js | 16124 ++++++++++--------- lib/scripts/jquery/jquery-ui.min.js | 14 +- lib/scripts/jquery/jquery.js | 11699 +++++++------- lib/scripts/jquery/jquery.min.js | 9 +- lib/scripts/jquery/update.sh | 26 +- 72 files changed, 16760 insertions(+), 14303 deletions(-) diff --git a/inc/lang/af/jquery.ui.datepicker.js b/inc/lang/af/jquery.ui.datepicker.js index 0922ef7a1..ec86242d6 100644 --- a/inc/lang/af/jquery.ui.datepicker.js +++ b/inc/lang/af/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Afrikaans initialisation for the jQuery UI date picker plugin. */ /* Written by Renier Pretorius. */ -jQuery(function($){ - $.datepicker.regional['af'] = { - closeText: 'Selekteer', - prevText: 'Vorige', - nextText: 'Volgende', - currentText: 'Vandag', - monthNames: ['Januarie','Februarie','Maart','April','Mei','Junie', - 'Julie','Augustus','September','Oktober','November','Desember'], - monthNamesShort: ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', - 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'], - dayNames: ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'], - dayNamesShort: ['Son', 'Maa', 'Din', 'Woe', 'Don', 'Vry', 'Sat'], - dayNamesMin: ['So','Ma','Di','Wo','Do','Vr','Sa'], - weekHeader: 'Wk', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['af']); -}); +(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['af'] = { + closeText: 'Selekteer', + prevText: 'Vorige', + nextText: 'Volgende', + currentText: 'Vandag', + monthNames: ['Januarie','Februarie','Maart','April','Mei','Junie', + 'Julie','Augustus','September','Oktober','November','Desember'], + monthNamesShort: ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', + 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'], + dayNames: ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'], + dayNamesShort: ['Son', 'Maa', 'Din', 'Woe', 'Don', 'Vry', 'Sat'], + dayNamesMin: ['So','Ma','Di','Wo','Do','Vr','Sa'], + weekHeader: 'Wk', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['af']); + +return datepicker.regional['af']; + +})); diff --git a/inc/lang/ar/jquery.ui.datepicker.js b/inc/lang/ar/jquery.ui.datepicker.js index cef0f08fd..c93fed48d 100644 --- a/inc/lang/ar/jquery.ui.datepicker.js +++ b/inc/lang/ar/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Arabic Translation for jQuery UI date picker plugin. */ /* Khaled Alhourani -- me@khaledalhourani.com */ /* NOTE: monthNames are the original months names and they are the Arabic names, not the new months name فبراير - يناير and there isn't any Arabic roots for these months */ -jQuery(function($){ - $.datepicker.regional['ar'] = { - closeText: 'إغلاق', - prevText: '<السابق', - nextText: 'التالي>', - currentText: 'اليوم', - monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'مايو', 'حزيران', - 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'], - monthNamesShort: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], - dayNames: ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'], - dayNamesShort: ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'], - dayNamesMin: ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'], - weekHeader: 'أسبوع', - dateFormat: 'dd/mm/yy', - firstDay: 6, - isRTL: true, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['ar']); -}); +(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['ar'] = { + closeText: 'إغلاق', + prevText: '<السابق', + nextText: 'التالي>', + currentText: 'اليوم', + monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'مايو', 'حزيران', + 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'], + monthNamesShort: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], + dayNames: ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'], + dayNamesShort: ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'], + dayNamesMin: ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'], + weekHeader: 'أسبوع', + dateFormat: 'dd/mm/yy', + firstDay: 6, + isRTL: true, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['ar']); + +return datepicker.regional['ar']; + +})); diff --git a/inc/lang/az/jquery.ui.datepicker.js b/inc/lang/az/jquery.ui.datepicker.js index a133a9eb2..be87ad411 100644 --- a/inc/lang/az/jquery.ui.datepicker.js +++ b/inc/lang/az/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* Written by Jamil Najafov (necefov33@gmail.com). */ -jQuery(function($) { - $.datepicker.regional['az'] = { - closeText: 'Bağla', - prevText: '<Geri', - nextText: 'İrəli>', - currentText: 'Bugün', - monthNames: ['Yanvar','Fevral','Mart','Aprel','May','İyun', - 'İyul','Avqust','Sentyabr','Oktyabr','Noyabr','Dekabr'], - monthNamesShort: ['Yan','Fev','Mar','Apr','May','İyun', - 'İyul','Avq','Sen','Okt','Noy','Dek'], - dayNames: ['Bazar','Bazar ertəsi','Çərşənbə axşamı','Çərşənbə','Cümə axşamı','Cümə','Şənbə'], - dayNamesShort: ['B','Be','Ça','Ç','Ca','C','Ş'], - dayNamesMin: ['B','B','Ç','С','Ç','C','Ş'], - weekHeader: 'Hf', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['az']); -}); +(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['az'] = { + closeText: 'Bağla', + prevText: '<Geri', + nextText: 'İrəli>', + currentText: 'Bugün', + monthNames: ['Yanvar','Fevral','Mart','Aprel','May','İyun', + 'İyul','Avqust','Sentyabr','Oktyabr','Noyabr','Dekabr'], + monthNamesShort: ['Yan','Fev','Mar','Apr','May','İyun', + 'İyul','Avq','Sen','Okt','Noy','Dek'], + dayNames: ['Bazar','Bazar ertəsi','Çərşənbə axşamı','Çərşənbə','Cümə axşamı','Cümə','Şənbə'], + dayNamesShort: ['B','Be','Ça','Ç','Ca','C','Ş'], + dayNamesMin: ['B','B','Ç','С','Ç','C','Ş'], + weekHeader: 'Hf', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['az']); + +return datepicker.regional['az']; + +})); diff --git a/inc/lang/bg/jquery.ui.datepicker.js b/inc/lang/bg/jquery.ui.datepicker.js index 86ab88582..0ee1b171d 100644 --- a/inc/lang/bg/jquery.ui.datepicker.js +++ b/inc/lang/bg/jquery.ui.datepicker.js @@ -1,24 +1,38 @@ /* Bulgarian initialisation for the jQuery UI date picker plugin. */ /* Written by Stoyan Kyosev (http://svest.org). */ -jQuery(function($){ - $.datepicker.regional['bg'] = { - closeText: 'затвори', - prevText: '<назад', - nextText: 'напред>', - nextBigText: '>>', - currentText: 'днес', - monthNames: ['Януари','Февруари','Март','Април','Май','Юни', - 'Юли','Август','Септември','Октомври','Ноември','Декември'], - monthNamesShort: ['Яну','Фев','Мар','Апр','Май','Юни', - 'Юли','Авг','Сеп','Окт','Нов','Дек'], - dayNames: ['Неделя','Понеделник','Вторник','Сряда','Четвъртък','Петък','Събота'], - dayNamesShort: ['Нед','Пон','Вто','Сря','Чет','Пет','Съб'], - dayNamesMin: ['Не','По','Вт','Ср','Че','Пе','Съ'], - weekHeader: 'Wk', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['bg']); -}); +(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['bg'] = { + closeText: 'затвори', + prevText: '<назад', + nextText: 'напред>', + nextBigText: '>>', + currentText: 'днес', + monthNames: ['Януари','Февруари','Март','Април','Май','Юни', + 'Юли','Август','Септември','Октомври','Ноември','Декември'], + monthNamesShort: ['Яну','Фев','Мар','Апр','Май','Юни', + 'Юли','Авг','Сеп','Окт','Нов','Дек'], + dayNames: ['Неделя','Понеделник','Вторник','Сряда','Четвъртък','Петък','Събота'], + dayNamesShort: ['Нед','Пон','Вто','Сря','Чет','Пет','Съб'], + dayNamesMin: ['Не','По','Вт','Ср','Че','Пе','Съ'], + weekHeader: 'Wk', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['bg']); + +return datepicker.regional['bg']; + +})); diff --git a/inc/lang/ca/jquery.ui.datepicker.js b/inc/lang/ca/jquery.ui.datepicker.js index a10b549c2..ab1dbc34d 100644 --- a/inc/lang/ca/jquery.ui.datepicker.js +++ b/inc/lang/ca/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Inicialització en català per a l'extensió 'UI date picker' per jQuery. */ /* Writers: (joan.leon@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['ca'] = { - closeText: 'Tanca', - prevText: 'Anterior', - nextText: 'Següent', - currentText: 'Avui', - monthNames: ['gener','febrer','març','abril','maig','juny', - 'juliol','agost','setembre','octubre','novembre','desembre'], - monthNamesShort: ['gen','feb','març','abr','maig','juny', - 'jul','ag','set','oct','nov','des'], - dayNames: ['diumenge','dilluns','dimarts','dimecres','dijous','divendres','dissabte'], - dayNamesShort: ['dg','dl','dt','dc','dj','dv','ds'], - dayNamesMin: ['dg','dl','dt','dc','dj','dv','ds'], - weekHeader: 'Set', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['ca']); -}); +(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['ca'] = { + closeText: 'Tanca', + prevText: 'Anterior', + nextText: 'Següent', + currentText: 'Avui', + monthNames: ['gener','febrer','març','abril','maig','juny', + 'juliol','agost','setembre','octubre','novembre','desembre'], + monthNamesShort: ['gen','feb','març','abr','maig','juny', + 'jul','ag','set','oct','nov','des'], + dayNames: ['diumenge','dilluns','dimarts','dimecres','dijous','divendres','dissabte'], + dayNamesShort: ['dg','dl','dt','dc','dj','dv','ds'], + dayNamesMin: ['dg','dl','dt','dc','dj','dv','ds'], + weekHeader: 'Set', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['ca']); + +return datepicker.regional['ca']; + +})); diff --git a/inc/lang/cs/jquery.ui.datepicker.js b/inc/lang/cs/jquery.ui.datepicker.js index b96b1a51c..34dae5ecd 100644 --- a/inc/lang/cs/jquery.ui.datepicker.js +++ b/inc/lang/cs/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Czech initialisation for the jQuery UI date picker plugin. */ /* Written by Tomas Muller (tomas@tomas-muller.net). */ -jQuery(function($){ - $.datepicker.regional['cs'] = { - closeText: 'Zavřít', - prevText: '<Dříve', - nextText: 'Později>', - currentText: 'Nyní', - monthNames: ['leden','únor','březen','duben','květen','červen', - 'červenec','srpen','září','říjen','listopad','prosinec'], - monthNamesShort: ['led','úno','bře','dub','kvě','čer', - 'čvc','srp','zář','říj','lis','pro'], - dayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'], - dayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'], - dayNamesMin: ['ne','po','út','st','čt','pá','so'], - weekHeader: 'Týd', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['cs']); -}); +(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['cs'] = { + closeText: 'Zavřít', + prevText: '<Dříve', + nextText: 'Později>', + currentText: 'Nyní', + monthNames: ['leden','únor','březen','duben','květen','červen', + 'červenec','srpen','září','říjen','listopad','prosinec'], + monthNamesShort: ['led','úno','bře','dub','kvě','čer', + 'čvc','srp','zář','říj','lis','pro'], + dayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'], + dayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'], + dayNamesMin: ['ne','po','út','st','čt','pá','so'], + weekHeader: 'Týd', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['cs']); + +return datepicker.regional['cs']; + +})); diff --git a/inc/lang/da/jquery.ui.datepicker.js b/inc/lang/da/jquery.ui.datepicker.js index 7e42948b3..d8881e1b6 100644 --- a/inc/lang/da/jquery.ui.datepicker.js +++ b/inc/lang/da/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Danish initialisation for the jQuery UI date picker plugin. */ /* Written by Jan Christensen ( deletestuff@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['da'] = { - closeText: 'Luk', - prevText: '<Forrige', - nextText: 'Næste>', - currentText: 'Idag', - monthNames: ['Januar','Februar','Marts','April','Maj','Juni', - 'Juli','August','September','Oktober','November','December'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', - 'Jul','Aug','Sep','Okt','Nov','Dec'], - dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'], - dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'], - dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'], - weekHeader: 'Uge', - dateFormat: 'dd-mm-yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['da']); -}); +(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['da'] = { + closeText: 'Luk', + prevText: '<Forrige', + nextText: 'Næste>', + currentText: 'Idag', + monthNames: ['Januar','Februar','Marts','April','Maj','Juni', + 'Juli','August','September','Oktober','November','December'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', + 'Jul','Aug','Sep','Okt','Nov','Dec'], + dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'], + dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'], + dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'], + weekHeader: 'Uge', + dateFormat: 'dd-mm-yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['da']); + +return datepicker.regional['da']; + +})); diff --git a/inc/lang/de-informal/jquery.ui.datepicker.js b/inc/lang/de-informal/jquery.ui.datepicker.js index abe75c4e4..bc92a931b 100644 --- a/inc/lang/de-informal/jquery.ui.datepicker.js +++ b/inc/lang/de-informal/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* German initialisation for the jQuery UI date picker plugin. */ /* Written by Milian Wolff (mail@milianw.de). */ -jQuery(function($){ - $.datepicker.regional['de'] = { - closeText: 'Schließen', - prevText: '<Zurück', - nextText: 'Vor>', - currentText: 'Heute', - monthNames: ['Januar','Februar','März','April','Mai','Juni', - 'Juli','August','September','Oktober','November','Dezember'], - monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun', - 'Jul','Aug','Sep','Okt','Nov','Dez'], - dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'], - dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'], - dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'], - weekHeader: 'KW', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['de']); -}); +(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['de'] = { + closeText: 'Schließen', + prevText: '<Zurück', + nextText: 'Vor>', + currentText: 'Heute', + monthNames: ['Januar','Februar','März','April','Mai','Juni', + 'Juli','August','September','Oktober','November','Dezember'], + monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun', + 'Jul','Aug','Sep','Okt','Nov','Dez'], + dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'], + dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'], + dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'], + weekHeader: 'KW', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['de']); + +return datepicker.regional['de']; + +})); diff --git a/inc/lang/de/jquery.ui.datepicker.js b/inc/lang/de/jquery.ui.datepicker.js index abe75c4e4..bc92a931b 100644 --- a/inc/lang/de/jquery.ui.datepicker.js +++ b/inc/lang/de/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* German initialisation for the jQuery UI date picker plugin. */ /* Written by Milian Wolff (mail@milianw.de). */ -jQuery(function($){ - $.datepicker.regional['de'] = { - closeText: 'Schließen', - prevText: '<Zurück', - nextText: 'Vor>', - currentText: 'Heute', - monthNames: ['Januar','Februar','März','April','Mai','Juni', - 'Juli','August','September','Oktober','November','Dezember'], - monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun', - 'Jul','Aug','Sep','Okt','Nov','Dez'], - dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'], - dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'], - dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'], - weekHeader: 'KW', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['de']); -}); +(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['de'] = { + closeText: 'Schließen', + prevText: '<Zurück', + nextText: 'Vor>', + currentText: 'Heute', + monthNames: ['Januar','Februar','März','April','Mai','Juni', + 'Juli','August','September','Oktober','November','Dezember'], + monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun', + 'Jul','Aug','Sep','Okt','Nov','Dez'], + dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'], + dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'], + dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'], + weekHeader: 'KW', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['de']); + +return datepicker.regional['de']; + +})); diff --git a/inc/lang/el/jquery.ui.datepicker.js b/inc/lang/el/jquery.ui.datepicker.js index 1ac47561a..a852a77d7 100644 --- a/inc/lang/el/jquery.ui.datepicker.js +++ b/inc/lang/el/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Greek (el) initialisation for the jQuery UI date picker plugin. */ /* Written by Alex Cicovic (http://www.alexcicovic.com) */ -jQuery(function($){ - $.datepicker.regional['el'] = { - closeText: 'Κλείσιμο', - prevText: 'Προηγούμενος', - nextText: 'Επόμενος', - currentText: 'Τρέχων Μήνας', - monthNames: ['Ιανουάριος','Φεβρουάριος','Μάρτιος','Απρίλιος','Μάιος','Ιούνιος', - 'Ιούλιος','Αύγουστος','Σεπτέμβριος','Οκτώβριος','Νοέμβριος','Δεκέμβριος'], - monthNamesShort: ['Ιαν','Φεβ','Μαρ','Απρ','Μαι','Ιουν', - 'Ιουλ','Αυγ','Σεπ','Οκτ','Νοε','Δεκ'], - dayNames: ['Κυριακή','Δευτέρα','Τρίτη','Τετάρτη','Πέμπτη','Παρασκευή','Σάββατο'], - dayNamesShort: ['Κυρ','Δευ','Τρι','Τετ','Πεμ','Παρ','Σαβ'], - dayNamesMin: ['Κυ','Δε','Τρ','Τε','Πε','Πα','Σα'], - weekHeader: 'Εβδ', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['el']); -}); +(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['el'] = { + closeText: 'Κλείσιμο', + prevText: 'Προηγούμενος', + nextText: 'Επόμενος', + currentText: 'Τρέχων Μήνας', + monthNames: ['Ιανουάριος','Φεβρουάριος','Μάρτιος','Απρίλιος','Μάιος','Ιούνιος', + 'Ιούλιος','Αύγουστος','Σεπτέμβριος','Οκτώβριος','Νοέμβριος','Δεκέμβριος'], + monthNamesShort: ['Ιαν','Φεβ','Μαρ','Απρ','Μαι','Ιουν', + 'Ιουλ','Αυγ','Σεπ','Οκτ','Νοε','Δεκ'], + dayNames: ['Κυριακή','Δευτέρα','Τρίτη','Τετάρτη','Πέμπτη','Παρασκευή','Σάββατο'], + dayNamesShort: ['Κυρ','Δευ','Τρι','Τετ','Πεμ','Παρ','Σαβ'], + dayNamesMin: ['Κυ','Δε','Τρ','Τε','Πε','Πα','Σα'], + weekHeader: 'Εβδ', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['el']); + +return datepicker.regional['el']; + +})); diff --git a/inc/lang/eo/jquery.ui.datepicker.js b/inc/lang/eo/jquery.ui.datepicker.js index 39e44fc57..ebbb7238b 100644 --- a/inc/lang/eo/jquery.ui.datepicker.js +++ b/inc/lang/eo/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Esperanto initialisation for the jQuery UI date picker plugin. */ /* Written by Olivier M. (olivierweb@ifrance.com). */ -jQuery(function($){ - $.datepicker.regional['eo'] = { - closeText: 'Fermi', - prevText: '<Anta', - nextText: 'Sekv>', - currentText: 'Nuna', - monthNames: ['Januaro','Februaro','Marto','Aprilo','Majo','Junio', - 'Julio','Aŭgusto','Septembro','Oktobro','Novembro','Decembro'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', - 'Jul','Aŭg','Sep','Okt','Nov','Dec'], - dayNames: ['Dimanĉo','Lundo','Mardo','Merkredo','Ĵaŭdo','Vendredo','Sabato'], - dayNamesShort: ['Dim','Lun','Mar','Mer','Ĵaŭ','Ven','Sab'], - dayNamesMin: ['Di','Lu','Ma','Me','Ĵa','Ve','Sa'], - weekHeader: 'Sb', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['eo']); -}); +(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['eo'] = { + closeText: 'Fermi', + prevText: '<Anta', + nextText: 'Sekv>', + currentText: 'Nuna', + monthNames: ['Januaro','Februaro','Marto','Aprilo','Majo','Junio', + 'Julio','Aŭgusto','Septembro','Oktobro','Novembro','Decembro'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', + 'Jul','Aŭg','Sep','Okt','Nov','Dec'], + dayNames: ['Dimanĉo','Lundo','Mardo','Merkredo','Ĵaŭdo','Vendredo','Sabato'], + dayNamesShort: ['Dim','Lun','Mar','Mer','Ĵaŭ','Ven','Sab'], + dayNamesMin: ['Di','Lu','Ma','Me','Ĵa','Ve','Sa'], + weekHeader: 'Sb', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['eo']); + +return datepicker.regional['eo']; + +})); diff --git a/inc/lang/es/jquery.ui.datepicker.js b/inc/lang/es/jquery.ui.datepicker.js index 763d4cedd..c51475e30 100644 --- a/inc/lang/es/jquery.ui.datepicker.js +++ b/inc/lang/es/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Inicialización en español para la extensión 'UI date picker' para jQuery. */ /* Traducido por Vester (xvester@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['es'] = { - closeText: 'Cerrar', - prevText: '<Ant', - nextText: 'Sig>', - currentText: 'Hoy', - monthNames: ['enero','febrero','marzo','abril','mayo','junio', - 'julio','agosto','septiembre','octubre','noviembre','diciembre'], - monthNamesShort: ['ene','feb','mar','abr','may','jun', - 'jul','ogo','sep','oct','nov','dic'], - dayNames: ['domingo','lunes','martes','miércoles','jueves','viernes','sábado'], - dayNamesShort: ['dom','lun','mar','mié','juv','vie','sáb'], - dayNamesMin: ['D','L','M','X','J','V','S'], - weekHeader: 'Sm', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['es']); -}); +(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['es'] = { + closeText: 'Cerrar', + prevText: '<Ant', + nextText: 'Sig>', + currentText: 'Hoy', + monthNames: ['enero','febrero','marzo','abril','mayo','junio', + 'julio','agosto','septiembre','octubre','noviembre','diciembre'], + monthNamesShort: ['ene','feb','mar','abr','may','jun', + 'jul','ago','sep','oct','nov','dic'], + dayNames: ['domingo','lunes','martes','miércoles','jueves','viernes','sábado'], + dayNamesShort: ['dom','lun','mar','mié','jue','vie','sáb'], + dayNamesMin: ['D','L','M','X','J','V','S'], + weekHeader: 'Sm', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['es']); + +return datepicker.regional['es']; + +})); diff --git a/inc/lang/et/jquery.ui.datepicker.js b/inc/lang/et/jquery.ui.datepicker.js index 62cbea8fa..2a5721252 100644 --- a/inc/lang/et/jquery.ui.datepicker.js +++ b/inc/lang/et/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Estonian initialisation for the jQuery UI date picker plugin. */ /* Written by Mart Sõmermaa (mrts.pydev at gmail com). */ -jQuery(function($){ - $.datepicker.regional['et'] = { - closeText: 'Sulge', - prevText: 'Eelnev', - nextText: 'Järgnev', - currentText: 'Täna', - monthNames: ['Jaanuar','Veebruar','Märts','Aprill','Mai','Juuni', - 'Juuli','August','September','Oktoober','November','Detsember'], - monthNamesShort: ['Jaan', 'Veebr', 'Märts', 'Apr', 'Mai', 'Juuni', - 'Juuli', 'Aug', 'Sept', 'Okt', 'Nov', 'Dets'], - dayNames: ['Pühapäev', 'Esmaspäev', 'Teisipäev', 'Kolmapäev', 'Neljapäev', 'Reede', 'Laupäev'], - dayNamesShort: ['Pühap', 'Esmasp', 'Teisip', 'Kolmap', 'Neljap', 'Reede', 'Laup'], - dayNamesMin: ['P','E','T','K','N','R','L'], - weekHeader: 'näd', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['et']); -}); +(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['et'] = { + closeText: 'Sulge', + prevText: 'Eelnev', + nextText: 'Järgnev', + currentText: 'Täna', + monthNames: ['Jaanuar','Veebruar','Märts','Aprill','Mai','Juuni', + 'Juuli','August','September','Oktoober','November','Detsember'], + monthNamesShort: ['Jaan', 'Veebr', 'Märts', 'Apr', 'Mai', 'Juuni', + 'Juuli', 'Aug', 'Sept', 'Okt', 'Nov', 'Dets'], + dayNames: ['Pühapäev', 'Esmaspäev', 'Teisipäev', 'Kolmapäev', 'Neljapäev', 'Reede', 'Laupäev'], + dayNamesShort: ['Pühap', 'Esmasp', 'Teisip', 'Kolmap', 'Neljap', 'Reede', 'Laup'], + dayNamesMin: ['P','E','T','K','N','R','L'], + weekHeader: 'näd', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['et']); + +return datepicker.regional['et']; + +})); diff --git a/inc/lang/eu/jquery.ui.datepicker.js b/inc/lang/eu/jquery.ui.datepicker.js index a71db2c72..25b95981f 100644 --- a/inc/lang/eu/jquery.ui.datepicker.js +++ b/inc/lang/eu/jquery.ui.datepicker.js @@ -1,23 +1,36 @@ -/* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */ /* Karrikas-ek itzulia (karrikas@karrikas.com) */ -jQuery(function($){ - $.datepicker.regional['eu'] = { - closeText: 'Egina', - prevText: '<Aur', - nextText: 'Hur>', - currentText: 'Gaur', - monthNames: ['urtarrila','otsaila','martxoa','apirila','maiatza','ekaina', - 'uztaila','abuztua','iraila','urria','azaroa','abendua'], - monthNamesShort: ['urt.','ots.','mar.','api.','mai.','eka.', - 'uzt.','abu.','ira.','urr.','aza.','abe.'], - dayNames: ['igandea','astelehena','asteartea','asteazkena','osteguna','ostirala','larunbata'], - dayNamesShort: ['ig.','al.','ar.','az.','og.','ol.','lr.'], - dayNamesMin: ['ig','al','ar','az','og','ol','lr'], - weekHeader: 'As', - dateFormat: 'yy-mm-dd', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['eu']); -}); +(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['eu'] = { + closeText: 'Egina', + prevText: '<Aur', + nextText: 'Hur>', + currentText: 'Gaur', + monthNames: ['urtarrila','otsaila','martxoa','apirila','maiatza','ekaina', + 'uztaila','abuztua','iraila','urria','azaroa','abendua'], + monthNamesShort: ['urt.','ots.','mar.','api.','mai.','eka.', + 'uzt.','abu.','ira.','urr.','aza.','abe.'], + dayNames: ['igandea','astelehena','asteartea','asteazkena','osteguna','ostirala','larunbata'], + dayNamesShort: ['ig.','al.','ar.','az.','og.','ol.','lr.'], + dayNamesMin: ['ig','al','ar','az','og','ol','lr'], + weekHeader: 'As', + dateFormat: 'yy-mm-dd', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['eu']); + +return datepicker.regional['eu']; + +})); diff --git a/inc/lang/fa/jquery.ui.datepicker.js b/inc/lang/fa/jquery.ui.datepicker.js index bb957f6d8..8ffd66411 100644 --- a/inc/lang/fa/jquery.ui.datepicker.js +++ b/inc/lang/fa/jquery.ui.datepicker.js @@ -1,59 +1,73 @@ /* Persian (Farsi) Translation for the jQuery UI date picker plugin. */ /* Javad Mowlanezhad -- jmowla@gmail.com */ /* Jalali calendar should supported soon! (Its implemented but I have to test it) */ -jQuery(function($) { - $.datepicker.regional['fa'] = { - closeText: 'بستن', - prevText: '<قبلی', - nextText: 'بعدی>', - currentText: 'امروز', - monthNames: [ - 'فروردين', - 'ارديبهشت', - 'خرداد', - 'تير', - 'مرداد', - 'شهريور', - 'مهر', - 'آبان', - 'آذر', - 'دی', - 'بهمن', - 'اسفند' - ], - monthNamesShort: ['1','2','3','4','5','6','7','8','9','10','11','12'], - dayNames: [ - 'يکشنبه', - 'دوشنبه', - 'سه‌شنبه', - 'چهارشنبه', - 'پنجشنبه', - 'جمعه', - 'شنبه' - ], - dayNamesShort: [ - 'ی', - 'د', - 'س', - 'چ', - 'پ', - 'ج', - 'ش' - ], - dayNamesMin: [ - 'ی', - 'د', - 'س', - 'چ', - 'پ', - 'ج', - 'ش' - ], - weekHeader: 'هف', - dateFormat: 'yy/mm/dd', - firstDay: 6, - isRTL: true, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['fa']); -}); +(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['fa'] = { + closeText: 'بستن', + prevText: '<قبلی', + nextText: 'بعدی>', + currentText: 'امروز', + monthNames: [ + 'فروردين', + 'ارديبهشت', + 'خرداد', + 'تير', + 'مرداد', + 'شهريور', + 'مهر', + 'آبان', + 'آذر', + 'دی', + 'بهمن', + 'اسفند' + ], + monthNamesShort: ['1','2','3','4','5','6','7','8','9','10','11','12'], + dayNames: [ + 'يکشنبه', + 'دوشنبه', + 'سه‌شنبه', + 'چهارشنبه', + 'پنجشنبه', + 'جمعه', + 'شنبه' + ], + dayNamesShort: [ + 'ی', + 'د', + 'س', + 'چ', + 'پ', + 'ج', + 'ش' + ], + dayNamesMin: [ + 'ی', + 'د', + 'س', + 'چ', + 'پ', + 'ج', + 'ش' + ], + weekHeader: 'هف', + dateFormat: 'yy/mm/dd', + firstDay: 6, + isRTL: true, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['fa']); + +return datepicker.regional['fa']; + +})); diff --git a/inc/lang/fi/jquery.ui.datepicker.js b/inc/lang/fi/jquery.ui.datepicker.js index e5c554aba..eac170496 100644 --- a/inc/lang/fi/jquery.ui.datepicker.js +++ b/inc/lang/fi/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Finnish initialisation for the jQuery UI date picker plugin. */ /* Written by Harri Kilpiö (harrikilpio@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['fi'] = { - closeText: 'Sulje', - prevText: '«Edellinen', - nextText: 'Seuraava»', - currentText: 'Tänään', - monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu', - 'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'], - monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kesä', - 'Heinä','Elo','Syys','Loka','Marras','Joulu'], - dayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','La'], - dayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'], - dayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'], - weekHeader: 'Vk', - dateFormat: 'd.m.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['fi']); -}); +(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['fi'] = { + closeText: 'Sulje', + prevText: '«Edellinen', + nextText: 'Seuraava»', + currentText: 'Tänään', + monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu', + 'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'], + monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kesä', + 'Heinä','Elo','Syys','Loka','Marras','Joulu'], + dayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','La'], + dayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'], + dayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'], + weekHeader: 'Vk', + dateFormat: 'd.m.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['fi']); + +return datepicker.regional['fi']; + +})); diff --git a/inc/lang/fo/jquery.ui.datepicker.js b/inc/lang/fo/jquery.ui.datepicker.js index cb0e3def7..1754f7be7 100644 --- a/inc/lang/fo/jquery.ui.datepicker.js +++ b/inc/lang/fo/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Faroese initialisation for the jQuery UI date picker plugin */ /* Written by Sverri Mohr Olsen, sverrimo@gmail.com */ -jQuery(function($){ - $.datepicker.regional['fo'] = { - closeText: 'Lat aftur', - prevText: '<Fyrra', - nextText: 'Næsta>', - currentText: 'Í dag', - monthNames: ['Januar','Februar','Mars','Apríl','Mei','Juni', - 'Juli','August','September','Oktober','November','Desember'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun', - 'Jul','Aug','Sep','Okt','Nov','Des'], - dayNames: ['Sunnudagur','Mánadagur','Týsdagur','Mikudagur','Hósdagur','Fríggjadagur','Leyardagur'], - dayNamesShort: ['Sun','Mán','Týs','Mik','Hós','Frí','Ley'], - dayNamesMin: ['Su','Má','Tý','Mi','Hó','Fr','Le'], - weekHeader: 'Vk', - dateFormat: 'dd-mm-yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['fo']); -}); +(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['fo'] = { + closeText: 'Lat aftur', + prevText: '<Fyrra', + nextText: 'Næsta>', + currentText: 'Í dag', + monthNames: ['Januar','Februar','Mars','Apríl','Mei','Juni', + 'Juli','August','September','Oktober','November','Desember'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun', + 'Jul','Aug','Sep','Okt','Nov','Des'], + dayNames: ['Sunnudagur','Mánadagur','Týsdagur','Mikudagur','Hósdagur','Fríggjadagur','Leyardagur'], + dayNamesShort: ['Sun','Mán','Týs','Mik','Hós','Frí','Ley'], + dayNamesMin: ['Su','Má','Tý','Mi','Hó','Fr','Le'], + weekHeader: 'Vk', + dateFormat: 'dd-mm-yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['fo']); + +return datepicker.regional['fo']; + +})); diff --git a/inc/lang/fr/jquery.ui.datepicker.js b/inc/lang/fr/jquery.ui.datepicker.js index 2d06743a6..2f5ff3cbe 100644 --- a/inc/lang/fr/jquery.ui.datepicker.js +++ b/inc/lang/fr/jquery.ui.datepicker.js @@ -2,24 +2,38 @@ /* Written by Keith Wood (kbwood{at}iinet.com.au), Stéphane Nahmani (sholby@sholby.net), Stéphane Raimbault */ -jQuery(function($){ - $.datepicker.regional['fr'] = { - closeText: 'Fermer', - prevText: 'Précédent', - nextText: 'Suivant', - currentText: 'Aujourd\'hui', - monthNames: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', - 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'], - monthNamesShort: ['janv.', 'févr.', 'mars', 'avril', 'mai', 'juin', - 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'], - dayNames: ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'], - dayNamesShort: ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.'], - dayNamesMin: ['D','L','M','M','J','V','S'], - weekHeader: 'Sem.', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['fr']); -}); +(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['fr'] = { + closeText: 'Fermer', + prevText: 'Précédent', + nextText: 'Suivant', + currentText: 'Aujourd\'hui', + monthNames: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', + 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'], + monthNamesShort: ['janv.', 'févr.', 'mars', 'avril', 'mai', 'juin', + 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'], + dayNames: ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'], + dayNamesShort: ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.'], + dayNamesMin: ['D','L','M','M','J','V','S'], + weekHeader: 'Sem.', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['fr']); + +return datepicker.regional['fr']; + +})); diff --git a/inc/lang/gl/jquery.ui.datepicker.js b/inc/lang/gl/jquery.ui.datepicker.js index 59b989a6d..ed5b2d2fc 100644 --- a/inc/lang/gl/jquery.ui.datepicker.js +++ b/inc/lang/gl/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Galician localization for 'UI date picker' jQuery extension. */ /* Translated by Jorge Barreiro . */ -jQuery(function($){ - $.datepicker.regional['gl'] = { - closeText: 'Pechar', - prevText: '<Ant', - nextText: 'Seg>', - currentText: 'Hoxe', - monthNames: ['Xaneiro','Febreiro','Marzo','Abril','Maio','Xuño', - 'Xullo','Agosto','Setembro','Outubro','Novembro','Decembro'], - monthNamesShort: ['Xan','Feb','Mar','Abr','Mai','Xuñ', - 'Xul','Ago','Set','Out','Nov','Dec'], - dayNames: ['Domingo','Luns','Martes','Mércores','Xoves','Venres','Sábado'], - dayNamesShort: ['Dom','Lun','Mar','Mér','Xov','Ven','Sáb'], - dayNamesMin: ['Do','Lu','Ma','Mé','Xo','Ve','Sá'], - weekHeader: 'Sm', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['gl']); -}); +(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['gl'] = { + closeText: 'Pechar', + prevText: '<Ant', + nextText: 'Seg>', + currentText: 'Hoxe', + monthNames: ['Xaneiro','Febreiro','Marzo','Abril','Maio','Xuño', + 'Xullo','Agosto','Setembro','Outubro','Novembro','Decembro'], + monthNamesShort: ['Xan','Feb','Mar','Abr','Mai','Xuñ', + 'Xul','Ago','Set','Out','Nov','Dec'], + dayNames: ['Domingo','Luns','Martes','Mércores','Xoves','Venres','Sábado'], + dayNamesShort: ['Dom','Lun','Mar','Mér','Xov','Ven','Sáb'], + dayNamesMin: ['Do','Lu','Ma','Mé','Xo','Ve','Sá'], + weekHeader: 'Sm', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['gl']); + +return datepicker.regional['gl']; + +})); diff --git a/inc/lang/he/jquery.ui.datepicker.js b/inc/lang/he/jquery.ui.datepicker.js index b9e8deec5..9b1661352 100644 --- a/inc/lang/he/jquery.ui.datepicker.js +++ b/inc/lang/he/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Hebrew initialisation for the UI Datepicker extension. */ /* Written by Amir Hardon (ahardon at gmail dot com). */ -jQuery(function($){ - $.datepicker.regional['he'] = { - closeText: 'סגור', - prevText: '<הקודם', - nextText: 'הבא>', - currentText: 'היום', - monthNames: ['ינואר','פברואר','מרץ','אפריל','מאי','יוני', - 'יולי','אוגוסט','ספטמבר','אוקטובר','נובמבר','דצמבר'], - monthNamesShort: ['ינו','פבר','מרץ','אפר','מאי','יוני', - 'יולי','אוג','ספט','אוק','נוב','דצמ'], - dayNames: ['ראשון','שני','שלישי','רביעי','חמישי','שישי','שבת'], - dayNamesShort: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'], - dayNamesMin: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'], - weekHeader: 'Wk', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: true, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['he']); -}); +(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['he'] = { + closeText: 'סגור', + prevText: '<הקודם', + nextText: 'הבא>', + currentText: 'היום', + monthNames: ['ינואר','פברואר','מרץ','אפריל','מאי','יוני', + 'יולי','אוגוסט','ספטמבר','אוקטובר','נובמבר','דצמבר'], + monthNamesShort: ['ינו','פבר','מרץ','אפר','מאי','יוני', + 'יולי','אוג','ספט','אוק','נוב','דצמ'], + dayNames: ['ראשון','שני','שלישי','רביעי','חמישי','שישי','שבת'], + dayNamesShort: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'], + dayNamesMin: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'], + weekHeader: 'Wk', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: true, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['he']); + +return datepicker.regional['he']; + +})); diff --git a/inc/lang/hi/jquery.ui.datepicker.js b/inc/lang/hi/jquery.ui.datepicker.js index 6c563b997..f20a900ca 100644 --- a/inc/lang/hi/jquery.ui.datepicker.js +++ b/inc/lang/hi/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Hindi initialisation for the jQuery UI date picker plugin. */ /* Written by Michael Dawart. */ -jQuery(function($){ - $.datepicker.regional['hi'] = { - closeText: 'बंद', - prevText: 'पिछला', - nextText: 'अगला', - currentText: 'आज', - monthNames: ['जनवरी ','फरवरी','मार्च','अप्रेल','मई','जून', - 'जूलाई','अगस्त ','सितम्बर','अक्टूबर','नवम्बर','दिसम्बर'], - monthNamesShort: ['जन', 'फर', 'मार्च', 'अप्रेल', 'मई', 'जून', - 'जूलाई', 'अग', 'सित', 'अक्ट', 'नव', 'दि'], - dayNames: ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], - dayNamesShort: ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], - dayNamesMin: ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], - weekHeader: 'हफ्ता', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['hi']); -}); +(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['hi'] = { + closeText: 'बंद', + prevText: 'पिछला', + nextText: 'अगला', + currentText: 'आज', + monthNames: ['जनवरी ','फरवरी','मार्च','अप्रेल','मई','जून', + 'जूलाई','अगस्त ','सितम्बर','अक्टूबर','नवम्बर','दिसम्बर'], + monthNamesShort: ['जन', 'फर', 'मार्च', 'अप्रेल', 'मई', 'जून', + 'जूलाई', 'अग', 'सित', 'अक्ट', 'नव', 'दि'], + dayNames: ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'], + dayNamesShort: ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], + dayNamesMin: ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'], + weekHeader: 'हफ्ता', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['hi']); + +return datepicker.regional['hi']; + +})); diff --git a/inc/lang/hr/jquery.ui.datepicker.js b/inc/lang/hr/jquery.ui.datepicker.js index 2fe37b64b..e8b0414b5 100644 --- a/inc/lang/hr/jquery.ui.datepicker.js +++ b/inc/lang/hr/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Croatian i18n for the jQuery UI date picker plugin. */ /* Written by Vjekoslav Nesek. */ -jQuery(function($){ - $.datepicker.regional['hr'] = { - closeText: 'Zatvori', - prevText: '<', - nextText: '>', - currentText: 'Danas', - monthNames: ['Siječanj','Veljača','Ožujak','Travanj','Svibanj','Lipanj', - 'Srpanj','Kolovoz','Rujan','Listopad','Studeni','Prosinac'], - monthNamesShort: ['Sij','Velj','Ožu','Tra','Svi','Lip', - 'Srp','Kol','Ruj','Lis','Stu','Pro'], - dayNames: ['Nedjelja','Ponedjeljak','Utorak','Srijeda','Četvrtak','Petak','Subota'], - dayNamesShort: ['Ned','Pon','Uto','Sri','Čet','Pet','Sub'], - dayNamesMin: ['Ne','Po','Ut','Sr','Če','Pe','Su'], - weekHeader: 'Tje', - dateFormat: 'dd.mm.yy.', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['hr']); -}); +(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['hr'] = { + closeText: 'Zatvori', + prevText: '<', + nextText: '>', + currentText: 'Danas', + monthNames: ['Siječanj','Veljača','Ožujak','Travanj','Svibanj','Lipanj', + 'Srpanj','Kolovoz','Rujan','Listopad','Studeni','Prosinac'], + monthNamesShort: ['Sij','Velj','Ožu','Tra','Svi','Lip', + 'Srp','Kol','Ruj','Lis','Stu','Pro'], + dayNames: ['Nedjelja','Ponedjeljak','Utorak','Srijeda','Četvrtak','Petak','Subota'], + dayNamesShort: ['Ned','Pon','Uto','Sri','Čet','Pet','Sub'], + dayNamesMin: ['Ne','Po','Ut','Sr','Če','Pe','Su'], + weekHeader: 'Tje', + dateFormat: 'dd.mm.yy.', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['hr']); + +return datepicker.regional['hr']; + +})); diff --git a/inc/lang/hu/jquery.ui.datepicker.js b/inc/lang/hu/jquery.ui.datepicker.js index b28c268c1..8ea85506e 100644 --- a/inc/lang/hu/jquery.ui.datepicker.js +++ b/inc/lang/hu/jquery.ui.datepicker.js @@ -1,23 +1,36 @@ /* Hungarian initialisation for the jQuery UI date picker plugin. */ -/* Written by Istvan Karaszi (jquery@spam.raszi.hu). */ -jQuery(function($){ - $.datepicker.regional['hu'] = { - closeText: 'bezár', - prevText: 'vissza', - nextText: 'előre', - currentText: 'ma', - monthNames: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június', - 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'], - monthNamesShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún', - 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'], - dayNames: ['Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'], - dayNamesShort: ['Vas', 'Hét', 'Ked', 'Sze', 'Csü', 'Pén', 'Szo'], - dayNamesMin: ['V', 'H', 'K', 'Sze', 'Cs', 'P', 'Szo'], - weekHeader: 'Hét', - dateFormat: 'yy.mm.dd.', - firstDay: 1, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['hu']); -}); +(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['hu'] = { + closeText: 'bezár', + prevText: 'vissza', + nextText: 'előre', + currentText: 'ma', + monthNames: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június', + 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'], + monthNamesShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún', + 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'], + dayNames: ['Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'], + dayNamesShort: ['Vas', 'Hét', 'Ked', 'Sze', 'Csü', 'Pén', 'Szo'], + dayNamesMin: ['V', 'H', 'K', 'Sze', 'Cs', 'P', 'Szo'], + weekHeader: 'Hét', + dateFormat: 'yy.mm.dd.', + firstDay: 1, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['hu']); + +return datepicker.regional['hu']; + +})); diff --git a/inc/lang/id/jquery.ui.datepicker.js b/inc/lang/id/jquery.ui.datepicker.js index 6327fa60c..0db693faf 100644 --- a/inc/lang/id/jquery.ui.datepicker.js +++ b/inc/lang/id/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Indonesian initialisation for the jQuery UI date picker plugin. */ /* Written by Deden Fathurahman (dedenf@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['id'] = { - closeText: 'Tutup', - prevText: '<mundur', - nextText: 'maju>', - currentText: 'hari ini', - monthNames: ['Januari','Februari','Maret','April','Mei','Juni', - 'Juli','Agustus','September','Oktober','Nopember','Desember'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun', - 'Jul','Agus','Sep','Okt','Nop','Des'], - dayNames: ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'], - dayNamesShort: ['Min','Sen','Sel','Rab','kam','Jum','Sab'], - dayNamesMin: ['Mg','Sn','Sl','Rb','Km','jm','Sb'], - weekHeader: 'Mg', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['id']); -}); +(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['id'] = { + closeText: 'Tutup', + prevText: '<mundur', + nextText: 'maju>', + currentText: 'hari ini', + monthNames: ['Januari','Februari','Maret','April','Mei','Juni', + 'Juli','Agustus','September','Oktober','Nopember','Desember'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun', + 'Jul','Agus','Sep','Okt','Nop','Des'], + dayNames: ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'], + dayNamesShort: ['Min','Sen','Sel','Rab','kam','Jum','Sab'], + dayNamesMin: ['Mg','Sn','Sl','Rb','Km','jm','Sb'], + weekHeader: 'Mg', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['id']); + +return datepicker.regional['id']; + +})); diff --git a/inc/lang/is/jquery.ui.datepicker.js b/inc/lang/is/jquery.ui.datepicker.js index 4fc429888..16bc79ad8 100644 --- a/inc/lang/is/jquery.ui.datepicker.js +++ b/inc/lang/is/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Icelandic initialisation for the jQuery UI date picker plugin. */ /* Written by Haukur H. Thorsson (haukur@eskill.is). */ -jQuery(function($){ - $.datepicker.regional['is'] = { - closeText: 'Loka', - prevText: '< Fyrri', - nextText: 'Næsti >', - currentText: 'Í dag', - monthNames: ['Janúar','Febrúar','Mars','Apríl','Maí','Júní', - 'Júlí','Ágúst','September','Október','Nóvember','Desember'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Maí','Jún', - 'Júl','Ágú','Sep','Okt','Nóv','Des'], - dayNames: ['Sunnudagur','Mánudagur','Þriðjudagur','Miðvikudagur','Fimmtudagur','Föstudagur','Laugardagur'], - dayNamesShort: ['Sun','Mán','Þri','Mið','Fim','Fös','Lau'], - dayNamesMin: ['Su','Má','Þr','Mi','Fi','Fö','La'], - weekHeader: 'Vika', - dateFormat: 'dd.mm.yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['is']); -}); +(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['is'] = { + closeText: 'Loka', + prevText: '< Fyrri', + nextText: 'Næsti >', + currentText: 'Í dag', + monthNames: ['Janúar','Febrúar','Mars','Apríl','Maí','Júní', + 'Júlí','Ágúst','September','Október','Nóvember','Desember'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Maí','Jún', + 'Júl','Ágú','Sep','Okt','Nóv','Des'], + dayNames: ['Sunnudagur','Mánudagur','Þriðjudagur','Miðvikudagur','Fimmtudagur','Föstudagur','Laugardagur'], + dayNamesShort: ['Sun','Mán','Þri','Mið','Fim','Fös','Lau'], + dayNamesMin: ['Su','Má','Þr','Mi','Fi','Fö','La'], + weekHeader: 'Vika', + dateFormat: 'dd.mm.yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['is']); + +return datepicker.regional['is']; + +})); diff --git a/inc/lang/it/jquery.ui.datepicker.js b/inc/lang/it/jquery.ui.datepicker.js index a01f043f8..4d4d62f9b 100644 --- a/inc/lang/it/jquery.ui.datepicker.js +++ b/inc/lang/it/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Italian initialisation for the jQuery UI date picker plugin. */ /* Written by Antonello Pasella (antonello.pasella@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['it'] = { - closeText: 'Chiudi', - prevText: '<Prec', - nextText: 'Succ>', - currentText: 'Oggi', - monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno', - 'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], - monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu', - 'Lug','Ago','Set','Ott','Nov','Dic'], - dayNames: ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'], - dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'], - dayNamesMin: ['Do','Lu','Ma','Me','Gi','Ve','Sa'], - weekHeader: 'Sm', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['it']); -}); +(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['it'] = { + closeText: 'Chiudi', + prevText: '<Prec', + nextText: 'Succ>', + currentText: 'Oggi', + monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno', + 'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'], + monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu', + 'Lug','Ago','Set','Ott','Nov','Dic'], + dayNames: ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'], + dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'], + dayNamesMin: ['Do','Lu','Ma','Me','Gi','Ve','Sa'], + weekHeader: 'Sm', + dateFormat: 'dd/mm/yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['it']); + +return datepicker.regional['it']; + +})); diff --git a/inc/lang/ja/jquery.ui.datepicker.js b/inc/lang/ja/jquery.ui.datepicker.js index 4d0b63c77..381f41b5d 100644 --- a/inc/lang/ja/jquery.ui.datepicker.js +++ b/inc/lang/ja/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Japanese initialisation for the jQuery UI date picker plugin. */ /* Written by Kentaro SATO (kentaro@ranvis.com). */ -jQuery(function($){ - $.datepicker.regional['ja'] = { - closeText: '閉じる', - prevText: '<前', - nextText: '次>', - currentText: '今日', - monthNames: ['1月','2月','3月','4月','5月','6月', - '7月','8月','9月','10月','11月','12月'], - monthNamesShort: ['1月','2月','3月','4月','5月','6月', - '7月','8月','9月','10月','11月','12月'], - dayNames: ['日曜日','月曜日','火曜日','水曜日','木曜日','金曜日','土曜日'], - dayNamesShort: ['日','月','火','水','木','金','土'], - dayNamesMin: ['日','月','火','水','木','金','土'], - weekHeader: '週', - dateFormat: 'yy/mm/dd', - firstDay: 0, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: '年'}; - $.datepicker.setDefaults($.datepicker.regional['ja']); -}); +(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['ja'] = { + closeText: '閉じる', + prevText: '<前', + nextText: '次>', + currentText: '今日', + monthNames: ['1月','2月','3月','4月','5月','6月', + '7月','8月','9月','10月','11月','12月'], + monthNamesShort: ['1月','2月','3月','4月','5月','6月', + '7月','8月','9月','10月','11月','12月'], + dayNames: ['日曜日','月曜日','火曜日','水曜日','木曜日','金曜日','土曜日'], + dayNamesShort: ['日','月','火','水','木','金','土'], + dayNamesMin: ['日','月','火','水','木','金','土'], + weekHeader: '週', + dateFormat: 'yy/mm/dd', + firstDay: 0, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: '年'}; +datepicker.setDefaults(datepicker.regional['ja']); + +return datepicker.regional['ja']; + +})); diff --git a/inc/lang/kk/jquery.ui.datepicker.js b/inc/lang/kk/jquery.ui.datepicker.js index dcd6a65df..e85fd8354 100644 --- a/inc/lang/kk/jquery.ui.datepicker.js +++ b/inc/lang/kk/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Kazakh (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* Written by Dmitriy Karasyov (dmitriy.karasyov@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['kk'] = { - closeText: 'Жабу', - prevText: '<Алдыңғы', - nextText: 'Келесі>', - currentText: 'Бүгін', - monthNames: ['Қаңтар','Ақпан','Наурыз','Сәуір','Мамыр','Маусым', - 'Шілде','Тамыз','Қыркүйек','Қазан','Қараша','Желтоқсан'], - monthNamesShort: ['Қаң','Ақп','Нау','Сәу','Мам','Мау', - 'Шіл','Там','Қыр','Қаз','Қар','Жел'], - dayNames: ['Жексенбі','Дүйсенбі','Сейсенбі','Сәрсенбі','Бейсенбі','Жұма','Сенбі'], - dayNamesShort: ['жкс','дсн','ссн','срс','бсн','жма','снб'], - dayNamesMin: ['Жк','Дс','Сс','Ср','Бс','Жм','Сн'], - weekHeader: 'Не', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['kk']); -}); +(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['kk'] = { + closeText: 'Жабу', + prevText: '<Алдыңғы', + nextText: 'Келесі>', + currentText: 'Бүгін', + monthNames: ['Қаңтар','Ақпан','Наурыз','Сәуір','Мамыр','Маусым', + 'Шілде','Тамыз','Қыркүйек','Қазан','Қараша','Желтоқсан'], + monthNamesShort: ['Қаң','Ақп','Нау','Сәу','Мам','Мау', + 'Шіл','Там','Қыр','Қаз','Қар','Жел'], + dayNames: ['Жексенбі','Дүйсенбі','Сейсенбі','Сәрсенбі','Бейсенбі','Жұма','Сенбі'], + dayNamesShort: ['жкс','дсн','ссн','срс','бсн','жма','снб'], + dayNamesMin: ['Жк','Дс','Сс','Ср','Бс','Жм','Сн'], + weekHeader: 'Не', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['kk']); + +return datepicker.regional['kk']; + +})); diff --git a/inc/lang/km/jquery.ui.datepicker.js b/inc/lang/km/jquery.ui.datepicker.js index f9c4e3a02..599a47713 100644 --- a/inc/lang/km/jquery.ui.datepicker.js +++ b/inc/lang/km/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Khmer initialisation for the jQuery calendar extension. */ /* Written by Chandara Om (chandara.teacher@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['km'] = { - closeText: 'ធ្វើ​រួច', - prevText: 'មុន', - nextText: 'បន្ទាប់', - currentText: 'ថ្ងៃ​នេះ', - monthNames: ['មករា','កុម្ភៈ','មីនា','មេសា','ឧសភា','មិថុនា', - 'កក្កដា','សីហា','កញ្ញា','តុលា','វិច្ឆិកា','ធ្នូ'], - monthNamesShort: ['មករា','កុម្ភៈ','មីនា','មេសា','ឧសភា','មិថុនា', - 'កក្កដា','សីហា','កញ្ញា','តុលា','វិច្ឆិកា','ធ្នូ'], - dayNames: ['អាទិត្យ', 'ចន្ទ', 'អង្គារ', 'ពុធ', 'ព្រហស្បតិ៍', 'សុក្រ', 'សៅរ៍'], - dayNamesShort: ['អា', 'ច', 'អ', 'ពុ', 'ព្រហ', 'សុ', 'សៅ'], - dayNamesMin: ['អា', 'ច', 'អ', 'ពុ', 'ព្រហ', 'សុ', 'សៅ'], - weekHeader: 'សប្ដាហ៍', - dateFormat: 'dd-mm-yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['km']); -}); +(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['km'] = { + closeText: 'ធ្វើ​រួច', + prevText: 'មុន', + nextText: 'បន្ទាប់', + currentText: 'ថ្ងៃ​នេះ', + monthNames: ['មករា','កុម្ភៈ','មីនា','មេសា','ឧសភា','មិថុនា', + 'កក្កដា','សីហា','កញ្ញា','តុលា','វិច្ឆិកា','ធ្នូ'], + monthNamesShort: ['មករា','កុម្ភៈ','មីនា','មេសា','ឧសភា','មិថុនា', + 'កក្កដា','សីហា','កញ្ញា','តុលា','វិច្ឆិកា','ធ្នូ'], + dayNames: ['អាទិត្យ', 'ចន្ទ', 'អង្គារ', 'ពុធ', 'ព្រហស្បតិ៍', 'សុក្រ', 'សៅរ៍'], + dayNamesShort: ['អា', 'ច', 'អ', 'ពុ', 'ព្រហ', 'សុ', 'សៅ'], + dayNamesMin: ['អា', 'ច', 'អ', 'ពុ', 'ព្រហ', 'សុ', 'សៅ'], + weekHeader: 'សប្ដាហ៍', + dateFormat: 'dd-mm-yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['km']); + +return datepicker.regional['km']; + +})); diff --git a/inc/lang/ko/jquery.ui.datepicker.js b/inc/lang/ko/jquery.ui.datepicker.js index af36f3d6b..991b5727e 100644 --- a/inc/lang/ko/jquery.ui.datepicker.js +++ b/inc/lang/ko/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Korean initialisation for the jQuery calendar extension. */ /* Written by DaeKwon Kang (ncrash.dk@gmail.com), Edited by Genie. */ -jQuery(function($){ - $.datepicker.regional['ko'] = { - closeText: '닫기', - prevText: '이전달', - nextText: '다음달', - currentText: '오늘', - monthNames: ['1월','2월','3월','4월','5월','6월', - '7월','8월','9월','10월','11월','12월'], - monthNamesShort: ['1월','2월','3월','4월','5월','6월', - '7월','8월','9월','10월','11월','12월'], - dayNames: ['일요일','월요일','화요일','수요일','목요일','금요일','토요일'], - dayNamesShort: ['일','월','화','수','목','금','토'], - dayNamesMin: ['일','월','화','수','목','금','토'], - weekHeader: 'Wk', - dateFormat: 'yy-mm-dd', - firstDay: 0, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: '년'}; - $.datepicker.setDefaults($.datepicker.regional['ko']); -}); +(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['ko'] = { + closeText: '닫기', + prevText: '이전달', + nextText: '다음달', + currentText: '오늘', + monthNames: ['1월','2월','3월','4월','5월','6월', + '7월','8월','9월','10월','11월','12월'], + monthNamesShort: ['1월','2월','3월','4월','5월','6월', + '7월','8월','9월','10월','11월','12월'], + dayNames: ['일요일','월요일','화요일','수요일','목요일','금요일','토요일'], + dayNamesShort: ['일','월','화','수','목','금','토'], + dayNamesMin: ['일','월','화','수','목','금','토'], + weekHeader: 'Wk', + dateFormat: 'yy-mm-dd', + firstDay: 0, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: '년'}; +datepicker.setDefaults(datepicker.regional['ko']); + +return datepicker.regional['ko']; + +})); diff --git a/inc/lang/lb/jquery.ui.datepicker.js b/inc/lang/lb/jquery.ui.datepicker.js index 87c79d594..4f2e414be 100644 --- a/inc/lang/lb/jquery.ui.datepicker.js +++ b/inc/lang/lb/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Luxembourgish initialisation for the jQuery UI date picker plugin. */ /* Written by Michel Weimerskirch */ -jQuery(function($){ - $.datepicker.regional['lb'] = { - closeText: 'Fäerdeg', - prevText: 'Zréck', - nextText: 'Weider', - currentText: 'Haut', - monthNames: ['Januar','Februar','Mäerz','Abrëll','Mee','Juni', - 'Juli','August','September','Oktober','November','Dezember'], - monthNamesShort: ['Jan', 'Feb', 'Mäe', 'Abr', 'Mee', 'Jun', - 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'], - dayNames: ['Sonndeg', 'Méindeg', 'Dënschdeg', 'Mëttwoch', 'Donneschdeg', 'Freideg', 'Samschdeg'], - dayNamesShort: ['Son', 'Méi', 'Dën', 'Mët', 'Don', 'Fre', 'Sam'], - dayNamesMin: ['So','Mé','Dë','Më','Do','Fr','Sa'], - weekHeader: 'W', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['lb']); -}); +(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['lb'] = { + closeText: 'Fäerdeg', + prevText: 'Zréck', + nextText: 'Weider', + currentText: 'Haut', + monthNames: ['Januar','Februar','Mäerz','Abrëll','Mee','Juni', + 'Juli','August','September','Oktober','November','Dezember'], + monthNamesShort: ['Jan', 'Feb', 'Mäe', 'Abr', 'Mee', 'Jun', + 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'], + dayNames: ['Sonndeg', 'Méindeg', 'Dënschdeg', 'Mëttwoch', 'Donneschdeg', 'Freideg', 'Samschdeg'], + dayNamesShort: ['Son', 'Méi', 'Dën', 'Mët', 'Don', 'Fre', 'Sam'], + dayNamesMin: ['So','Mé','Dë','Më','Do','Fr','Sa'], + weekHeader: 'W', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['lb']); + +return datepicker.regional['lb']; + +})); diff --git a/inc/lang/lt/jquery.ui.datepicker.js b/inc/lang/lt/jquery.ui.datepicker.js index 54eb523b3..60ccbefe7 100644 --- a/inc/lang/lt/jquery.ui.datepicker.js +++ b/inc/lang/lt/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Lithuanian (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* @author Arturas Paleicikas */ -jQuery(function($){ - $.datepicker.regional['lt'] = { - closeText: 'Uždaryti', - prevText: '<Atgal', - nextText: 'Pirmyn>', - currentText: 'Šiandien', - monthNames: ['Sausis','Vasaris','Kovas','Balandis','Gegužė','Birželis', - 'Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'], - monthNamesShort: ['Sau','Vas','Kov','Bal','Geg','Bir', - 'Lie','Rugp','Rugs','Spa','Lap','Gru'], - dayNames: ['sekmadienis','pirmadienis','antradienis','trečiadienis','ketvirtadienis','penktadienis','šeštadienis'], - dayNamesShort: ['sek','pir','ant','tre','ket','pen','šeš'], - dayNamesMin: ['Se','Pr','An','Tr','Ke','Pe','Še'], - weekHeader: 'SAV', - dateFormat: 'yy-mm-dd', - firstDay: 1, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['lt']); -}); +(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['lt'] = { + closeText: 'Uždaryti', + prevText: '<Atgal', + nextText: 'Pirmyn>', + currentText: 'Šiandien', + monthNames: ['Sausis','Vasaris','Kovas','Balandis','Gegužė','Birželis', + 'Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'], + monthNamesShort: ['Sau','Vas','Kov','Bal','Geg','Bir', + 'Lie','Rugp','Rugs','Spa','Lap','Gru'], + dayNames: ['sekmadienis','pirmadienis','antradienis','trečiadienis','ketvirtadienis','penktadienis','šeštadienis'], + dayNamesShort: ['sek','pir','ant','tre','ket','pen','šeš'], + dayNamesMin: ['Se','Pr','An','Tr','Ke','Pe','Še'], + weekHeader: 'SAV', + dateFormat: 'yy-mm-dd', + firstDay: 1, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['lt']); + +return datepicker.regional['lt']; + +})); diff --git a/inc/lang/lv/jquery.ui.datepicker.js b/inc/lang/lv/jquery.ui.datepicker.js index 3fdf8565b..b9e288535 100644 --- a/inc/lang/lv/jquery.ui.datepicker.js +++ b/inc/lang/lv/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Latvian (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* @author Arturas Paleicikas */ -jQuery(function($){ - $.datepicker.regional['lv'] = { - closeText: 'Aizvērt', - prevText: 'Iepr.', - nextText: 'Nāk.', - currentText: 'Šodien', - monthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs', - 'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jūn', - 'Jūl','Aug','Sep','Okt','Nov','Dec'], - dayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'], - dayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'], - dayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'], - weekHeader: 'Ned.', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['lv']); -}); +(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['lv'] = { + closeText: 'Aizvērt', + prevText: 'Iepr.', + nextText: 'Nāk.', + currentText: 'Šodien', + monthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs', + 'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jūn', + 'Jūl','Aug','Sep','Okt','Nov','Dec'], + dayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'], + dayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'], + dayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'], + weekHeader: 'Ned.', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['lv']); + +return datepicker.regional['lv']; + +})); diff --git a/inc/lang/mk/jquery.ui.datepicker.js b/inc/lang/mk/jquery.ui.datepicker.js index 028532551..15942e281 100644 --- a/inc/lang/mk/jquery.ui.datepicker.js +++ b/inc/lang/mk/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Macedonian i18n for the jQuery UI date picker plugin. */ /* Written by Stojce Slavkovski. */ -jQuery(function($){ - $.datepicker.regional['mk'] = { - closeText: 'Затвори', - prevText: '<', - nextText: '>', - currentText: 'Денес', - monthNames: ['Јануари','Февруари','Март','Април','Мај','Јуни', - 'Јули','Август','Септември','Октомври','Ноември','Декември'], - monthNamesShort: ['Јан','Фев','Мар','Апр','Мај','Јун', - 'Јул','Авг','Сеп','Окт','Ное','Дек'], - dayNames: ['Недела','Понеделник','Вторник','Среда','Четврток','Петок','Сабота'], - dayNamesShort: ['Нед','Пон','Вто','Сре','Чет','Пет','Саб'], - dayNamesMin: ['Не','По','Вт','Ср','Че','Пе','Са'], - weekHeader: 'Сед', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['mk']); -}); +(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['mk'] = { + closeText: 'Затвори', + prevText: '<', + nextText: '>', + currentText: 'Денес', + monthNames: ['Јануари','Февруари','Март','Април','Мај','Јуни', + 'Јули','Август','Септември','Октомври','Ноември','Декември'], + monthNamesShort: ['Јан','Фев','Мар','Апр','Мај','Јун', + 'Јул','Авг','Сеп','Окт','Ное','Дек'], + dayNames: ['Недела','Понеделник','Вторник','Среда','Четврток','Петок','Сабота'], + dayNamesShort: ['Нед','Пон','Вто','Сре','Чет','Пет','Саб'], + dayNamesMin: ['Не','По','Вт','Ср','Че','Пе','Са'], + weekHeader: 'Сед', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['mk']); + +return datepicker.regional['mk']; + +})); diff --git a/inc/lang/ms/jquery.ui.datepicker.js b/inc/lang/ms/jquery.ui.datepicker.js index e70de7299..d452df3ef 100644 --- a/inc/lang/ms/jquery.ui.datepicker.js +++ b/inc/lang/ms/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Malaysian initialisation for the jQuery UI date picker plugin. */ /* Written by Mohd Nawawi Mohamad Jamili (nawawi@ronggeng.net). */ -jQuery(function($){ - $.datepicker.regional['ms'] = { - closeText: 'Tutup', - prevText: '<Sebelum', - nextText: 'Selepas>', - currentText: 'hari ini', - monthNames: ['Januari','Februari','Mac','April','Mei','Jun', - 'Julai','Ogos','September','Oktober','November','Disember'], - monthNamesShort: ['Jan','Feb','Mac','Apr','Mei','Jun', - 'Jul','Ogo','Sep','Okt','Nov','Dis'], - dayNames: ['Ahad','Isnin','Selasa','Rabu','Khamis','Jumaat','Sabtu'], - dayNamesShort: ['Aha','Isn','Sel','Rab','kha','Jum','Sab'], - dayNamesMin: ['Ah','Is','Se','Ra','Kh','Ju','Sa'], - weekHeader: 'Mg', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['ms']); -}); +(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['ms'] = { + closeText: 'Tutup', + prevText: '<Sebelum', + nextText: 'Selepas>', + currentText: 'hari ini', + monthNames: ['Januari','Februari','Mac','April','Mei','Jun', + 'Julai','Ogos','September','Oktober','November','Disember'], + monthNamesShort: ['Jan','Feb','Mac','Apr','Mei','Jun', + 'Jul','Ogo','Sep','Okt','Nov','Dis'], + dayNames: ['Ahad','Isnin','Selasa','Rabu','Khamis','Jumaat','Sabtu'], + dayNamesShort: ['Aha','Isn','Sel','Rab','kha','Jum','Sab'], + dayNamesMin: ['Ah','Is','Se','Ra','Kh','Ju','Sa'], + weekHeader: 'Mg', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['ms']); + +return datepicker.regional['ms']; + +})); diff --git a/inc/lang/nl/jquery.ui.datepicker.js b/inc/lang/nl/jquery.ui.datepicker.js index 203f16069..9be14bb2a 100644 --- a/inc/lang/nl/jquery.ui.datepicker.js +++ b/inc/lang/nl/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* Written by Mathias Bynens */ -jQuery(function($){ - $.datepicker.regional.nl = { - closeText: 'Sluiten', - prevText: '←', - nextText: '→', - currentText: 'Vandaag', - monthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni', - 'juli', 'augustus', 'september', 'oktober', 'november', 'december'], - monthNamesShort: ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', - 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'], - dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'], - dayNamesShort: ['zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'], - dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'], - weekHeader: 'Wk', - dateFormat: 'dd-mm-yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional.nl); -}); +(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.nl = { + closeText: 'Sluiten', + prevText: '←', + nextText: '→', + currentText: 'Vandaag', + monthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni', + 'juli', 'augustus', 'september', 'oktober', 'november', 'december'], + monthNamesShort: ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', + 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'], + dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'], + dayNamesShort: ['zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'], + dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'], + weekHeader: 'Wk', + dateFormat: 'dd-mm-yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional.nl); + +return datepicker.regional.nl; + +})); diff --git a/inc/lang/no/jquery.ui.datepicker.js b/inc/lang/no/jquery.ui.datepicker.js index d36e430be..8917b6a26 100644 --- a/inc/lang/no/jquery.ui.datepicker.js +++ b/inc/lang/no/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Norwegian initialisation for the jQuery UI date picker plugin. */ /* Written by Naimdjon Takhirov (naimdjon@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['no'] = { - closeText: 'Lukk', - prevText: '«Forrige', - nextText: 'Neste»', - currentText: 'I dag', - monthNames: ['januar','februar','mars','april','mai','juni','juli','august','september','oktober','november','desember'], - monthNamesShort: ['jan','feb','mar','apr','mai','jun','jul','aug','sep','okt','nov','des'], - dayNamesShort: ['søn','man','tir','ons','tor','fre','lør'], - dayNames: ['søndag','mandag','tirsdag','onsdag','torsdag','fredag','lørdag'], - dayNamesMin: ['sø','ma','ti','on','to','fr','lø'], - weekHeader: 'Uke', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: '' - }; - $.datepicker.setDefaults($.datepicker.regional['no']); -}); +(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['no'] = { + closeText: 'Lukk', + prevText: '«Forrige', + nextText: 'Neste»', + currentText: 'I dag', + monthNames: ['januar','februar','mars','april','mai','juni','juli','august','september','oktober','november','desember'], + monthNamesShort: ['jan','feb','mar','apr','mai','jun','jul','aug','sep','okt','nov','des'], + dayNamesShort: ['søn','man','tir','ons','tor','fre','lør'], + dayNames: ['søndag','mandag','tirsdag','onsdag','torsdag','fredag','lørdag'], + dayNamesMin: ['sø','ma','ti','on','to','fr','lø'], + weekHeader: 'Uke', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: '' +}; +datepicker.setDefaults(datepicker.regional['no']); + +return datepicker.regional['no']; + +})); diff --git a/inc/lang/pl/jquery.ui.datepicker.js b/inc/lang/pl/jquery.ui.datepicker.js index 0ffc515b9..a04de8e8a 100644 --- a/inc/lang/pl/jquery.ui.datepicker.js +++ b/inc/lang/pl/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Polish initialisation for the jQuery UI date picker plugin. */ /* Written by Jacek Wysocki (jacek.wysocki@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['pl'] = { - closeText: 'Zamknij', - prevText: '<Poprzedni', - nextText: 'Następny>', - currentText: 'Dziś', - monthNames: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec', - 'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'], - monthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze', - 'Lip','Sie','Wrz','Pa','Lis','Gru'], - dayNames: ['Niedziela','Poniedziałek','Wtorek','Środa','Czwartek','Piątek','Sobota'], - dayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'], - dayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'], - weekHeader: 'Tydz', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['pl']); -}); +(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['pl'] = { + closeText: 'Zamknij', + prevText: '<Poprzedni', + nextText: 'Następny>', + currentText: 'Dziś', + monthNames: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec', + 'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'], + monthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze', + 'Lip','Sie','Wrz','Pa','Lis','Gru'], + dayNames: ['Niedziela','Poniedziałek','Wtorek','Środa','Czwartek','Piątek','Sobota'], + dayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'], + dayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'], + weekHeader: 'Tydz', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['pl']); + +return datepicker.regional['pl']; + +})); diff --git a/inc/lang/pt-br/jquery.ui.datepicker.js b/inc/lang/pt-br/jquery.ui.datepicker.js index 521967ec3..d6bd89907 100644 --- a/inc/lang/pt-br/jquery.ui.datepicker.js +++ b/inc/lang/pt-br/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Brazilian initialisation for the jQuery UI date picker plugin. */ /* Written by Leonildo Costa Silva (leocsilva@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['pt-BR'] = { - closeText: 'Fechar', - prevText: '<Anterior', - nextText: 'Próximo>', - currentText: 'Hoje', - monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho', - 'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'], - monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', - 'Jul','Ago','Set','Out','Nov','Dez'], - dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado'], - dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], - dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], - weekHeader: 'Sm', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['pt-BR']); -}); +(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['pt-BR'] = { + closeText: 'Fechar', + prevText: '<Anterior', + nextText: 'Próximo>', + currentText: 'Hoje', + monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho', + 'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'], + monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', + 'Jul','Ago','Set','Out','Nov','Dez'], + dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado'], + dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], + dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], + weekHeader: 'Sm', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['pt-BR']); + +return datepicker.regional['pt-BR']; + +})); diff --git a/inc/lang/pt/jquery.ui.datepicker.js b/inc/lang/pt/jquery.ui.datepicker.js index 4fb16f032..bb46838e2 100644 --- a/inc/lang/pt/jquery.ui.datepicker.js +++ b/inc/lang/pt/jquery.ui.datepicker.js @@ -1,22 +1,36 @@ /* Portuguese initialisation for the jQuery UI date picker plugin. */ -jQuery(function($){ - $.datepicker.regional['pt'] = { - closeText: 'Fechar', - prevText: 'Anterior', - nextText: 'Seguinte', - currentText: 'Hoje', - monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho', - 'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'], - monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', - 'Jul','Ago','Set','Out','Nov','Dez'], - dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado'], - dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], - dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], - weekHeader: 'Sem', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['pt']); -}); +(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['pt'] = { + closeText: 'Fechar', + prevText: 'Anterior', + nextText: 'Seguinte', + currentText: 'Hoje', + monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho', + 'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'], + monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', + 'Jul','Ago','Set','Out','Nov','Dez'], + dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado'], + dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], + dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sáb'], + weekHeader: 'Sem', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['pt']); + +return datepicker.regional['pt']; + +})); diff --git a/inc/lang/ro/jquery.ui.datepicker.js b/inc/lang/ro/jquery.ui.datepicker.js index a988270d7..66ee1099f 100644 --- a/inc/lang/ro/jquery.ui.datepicker.js +++ b/inc/lang/ro/jquery.ui.datepicker.js @@ -3,24 +3,38 @@ * Written by Edmond L. (ll_edmond@walla.com) * and Ionut G. Stan (ionut.g.stan@gmail.com) */ -jQuery(function($){ - $.datepicker.regional['ro'] = { - closeText: 'Închide', - prevText: '« Luna precedentă', - nextText: 'Luna următoare »', - currentText: 'Azi', - monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie', - 'Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'], - monthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Iun', - 'Iul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], - dayNames: ['Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'], - dayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'], - dayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sâ'], - weekHeader: 'Săpt', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['ro']); -}); +(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['ro'] = { + closeText: 'Închide', + prevText: '« Luna precedentă', + nextText: 'Luna următoare »', + currentText: 'Azi', + monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie', + 'Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'], + monthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Iun', + 'Iul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], + dayNames: ['Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'], + dayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'], + dayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sâ'], + weekHeader: 'Săpt', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['ro']); + +return datepicker.regional['ro']; + +})); diff --git a/inc/lang/ru/jquery.ui.datepicker.js b/inc/lang/ru/jquery.ui.datepicker.js index a51971405..c3fda5d59 100644 --- a/inc/lang/ru/jquery.ui.datepicker.js +++ b/inc/lang/ru/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Russian (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* Written by Andrew Stromnov (stromnov@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['ru'] = { - closeText: 'Закрыть', - prevText: '<Пред', - nextText: 'След>', - currentText: 'Сегодня', - monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь', - 'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'], - monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн', - 'Июл','Авг','Сен','Окт','Ноя','Дек'], - dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'], - dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'], - dayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'], - weekHeader: 'Нед', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['ru']); -}); +(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['ru'] = { + closeText: 'Закрыть', + prevText: '<Пред', + nextText: 'След>', + currentText: 'Сегодня', + monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь', + 'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'], + monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн', + 'Июл','Авг','Сен','Окт','Ноя','Дек'], + dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'], + dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'], + dayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'], + weekHeader: 'Нед', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['ru']); + +return datepicker.regional['ru']; + +})); diff --git a/inc/lang/sk/jquery.ui.datepicker.js b/inc/lang/sk/jquery.ui.datepicker.js index 0cb76c4e8..1f924f820 100644 --- a/inc/lang/sk/jquery.ui.datepicker.js +++ b/inc/lang/sk/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Slovak initialisation for the jQuery UI date picker plugin. */ /* Written by Vojtech Rinik (vojto@hmm.sk). */ -jQuery(function($){ - $.datepicker.regional['sk'] = { - closeText: 'Zavrieť', - prevText: '<Predchádzajúci', - nextText: 'Nasledujúci>', - currentText: 'Dnes', - monthNames: ['január','február','marec','apríl','máj','jún', - 'júl','august','september','október','november','december'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún', - 'Júl','Aug','Sep','Okt','Nov','Dec'], - dayNames: ['nedeľa','pondelok','utorok','streda','štvrtok','piatok','sobota'], - dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'], - dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'], - weekHeader: 'Ty', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['sk']); -}); +(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['sk'] = { + closeText: 'Zavrieť', + prevText: '<Predchádzajúci', + nextText: 'Nasledujúci>', + currentText: 'Dnes', + monthNames: ['január','február','marec','apríl','máj','jún', + 'júl','august','september','október','november','december'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún', + 'Júl','Aug','Sep','Okt','Nov','Dec'], + dayNames: ['nedeľa','pondelok','utorok','streda','štvrtok','piatok','sobota'], + dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'], + dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'], + weekHeader: 'Ty', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['sk']); + +return datepicker.regional['sk']; + +})); diff --git a/inc/lang/sl/jquery.ui.datepicker.js b/inc/lang/sl/jquery.ui.datepicker.js index 048a47af7..88d7f2b19 100644 --- a/inc/lang/sl/jquery.ui.datepicker.js +++ b/inc/lang/sl/jquery.ui.datepicker.js @@ -1,24 +1,38 @@ /* Slovenian initialisation for the jQuery UI date picker plugin. */ /* Written by Jaka Jancar (jaka@kubje.org). */ /* c = č, s = š z = ž C = Č S = Š Z = Ž */ -jQuery(function($){ - $.datepicker.regional['sl'] = { - closeText: 'Zapri', - prevText: '<Prejšnji', - nextText: 'Naslednji>', - currentText: 'Trenutni', - monthNames: ['Januar','Februar','Marec','April','Maj','Junij', - 'Julij','Avgust','September','Oktober','November','December'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', - 'Jul','Avg','Sep','Okt','Nov','Dec'], - dayNames: ['Nedelja','Ponedeljek','Torek','Sreda','Četrtek','Petek','Sobota'], - dayNamesShort: ['Ned','Pon','Tor','Sre','Čet','Pet','Sob'], - dayNamesMin: ['Ne','Po','To','Sr','Če','Pe','So'], - weekHeader: 'Teden', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['sl']); -}); +(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['sl'] = { + closeText: 'Zapri', + prevText: '<Prejšnji', + nextText: 'Naslednji>', + currentText: 'Trenutni', + monthNames: ['Januar','Februar','Marec','April','Maj','Junij', + 'Julij','Avgust','September','Oktober','November','December'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', + 'Jul','Avg','Sep','Okt','Nov','Dec'], + dayNames: ['Nedelja','Ponedeljek','Torek','Sreda','Četrtek','Petek','Sobota'], + dayNamesShort: ['Ned','Pon','Tor','Sre','Čet','Pet','Sob'], + dayNamesMin: ['Ne','Po','To','Sr','Če','Pe','So'], + weekHeader: 'Teden', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['sl']); + +return datepicker.regional['sl']; + +})); diff --git a/inc/lang/sq/jquery.ui.datepicker.js b/inc/lang/sq/jquery.ui.datepicker.js index d6086a789..f88c22c56 100644 --- a/inc/lang/sq/jquery.ui.datepicker.js +++ b/inc/lang/sq/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Albanian initialisation for the jQuery UI date picker plugin. */ /* Written by Flakron Bytyqi (flakron@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['sq'] = { - closeText: 'mbylle', - prevText: '<mbrapa', - nextText: 'Përpara>', - currentText: 'sot', - monthNames: ['Janar','Shkurt','Mars','Prill','Maj','Qershor', - 'Korrik','Gusht','Shtator','Tetor','Nëntor','Dhjetor'], - monthNamesShort: ['Jan','Shk','Mar','Pri','Maj','Qer', - 'Kor','Gus','Sht','Tet','Nën','Dhj'], - dayNames: ['E Diel','E Hënë','E Martë','E Mërkurë','E Enjte','E Premte','E Shtune'], - dayNamesShort: ['Di','Hë','Ma','Më','En','Pr','Sh'], - dayNamesMin: ['Di','Hë','Ma','Më','En','Pr','Sh'], - weekHeader: 'Ja', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['sq']); -}); +(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['sq'] = { + closeText: 'mbylle', + prevText: '<mbrapa', + nextText: 'Përpara>', + currentText: 'sot', + monthNames: ['Janar','Shkurt','Mars','Prill','Maj','Qershor', + 'Korrik','Gusht','Shtator','Tetor','Nëntor','Dhjetor'], + monthNamesShort: ['Jan','Shk','Mar','Pri','Maj','Qer', + 'Kor','Gus','Sht','Tet','Nën','Dhj'], + dayNames: ['E Diel','E Hënë','E Martë','E Mërkurë','E Enjte','E Premte','E Shtune'], + dayNamesShort: ['Di','Hë','Ma','Më','En','Pr','Sh'], + dayNamesMin: ['Di','Hë','Ma','Më','En','Pr','Sh'], + weekHeader: 'Ja', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['sq']); + +return datepicker.regional['sq']; + +})); diff --git a/inc/lang/sr/jquery.ui.datepicker.js b/inc/lang/sr/jquery.ui.datepicker.js index 1349a26cf..0f6d9e240 100644 --- a/inc/lang/sr/jquery.ui.datepicker.js +++ b/inc/lang/sr/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Serbian i18n for the jQuery UI date picker plugin. */ /* Written by Dejan Dimić. */ -jQuery(function($){ - $.datepicker.regional['sr'] = { - closeText: 'Затвори', - prevText: '<', - nextText: '>', - currentText: 'Данас', - monthNames: ['Јануар','Фебруар','Март','Април','Мај','Јун', - 'Јул','Август','Септембар','Октобар','Новембар','Децембар'], - monthNamesShort: ['Јан','Феб','Мар','Апр','Мај','Јун', - 'Јул','Авг','Сеп','Окт','Нов','Дец'], - dayNames: ['Недеља','Понедељак','Уторак','Среда','Четвртак','Петак','Субота'], - dayNamesShort: ['Нед','Пон','Уто','Сре','Чет','Пет','Суб'], - dayNamesMin: ['Не','По','Ут','Ср','Че','Пе','Су'], - weekHeader: 'Сед', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['sr']); -}); +(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['sr'] = { + closeText: 'Затвори', + prevText: '<', + nextText: '>', + currentText: 'Данас', + monthNames: ['Јануар','Фебруар','Март','Април','Мај','Јун', + 'Јул','Август','Септембар','Октобар','Новембар','Децембар'], + monthNamesShort: ['Јан','Феб','Мар','Апр','Мај','Јун', + 'Јул','Авг','Сеп','Окт','Нов','Дец'], + dayNames: ['Недеља','Понедељак','Уторак','Среда','Четвртак','Петак','Субота'], + dayNamesShort: ['Нед','Пон','Уто','Сре','Чет','Пет','Суб'], + dayNamesMin: ['Не','По','Ут','Ср','Че','Пе','Су'], + weekHeader: 'Сед', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['sr']); + +return datepicker.regional['sr']; + +})); diff --git a/inc/lang/sv/jquery.ui.datepicker.js b/inc/lang/sv/jquery.ui.datepicker.js index cbb5ad135..487473890 100644 --- a/inc/lang/sv/jquery.ui.datepicker.js +++ b/inc/lang/sv/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Swedish initialisation for the jQuery UI date picker plugin. */ /* Written by Anders Ekdahl ( anders@nomadiz.se). */ -jQuery(function($){ - $.datepicker.regional['sv'] = { - closeText: 'Stäng', - prevText: '«Förra', - nextText: 'Nästa»', - currentText: 'Idag', - monthNames: ['Januari','Februari','Mars','April','Maj','Juni', - 'Juli','Augusti','September','Oktober','November','December'], - monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', - 'Jul','Aug','Sep','Okt','Nov','Dec'], - dayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'], - dayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'], - dayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö'], - weekHeader: 'Ve', - dateFormat: 'yy-mm-dd', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['sv']); -}); +(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['sv'] = { + closeText: 'Stäng', + prevText: '«Förra', + nextText: 'Nästa»', + currentText: 'Idag', + monthNames: ['Januari','Februari','Mars','April','Maj','Juni', + 'Juli','Augusti','September','Oktober','November','December'], + monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun', + 'Jul','Aug','Sep','Okt','Nov','Dec'], + dayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'], + dayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'], + dayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö'], + weekHeader: 'Ve', + dateFormat: 'yy-mm-dd', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['sv']); + +return datepicker.regional['sv']; + +})); diff --git a/inc/lang/th/jquery.ui.datepicker.js b/inc/lang/th/jquery.ui.datepicker.js index aecfd27cc..9314268c2 100644 --- a/inc/lang/th/jquery.ui.datepicker.js +++ b/inc/lang/th/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Thai initialisation for the jQuery UI date picker plugin. */ /* Written by pipo (pipo@sixhead.com). */ -jQuery(function($){ - $.datepicker.regional['th'] = { - closeText: 'ปิด', - prevText: '« ย้อน', - nextText: 'ถัดไป »', - currentText: 'วันนี้', - monthNames: ['มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน', - 'กรกฎาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'], - monthNamesShort: ['ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.', - 'ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.'], - dayNames: ['อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์'], - dayNamesShort: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'], - dayNamesMin: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'], - weekHeader: 'Wk', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['th']); -}); +(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['th'] = { + closeText: 'ปิด', + prevText: '« ย้อน', + nextText: 'ถัดไป »', + currentText: 'วันนี้', + monthNames: ['มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน', + 'กรกฎาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'], + monthNamesShort: ['ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.', + 'ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.'], + dayNames: ['อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์'], + dayNamesShort: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'], + dayNamesMin: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'], + weekHeader: 'Wk', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['th']); + +return datepicker.regional['th']; + +})); diff --git a/inc/lang/tr/jquery.ui.datepicker.js b/inc/lang/tr/jquery.ui.datepicker.js index 75b583a77..c366eb16a 100644 --- a/inc/lang/tr/jquery.ui.datepicker.js +++ b/inc/lang/tr/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Turkish initialisation for the jQuery UI date picker plugin. */ /* Written by Izzet Emre Erkan (kara@karalamalar.net). */ -jQuery(function($){ - $.datepicker.regional['tr'] = { - closeText: 'kapat', - prevText: '<geri', - nextText: 'ileri>', - currentText: 'bugün', - monthNames: ['Ocak','Şubat','Mart','Nisan','Mayıs','Haziran', - 'Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık'], - monthNamesShort: ['Oca','Şub','Mar','Nis','May','Haz', - 'Tem','Ağu','Eyl','Eki','Kas','Ara'], - dayNames: ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'], - dayNamesShort: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'], - dayNamesMin: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'], - weekHeader: 'Hf', - dateFormat: 'dd.mm.yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['tr']); -}); +(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['tr'] = { + closeText: 'kapat', + prevText: '<geri', + nextText: 'ileri>', + currentText: 'bugün', + monthNames: ['Ocak','Şubat','Mart','Nisan','Mayıs','Haziran', + 'Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık'], + monthNamesShort: ['Oca','Şub','Mar','Nis','May','Haz', + 'Tem','Ağu','Eyl','Eki','Kas','Ara'], + dayNames: ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'], + dayNamesShort: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'], + dayNamesMin: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'], + weekHeader: 'Hf', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['tr']); + +return datepicker.regional['tr']; + +})); diff --git a/inc/lang/uk/jquery.ui.datepicker.js b/inc/lang/uk/jquery.ui.datepicker.js index 2bdc82ff7..ab4adb9dd 100644 --- a/inc/lang/uk/jquery.ui.datepicker.js +++ b/inc/lang/uk/jquery.ui.datepicker.js @@ -1,24 +1,38 @@ /* Ukrainian (UTF-8) initialisation for the jQuery UI date picker plugin. */ /* Written by Maxim Drogobitskiy (maxdao@gmail.com). */ /* Corrected by Igor Milla (igor.fsp.milla@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['uk'] = { - closeText: 'Закрити', - prevText: '<', - nextText: '>', - currentText: 'Сьогодні', - monthNames: ['Січень','Лютий','Березень','Квітень','Травень','Червень', - 'Липень','Серпень','Вересень','Жовтень','Листопад','Грудень'], - monthNamesShort: ['Січ','Лют','Бер','Кві','Тра','Чер', - 'Лип','Сер','Вер','Жов','Лис','Гру'], - dayNames: ['неділя','понеділок','вівторок','середа','четвер','п’ятниця','субота'], - dayNamesShort: ['нед','пнд','вів','срд','чтв','птн','сбт'], - dayNamesMin: ['Нд','Пн','Вт','Ср','Чт','Пт','Сб'], - weekHeader: 'Тиж', - dateFormat: 'dd/mm/yy', - firstDay: 1, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['uk']); -}); +(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['uk'] = { + closeText: 'Закрити', + prevText: '<', + nextText: '>', + currentText: 'Сьогодні', + monthNames: ['Січень','Лютий','Березень','Квітень','Травень','Червень', + 'Липень','Серпень','Вересень','Жовтень','Листопад','Грудень'], + monthNamesShort: ['Січ','Лют','Бер','Кві','Тра','Чер', + 'Лип','Сер','Вер','Жов','Лис','Гру'], + dayNames: ['неділя','понеділок','вівторок','середа','четвер','п’ятниця','субота'], + dayNamesShort: ['нед','пнд','вів','срд','чтв','птн','сбт'], + dayNamesMin: ['Нд','Пн','Вт','Ср','Чт','Пт','Сб'], + weekHeader: 'Тиж', + dateFormat: 'dd.mm.yy', + firstDay: 1, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['uk']); + +return datepicker.regional['uk']; + +})); diff --git a/inc/lang/vi/jquery.ui.datepicker.js b/inc/lang/vi/jquery.ui.datepicker.js index b49e7eb13..187ec15e4 100644 --- a/inc/lang/vi/jquery.ui.datepicker.js +++ b/inc/lang/vi/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Vietnamese initialisation for the jQuery UI date picker plugin. */ /* Translated by Le Thanh Huy (lthanhhuy@cit.ctu.edu.vn). */ -jQuery(function($){ - $.datepicker.regional['vi'] = { - closeText: 'Đóng', - prevText: '<Trước', - nextText: 'Tiếp>', - currentText: 'Hôm nay', - monthNames: ['Tháng Một', 'Tháng Hai', 'Tháng Ba', 'Tháng Tư', 'Tháng Năm', 'Tháng Sáu', - 'Tháng Bảy', 'Tháng Tám', 'Tháng Chín', 'Tháng Mười', 'Tháng Mười Một', 'Tháng Mười Hai'], - monthNamesShort: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', - 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'], - dayNames: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'], - dayNamesShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'], - dayNamesMin: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'], - weekHeader: 'Tu', - dateFormat: 'dd/mm/yy', - firstDay: 0, - isRTL: false, - showMonthAfterYear: false, - yearSuffix: ''}; - $.datepicker.setDefaults($.datepicker.regional['vi']); -}); +(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['vi'] = { + closeText: 'Đóng', + prevText: '<Trước', + nextText: 'Tiếp>', + currentText: 'Hôm nay', + monthNames: ['Tháng Một', 'Tháng Hai', 'Tháng Ba', 'Tháng Tư', 'Tháng Năm', 'Tháng Sáu', + 'Tháng Bảy', 'Tháng Tám', 'Tháng Chín', 'Tháng Mười', 'Tháng Mười Một', 'Tháng Mười Hai'], + monthNamesShort: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', + 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'], + dayNames: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'], + dayNamesShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'], + dayNamesMin: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'], + weekHeader: 'Tu', + dateFormat: 'dd/mm/yy', + firstDay: 0, + isRTL: false, + showMonthAfterYear: false, + yearSuffix: ''}; +datepicker.setDefaults(datepicker.regional['vi']); + +return datepicker.regional['vi']; + +})); diff --git a/inc/lang/zh-tw/jquery.ui.datepicker.js b/inc/lang/zh-tw/jquery.ui.datepicker.js index b9105ea50..c9e6dfcb6 100644 --- a/inc/lang/zh-tw/jquery.ui.datepicker.js +++ b/inc/lang/zh-tw/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Chinese initialisation for the jQuery UI date picker plugin. */ /* Written by Ressol (ressol@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['zh-TW'] = { - closeText: '關閉', - prevText: '<上月', - nextText: '下月>', - currentText: '今天', - monthNames: ['一月','二月','三月','四月','五月','六月', - '七月','八月','九月','十月','十一月','十二月'], - monthNamesShort: ['一月','二月','三月','四月','五月','六月', - '七月','八月','九月','十月','十一月','十二月'], - dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'], - dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'], - dayNamesMin: ['日','一','二','三','四','五','六'], - weekHeader: '周', - dateFormat: 'yy/mm/dd', - firstDay: 1, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: '年'}; - $.datepicker.setDefaults($.datepicker.regional['zh-TW']); -}); +(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['zh-TW'] = { + closeText: '關閉', + prevText: '<上月', + nextText: '下月>', + currentText: '今天', + monthNames: ['一月','二月','三月','四月','五月','六月', + '七月','八月','九月','十月','十一月','十二月'], + monthNamesShort: ['一月','二月','三月','四月','五月','六月', + '七月','八月','九月','十月','十一月','十二月'], + dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'], + dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'], + dayNamesMin: ['日','一','二','三','四','五','六'], + weekHeader: '周', + dateFormat: 'yy/mm/dd', + firstDay: 1, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: '年'}; +datepicker.setDefaults(datepicker.regional['zh-TW']); + +return datepicker.regional['zh-TW']; + +})); diff --git a/inc/lang/zh/jquery.ui.datepicker.js b/inc/lang/zh/jquery.ui.datepicker.js index d337e4a99..b62090a63 100644 --- a/inc/lang/zh/jquery.ui.datepicker.js +++ b/inc/lang/zh/jquery.ui.datepicker.js @@ -1,23 +1,37 @@ /* Chinese initialisation for the jQuery UI date picker plugin. */ /* Written by Cloudream (cloudream@gmail.com). */ -jQuery(function($){ - $.datepicker.regional['zh-CN'] = { - closeText: '关闭', - prevText: '<上月', - nextText: '下月>', - currentText: '今天', - monthNames: ['一月','二月','三月','四月','五月','六月', - '七月','八月','九月','十月','十一月','十二月'], - monthNamesShort: ['一月','二月','三月','四月','五月','六月', - '七月','八月','九月','十月','十一月','十二月'], - dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'], - dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'], - dayNamesMin: ['日','一','二','三','四','五','六'], - weekHeader: '周', - dateFormat: 'yy-mm-dd', - firstDay: 1, - isRTL: false, - showMonthAfterYear: true, - yearSuffix: '年'}; - $.datepicker.setDefaults($.datepicker.regional['zh-CN']); -}); +(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['zh-CN'] = { + closeText: '关闭', + prevText: '<上月', + nextText: '下月>', + currentText: '今天', + monthNames: ['一月','二月','三月','四月','五月','六月', + '七月','八月','九月','十月','十一月','十二月'], + monthNamesShort: ['一月','二月','三月','四月','五月','六月', + '七月','八月','九月','十月','十一月','十二月'], + dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'], + dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'], + dayNamesMin: ['日','一','二','三','四','五','六'], + weekHeader: '周', + dateFormat: 'yy-mm-dd', + firstDay: 1, + isRTL: false, + showMonthAfterYear: true, + yearSuffix: '年'}; +datepicker.setDefaults(datepicker.regional['zh-CN']); + +return datepicker.regional['zh-CN']; + +})); diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png index 8c47bb636..4b8c26b72 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_0_aaaaaa_40x100.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png index a2fe0297b..718a40454 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_flat_75_ffffff_40x100.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png index 78eb29e1e..9e3de4335 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_55_fbf9ee_1x400.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png index 26d2fa2b4..18fd8b166 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_65_ffffff_1x400.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png index 16b6247a1..8f31ae15d 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_dadada_1x400.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png index 72303d6aa..a6effc68e 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_75_e6e6e6_1x400.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png index 95d5ce6d1..c50038aff 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_glass_95_fef1ec_1x400.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png index 331976d8d..f08378e9f 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-bg_highlight-soft_75_cccccc_1x100.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png index e672c7f61..8deb23b9d 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_222222_256x240.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png index 4fea42e83..aa2ddc3b5 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_2e83ff_256x240.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png index 3e2b5c031..ef231bb25 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_454545_256x240.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png index 95c9d21d1..8bfb68534 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_888888_256x240.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png index 98487c249..d72d6906d 100644 Binary files a/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png and b/lib/scripts/jquery/jquery-ui-theme/images/ui-icons_cd0a0a_256x240.png differ diff --git a/lib/scripts/jquery/jquery-ui-theme/smoothness.css b/lib/scripts/jquery/jquery-ui-theme/smoothness.css index 34f3ada3e..93a79cad2 100644 --- a/lib/scripts/jquery/jquery-ui-theme/smoothness.css +++ b/lib/scripts/jquery/jquery-ui-theme/smoothness.css @@ -1,6 +1,6 @@ -/*! jQuery UI - v1.10.4 - 2014-01-17 +/*! jQuery UI - v1.11.0 - 2014-06-26 * http://jqueryui.com -* Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css +* Includes: core.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, draggable.css, menu.css, progressbar.css, resizable.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ @@ -90,16 +90,14 @@ display: block; cursor: pointer; position: relative; - margin-top: 2px; + margin: 2px 0 0 0; padding: .5em .5em .5em .7em; min-height: 0; /* support: IE7 */ + font-size: 100%; } .ui-accordion .ui-accordion-icons { padding-left: 2.2em; } -.ui-accordion .ui-accordion-noicons { - padding-left: .7em; -} .ui-accordion .ui-accordion-icons .ui-accordion-icons { padding-left: 2.2em; } @@ -449,74 +447,62 @@ button.ui-button::-moz-focus-inner { .ui-draggable .ui-dialog-titlebar { cursor: move; } +.ui-draggable-handle { + -ms-touch-action: none; + touch-action: none; +} .ui-menu { list-style: none; - padding: 2px; + padding: 0; margin: 0; display: block; outline: none; } .ui-menu .ui-menu { - margin-top: -3px; position: absolute; } .ui-menu .ui-menu-item { + position: relative; margin: 0; - padding: 0; - width: 100%; + padding: 3px 1em 3px .4em; + cursor: pointer; + min-height: 0; /* support: IE7 */ /* support: IE10, see #8844 */ - list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7); + list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"); } .ui-menu .ui-menu-divider { - margin: 5px -2px 5px -2px; + margin: 5px 0; height: 0; font-size: 0; line-height: 0; border-width: 1px 0 0 0; } -.ui-menu .ui-menu-item a { - text-decoration: none; - display: block; - padding: 2px .4em; - line-height: 1.5; - min-height: 0; /* support: IE7 */ - font-weight: normal; -} -.ui-menu .ui-menu-item a.ui-state-focus, -.ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; +.ui-menu .ui-state-focus, +.ui-menu .ui-state-active { margin: -1px; } -.ui-menu .ui-state-disabled { - font-weight: normal; - margin: .4em 0 .2em; - line-height: 1.5; -} -.ui-menu .ui-state-disabled a { - cursor: default; -} - /* icon support */ .ui-menu-icons { position: relative; } -.ui-menu-icons .ui-menu-item a { - position: relative; +.ui-menu-icons .ui-menu-item { padding-left: 2em; } /* left-aligned */ .ui-menu .ui-icon { position: absolute; - top: .2em; + top: 0; + bottom: 0; left: .2em; + margin: auto 0; } /* right-aligned */ .ui-menu .ui-menu-icon { - position: static; - float: right; + left: auto; + right: 0; } .ui-progressbar { height: 2em; @@ -543,6 +529,8 @@ button.ui-button::-moz-focus-inner { position: absolute; font-size: 0.1px; display: block; + -ms-touch-action: none; + touch-action: none; } .ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { @@ -604,11 +592,64 @@ button.ui-button::-moz-focus-inner { right: -5px; top: -5px; } +.ui-selectable { + -ms-touch-action: none; + touch-action: none; +} .ui-selectable-helper { position: absolute; z-index: 100; border: 1px dotted black; } +.ui-selectmenu-menu { + padding: 0; + margin: 0; + position: absolute; + top: 0; + left: 0; + display: none; +} +.ui-selectmenu-menu .ui-menu { + overflow: auto; + /* Support: IE7 */ + overflow-x: hidden; + padding-bottom: 1px; +} +.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup { + font-size: 1em; + font-weight: bold; + line-height: 1.5; + padding: 2px 0.4em; + margin: 0.5em 0 0 0; + height: auto; + border: 0; +} +.ui-selectmenu-open { + display: block; +} +.ui-selectmenu-button { + display: inline-block; + overflow: hidden; + position: relative; + text-decoration: none; + cursor: pointer; +} +.ui-selectmenu-button span.ui-icon { + right: 0.5em; + left: auto; + margin-top: -8px; + position: absolute; + top: 50%; +} +.ui-selectmenu-button span.ui-selectmenu-text { + text-align: left; + padding: 0.4em 2.1em 0.4em 1em; + display: block; + line-height: 1.4; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} .ui-slider { position: relative; text-align: left; @@ -619,6 +660,8 @@ button.ui-button::-moz-focus-inner { width: 1.2em; height: 1.2em; cursor: default; + -ms-touch-action: none; + touch-action: none; } .ui-slider .ui-slider-range { position: absolute; @@ -672,6 +715,10 @@ button.ui-button::-moz-focus-inner { .ui-slider-vertical .ui-slider-range-max { top: 0; } +.ui-sortable-handle { + -ms-touch-action: none; + touch-action: none; +} .ui-spinner { position: relative; display: inline-block; @@ -798,7 +845,7 @@ body .ui-tooltip { } .ui-widget-content { border: 1px solid #aaaaaa; - background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; + background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x; color: #222222; } .ui-widget-content a { @@ -806,7 +853,7 @@ body .ui-tooltip { } .ui-widget-header { border: 1px solid #aaaaaa; - background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; + background: #cccccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x; color: #222222; font-weight: bold; } @@ -820,7 +867,7 @@ body .ui-tooltip { .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; - background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; + background: #e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x; font-weight: normal; color: #555555; } @@ -837,7 +884,7 @@ body .ui-tooltip { .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; - background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; + background: #dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x; font-weight: normal; color: #212121; } @@ -856,7 +903,7 @@ body .ui-tooltip { .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; - background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; + background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x; font-weight: normal; color: #212121; } @@ -873,7 +920,7 @@ body .ui-tooltip { .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight { border: 1px solid #fcefa1; - background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; + background: #fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x; color: #363636; } .ui-state-highlight a, @@ -885,7 +932,7 @@ body .ui-tooltip { .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error { border: 1px solid #cd0a0a; - background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; + background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x; color: #cd0a0a; } .ui-state-error a, @@ -931,27 +978,27 @@ body .ui-tooltip { } .ui-icon, .ui-widget-content .ui-icon { - background-image: url(images/ui-icons_222222_256x240.png); + background-image: url("images/ui-icons_222222_256x240.png"); } .ui-widget-header .ui-icon { - background-image: url(images/ui-icons_222222_256x240.png); + background-image: url("images/ui-icons_222222_256x240.png"); } .ui-state-default .ui-icon { - background-image: url(images/ui-icons_888888_256x240.png); + background-image: url("images/ui-icons_888888_256x240.png"); } .ui-state-hover .ui-icon, .ui-state-focus .ui-icon { - background-image: url(images/ui-icons_454545_256x240.png); + background-image: url("images/ui-icons_454545_256x240.png"); } .ui-state-active .ui-icon { - background-image: url(images/ui-icons_454545_256x240.png); + background-image: url("images/ui-icons_454545_256x240.png"); } .ui-state-highlight .ui-icon { - background-image: url(images/ui-icons_2e83ff_256x240.png); + background-image: url("images/ui-icons_2e83ff_256x240.png"); } .ui-state-error .ui-icon, .ui-state-error-text .ui-icon { - background-image: url(images/ui-icons_cd0a0a_256x240.png); + background-image: url("images/ui-icons_cd0a0a_256x240.png"); } /* positioning */ @@ -1164,14 +1211,14 @@ body .ui-tooltip { /* Overlays */ .ui-widget-overlay { - background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; + background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; opacity: .3; filter: Alpha(Opacity=30); } .ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; - background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; + background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; opacity: .3; filter: Alpha(Opacity=30); border-radius: 8px; diff --git a/lib/scripts/jquery/jquery-ui.js b/lib/scripts/jquery/jquery-ui.js index eb4ec7236..670e39a8f 100644 --- a/lib/scripts/jquery/jquery-ui.js +++ b/lib/scripts/jquery/jquery-ui.js @@ -1,18 +1,36 @@ -/*! jQuery UI - v1.10.4 - 2014-01-17 +/*! jQuery UI - v1.11.0 - 2014-06-26 * http://jqueryui.com -* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.accordion.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.datepicker.js, jquery.ui.dialog.js, jquery.ui.draggable.js, jquery.ui.droppable.js, jquery.ui.effect.js, jquery.ui.effect-blind.js, jquery.ui.effect-bounce.js, jquery.ui.effect-clip.js, jquery.ui.effect-drop.js, jquery.ui.effect-explode.js, jquery.ui.effect-fade.js, jquery.ui.effect-fold.js, jquery.ui.effect-highlight.js, jquery.ui.effect-pulsate.js, jquery.ui.effect-scale.js, jquery.ui.effect-shake.js, jquery.ui.effect-slide.js, jquery.ui.effect-transfer.js, jquery.ui.menu.js, jquery.ui.progressbar.js, jquery.ui.resizable.js, jquery.ui.selectable.js, jquery.ui.slider.js, jquery.ui.sortable.js, jquery.ui.spinner.js, jquery.ui.tabs.js, jquery.ui.tooltip.js +* Includes: core.js, widget.js, mouse.js, position.js, accordion.js, autocomplete.js, button.js, datepicker.js, dialog.js, draggable.js, droppable.js, effect.js, effect-blind.js, effect-bounce.js, effect-clip.js, effect-drop.js, effect-explode.js, effect-fade.js, effect-fold.js, effect-highlight.js, effect-puff.js, effect-pulsate.js, effect-scale.js, effect-shake.js, effect-size.js, effect-slide.js, effect-transfer.js, menu.js, progressbar.js, resizable.js, selectable.js, selectmenu.js, slider.js, sortable.js, spinner.js, tabs.js, tooltip.js * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ -(function( $, undefined ) { +(function( factory ) { + if ( typeof define === "function" && define.amd ) { + + // AMD. Register as an anonymous module. + define([ "jquery" ], factory ); + } else { + + // Browser globals + factory( jQuery ); + } +}(function( $ ) { +/*! + * jQuery UI Core 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/category/ui-core/ + */ -var uuid = 0, - runiqueId = /^ui-id-\d+$/; // $.ui might exist from components with no dependencies, e.g., $.ui.position $.ui = $.ui || {}; $.extend( $.ui, { - version: "1.10.4", + version: "1.11.0", keyCode: { BACKSPACE: 8, @@ -24,12 +42,6 @@ $.extend( $.ui, { ESCAPE: 27, HOME: 36, LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, @@ -42,77 +54,35 @@ $.extend( $.ui, { // plugins $.fn.extend({ - focus: (function( orig ) { - return function( delay, fn ) { - return typeof delay === "number" ? - this.each(function() { - var elem = this; - setTimeout(function() { - $( elem ).focus(); - if ( fn ) { - fn.call( elem ); - } - }, delay ); - }) : - orig.apply( this, arguments ); - }; - })( $.fn.focus ), - scrollParent: function() { - var scrollParent; - if (($.ui.ie && (/(static|relative)/).test(this.css("position"))) || (/absolute/).test(this.css("position"))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.css(this,"position")) && (/(auto|scroll)/).test($.css(this,"overflow")+$.css(this,"overflow-y")+$.css(this,"overflow-x")); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.css(this,"overflow")+$.css(this,"overflow-y")+$.css(this,"overflow-x")); - }).eq(0); - } + var position = this.css( "position" ), + excludeStaticParent = position === "absolute", + scrollParent = this.parents().filter( function() { + var parent = $( this ); + if ( excludeStaticParent && parent.css( "position" ) === "static" ) { + return false; + } + return (/(auto|scroll)/).test( parent.css( "overflow" ) + parent.css( "overflow-y" ) + parent.css( "overflow-x" ) ); + }).eq( 0 ); - return (/fixed/).test(this.css("position")) || !scrollParent.length ? $(document) : scrollParent; + return position === "fixed" || !scrollParent.length ? $( this[ 0 ].ownerDocument || document ) : scrollParent; }, - zIndex: function( zIndex ) { - if ( zIndex !== undefined ) { - return this.css( "zIndex", zIndex ); - } + uniqueId: (function() { + var uuid = 0; - if ( this.length ) { - var elem = $( this[ 0 ] ), position, value; - while ( elem.length && elem[ 0 ] !== document ) { - // Ignore z-index if position is set to a value where z-index is ignored by the browser - // This makes behavior of this function consistent across browsers - // WebKit always returns auto if the element is positioned - position = elem.css( "position" ); - if ( position === "absolute" || position === "relative" || position === "fixed" ) { - // IE returns 0 when zIndex is not specified - // other browsers return a string - // we ignore the case of nested elements with an explicit value of 0 - //
    - value = parseInt( elem.css( "zIndex" ), 10 ); - if ( !isNaN( value ) && value !== 0 ) { - return value; - } + return function() { + return this.each(function() { + if ( !this.id ) { + this.id = "ui-id-" + ( ++uuid ); } - elem = elem.parent(); - } - } - - return 0; - }, - - uniqueId: function() { - return this.each(function() { - if ( !this.id ) { - this.id = "ui-id-" + (++uuid); - } - }); - }, + }); + }; + })(), removeUniqueId: function() { return this.each(function() { - if ( runiqueId.test( this.id ) ) { + if ( /^ui-id-\d+$/.test( this.id ) ) { $( this ).removeAttr( "id" ); } }); @@ -240,93 +210,129 @@ if ( $( "" ).data( "a-b", "a" ).removeData( "a-b" ).data( "a-b" ) ) { })( $.fn.removeData ); } - - - - // deprecated $.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); -$.support.selectstart = "onselectstart" in document.createElement( "div" ); $.fn.extend({ - disableSelection: function() { - return this.bind( ( $.support.selectstart ? "selectstart" : "mousedown" ) + - ".ui-disableSelection", function( event ) { + focus: (function( orig ) { + return function( delay, fn ) { + return typeof delay === "number" ? + this.each(function() { + var elem = this; + setTimeout(function() { + $( elem ).focus(); + if ( fn ) { + fn.call( elem ); + } + }, delay ); + }) : + orig.apply( this, arguments ); + }; + })( $.fn.focus ), + + disableSelection: (function() { + var eventType = "onselectstart" in document.createElement( "div" ) ? + "selectstart" : + "mousedown"; + + return function() { + return this.bind( eventType + ".ui-disableSelection", function( event ) { event.preventDefault(); }); - }, + }; + })(), enableSelection: function() { return this.unbind( ".ui-disableSelection" ); - } -}); + }, -$.extend( $.ui, { - // $.ui.plugin is deprecated. Use $.widget() extensions instead. - plugin: { - add: function( module, option, set ) { - var i, - proto = $.ui[ module ].prototype; - for ( i in set ) { - proto.plugins[ i ] = proto.plugins[ i ] || []; - proto.plugins[ i ].push( [ option, set[ i ] ] ); - } - }, - call: function( instance, name, args ) { - var i, - set = instance.plugins[ name ]; - if ( !set || !instance.element[ 0 ].parentNode || instance.element[ 0 ].parentNode.nodeType === 11 ) { - return; - } + zIndex: function( zIndex ) { + if ( zIndex !== undefined ) { + return this.css( "zIndex", zIndex ); + } - for ( i = 0; i < set.length; i++ ) { - if ( instance.options[ set[ i ][ 0 ] ] ) { - set[ i ][ 1 ].apply( instance.element, args ); + if ( this.length ) { + var elem = $( this[ 0 ] ), position, value; + while ( elem.length && elem[ 0 ] !== document ) { + // Ignore z-index if position is set to a value where z-index is ignored by the browser + // This makes behavior of this function consistent across browsers + // WebKit always returns auto if the element is positioned + position = elem.css( "position" ); + if ( position === "absolute" || position === "relative" || position === "fixed" ) { + // IE returns 0 when zIndex is not specified + // other browsers return a string + // we ignore the case of nested elements with an explicit value of 0 + //
    + value = parseInt( elem.css( "zIndex" ), 10 ); + if ( !isNaN( value ) && value !== 0 ) { + return value; + } } + elem = elem.parent(); } } - }, - // only used by resizable - hasScroll: function( el, a ) { + return 0; + } +}); - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ( $( el ).css( "overflow" ) === "hidden") { - return false; +// $.ui.plugin is deprecated. Use $.widget() extensions instead. +$.ui.plugin = { + add: function( module, option, set ) { + var i, + proto = $.ui[ module ].prototype; + for ( i in set ) { + proto.plugins[ i ] = proto.plugins[ i ] || []; + proto.plugins[ i ].push( [ option, set[ i ] ] ); } + }, + call: function( instance, name, args, allowDisconnected ) { + var i, + set = instance.plugins[ name ]; - var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop", - has = false; + if ( !set ) { + return; + } - if ( el[ scroll ] > 0 ) { - return true; + if ( !allowDisconnected && ( !instance.element[ 0 ].parentNode || instance.element[ 0 ].parentNode.nodeType === 11 ) ) { + return; } - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[ scroll ] = 1; - has = ( el[ scroll ] > 0 ); - el[ scroll ] = 0; - return has; + for ( i = 0; i < set.length; i++ ) { + if ( instance.options[ set[ i ][ 0 ] ] ) { + set[ i ][ 1 ].apply( instance.element, args ); + } + } } -}); +}; -})( jQuery ); -(function( $, undefined ) { -var uuid = 0, - slice = Array.prototype.slice, - _cleanData = $.cleanData; -$.cleanData = function( elems ) { - for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { - try { - $( elem ).triggerHandler( "remove" ); - // http://bugs.jquery.com/ticket/8235 - } catch( e ) {} - } - _cleanData( elems ); -}; +/*! + * jQuery UI Widget 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/jQuery.widget/ + */ + + +var widget_uuid = 0, + widget_slice = Array.prototype.slice; + +$.cleanData = (function( orig ) { + return function( elems ) { + for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { + try { + $( elem ).triggerHandler( "remove" ); + // http://bugs.jquery.com/ticket/8235 + } catch( e ) {} + } + orig( elems ); + }; +})( $.cleanData ); $.widget = function( name, base, prototype ) { var fullName, existingConstructor, constructor, basePrototype, @@ -439,10 +445,12 @@ $.widget = function( name, base, prototype ) { } $.widget.bridge( name, constructor ); + + return constructor; }; $.widget.extend = function( target ) { - var input = slice.call( arguments, 1 ), + var input = widget_slice.call( arguments, 1 ), inputIndex = 0, inputLength = input.length, key, @@ -471,7 +479,7 @@ $.widget.bridge = function( name, object ) { var fullName = object.prototype.widgetFullName || name; $.fn[ name ] = function( options ) { var isMethodCall = typeof options === "string", - args = slice.call( arguments, 1 ), + args = widget_slice.call( arguments, 1 ), returnValue = this; // allow multiple hashes to be passed on init @@ -483,6 +491,10 @@ $.widget.bridge = function( name, object ) { this.each(function() { var methodValue, instance = $.data( this, fullName ); + if ( options === "instance" ) { + returnValue = instance; + return false; + } if ( !instance ) { return $.error( "cannot call methods on " + name + " prior to initialization; " + "attempted to call method '" + options + "'" ); @@ -502,7 +514,10 @@ $.widget.bridge = function( name, object ) { this.each(function() { var instance = $.data( this, fullName ); if ( instance ) { - instance.option( options || {} )._init(); + instance.option( options || {} ); + if ( instance._init ) { + instance._init(); + } } else { $.data( this, fullName, new object( options, this ) ); } @@ -529,7 +544,7 @@ $.Widget.prototype = { _createWidget: function( options, element ) { element = $( element || this.defaultElement || this )[ 0 ]; this.element = $( element ); - this.uuid = uuid++; + this.uuid = widget_uuid++; this.eventNamespace = "." + this.widgetName + this.uuid; this.options = $.widget.extend( {}, this.options, @@ -572,9 +587,6 @@ $.Widget.prototype = { // all event bindings should go through this._on() this.element .unbind( this.eventNamespace ) - // 1.9 BC for #7810 - // TODO remove dual storage - .removeData( this.widgetName ) .removeData( this.widgetFullName ) // support: jquery <1.6.3 // http://bugs.jquery.com/ticket/9413 @@ -650,20 +662,23 @@ $.Widget.prototype = { if ( key === "disabled" ) { this.widget() - .toggleClass( this.widgetFullName + "-disabled ui-state-disabled", !!value ) - .attr( "aria-disabled", value ); - this.hoverable.removeClass( "ui-state-hover" ); - this.focusable.removeClass( "ui-state-focus" ); + .toggleClass( this.widgetFullName + "-disabled", !!value ); + + // If the widget is becoming disabled, then nothing is interactive + if ( value ) { + this.hoverable.removeClass( "ui-state-hover" ); + this.focusable.removeClass( "ui-state-focus" ); + } } return this; }, enable: function() { - return this._setOption( "disabled", false ); + return this._setOptions({ disabled: false }); }, disable: function() { - return this._setOption( "disabled", true ); + return this._setOptions({ disabled: true }); }, _on: function( suppressDisabledCheck, element, handlers ) { @@ -683,7 +698,6 @@ $.Widget.prototype = { element = this.element; delegateElement = this.widget(); } else { - // accept selectors, DOM elements element = delegateElement = $( element ); this.bindings = this.bindings.add( element ); } @@ -708,7 +722,7 @@ $.Widget.prototype = { handler.guid || handlerProxy.guid || $.guid++; } - var match = event.match( /^(\w+)\s*(.*)$/ ), + var match = event.match( /^([\w:-]*)\s*(.*)$/ ), eventName = match[1] + instance.eventNamespace, selector = match[2]; if ( selector ) { @@ -823,16 +837,28 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { }; }); -})( jQuery ); -(function( $, undefined ) { +var widget = $.widget; + + +/*! + * jQuery UI Mouse 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/mouse/ + */ + var mouseHandled = false; $( document ).mouseup( function() { mouseHandled = false; }); -$.widget("ui.mouse", { - version: "1.10.4", +var mouse = $.widget("ui.mouse", { + version: "1.11.0", options: { cancel: "input,textarea,button,select,option", distance: 1, @@ -842,10 +868,10 @@ $.widget("ui.mouse", { var that = this; this.element - .bind("mousedown."+this.widgetName, function(event) { + .bind("mousedown." + this.widgetName, function(event) { return that._mouseDown(event); }) - .bind("click."+this.widgetName, function(event) { + .bind("click." + this.widgetName, function(event) { if (true === $.data(event.target, that.widgetName + ".preventClickEvent")) { $.removeData(event.target, that.widgetName + ".preventClickEvent"); event.stopImmediatePropagation(); @@ -859,17 +885,19 @@ $.widget("ui.mouse", { // TODO: make sure destroying one instance of mouse doesn't mess with // other instances of mouse _mouseDestroy: function() { - this.element.unbind("."+this.widgetName); + this.element.unbind("." + this.widgetName); if ( this._mouseMoveDelegate ) { - $(document) - .unbind("mousemove."+this.widgetName, this._mouseMoveDelegate) - .unbind("mouseup."+this.widgetName, this._mouseUpDelegate); + this.document + .unbind("mousemove." + this.widgetName, this._mouseMoveDelegate) + .unbind("mouseup." + this.widgetName, this._mouseUpDelegate); } }, _mouseDown: function(event) { // don't let more than one widget handle mouseStart - if( mouseHandled ) { return; } + if ( mouseHandled ) { + return; + } // we may have missed mouseup (out of window) (this._mouseStarted && this._mouseUp(event)); @@ -912,9 +940,10 @@ $.widget("ui.mouse", { this._mouseUpDelegate = function(event) { return that._mouseUp(event); }; - $(document) - .bind("mousemove."+this.widgetName, this._mouseMoveDelegate) - .bind("mouseup."+this.widgetName, this._mouseUpDelegate); + + this.document + .bind( "mousemove." + this.widgetName, this._mouseMoveDelegate ) + .bind( "mouseup." + this.widgetName, this._mouseUpDelegate ); event.preventDefault(); @@ -926,6 +955,10 @@ $.widget("ui.mouse", { // IE mouseup check - mouseup happened when mouse was out of window if ($.ui.ie && ( !document.documentMode || document.documentMode < 9 ) && !event.button) { return this._mouseUp(event); + + // Iframe mouseup check - mouseup occurred in another document + } else if ( !event.which ) { + return this._mouseUp( event ); } if (this._mouseStarted) { @@ -943,9 +976,9 @@ $.widget("ui.mouse", { }, _mouseUp: function(event) { - $(document) - .unbind("mousemove."+this.widgetName, this._mouseMoveDelegate) - .unbind("mouseup."+this.widgetName, this._mouseUpDelegate); + this.document + .unbind( "mousemove." + this.widgetName, this._mouseMoveDelegate ) + .unbind( "mouseup." + this.widgetName, this._mouseUpDelegate ); if (this._mouseStarted) { this._mouseStarted = false; @@ -957,6 +990,7 @@ $.widget("ui.mouse", { this._mouseStop(event); } + mouseHandled = false; return false; }, @@ -979,12 +1013,23 @@ $.widget("ui.mouse", { _mouseCapture: function(/* event */) { return true; } }); -})(jQuery); -(function( $, undefined ) { + +/*! + * jQuery UI Position 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/position/ + */ + +(function() { $.ui = $.ui || {}; -var cachedScrollbarWidth, +var cachedScrollbarWidth, supportsOffsetFractions, max = Math.max, abs = Math.abs, round = Math.round, @@ -1197,7 +1242,7 @@ $.fn.position = function( options ) { position.top += myOffset[ 1 ]; // if the browser doesn't support fractions, then round for consistent results - if ( !$.support.offsetFractions ) { + if ( !supportsOffsetFractions ) { position.left = round( position.left ); position.top = round( position.top ); } @@ -1221,7 +1266,7 @@ $.fn.position = function( options ) { my: options.my, at: options.at, within: within, - elem : elem + elem: elem }); } }); @@ -1375,8 +1420,7 @@ $.ui.position = { if ( newOverRight < 0 || newOverRight < abs( overLeft ) ) { position.left += myOffset + atOffset + offset; } - } - else if ( overRight > 0 ) { + } else if ( overRight > 0 ) { newOverLeft = position.left - data.collisionPosition.marginLeft + myOffset + atOffset + offset - offsetLeft; if ( newOverLeft > 0 || abs( newOverLeft ) < overRight ) { position.left += myOffset + atOffset + offset; @@ -1410,8 +1454,7 @@ $.ui.position = { if ( ( position.top + myOffset + atOffset + offset) > overTop && ( newOverBottom < 0 || newOverBottom < abs( overTop ) ) ) { position.top += myOffset + atOffset + offset; } - } - else if ( overBottom > 0 ) { + } else if ( overBottom > 0 ) { newOverTop = position.top - data.collisionPosition.marginTop + myOffset + atOffset + offset - offsetTop; if ( ( position.top + myOffset + atOffset + offset) > overBottom && ( newOverTop > 0 || abs( newOverTop ) < overBottom ) ) { position.top += myOffset + atOffset + offset; @@ -1432,7 +1475,7 @@ $.ui.position = { }; // fraction support test -(function () { +(function() { var testElement, testElementParent, testElementStyle, offsetLeft, i, body = document.getElementsByTagName( "body" )[ 0 ], div = document.createElement( "div" ); @@ -1464,26 +1507,31 @@ $.ui.position = { div.style.cssText = "position: absolute; left: 10.7432222px;"; offsetLeft = $( div ).offset().left; - $.support.offsetFractions = offsetLeft > 10 && offsetLeft < 11; + supportsOffsetFractions = offsetLeft > 10 && offsetLeft < 11; testElement.innerHTML = ""; testElementParent.removeChild( testElement ); })(); -}( jQuery ) ); -(function( $, undefined ) { +})(); + +var position = $.ui.position; + -var uid = 0, - hideProps = {}, - showProps = {}; +/*! + * jQuery UI Accordion 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/accordion/ + */ -hideProps.height = hideProps.paddingTop = hideProps.paddingBottom = - hideProps.borderTopWidth = hideProps.borderBottomWidth = "hide"; -showProps.height = showProps.paddingTop = showProps.paddingBottom = - showProps.borderTopWidth = showProps.borderBottomWidth = "show"; -$.widget( "ui.accordion", { - version: "1.10.4", +var accordion = $.widget( "ui.accordion", { + version: "1.11.0", options: { active: 0, animate: {}, @@ -1501,6 +1549,22 @@ $.widget( "ui.accordion", { beforeActivate: null }, + hideProps: { + borderTopWidth: "hide", + borderBottomWidth: "hide", + paddingTop: "hide", + paddingBottom: "hide", + height: "hide" + }, + + showProps: { + borderTopWidth: "show", + borderBottomWidth: "show", + paddingTop: "show", + paddingBottom: "show", + height: "show" + }, + _create: function() { var options = this.options; this.prevShow = this.prevHide = $(); @@ -1524,8 +1588,7 @@ $.widget( "ui.accordion", { _getCreateEventData: function() { return { header: this.active, - panel: !this.active.length ? $() : this.active.next(), - content: !this.active.length ? $() : this.active.next() + panel: !this.active.length ? $() : this.active.next() }; }, @@ -1559,31 +1622,27 @@ $.widget( "ui.accordion", { // clean up headers this.headers - .removeClass( "ui-accordion-header ui-accordion-header-active ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top" ) + .removeClass( "ui-accordion-header ui-accordion-header-active ui-state-default " + + "ui-corner-all ui-state-active ui-state-disabled ui-corner-top" ) .removeAttr( "role" ) .removeAttr( "aria-expanded" ) .removeAttr( "aria-selected" ) .removeAttr( "aria-controls" ) .removeAttr( "tabIndex" ) - .each(function() { - if ( /^ui-accordion/.test( this.id ) ) { - this.removeAttribute( "id" ); - } - }); + .removeUniqueId(); + this._destroyIcons(); // clean up content panels contents = this.headers.next() + .removeClass( "ui-helper-reset ui-widget-content ui-corner-bottom " + + "ui-accordion-content ui-accordion-content-active ui-state-disabled" ) .css( "display", "" ) .removeAttr( "role" ) .removeAttr( "aria-hidden" ) .removeAttr( "aria-labelledby" ) - .removeClass( "ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled" ) - .each(function() { - if ( /^ui-accordion/.test( this.id ) ) { - this.removeAttribute( "id" ); - } - }); + .removeUniqueId(); + if ( this.options.heightStyle !== "content" ) { contents.css( "height", "" ); } @@ -1620,6 +1679,9 @@ $.widget( "ui.accordion", { // #5332 - opacity doesn't cascade to positioned elements in IE // so we need to add the disabled class to the headers and panels if ( key === "disabled" ) { + this.element + .toggleClass( "ui-state-disabled", !!value ) + .attr( "aria-disabled", value ); this.headers.add( this.headers.next() ) .toggleClass( "ui-state-disabled", !!value ); } @@ -1664,7 +1726,7 @@ $.widget( "ui.accordion", { } }, - _panelKeyDown : function( event ) { + _panelKeyDown: function( event ) { if ( event.keyCode === $.ui.keyCode.UP && event.ctrlKey ) { $( event.currentTarget ).prev().focus(); } @@ -1704,11 +1766,11 @@ $.widget( "ui.accordion", { _processPanels: function() { this.headers = this.element.find( this.options.header ) - .addClass( "ui-accordion-header ui-helper-reset ui-state-default ui-corner-all" ); + .addClass( "ui-accordion-header ui-state-default ui-corner-all" ); this.headers.next() .addClass( "ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom" ) - .filter(":not(.ui-accordion-content-active)") + .filter( ":not(.ui-accordion-content-active)" ) .hide(); }, @@ -1716,9 +1778,7 @@ $.widget( "ui.accordion", { var maxHeight, options = this.options, heightStyle = options.heightStyle, - parent = this.element.parent(), - accordionId = this.accordionId = "ui-accordion-" + - (this.element.attr( "id" ) || ++uid); + parent = this.element.parent(); this.active = this._findActive( options.active ) .addClass( "ui-accordion-header-active ui-state-active ui-corner-top" ) @@ -1729,19 +1789,11 @@ $.widget( "ui.accordion", { this.headers .attr( "role", "tab" ) - .each(function( i ) { + .each(function() { var header = $( this ), - headerId = header.attr( "id" ), + headerId = header.uniqueId().attr( "id" ), panel = header.next(), - panelId = panel.attr( "id" ); - if ( !headerId ) { - headerId = accordionId + "-header-" + i; - header.attr( "id", headerId ); - } - if ( !panelId ) { - panelId = accordionId + "-panel-" + i; - panel.attr( "id", panelId ); - } + panelId = panel.uniqueId().attr( "id" ); header.attr( "aria-controls", panelId ); panel.attr( "aria-labelledby", headerId ); }) @@ -1839,7 +1891,7 @@ $.widget( "ui.accordion", { keydown: "_keydown" }; if ( event ) { - $.each( event.split(" "), function( index, eventName ) { + $.each( event.split( " " ), function( index, eventName ) { events[ eventName ] = "_eventHandler"; }); } @@ -1977,14 +2029,14 @@ $.widget( "ui.accordion", { duration = duration || options.duration || animate.duration; if ( !toHide.length ) { - return toShow.animate( showProps, duration, easing, complete ); + return toShow.animate( this.showProps, duration, easing, complete ); } if ( !toShow.length ) { - return toHide.animate( hideProps, duration, easing, complete ); + return toHide.animate( this.hideProps, duration, easing, complete ); } total = toShow.show().outerHeight(); - toHide.animate( hideProps, { + toHide.animate( this.hideProps, { duration: duration, easing: easing, step: function( now, fx ) { @@ -1993,7 +2045,7 @@ $.widget( "ui.accordion", { }); toShow .hide() - .animate( showProps, { + .animate( this.showProps, { duration: duration, easing: easing, complete: complete, @@ -2020,3817 +2072,3719 @@ $.widget( "ui.accordion", { // Work around for rendering bug in IE (#5421) if ( toHide.length ) { - toHide.parent()[0].className = toHide.parent()[0].className; + toHide.parent()[ 0 ].className = toHide.parent()[ 0 ].className; } this._trigger( "activate", null, data ); } }); -})( jQuery ); -(function( $, undefined ) { -$.widget( "ui.autocomplete", { - version: "1.10.4", - defaultElement: "", +/*! + * jQuery UI Menu 1.11.0 + * http://jqueryui.com + * + * Copyright 2014 jQuery Foundation and other contributors + * Released under the MIT license. + * http://jquery.org/license + * + * http://api.jqueryui.com/menu/ + */ + + +var menu = $.widget( "ui.menu", { + version: "1.11.0", + defaultElement: "
    " + - ""; - thead = (showWeek ? "" : ""); - for (dow = 0; dow < 7; dow++) { // days of the week - day = (dow + firstDay) % 7; - thead += "= 5 ? " class='ui-datepicker-week-end'" : "") + ">" + - "" + dayNamesMin[day] + ""; - } - calender += thead + ""; - daysInMonth = this._getDaysInMonth(drawYear, drawMonth); - if (drawYear === inst.selectedYear && drawMonth === inst.selectedMonth) { - inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); - } - leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; - curRows = Math.ceil((leadDays + daysInMonth) / 7); // calculate the number of rows to generate - numRows = (isMultiMonth ? this.maxRows > curRows ? this.maxRows : curRows : curRows); //If multiple months, use the higher number of rows (see #7043) - this.maxRows = numRows; - printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); - for (dRow = 0; dRow < numRows; dRow++) { // create date picker rows - calender += ""; - tbody = (!showWeek ? "" : ""); - for (dow = 0; dow < 7; dow++) { // create date picker days - daySettings = (beforeShowDay ? - beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, ""]); - otherMonth = (printDate.getMonth() !== drawMonth); - unselectable = (otherMonth && !selectOtherMonths) || !daySettings[0] || - (minDate && printDate < minDate) || (maxDate && printDate > maxDate); - tbody += ""; // display selectable date - printDate.setDate(printDate.getDate() + 1); - printDate = this._daylightSavingAdjust(printDate); - } - calender += tbody + ""; - } - drawMonth++; - if (drawMonth > 11) { - drawMonth = 0; - drawYear++; - } - calender += "
    " + this._get(inst, "weekHeader") + "
    " + - this._get(inst, "calculateWeek")(printDate) + "" + // actions - (otherMonth && !showOtherMonths ? " " : // display for other months - (unselectable ? "" + printDate.getDate() + "" : "" + printDate.getDate() + "")) + "
    " + (isMultiMonth ? "
    " + - ((numMonths[0] > 0 && col === numMonths[1]-1) ? "
    " : "") : ""); - group += calender; - } - html += group; + if ( ( ( $target[0].id !== $.datepicker._mainDivId && + $target.parents("#" + $.datepicker._mainDivId).length === 0 && + !$target.hasClass($.datepicker.markerClassName) && + !$target.closest("." + $.datepicker._triggerClass).length && + $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI) ) ) || + ( $target.hasClass($.datepicker.markerClassName) && $.datepicker._curInst !== inst ) ) { + $.datepicker._hideDatepicker(); } - html += buttonPanel; - inst._keyEvent = false; - return html; }, - /* Generate the month and year header. */ - _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, - secondary, monthNames, monthNamesShort) { - - var inMinYear, inMaxYear, month, years, thisYear, determineYear, year, endYear, - changeMonth = this._get(inst, "changeMonth"), - changeYear = this._get(inst, "changeYear"), - showMonthAfterYear = this._get(inst, "showMonthAfterYear"), - html = "
    ", - monthHtml = ""; - - // month selection - if (secondary || !changeMonth) { - monthHtml += "" + monthNames[drawMonth] + ""; - } else { - inMinYear = (minDate && minDate.getFullYear() === drawYear); - inMaxYear = (maxDate && maxDate.getFullYear() === drawYear); - monthHtml += ""; - } + /* Adjust one of the date sub-fields. */ + _adjustDate: function(id, offset, period) { + var target = $(id), + inst = this._getInst(target[0]); - if (!showMonthAfterYear) { - html += monthHtml + (secondary || !(changeMonth && changeYear) ? " " : ""); + if (this._isDisabledDatepicker(target[0])) { + return; } + this._adjustInstDate(inst, offset + + (period === "M" ? this._get(inst, "showCurrentAtPos") : 0), // undo positioning + period); + this._updateDatepicker(inst); + }, - // year selection - if ( !inst.yearshtml ) { - inst.yearshtml = ""; - if (secondary || !changeYear) { - html += "" + drawYear + ""; - } else { - // determine range of years to display - years = this._get(inst, "yearRange").split(":"); - thisYear = new Date().getFullYear(); - determineYear = function(value) { - var year = (value.match(/c[+\-].*/) ? drawYear + parseInt(value.substring(1), 10) : - (value.match(/[+\-].*/) ? thisYear + parseInt(value, 10) : - parseInt(value, 10))); - return (isNaN(year) ? thisYear : year); - }; - year = determineYear(years[0]); - endYear = Math.max(year, determineYear(years[1] || "")); - year = (minDate ? Math.max(year, minDate.getFullYear()) : year); - endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); - inst.yearshtml += ""; - - html += inst.yearshtml; - inst.yearshtml = null; - } - } + /* Action for current link. */ + _gotoToday: function(id) { + var date, + target = $(id), + inst = this._getInst(target[0]); - html += this._get(inst, "yearSuffix"); - if (showMonthAfterYear) { - html += (secondary || !(changeMonth && changeYear) ? " " : "") + monthHtml; + if (this._get(inst, "gotoCurrent") && inst.currentDay) { + inst.selectedDay = inst.currentDay; + inst.drawMonth = inst.selectedMonth = inst.currentMonth; + inst.drawYear = inst.selectedYear = inst.currentYear; + } else { + date = new Date(); + inst.selectedDay = date.getDate(); + inst.drawMonth = inst.selectedMonth = date.getMonth(); + inst.drawYear = inst.selectedYear = date.getFullYear(); } - html += "
    "; // Close datepicker_header - return html; + this._notifyChange(inst); + this._adjustDate(target); }, - /* Adjust one of the date sub-fields. */ - _adjustInstDate: function(inst, offset, period) { - var year = inst.drawYear + (period === "Y" ? offset : 0), - month = inst.drawMonth + (period === "M" ? offset : 0), - day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + (period === "D" ? offset : 0), - date = this._restrictMinMax(inst, this._daylightSavingAdjust(new Date(year, month, day))); + /* Action for selecting a new month/year. */ + _selectMonthYear: function(id, select, period) { + var target = $(id), + inst = this._getInst(target[0]); - inst.selectedDay = date.getDate(); - inst.drawMonth = inst.selectedMonth = date.getMonth(); - inst.drawYear = inst.selectedYear = date.getFullYear(); - if (period === "M" || period === "Y") { - this._notifyChange(inst); - } - }, + inst["selected" + (period === "M" ? "Month" : "Year")] = + inst["draw" + (period === "M" ? "Month" : "Year")] = + parseInt(select.options[select.selectedIndex].value,10); - /* Ensure a date is within any min/max bounds. */ - _restrictMinMax: function(inst, date) { - var minDate = this._getMinMaxDate(inst, "min"), - maxDate = this._getMinMaxDate(inst, "max"), - newDate = (minDate && date < minDate ? minDate : date); - return (maxDate && newDate > maxDate ? maxDate : newDate); + this._notifyChange(inst); + this._adjustDate(target); }, - /* Notify change of month/year. */ - _notifyChange: function(inst) { - var onChange = this._get(inst, "onChangeMonthYear"); - if (onChange) { - onChange.apply((inst.input ? inst.input[0] : null), - [inst.selectedYear, inst.selectedMonth + 1, inst]); + /* Action for selecting a day. */ + _selectDay: function(id, month, year, td) { + var inst, + target = $(id); + + if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) { + return; } - }, - /* Determine the number of months to show. */ - _getNumberOfMonths: function(inst) { - var numMonths = this._get(inst, "numberOfMonths"); - return (numMonths == null ? [1, 1] : (typeof numMonths === "number" ? [1, numMonths] : numMonths)); + inst = this._getInst(target[0]); + inst.selectedDay = inst.currentDay = $("a", td).html(); + inst.selectedMonth = inst.currentMonth = month; + inst.selectedYear = inst.currentYear = year; + this._selectDate(id, this._formatDate(inst, + inst.currentDay, inst.currentMonth, inst.currentYear)); }, - /* Determine the current maximum date - ensure no time components are set. */ - _getMinMaxDate: function(inst, minMax) { - return this._determineDate(inst, this._get(inst, minMax + "Date"), null); + /* Erase the input field and hide the date picker. */ + _clearDate: function(id) { + var target = $(id); + this._selectDate(target, ""); }, - /* Find the number of days in a given month. */ - _getDaysInMonth: function(year, month) { - return 32 - this._daylightSavingAdjust(new Date(year, month, 32)).getDate(); - }, + /* Update the input field with the selected date. */ + _selectDate: function(id, dateStr) { + var onSelect, + target = $(id), + inst = this._getInst(target[0]); - /* Find the day of the week of the first of a month. */ - _getFirstDayOfMonth: function(year, month) { - return new Date(year, month, 1).getDay(); - }, + dateStr = (dateStr != null ? dateStr : this._formatDate(inst)); + if (inst.input) { + inst.input.val(dateStr); + } + this._updateAlternate(inst); - /* Determines if we should allow a "next/prev" month display change. */ - _canAdjustMonth: function(inst, offset, curYear, curMonth) { - var numMonths = this._getNumberOfMonths(inst), - date = this._daylightSavingAdjust(new Date(curYear, - curMonth + (offset < 0 ? offset : numMonths[0] * numMonths[1]), 1)); + onSelect = this._get(inst, "onSelect"); + if (onSelect) { + onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback + } else if (inst.input) { + inst.input.trigger("change"); // fire the change event + } - if (offset < 0) { - date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth())); + if (inst.inline){ + this._updateDatepicker(inst); + } else { + this._hideDatepicker(); + this._lastInput = inst.input[0]; + if (typeof(inst.input[0]) !== "object") { + inst.input.focus(); // restore focus + } + this._lastInput = null; } - return this._isInRange(inst, date); }, - /* Is the given date in the accepted range? */ - _isInRange: function(inst, date) { - var yearSplit, currentYear, - minDate = this._getMinMaxDate(inst, "min"), - maxDate = this._getMinMaxDate(inst, "max"), - minYear = null, - maxYear = null, - years = this._get(inst, "yearRange"); - if (years){ - yearSplit = years.split(":"); - currentYear = new Date().getFullYear(); - minYear = parseInt(yearSplit[0], 10); - maxYear = parseInt(yearSplit[1], 10); - if ( yearSplit[0].match(/[+\-].*/) ) { - minYear += currentYear; - } - if ( yearSplit[1].match(/[+\-].*/) ) { - maxYear += currentYear; - } - } + /* Update any alternate field to synchronise with the main field. */ + _updateAlternate: function(inst) { + var altFormat, date, dateStr, + altField = this._get(inst, "altField"); - return ((!minDate || date.getTime() >= minDate.getTime()) && - (!maxDate || date.getTime() <= maxDate.getTime()) && - (!minYear || date.getFullYear() >= minYear) && - (!maxYear || date.getFullYear() <= maxYear)); + if (altField) { // update alternate field too + altFormat = this._get(inst, "altFormat") || this._get(inst, "dateFormat"); + date = this._getDate(inst); + dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst)); + $(altField).each(function() { $(this).val(dateStr); }); + } }, - /* Provide the configuration settings for formatting/parsing. */ - _getFormatConfig: function(inst) { - var shortYearCutoff = this._get(inst, "shortYearCutoff"); - shortYearCutoff = (typeof shortYearCutoff !== "string" ? shortYearCutoff : - new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10)); - return {shortYearCutoff: shortYearCutoff, - dayNamesShort: this._get(inst, "dayNamesShort"), dayNames: this._get(inst, "dayNames"), - monthNamesShort: this._get(inst, "monthNamesShort"), monthNames: this._get(inst, "monthNames")}; + /* Set as beforeShowDay function to prevent selection of weekends. + * @param date Date - the date to customise + * @return [boolean, string] - is this date selectable?, what is its CSS class? + */ + noWeekends: function(date) { + var day = date.getDay(); + return [(day > 0 && day < 6), ""]; }, - /* Format the given date for display. */ - _formatDate: function(inst, day, month, year) { - if (!day) { - inst.currentDay = inst.selectedDay; - inst.currentMonth = inst.selectedMonth; - inst.currentYear = inst.selectedYear; - } - var date = (day ? (typeof day === "object" ? day : - this._daylightSavingAdjust(new Date(year, month, day))) : - this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay))); - return this.formatDate(this._get(inst, "dateFormat"), date, this._getFormatConfig(inst)); - } -}); + /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition. + * @param date Date - the date to get the week for + * @return number - the number of the week within the year that contains this date + */ + iso8601Week: function(date) { + var time, + checkDate = new Date(date.getTime()); -/* - * Bind hover events for datepicker elements. - * Done via delegate so the binding only occurs once in the lifetime of the parent div. - * Global instActive, set by _updateDatepicker allows the handlers to find their way back to the active picker. - */ -function bindHover(dpDiv) { - var selector = "button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a"; - return dpDiv.delegate(selector, "mouseout", function() { - $(this).removeClass("ui-state-hover"); - if (this.className.indexOf("ui-datepicker-prev") !== -1) { - $(this).removeClass("ui-datepicker-prev-hover"); - } - if (this.className.indexOf("ui-datepicker-next") !== -1) { - $(this).removeClass("ui-datepicker-next-hover"); - } - }) - .delegate(selector, "mouseover", function(){ - if (!$.datepicker._isDisabledDatepicker( instActive.inline ? dpDiv.parent()[0] : instActive.input[0])) { - $(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"); - $(this).addClass("ui-state-hover"); - if (this.className.indexOf("ui-datepicker-prev") !== -1) { - $(this).addClass("ui-datepicker-prev-hover"); - } - if (this.className.indexOf("ui-datepicker-next") !== -1) { - $(this).addClass("ui-datepicker-next-hover"); - } - } - }); -} + // Find Thursday of this week starting on Monday + checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7)); -/* jQuery extend now ignores nulls! */ -function extendRemove(target, props) { - $.extend(target, props); - for (var name in props) { - if (props[name] == null) { - target[name] = props[name]; - } - } - return target; -} + time = checkDate.getTime(); + checkDate.setMonth(0); // Compare with Jan 1 + checkDate.setDate(1); + return Math.floor(Math.round((time - checkDate) / 86400000) / 7) + 1; + }, -/* Invoke the datepicker functionality. - @param options string - a command, optionally followed by additional parameters or - Object - settings for attaching new datepicker functionality - @return jQuery object */ -$.fn.datepicker = function(options){ + /* Parse a string value into a date object. + * See formatDate below for the possible formats. + * + * @param format string - the expected format of the date + * @param value string - the date in the above format + * @param settings Object - attributes include: + * shortYearCutoff number - the cutoff year for determining the century (optional) + * dayNamesShort string[7] - abbreviated names of the days from Sunday (optional) + * dayNames string[7] - names of the days from Sunday (optional) + * monthNamesShort string[12] - abbreviated names of the months (optional) + * monthNames string[12] - names of the months (optional) + * @return Date - the extracted date value or null if value is blank + */ + parseDate: function (format, value, settings) { + if (format == null || value == null) { + throw "Invalid arguments"; + } - /* Verify an empty collection wasn't passed - Fixes #6976 */ - if ( !this.length ) { - return this; - } + value = (typeof value === "object" ? value.toString() : value + ""); + if (value === "") { + return null; + } - /* Initialise the date picker. */ - if (!$.datepicker.initialized) { - $(document).mousedown($.datepicker._checkExternalClick); - $.datepicker.initialized = true; - } + var iFormat, dim, extra, + iValue = 0, + shortYearCutoffTemp = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff, + shortYearCutoff = (typeof shortYearCutoffTemp !== "string" ? shortYearCutoffTemp : + new Date().getFullYear() % 100 + parseInt(shortYearCutoffTemp, 10)), + dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort, + dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames, + monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort, + monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames, + year = -1, + month = -1, + day = -1, + doy = -1, + literal = false, + date, + // Check whether a format character is doubled + lookAhead = function(match) { + var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match); + if (matches) { + iFormat++; + } + return matches; + }, + // Extract a number from the string value + getNumber = function(match) { + var isDoubled = lookAhead(match), + size = (match === "@" ? 14 : (match === "!" ? 20 : + (match === "y" && isDoubled ? 4 : (match === "o" ? 3 : 2)))), + digits = new RegExp("^\\d{1," + size + "}"), + num = value.substring(iValue).match(digits); + if (!num) { + throw "Missing number at position " + iValue; + } + iValue += num[0].length; + return parseInt(num[0], 10); + }, + // Extract a name from the string value and convert to an index + getName = function(match, shortNames, longNames) { + var index = -1, + names = $.map(lookAhead(match) ? longNames : shortNames, function (v, k) { + return [ [k, v] ]; + }).sort(function (a, b) { + return -(a[1].length - b[1].length); + }); - /* Append datepicker main container to body if not exist. */ - if ($("#"+$.datepicker._mainDivId).length === 0) { - $("body").append($.datepicker.dpDiv); - } + $.each(names, function (i, pair) { + var name = pair[1]; + if (value.substr(iValue, name.length).toLowerCase() === name.toLowerCase()) { + index = pair[0]; + iValue += name.length; + return false; + } + }); + if (index !== -1) { + return index + 1; + } else { + throw "Unknown name at position " + iValue; + } + }, + // Confirm that a literal character matches the string value + checkLiteral = function() { + if (value.charAt(iValue) !== format.charAt(iFormat)) { + throw "Unexpected literal at position " + iValue; + } + iValue++; + }; - var otherArgs = Array.prototype.slice.call(arguments, 1); - if (typeof options === "string" && (options === "isDisabled" || options === "getDate" || options === "widget")) { - return $.datepicker["_" + options + "Datepicker"]. - apply($.datepicker, [this[0]].concat(otherArgs)); - } - if (options === "option" && arguments.length === 2 && typeof arguments[1] === "string") { - return $.datepicker["_" + options + "Datepicker"]. - apply($.datepicker, [this[0]].concat(otherArgs)); - } - return this.each(function() { - typeof options === "string" ? - $.datepicker["_" + options + "Datepicker"]. - apply($.datepicker, [this].concat(otherArgs)) : - $.datepicker._attachDatepicker(this, options); - }); -}; - -$.datepicker = new Datepicker(); // singleton instance -$.datepicker.initialized = false; -$.datepicker.uuid = new Date().getTime(); -$.datepicker.version = "1.10.4"; - -})(jQuery); -(function( $, undefined ) { - -var sizeRelatedOptions = { - buttons: true, - height: true, - maxHeight: true, - maxWidth: true, - minHeight: true, - minWidth: true, - width: true - }, - resizableRelatedOptions = { - maxHeight: true, - maxWidth: true, - minHeight: true, - minWidth: true - }; - -$.widget( "ui.dialog", { - version: "1.10.4", - options: { - appendTo: "body", - autoOpen: true, - buttons: [], - closeOnEscape: true, - closeText: "close", - dialogClass: "", - draggable: true, - hide: null, - height: "auto", - maxHeight: null, - maxWidth: null, - minHeight: 150, - minWidth: 150, - modal: false, - position: { - my: "center", - at: "center", - of: window, - collision: "fit", - // Ensure the titlebar is always visible - using: function( pos ) { - var topOffset = $( this ).css( pos ).offset().top; - if ( topOffset < 0 ) { - $( this ).css( "top", pos.top - topOffset ); + for (iFormat = 0; iFormat < format.length; iFormat++) { + if (literal) { + if (format.charAt(iFormat) === "'" && !lookAhead("'")) { + literal = false; + } else { + checkLiteral(); + } + } else { + switch (format.charAt(iFormat)) { + case "d": + day = getNumber("d"); + break; + case "D": + getName("D", dayNamesShort, dayNames); + break; + case "o": + doy = getNumber("o"); + break; + case "m": + month = getNumber("m"); + break; + case "M": + month = getName("M", monthNamesShort, monthNames); + break; + case "y": + year = getNumber("y"); + break; + case "@": + date = new Date(getNumber("@")); + year = date.getFullYear(); + month = date.getMonth() + 1; + day = date.getDate(); + break; + case "!": + date = new Date((getNumber("!") - this._ticksTo1970) / 10000); + year = date.getFullYear(); + month = date.getMonth() + 1; + day = date.getDate(); + break; + case "'": + if (lookAhead("'")){ + checkLiteral(); + } else { + literal = true; + } + break; + default: + checkLiteral(); } } - }, - resizable: true, - show: null, - title: null, - width: 300, - - // callbacks - beforeClose: null, - close: null, - drag: null, - dragStart: null, - dragStop: null, - focus: null, - open: null, - resize: null, - resizeStart: null, - resizeStop: null - }, - - _create: function() { - this.originalCss = { - display: this.element[0].style.display, - width: this.element[0].style.width, - minHeight: this.element[0].style.minHeight, - maxHeight: this.element[0].style.maxHeight, - height: this.element[0].style.height - }; - this.originalPosition = { - parent: this.element.parent(), - index: this.element.parent().children().index( this.element ) - }; - this.originalTitle = this.element.attr("title"); - this.options.title = this.options.title || this.originalTitle; - - this._createWrapper(); - - this.element - .show() - .removeAttr("title") - .addClass("ui-dialog-content ui-widget-content") - .appendTo( this.uiDialog ); - - this._createTitlebar(); - this._createButtonPane(); - - if ( this.options.draggable && $.fn.draggable ) { - this._makeDraggable(); - } - if ( this.options.resizable && $.fn.resizable ) { - this._makeResizable(); } - this._isOpen = false; - }, - - _init: function() { - if ( this.options.autoOpen ) { - this.open(); + if (iValue < value.length){ + extra = value.substr(iValue); + if (!/^\s+/.test(extra)) { + throw "Extra/unparsed characters found in date: " + extra; + } } - }, - _appendTo: function() { - var element = this.options.appendTo; - if ( element && (element.jquery || element.nodeType) ) { - return $( element ); + if (year === -1) { + year = new Date().getFullYear(); + } else if (year < 100) { + year += new Date().getFullYear() - new Date().getFullYear() % 100 + + (year <= shortYearCutoff ? 0 : -100); } - return this.document.find( element || "body" ).eq( 0 ); - }, - - _destroy: function() { - var next, - originalPosition = this.originalPosition; - - this._destroyOverlay(); - - this.element - .removeUniqueId() - .removeClass("ui-dialog-content ui-widget-content") - .css( this.originalCss ) - // Without detaching first, the following becomes really slow - .detach(); - - this.uiDialog.stop( true, true ).remove(); - if ( this.originalTitle ) { - this.element.attr( "title", this.originalTitle ); + if (doy > -1) { + month = 1; + day = doy; + do { + dim = this._getDaysInMonth(year, month - 1); + if (day <= dim) { + break; + } + month++; + day -= dim; + } while (true); } - next = originalPosition.parent.children().eq( originalPosition.index ); - // Don't try to place the dialog next to itself (#8613) - if ( next.length && next[0] !== this.element[0] ) { - next.before( this.element ); - } else { - originalPosition.parent.append( this.element ); + date = this._daylightSavingAdjust(new Date(year, month - 1, day)); + if (date.getFullYear() !== year || date.getMonth() + 1 !== month || date.getDate() !== day) { + throw "Invalid date"; // E.g. 31/02/00 } + return date; }, - widget: function() { - return this.uiDialog; - }, - - disable: $.noop, - enable: $.noop, - - close: function( event ) { - var activeElement, - that = this; - - if ( !this._isOpen || this._trigger( "beforeClose", event ) === false ) { - return; - } - - this._isOpen = false; - this._destroyOverlay(); - - if ( !this.opener.filter(":focusable").focus().length ) { - - // support: IE9 - // IE9 throws an "Unspecified error" accessing document.activeElement from an