summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMichal Rezler <rezlemic@fel.cvut.cz>2011-03-23 10:39:45 +0100
committerMichal Rezler <rezlemic@fel.cvut.cz>2011-03-23 10:39:45 +0100
commit35838d22a57707952f630eaf9f9e9ab4c6c3cfb0 (patch)
tree3603e2e56314af40a4b7922e14e52c0bc06f6f9d /lib
parentc4bb7947fcb2d4a5e5f8a15d9e3bbec333e44e13 (diff)
parentee1214abb2c14cf0f86ff6d9a5b49536c6b01e18 (diff)
downloadrpg-35838d22a57707952f630eaf9f9e9ab4c6c3cfb0.tar.gz
rpg-35838d22a57707952f630eaf9f9e9ab4c6c3cfb0.tar.bz2
jQuery rewrite branch merged into master branch of whole project
Diffstat (limited to 'lib')
-rw-r--r--lib/exe/ajax.php458
-rw-r--r--lib/exe/css.php90
-rw-r--r--lib/exe/fetch.php2
-rw-r--r--lib/exe/indexer.php192
-rw-r--r--lib/exe/js.php7
-rw-r--r--lib/exe/mediamanager.php22
-rw-r--r--lib/exe/opensearch.php2
-rw-r--r--lib/exe/xmlrpc.php190
-rw-r--r--lib/images/admin/acl.pngbin1336 -> 1074 bytes
-rw-r--r--lib/images/admin/config.pngbin1761 -> 1496 bytes
-rw-r--r--lib/images/admin/plugin.pngbin1415 -> 1128 bytes
-rw-r--r--lib/images/admin/popularity.pngbin1420 -> 1192 bytes
-rw-r--r--lib/images/admin/revert.pngbin1598 -> 1306 bytes
-rw-r--r--lib/images/admin/usermanager.pngbin1850 -> 1476 bytes
-rw-r--r--lib/images/close.pngbin1345 -> 137 bytes
-rw-r--r--lib/images/del.pngbin433 -> 355 bytes
-rw-r--r--lib/images/diff.pngbin219 -> 206 bytes
-rw-r--r--lib/images/error.pngbin706 -> 648 bytes
-rw-r--r--lib/images/fileicons/bz2.pngbin720 -> 641 bytes
-rw-r--r--lib/images/fileicons/c.pngbin774 -> 759 bytes
-rw-r--r--lib/images/fileicons/conf.pngbin717 -> 664 bytes
-rw-r--r--lib/images/fileicons/cpp.pngbin859 -> 822 bytes
-rw-r--r--lib/images/fileicons/cs.pngbin808 -> 771 bytes
-rw-r--r--lib/images/fileicons/csv.pngbin480 -> 400 bytes
-rw-r--r--lib/images/fileicons/deb.pngbin716 -> 652 bytes
-rw-r--r--lib/images/fileicons/doc.pngbin659 -> 584 bytes
-rw-r--r--lib/images/fileicons/docx.pngbin659 -> 584 bytes
-rw-r--r--lib/images/fileicons/file.pngbin720 -> 583 bytes
-rw-r--r--lib/images/fileicons/gif.pngbin1001 -> 907 bytes
-rw-r--r--lib/images/fileicons/gz.pngbin716 -> 643 bytes
-rw-r--r--lib/images/fileicons/htm.pngbin748 -> 695 bytes
-rw-r--r--lib/images/fileicons/html.pngbin748 -> 695 bytes
-rw-r--r--lib/images/fileicons/jpeg.pngbin1001 -> 907 bytes
-rw-r--r--lib/images/fileicons/jpg.pngbin1001 -> 907 bytes
-rw-r--r--lib/images/fileicons/lua.pngbin465 -> 449 bytes
-rw-r--r--lib/images/fileicons/mp3.pngbin885 -> 832 bytes
-rw-r--r--lib/images/fileicons/odc.pngbin749 -> 682 bytes
-rw-r--r--lib/images/fileicons/odf.pngbin807 -> 751 bytes
-rw-r--r--lib/images/fileicons/odg.pngbin788 -> 735 bytes
-rw-r--r--lib/images/fileicons/odi.pngbin788 -> 735 bytes
-rw-r--r--lib/images/fileicons/odp.pngbin744 -> 691 bytes
-rw-r--r--lib/images/fileicons/ods.pngbin749 -> 682 bytes
-rw-r--r--lib/images/fileicons/odt.pngbin577 -> 524 bytes
-rw-r--r--lib/images/fileicons/ogg.pngbin865 -> 807 bytes
-rw-r--r--lib/images/fileicons/pdf.pngbin663 -> 595 bytes
-rw-r--r--lib/images/fileicons/php.pngbin755 -> 749 bytes
-rw-r--r--lib/images/fileicons/pl.pngbin698 -> 685 bytes
-rw-r--r--lib/images/fileicons/png.pngbin1001 -> 907 bytes
-rw-r--r--lib/images/fileicons/ppt.pngbin762 -> 697 bytes
-rw-r--r--lib/images/fileicons/pptx.pngbin762 -> 697 bytes
-rw-r--r--lib/images/fileicons/ps.pngbin534 -> 473 bytes
-rw-r--r--lib/images/fileicons/py.pngbin714 -> 683 bytes
-rw-r--r--lib/images/fileicons/rar.pngbin631 -> 557 bytes
-rw-r--r--lib/images/fileicons/rb.pngbin828 -> 802 bytes
-rw-r--r--lib/images/fileicons/rpm.pngbin638 -> 555 bytes
-rw-r--r--lib/images/fileicons/rtf.pngbin474 -> 403 bytes
-rw-r--r--lib/images/fileicons/sql.pngbin865 -> 818 bytes
-rw-r--r--lib/images/fileicons/swf.pngbin843 -> 732 bytes
-rw-r--r--lib/images/fileicons/sxc.pngbin749 -> 682 bytes
-rw-r--r--lib/images/fileicons/sxd.pngbin788 -> 735 bytes
-rw-r--r--lib/images/fileicons/sxi.pngbin744 -> 691 bytes
-rw-r--r--lib/images/fileicons/sxw.pngbin577 -> 524 bytes
-rw-r--r--lib/images/fileicons/tar.pngbin747 -> 663 bytes
-rw-r--r--lib/images/fileicons/tgz.pngbin716 -> 643 bytes
-rw-r--r--lib/images/fileicons/txt.pngbin542 -> 466 bytes
-rw-r--r--lib/images/fileicons/wav.pngbin881 -> 822 bytes
-rw-r--r--lib/images/fileicons/xls.pngbin731 -> 670 bytes
-rw-r--r--lib/images/fileicons/xlsx.pngbin731 -> 670 bytes
-rw-r--r--lib/images/fileicons/xml.pngbin475 -> 409 bytes
-rw-r--r--lib/images/fileicons/zip.pngbin874 -> 802 bytes
-rw-r--r--lib/images/history.pngbin202 -> 149 bytes
-rw-r--r--lib/images/info.pngbin783 -> 725 bytes
-rw-r--r--lib/images/interwiki.pngbin1089 -> 1016 bytes
-rw-r--r--lib/images/interwiki/callto.gifbin0 -> 586 bytes
-rw-r--r--lib/images/interwiki/paypal.gifbin0 -> 942 bytes
-rw-r--r--lib/images/interwiki/sb.gifbin886 -> 1000 bytes
-rw-r--r--lib/images/interwiki/skype.pngbin0 -> 675 bytes
-rw-r--r--lib/images/license/badge/cc-by-nc-nd.pngbin5281 -> 1704 bytes
-rw-r--r--lib/images/license/badge/cc-by-nc-sa.pngbin5460 -> 1815 bytes
-rw-r--r--lib/images/license/badge/cc-by-nc.pngbin5145 -> 1639 bytes
-rw-r--r--lib/images/license/badge/cc-by-nd.pngbin4880 -> 1492 bytes
-rw-r--r--lib/images/license/badge/cc-by-sa.pngbin5083 -> 1626 bytes
-rw-r--r--lib/images/license/badge/cc-by.pngbin4739 -> 1397 bytes
-rw-r--r--lib/images/license/badge/cc-zero.pngbin1266 -> 1202 bytes
-rw-r--r--lib/images/license/badge/cc.pngbin958 -> 898 bytes
-rw-r--r--lib/images/license/badge/gnufdl.pngbin1748 -> 1667 bytes
-rw-r--r--lib/images/license/badge/publicdomain.pngbin4962 -> 1550 bytes
-rw-r--r--lib/images/license/button/cc-by-nc-nd.pngbin678 -> 418 bytes
-rw-r--r--lib/images/license/button/cc-by-nc-sa.pngbin686 -> 432 bytes
-rw-r--r--lib/images/license/button/cc-by-nc.pngbin663 -> 407 bytes
-rw-r--r--lib/images/license/button/cc-by-nd.pngbin658 -> 406 bytes
-rw-r--r--lib/images/license/button/cc-by-sa.pngbin661 -> 408 bytes
-rw-r--r--lib/images/license/button/cc-by.pngbin629 -> 382 bytes
-rw-r--r--lib/images/license/button/cc-zero.pngbin706 -> 432 bytes
-rw-r--r--lib/images/license/button/cc.pngbin728 -> 450 bytes
-rw-r--r--lib/images/license/button/gnufdl.pngbin839 -> 535 bytes
-rw-r--r--lib/images/license/button/publicdomain.pngbin621 -> 381 bytes
-rw-r--r--lib/images/magnifier.pngbin615 -> 569 bytes
-rw-r--r--lib/images/media_align_center.pngbin294 -> 250 bytes
-rw-r--r--lib/images/media_align_left.pngbin312 -> 251 bytes
-rw-r--r--lib/images/media_align_noalign.pngbin269 -> 220 bytes
-rw-r--r--lib/images/media_align_right.pngbin312 -> 252 bytes
-rw-r--r--lib/images/media_link_direct.pngbin773 -> 720 bytes
-rw-r--r--lib/images/media_link_displaylnk.pngbin343 -> 306 bytes
-rw-r--r--lib/images/media_link_lnk.pngbin651 -> 580 bytes
-rw-r--r--lib/images/media_link_nolnk.pngbin516 -> 464 bytes
-rw-r--r--lib/images/media_size_large.pngbin153 -> 102 bytes
-rw-r--r--lib/images/media_size_medium.pngbin296 -> 231 bytes
-rw-r--r--lib/images/media_size_original.pngbin312 -> 212 bytes
-rw-r--r--lib/images/media_size_small.pngbin305 -> 210 bytes
-rw-r--r--lib/images/multiupload.pngbin698 -> 581 bytes
-rw-r--r--lib/images/notify.pngbin789 -> 736 bytes
-rw-r--r--lib/images/ns.pngbin853 -> 800 bytes
-rw-r--r--lib/images/page.pngbin635 -> 582 bytes
-rw-r--r--lib/images/pencil.pngbin450 -> 397 bytes
-rw-r--r--lib/images/smileys/facepalm.gifbin0 -> 185 bytes
-rw-r--r--lib/images/success.pngbin816 -> 728 bytes
-rw-r--r--lib/images/toolbar/bold.pngbin433 -> 372 bytes
-rw-r--r--lib/images/toolbar/chars.pngbin619 -> 496 bytes
-rw-r--r--lib/images/toolbar/h.pngbin360 -> 258 bytes
-rw-r--r--lib/images/toolbar/h1.pngbin420 -> 290 bytes
-rw-r--r--lib/images/toolbar/h2.pngbin442 -> 328 bytes
-rw-r--r--lib/images/toolbar/h3.pngbin452 -> 322 bytes
-rw-r--r--lib/images/toolbar/h4.pngbin432 -> 310 bytes
-rw-r--r--lib/images/toolbar/h5.pngbin440 -> 325 bytes
-rw-r--r--lib/images/toolbar/hequal.pngbin426 -> 311 bytes
-rw-r--r--lib/images/toolbar/hminus.pngbin538 -> 409 bytes
-rw-r--r--lib/images/toolbar/hplus.pngbin520 -> 396 bytes
-rw-r--r--lib/images/toolbar/hr.pngbin329 -> 254 bytes
-rw-r--r--lib/images/toolbar/image.pngbin625 -> 554 bytes
-rw-r--r--lib/images/toolbar/italic.pngbin322 -> 241 bytes
-rw-r--r--lib/images/toolbar/link.pngbin579 -> 405 bytes
-rw-r--r--lib/images/toolbar/linkextern.pngbin962 -> 904 bytes
-rw-r--r--lib/images/toolbar/mono.pngbin385 -> 296 bytes
-rw-r--r--lib/images/toolbar/ol.pngbin403 -> 304 bytes
-rw-r--r--lib/images/toolbar/sig.pngbin569 -> 471 bytes
-rw-r--r--lib/images/toolbar/smiley.pngbin755 -> 684 bytes
-rw-r--r--lib/images/toolbar/strike.pngbin415 -> 318 bytes
-rw-r--r--lib/images/toolbar/ul.pngbin383 -> 291 bytes
-rw-r--r--lib/images/toolbar/underline.pngbin375 -> 317 bytes
-rw-r--r--lib/images/trash.pngbin476 -> 431 bytes
-rw-r--r--lib/images/up.pngbin376 -> 260 bytes
-rw-r--r--lib/plugins/acl/admin.php2
-rw-r--r--lib/plugins/acl/lang/bg/help.txt10
-rw-r--r--lib/plugins/acl/lang/bg/lang.php23
-rw-r--r--lib/plugins/acl/lang/de-informal/lang.php1
-rw-r--r--lib/plugins/acl/lang/de/lang.php2
-rw-r--r--lib/plugins/acl/lang/en/lang.php2
-rw-r--r--lib/plugins/acl/lang/et/lang.php32
-rw-r--r--lib/plugins/acl/lang/fr/lang.php1
-rw-r--r--lib/plugins/acl/lang/he/lang.php1
-rw-r--r--lib/plugins/acl/lang/hi/lang.php1
-rw-r--r--lib/plugins/acl/lang/it/lang.php1
-rw-r--r--lib/plugins/acl/lang/ko/lang.php1
-rw-r--r--lib/plugins/acl/lang/la/help.txt11
-rw-r--r--lib/plugins/acl/lang/la/lang.php34
-rw-r--r--lib/plugins/acl/lang/ru/help.txt16
-rw-r--r--lib/plugins/acl/lang/ru/lang.php4
-rw-r--r--lib/plugins/acl/lang/sl/help.txt11
-rw-r--r--lib/plugins/acl/lang/sl/lang.php16
-rw-r--r--lib/plugins/acl/lang/tr/lang.php5
-rw-r--r--lib/plugins/acl/lang/vi/lang.php2
-rw-r--r--lib/plugins/acl/lang/zh-tw/help.txt11
-rw-r--r--lib/plugins/acl/lang/zh-tw/lang.php30
-rw-r--r--lib/plugins/acl/lang/zh/lang.php3
-rw-r--r--lib/plugins/acl/pix/group.pngbin753 -> 700 bytes
-rw-r--r--lib/plugins/acl/pix/ns.pngbin853 -> 800 bytes
-rw-r--r--lib/plugins/acl/pix/page.pngbin635 -> 582 bytes
-rw-r--r--lib/plugins/acl/pix/user.pngbin706 -> 653 bytes
-rw-r--r--lib/plugins/admin.php2
-rw-r--r--lib/plugins/config/admin.php4
-rw-r--r--lib/plugins/config/images/danger.pngbin701 -> 648 bytes
-rw-r--r--lib/plugins/config/images/security.pngbin749 -> 706 bytes
-rw-r--r--lib/plugins/config/images/warning.pngbin666 -> 613 bytes
-rw-r--r--lib/plugins/config/lang/ar/lang.php9
-rw-r--r--lib/plugins/config/lang/bg/intro.txt8
-rw-r--r--lib/plugins/config/lang/bg/lang.php192
-rw-r--r--lib/plugins/config/lang/cs/intro.txt2
-rw-r--r--lib/plugins/config/lang/cs/lang.php10
-rw-r--r--lib/plugins/config/lang/da/lang.php3
-rw-r--r--lib/plugins/config/lang/de-informal/lang.php10
-rw-r--r--lib/plugins/config/lang/de/lang.php5
-rw-r--r--lib/plugins/config/lang/el/lang.php1
-rw-r--r--lib/plugins/config/lang/en/lang.php1
-rw-r--r--lib/plugins/config/lang/et/lang.php6
-rw-r--r--lib/plugins/config/lang/eu/lang.php4
-rw-r--r--lib/plugins/config/lang/fi/lang.php4
-rw-r--r--lib/plugins/config/lang/fr/lang.php4
-rw-r--r--lib/plugins/config/lang/he/lang.php1
-rw-r--r--lib/plugins/config/lang/hi/lang.php2
-rw-r--r--lib/plugins/config/lang/it/intro.txt2
-rw-r--r--lib/plugins/config/lang/it/lang.php4
-rw-r--r--lib/plugins/config/lang/ja/lang.php4
-rw-r--r--lib/plugins/config/lang/ko/lang.php8
-rw-r--r--lib/plugins/config/lang/la/intro.txt7
-rw-r--r--lib/plugins/config/lang/la/lang.php181
-rw-r--r--lib/plugins/config/lang/nl/lang.php1
-rw-r--r--lib/plugins/config/lang/pt/lang.php5
-rw-r--r--lib/plugins/config/lang/ro/lang.php3
-rw-r--r--lib/plugins/config/lang/ru/intro.txt4
-rw-r--r--lib/plugins/config/lang/ru/lang.php52
-rw-r--r--lib/plugins/config/lang/sl/intro.txt7
-rw-r--r--lib/plugins/config/lang/sl/lang.php174
-rw-r--r--lib/plugins/config/lang/sv/lang.php1
-rw-r--r--lib/plugins/config/lang/tr/lang.php5
-rw-r--r--lib/plugins/config/lang/zh-tw/intro.txt6
-rw-r--r--lib/plugins/config/lang/zh-tw/lang.php170
-rw-r--r--lib/plugins/config/lang/zh/lang.php12
-rw-r--r--lib/plugins/config/settings/config.class.php25
-rw-r--r--lib/plugins/config/settings/config.metadata.php8
-rw-r--r--lib/plugins/config/settings/extra.class.php1
-rw-r--r--lib/plugins/info/lang/sl/lang.php12
-rw-r--r--lib/plugins/info/syntax.php2
-rw-r--r--lib/plugins/plugin/admin.php2
-rw-r--r--lib/plugins/plugin/classes/ap_download.class.php2
-rw-r--r--lib/plugins/plugin/classes/ap_manage.class.php4
-rw-r--r--lib/plugins/plugin/lang/bg/admin_plugin.txt2
-rw-r--r--lib/plugins/plugin/lang/bg/lang.php49
-rw-r--r--lib/plugins/plugin/lang/cs/lang.php4
-rw-r--r--lib/plugins/plugin/lang/de-informal/lang.php1
-rw-r--r--lib/plugins/plugin/lang/de/lang.php2
-rw-r--r--lib/plugins/plugin/lang/en/lang.php2
-rw-r--r--lib/plugins/plugin/lang/et/lang.php6
-rw-r--r--lib/plugins/plugin/lang/fr/lang.php1
-rw-r--r--lib/plugins/plugin/lang/he/lang.php1
-rw-r--r--lib/plugins/plugin/lang/hi/lang.php6
-rw-r--r--lib/plugins/plugin/lang/it/lang.php1
-rw-r--r--lib/plugins/plugin/lang/ko/lang.php1
-rw-r--r--lib/plugins/plugin/lang/la/admin_plugin.txt3
-rw-r--r--lib/plugins/plugin/lang/la/lang.php50
-rw-r--r--lib/plugins/plugin/lang/pt-br/admin_plugin.txt2
-rw-r--r--lib/plugins/plugin/lang/ru/lang.php10
-rw-r--r--lib/plugins/plugin/lang/sl/admin_plugin.txt3
-rw-r--r--lib/plugins/plugin/lang/sl/lang.php34
-rw-r--r--lib/plugins/plugin/lang/tr/lang.php5
-rw-r--r--lib/plugins/plugin/lang/zh-tw/admin_plugin.txt2
-rw-r--r--lib/plugins/plugin/lang/zh-tw/lang.php36
-rw-r--r--lib/plugins/plugin/lang/zh/lang.php11
-rw-r--r--lib/plugins/popularity/action.php57
-rw-r--r--lib/plugins/popularity/admin.php277
-rw-r--r--lib/plugins/popularity/helper.php291
-rw-r--r--lib/plugins/popularity/lang/ar/lang.php5
-rw-r--r--lib/plugins/popularity/lang/ar/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/bg/intro.txt10
-rw-r--r--lib/plugins/popularity/lang/bg/lang.php10
-rw-r--r--lib/plugins/popularity/lang/bg/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/cs/intro.txt2
-rw-r--r--lib/plugins/popularity/lang/de-informal/lang.php6
-rw-r--r--lib/plugins/popularity/lang/de-informal/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/de/lang.php7
-rw-r--r--lib/plugins/popularity/lang/de/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/el/lang.php5
-rw-r--r--lib/plugins/popularity/lang/el/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/en/lang.php9
-rw-r--r--lib/plugins/popularity/lang/en/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/es/lang.php5
-rw-r--r--lib/plugins/popularity/lang/es/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/et/lang.php6
-rw-r--r--lib/plugins/popularity/lang/fr/lang.php8
-rw-r--r--lib/plugins/popularity/lang/fr/submitted.txt2
-rw-r--r--lib/plugins/popularity/lang/he/lang.php1
-rw-r--r--lib/plugins/popularity/lang/hi/lang.php2
-rw-r--r--lib/plugins/popularity/lang/it/intro.txt6
-rw-r--r--lib/plugins/popularity/lang/it/lang.php6
-rw-r--r--lib/plugins/popularity/lang/it/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/ja/lang.php1
-rw-r--r--lib/plugins/popularity/lang/ko/lang.php1
-rw-r--r--lib/plugins/popularity/lang/la/intro.txt10
-rw-r--r--lib/plugins/popularity/lang/la/lang.php13
-rw-r--r--lib/plugins/popularity/lang/la/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/nl/intro.txt6
-rw-r--r--lib/plugins/popularity/lang/nl/lang.php5
-rw-r--r--lib/plugins/popularity/lang/nl/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/pt/lang.php4
-rw-r--r--lib/plugins/popularity/lang/pt/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/ro/lang.php5
-rw-r--r--lib/plugins/popularity/lang/ro/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/ru/intro.txt6
-rw-r--r--lib/plugins/popularity/lang/ru/lang.php7
-rw-r--r--lib/plugins/popularity/lang/ru/submitted.txt2
-rw-r--r--lib/plugins/popularity/lang/sl/intro.txt9
-rw-r--r--lib/plugins/popularity/lang/sl/lang.php11
-rw-r--r--lib/plugins/popularity/lang/sl/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/sv/lang.php5
-rw-r--r--lib/plugins/popularity/lang/sv/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/tr/lang.php5
-rw-r--r--lib/plugins/popularity/lang/zh-tw/intro.txt11
-rw-r--r--lib/plugins/popularity/lang/zh-tw/lang.php11
-rw-r--r--lib/plugins/popularity/lang/zh-tw/submitted.txt3
-rw-r--r--lib/plugins/popularity/lang/zh/lang.php8
-rw-r--r--lib/plugins/popularity/lang/zh/submitted.txt3
-rw-r--r--lib/plugins/popularity/plugin.info.txt7
-rw-r--r--lib/plugins/revert/admin.php2
-rw-r--r--lib/plugins/revert/lang/bg/intro.txt2
-rw-r--r--lib/plugins/revert/lang/bg/lang.php13
-rw-r--r--lib/plugins/revert/lang/cs/intro.txt2
-rw-r--r--lib/plugins/revert/lang/de-informal/lang.php1
-rw-r--r--lib/plugins/revert/lang/de/lang.php2
-rw-r--r--lib/plugins/revert/lang/en/lang.php2
-rw-r--r--lib/plugins/revert/lang/et/lang.php6
-rw-r--r--lib/plugins/revert/lang/fr/lang.php1
-rw-r--r--lib/plugins/revert/lang/he/lang.php1
-rw-r--r--lib/plugins/revert/lang/hi/lang.php1
-rw-r--r--lib/plugins/revert/lang/it/lang.php1
-rw-r--r--lib/plugins/revert/lang/ko/lang.php1
-rw-r--r--lib/plugins/revert/lang/la/intro.txt3
-rw-r--r--lib/plugins/revert/lang/la/lang.php15
-rw-r--r--lib/plugins/revert/lang/ru/intro.txt2
-rw-r--r--lib/plugins/revert/lang/ru/lang.php2
-rw-r--r--lib/plugins/revert/lang/sl/intro.txt3
-rw-r--r--lib/plugins/revert/lang/sl/lang.php12
-rw-r--r--lib/plugins/revert/lang/tr/lang.php5
-rw-r--r--lib/plugins/revert/lang/zh-tw/intro.txt2
-rw-r--r--lib/plugins/revert/lang/zh-tw/lang.php18
-rw-r--r--lib/plugins/revert/lang/zh/lang.php3
-rw-r--r--lib/plugins/syntax.php13
-rw-r--r--lib/plugins/usermanager/admin.php13
-rw-r--r--lib/plugins/usermanager/images/search.pngbin733 -> 550 bytes
-rw-r--r--lib/plugins/usermanager/lang/bg/lang.php55
-rw-r--r--lib/plugins/usermanager/lang/cs/lang.php2
-rw-r--r--lib/plugins/usermanager/lang/de-informal/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/de/lang.php2
-rw-r--r--lib/plugins/usermanager/lang/et/lang.php6
-rw-r--r--lib/plugins/usermanager/lang/fr/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/he/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/hi/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/it/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/ko/lang.php1
-rw-r--r--lib/plugins/usermanager/lang/la/add.txt1
-rw-r--r--lib/plugins/usermanager/lang/la/delete.txt1
-rw-r--r--lib/plugins/usermanager/lang/la/edit.txt1
-rw-r--r--lib/plugins/usermanager/lang/la/intro.txt1
-rw-r--r--lib/plugins/usermanager/lang/la/lang.php47
-rw-r--r--lib/plugins/usermanager/lang/la/list.txt1
-rw-r--r--lib/plugins/usermanager/lang/ru/lang.php6
-rw-r--r--lib/plugins/usermanager/lang/sl/add.txt2
-rw-r--r--lib/plugins/usermanager/lang/sl/delete.txt2
-rw-r--r--lib/plugins/usermanager/lang/sl/edit.txt2
-rw-r--r--lib/plugins/usermanager/lang/sl/intro.txt1
-rw-r--r--lib/plugins/usermanager/lang/sl/lang.php36
-rw-r--r--lib/plugins/usermanager/lang/tr/lang.php5
-rw-r--r--lib/plugins/usermanager/lang/zh-tw/intro.txt2
-rw-r--r--lib/plugins/usermanager/lang/zh-tw/lang.php24
-rw-r--r--lib/plugins/usermanager/lang/zh/lang.php3
-rw-r--r--lib/scripts/ajax.js126
-rw-r--r--lib/scripts/edit.js111
-rw-r--r--lib/scripts/hotkeys.js2
-rw-r--r--lib/scripts/linkwiz.js4
-rw-r--r--lib/scripts/locktimer.js99
-rw-r--r--lib/scripts/media.js93
-rw-r--r--lib/scripts/script.js70
-rw-r--r--lib/scripts/toolbar.js2
-rw-r--r--lib/styles/all.css48
-rw-r--r--lib/styles/print.css24
-rw-r--r--lib/styles/screen.css80
-rw-r--r--lib/styles/style.css113
-rw-r--r--lib/tpl/default/_mediaoptions.css2
-rw-r--r--lib/tpl/default/design.css26
-rw-r--r--lib/tpl/default/images/UWEB.pngbin1138 -> 1065 bytes
-rw-r--r--lib/tpl/default/images/UWEBshadow.pngbin1123 -> 900 bytes
-rw-r--r--lib/tpl/default/images/button-dw.pngbin427 -> 404 bytes
-rw-r--r--lib/tpl/default/images/button-rss.pngbin280 -> 196 bytes
-rw-r--r--lib/tpl/default/images/buttonshadow.pngbin257 -> 218 bytes
-rw-r--r--lib/tpl/default/images/inputshadow.pngbin155 -> 93 bytes
-rw-r--r--lib/tpl/default/main.php2
-rw-r--r--lib/tpl/default/media.css2
-rw-r--r--lib/tpl/default/print.css30
-rw-r--r--lib/tpl/default/rtl.css13
-rw-r--r--lib/tpl/index.php6
369 files changed, 2836 insertions, 1624 deletions
diff --git a/lib/exe/ajax.php b/lib/exe/ajax.php
index e9c59ca5d..7d594dc04 100644
--- a/lib/exe/ajax.php
+++ b/lib/exe/ajax.php
@@ -8,7 +8,7 @@
//fix for Opera XMLHttpRequests
if(!count($_POST) && !empty($HTTP_RAW_POST_DATA)){
- parse_str($HTTP_RAW_POST_DATA, $_POST);
+ parse_str($HTTP_RAW_POST_DATA, $_POST);
}
if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../');
@@ -20,25 +20,25 @@ header('Content-Type: text/html; charset=utf-8');
//call the requested function
-if(isset($_POST['call']))
- $call = $_POST['call'];
-else if(isset($_GET['call']))
- $call = $_GET['call'];
-else
- exit;
-
+if(isset($_POST['call'])){
+ $call = $_POST['call'];
+}else if(isset($_GET['call'])){
+ $call = $_GET['call'];
+}else{
+ exit;
+}
$callfn = 'ajax_'.$call;
if(function_exists($callfn)){
- $callfn();
+ $callfn();
}else{
- $evt = new Doku_Event('AJAX_CALL_UNKNOWN', $call);
- if ($evt->advise_before()) {
- print "AJAX call '".htmlspecialchars($call)."' unknown!\n";
- exit;
- }
- $evt->advise_after();
- unset($evt);
+ $evt = new Doku_Event('AJAX_CALL_UNKNOWN', $call);
+ if ($evt->advise_before()) {
+ print "AJAX call '".htmlspecialchars($call)."' unknown!\n";
+ exit;
+ }
+ $evt->advise_after();
+ unset($evt);
}
/**
@@ -47,33 +47,33 @@ if(function_exists($callfn)){
* @author Andreas Gohr <andi@splitbrain.org>
*/
function ajax_qsearch(){
- global $conf;
- global $lang;
-
- $query = $_POST['q'];
- if(empty($query)) $query = $_GET['q'];
- if(empty($query)) return;
-
- $data = ft_pageLookup($query, true, useHeading('navigation'));
-
- if(!count($data)) return;
-
- print '<strong>'.$lang['quickhits'].'</strong>';
- print '<ul>';
- foreach($data as $id => $title){
- if (useHeading('navigation')) {
- $name = $title;
- } else {
- $ns = getNS($id);
- if($ns){
- $name = shorten(noNS($id), ' ('.$ns.')',30);
- }else{
- $name = $id;
+ global $conf;
+ global $lang;
+
+ $query = $_POST['q'];
+ if(empty($query)) $query = $_GET['q'];
+ if(empty($query)) return;
+
+ $data = ft_pageLookup($query, true, useHeading('navigation'));
+
+ if(!count($data)) return;
+
+ print '<strong>'.$lang['quickhits'].'</strong>';
+ print '<ul>';
+ foreach($data as $id => $title){
+ if (useHeading('navigation')) {
+ $name = $title;
+ } else {
+ $ns = getNS($id);
+ if($ns){
+ $name = noNS($id).' ('.$ns.')';
+ }else{
+ $name = $id;
+ }
}
+ echo '<li>' . html_wikilink(':'.$id,$name) . '</li>';
}
- echo '<li>' . html_wikilink(':'.$id,$name) . '</li>';
- }
- print '</ul>';
+ print '</ul>';
}
/**
@@ -83,36 +83,36 @@ function ajax_qsearch(){
* @author Mike Frysinger <vapier@gentoo.org>
*/
function ajax_suggestions() {
- global $conf;
- global $lang;
-
- $query = cleanID($_POST['q']);
- if(empty($query)) $query = cleanID($_GET['q']);
- if(empty($query)) return;
-
- $data = array();
- $data = ft_pageLookup($query);
- if(!count($data)) return;
- $data = array_keys($data);
-
- // limit results to 15 hits
- $data = array_slice($data, 0, 15);
- $data = array_map('trim',$data);
- $data = array_map('noNS',$data);
- $data = array_unique($data);
- sort($data);
-
- /* now construct a json */
- $suggestions = array(
- $query, // the original query
- $data, // some suggestions
- array(), // no description
- array() // no urls
- );
- $json = new JSON();
-
- header('Content-Type: application/x-suggestions+json');
- print $json->encode($suggestions);
+ global $conf;
+ global $lang;
+
+ $query = cleanID($_POST['q']);
+ if(empty($query)) $query = cleanID($_GET['q']);
+ if(empty($query)) return;
+
+ $data = array();
+ $data = ft_pageLookup($query);
+ if(!count($data)) return;
+ $data = array_keys($data);
+
+ // limit results to 15 hits
+ $data = array_slice($data, 0, 15);
+ $data = array_map('trim',$data);
+ $data = array_map('noNS',$data);
+ $data = array_unique($data);
+ sort($data);
+
+ /* now construct a json */
+ $suggestions = array(
+ $query, // the original query
+ $data, // some suggestions
+ array(), // no description
+ array() // no urls
+ );
+ $json = new JSON();
+
+ header('Content-Type: application/x-suggestions+json');
+ print $json->encode($suggestions);
}
/**
@@ -121,32 +121,32 @@ function ajax_suggestions() {
* Andreas Gohr <andi@splitbrain.org>
*/
function ajax_lock(){
- global $conf;
- global $lang;
- $id = cleanID($_POST['id']);
- if(empty($id)) return;
-
- if(!checklock($id)){
- lock($id);
- echo 1;
- }
-
- if($conf['usedraft'] && $_POST['wikitext']){
- $client = $_SERVER['REMOTE_USER'];
- if(!$client) $client = clientIP(true);
+ global $conf;
+ global $lang;
+ $id = cleanID($_POST['id']);
+ if(empty($id)) return;
+
+ if(!checklock($id)){
+ lock($id);
+ echo 1;
+ }
- $draft = array('id' => $id,
- 'prefix' => substr($_POST['prefix'], 0, -1),
- 'text' => $_POST['wikitext'],
- 'suffix' => $_POST['suffix'],
- 'date' => (int) $_POST['date'],
- 'client' => $client,
- );
- $cname = getCacheName($draft['client'].$id,'.draft');
- if(io_saveFile($cname,serialize($draft))){
- echo $lang['draftdate'].' '.dformat();
+ if($conf['usedraft'] && $_POST['wikitext']){
+ $client = $_SERVER['REMOTE_USER'];
+ if(!$client) $client = clientIP(true);
+
+ $draft = array('id' => $id,
+ 'prefix' => substr($_POST['prefix'], 0, -1),
+ 'text' => $_POST['wikitext'],
+ 'suffix' => $_POST['suffix'],
+ 'date' => (int) $_POST['date'],
+ 'client' => $client,
+ );
+ $cname = getCacheName($draft['client'].$id,'.draft');
+ if(io_saveFile($cname,serialize($draft))){
+ echo $lang['draftdate'].' '.dformat();
+ }
}
- }
}
@@ -156,14 +156,14 @@ function ajax_lock(){
* @author Andreas Gohr <andi@splitbrain.org>
*/
function ajax_draftdel(){
- $id = cleanID($_REQUEST['id']);
- if(empty($id)) return;
+ $id = cleanID($_REQUEST['id']);
+ if(empty($id)) return;
- $client = $_SERVER['REMOTE_USER'];
- if(!$client) $client = clientIP(true);
+ $client = $_SERVER['REMOTE_USER'];
+ if(!$client) $client = clientIP(true);
- $cname = getCacheName($client.$id,'.draft');
- @unlink($cname);
+ $cname = getCacheName($client.$id,'.draft');
+ @unlink($cname);
}
/**
@@ -172,22 +172,22 @@ function ajax_draftdel(){
* @author Andreas Gohr <andi@splitbrain.org>
*/
function ajax_medians(){
- global $conf;
-
- // wanted namespace
- $ns = cleanID($_POST['ns']);
- $dir = utf8_encodeFN(str_replace(':','/',$ns));
-
- $lvl = count(explode(':',$ns));
-
- $data = array();
- search($data,$conf['mediadir'],'search_index',array('nofiles' => true),$dir);
- foreach($data as $item){
- $item['level'] = $lvl+1;
- echo media_nstree_li($item);
- echo media_nstree_item($item);
- echo '</li>';
- }
+ global $conf;
+
+ // wanted namespace
+ $ns = cleanID($_POST['ns']);
+ $dir = utf8_encodeFN(str_replace(':','/',$ns));
+
+ $lvl = count(explode(':',$ns));
+
+ $data = array();
+ search($data,$conf['mediadir'],'search_index',array('nofiles' => true),$dir);
+ foreach($data as $item){
+ $item['level'] = $lvl+1;
+ echo media_nstree_li($item);
+ echo media_nstree_item($item);
+ echo '</li>';
+ }
}
/**
@@ -196,11 +196,11 @@ function ajax_medians(){
* @author Andreas Gohr <andi@splitbrain.org>
*/
function ajax_medialist(){
- global $conf;
- global $NS;
+ global $conf;
+ global $NS;
- $NS = $_POST['ns'];
- tpl_mediaContent(true);
+ $NS = $_POST['ns'];
+ tpl_mediaContent(true);
}
/**
@@ -209,24 +209,24 @@ function ajax_medialist(){
* @author Andreas Gohr <andi@splitbrain.org>
*/
function ajax_index(){
- global $conf;
-
- // wanted namespace
- $ns = cleanID($_POST['idx']);
- $dir = utf8_encodeFN(str_replace(':','/',$ns));
-
- $lvl = count(explode(':',$ns));
-
- $data = array();
- search($data,$conf['datadir'],'search_index',array('ns' => $ns),$dir);
- foreach($data as $item){
- $item['level'] = $lvl+1;
- echo html_li_index($item);
- echo '<div class="li">';
- echo html_list_index($item);
- echo '</div>';
- echo '</li>';
- }
+ global $conf;
+
+ // wanted namespace
+ $ns = cleanID($_POST['idx']);
+ $dir = utf8_encodeFN(str_replace(':','/',$ns));
+
+ $lvl = count(explode(':',$ns));
+
+ $data = array();
+ search($data,$conf['datadir'],'search_index',array('ns' => $ns),$dir);
+ foreach($data as $item){
+ $item['level'] = $lvl+1;
+ echo html_li_index($item);
+ echo '<div class="li">';
+ echo html_list_index($item);
+ echo '</div>';
+ echo '</li>';
+ }
}
/**
@@ -235,108 +235,106 @@ function ajax_index(){
* @author Andreas Gohr <gohr@cosmocode.de>
*/
function ajax_linkwiz(){
- global $conf;
- global $lang;
-
- $q = ltrim($_POST['q'],':');
- $id = noNS($q);
- $ns = getNS($q);
-
- $ns = cleanID($ns);
- $id = cleanID($id);
-
- $nsd = utf8_encodeFN(str_replace(':','/',$ns));
- $idd = utf8_encodeFN(str_replace(':','/',$id));
-
- $data = array();
- if($q && !$ns){
-
- // use index to lookup matching pages
- $pages = array();
- $pages = ft_pageLookup($id,true);
-
- // result contains matches in pages and namespaces
- // we now extract the matching namespaces to show
- // them seperately
- $dirs = array();
-
-
- foreach($pages as $pid => $title){
- if(strpos(noNS($pid),$id) === false){
- // match was in the namespace
- $dirs[getNS($pid)] = 1; // assoc array avoids dupes
- }else{
- // it is a matching page, add it to the result
- $data[] = array(
- 'id' => $pid,
- 'title' => $title,
- 'type' => 'f',
- );
- }
- unset($pages[$pid]);
- }
- foreach($dirs as $dir => $junk){
- $data[] = array(
- 'id' => $dir,
- 'type' => 'd',
- );
- }
+ global $conf;
+ global $lang;
+
+ $q = ltrim(trim($_POST['q']),':');
+ $id = noNS($q);
+ $ns = getNS($q);
+
+ $ns = cleanID($ns);
+ $id = cleanID($id);
+
+ $nsd = utf8_encodeFN(str_replace(':','/',$ns));
+ $idd = utf8_encodeFN(str_replace(':','/',$id));
+
+ $data = array();
+ if($q && !$ns){
+
+ // use index to lookup matching pages
+ $pages = array();
+ $pages = ft_pageLookup($id,true);
+
+ // result contains matches in pages and namespaces
+ // we now extract the matching namespaces to show
+ // them seperately
+ $dirs = array();
+
+ foreach($pages as $pid => $title){
+ if(strpos(noNS($pid),$id) === false){
+ // match was in the namespace
+ $dirs[getNS($pid)] = 1; // assoc array avoids dupes
+ }else{
+ // it is a matching page, add it to the result
+ $data[] = array(
+ 'id' => $pid,
+ 'title' => $title,
+ 'type' => 'f',
+ );
+ }
+ unset($pages[$pid]);
+ }
+ foreach($dirs as $dir => $junk){
+ $data[] = array(
+ 'id' => $dir,
+ 'type' => 'd',
+ );
+ }
- }else{
-
- $opts = array(
- 'depth' => 1,
- 'listfiles' => true,
- 'listdirs' => true,
- 'pagesonly' => true,
- 'firsthead' => true,
- 'sneakyacl' => $conf['sneaky_index'],
- );
- if($id) $opts['filematch'] = '^.*\/'.$id;
- if($id) $opts['dirmatch'] = '^.*\/'.$id;
- search($data,$conf['datadir'],'search_universal',$opts,$nsd);
-
- // add back to upper
- if($ns){
- array_unshift($data,array(
- 'id' => getNS($ns),
- 'type' => 'u',
- ));
- }
- }
+ }else{
- // fixme sort results in a useful way ?
+ $opts = array(
+ 'depth' => 1,
+ 'listfiles' => true,
+ 'listdirs' => true,
+ 'pagesonly' => true,
+ 'firsthead' => true,
+ 'sneakyacl' => $conf['sneaky_index'],
+ );
+ if($id) $opts['filematch'] = '^.*\/'.$id;
+ if($id) $opts['dirmatch'] = '^.*\/'.$id;
+ search($data,$conf['datadir'],'search_universal',$opts,$nsd);
+
+ // add back to upper
+ if($ns){
+ array_unshift($data,array(
+ 'id' => getNS($ns),
+ 'type' => 'u',
+ ));
+ }
+ }
- if(!count($data)){
- echo $lang['nothingfound'];
- exit;
- }
+ // fixme sort results in a useful way ?
- // output the found data
- $even = 1;
- foreach($data as $item){
- $even *= -1; //zebra
+ if(!count($data)){
+ echo $lang['nothingfound'];
+ exit;
+ }
- if(($item['type'] == 'd' || $item['type'] == 'u') && $item['id']) $item['id'] .= ':';
- $link = wl($item['id']);
+ // output the found data
+ $even = 1;
+ foreach($data as $item){
+ $even *= -1; //zebra
- echo '<div class="'.(($even > 0)?'even':'odd').' type_'.$item['type'].'">';
+ if(($item['type'] == 'd' || $item['type'] == 'u') && $item['id']) $item['id'] .= ':';
+ $link = wl($item['id']);
+ echo '<div class="'.(($even > 0)?'even':'odd').' type_'.$item['type'].'">';
- if($item['type'] == 'u'){
- $name = $lang['upperns'];
- }else{
- $name = htmlspecialchars($item['id']);
- }
+ if($item['type'] == 'u'){
+ $name = $lang['upperns'];
+ }else{
+ $name = htmlspecialchars($item['id']);
+ }
- echo '<a href="'.$link.'" title="'.htmlspecialchars($item['id']).'" class="wikilink1">'.$name.'</a>';
+ echo '<a href="'.$link.'" title="'.htmlspecialchars($item['id']).'" class="wikilink1">'.$name.'</a>';
- if($item['title']){
- echo '<span>'.htmlspecialchars($item['title']).'</span>';
+ if($item['title']){
+ echo '<span>'.htmlspecialchars($item['title']).'</span>';
+ }
+ echo '</div>';
}
- echo '</div>';
- }
}
-//Setup VIM: ex: et ts=2 enc=utf-8 :
+//Setup VIM: ex: et ts=2 :
diff --git a/lib/exe/css.php b/lib/exe/css.php
index 76f40c7bb..03f900034 100644
--- a/lib/exe/css.php
+++ b/lib/exe/css.php
@@ -30,10 +30,10 @@ function css_out(){
global $lang;
global $config_cascade;
- $style = '';
+ $mediatype = 'screen';
if (isset($_REQUEST['s']) &&
in_array($_REQUEST['s'], array('all', 'print', 'feed'))) {
- $style = $_REQUEST['s'];
+ $mediatype = $_REQUEST['s'];
}
$tpl = trim(preg_replace('/[^\w-]+/','',$_REQUEST['t']));
@@ -46,7 +46,7 @@ function css_out(){
}
// The generated script depends on some dynamic options
- $cache = getCacheName('styles'.$_SERVER['HTTP_HOST'].$_SERVER['SERVER_PORT'].DOKU_BASE.$tplinc.$style,'.css');
+ $cache = getCacheName('styles'.$_SERVER['HTTP_HOST'].$_SERVER['SERVER_PORT'].DOKU_BASE.$tplinc.$mediatype,'.css');
// load template styles
$tplstyles = array();
@@ -60,27 +60,29 @@ function css_out(){
// Array of needed files and their web locations, the latter ones
// are needed to fix relative paths in the stylesheets
$files = array();
- //if (isset($tplstyles['all'])) $files = array_merge($files, $tplstyles['all']);
- if(!empty($style)){
- $files[DOKU_INC.'lib/styles/'.$style.'.css'] = DOKU_BASE.'lib/styles/';
- // load plugin, template, user styles
- $files = array_merge($files, css_pluginstyles($style));
- if (isset($tplstyles[$style])) $files = array_merge($files, $tplstyles[$style]);
-
- if(isset($config_cascade['userstyle'][$style])){
- $files[$config_cascade['userstyle'][$style]] = DOKU_BASE;
- }
- }else{
- $files[DOKU_INC.'lib/styles/style.css'] = DOKU_BASE.'lib/styles/';
- // load plugin, template, user styles
- $files = array_merge($files, css_pluginstyles('screen'));
- if (isset($tplstyles['screen'])) $files = array_merge($files, $tplstyles['screen']);
+ // load core styles
+ $files[DOKU_INC.'lib/styles/'.$mediatype.'.css'] = DOKU_BASE.'lib/styles/';
+ // load plugin styles
+ $files = array_merge($files, css_pluginstyles($mediatype));
+ // load template styles
+ if (isset($tplstyles[$mediatype])) {
+ $files = array_merge($files, $tplstyles[$mediatype]);
+ }
+ // if old 'default' userstyle setting exists, make it 'screen' userstyle for backwards compatibility
+ if (isset($config_cascade['userstyle']['default'])) {
+ $config_cascade['userstyle']['screen'] = $config_cascade['userstyle']['default'];
+ }
+ // load user styles
+ if(isset($config_cascade['userstyle'][$mediatype])){
+ $files[$config_cascade['userstyle'][$mediatype]] = DOKU_BASE;
+ }
+ // load rtl styles
+ // @todo: this currently adds the rtl styles only to the 'screen' media type
+ // but 'print' and 'all' should also be supported
+ if ($mediatype=='screen') {
if($lang['direction'] == 'rtl'){
if (isset($tplstyles['rtl'])) $files = array_merge($files, $tplstyles['rtl']);
}
- if(isset($config_cascade['userstyle']['default'])){
- $files[$config_cascade['userstyle']['default']] = DOKU_BASE;
- }
}
// check cache age & handle conditional request
@@ -123,6 +125,9 @@ function css_out(){
// apply style replacements
$css = css_applystyle($css,$tplinc);
+ // place all @import statements at the top of the file
+ $css = css_moveimports($css);
+
// compress whitespace and comments
if($conf['compress']){
$css = css_compress($css);
@@ -199,7 +204,7 @@ function css_interwiki(){
// default style
echo 'a.interwiki {';
echo ' background: transparent url('.DOKU_BASE.'lib/images/interwiki.png) 0px 1px no-repeat;';
- echo ' padding-left: 16px;';
+ echo ' padding: 1px 0px 1px 16px;';
echo '}';
// additional styles when icon available
@@ -264,7 +269,8 @@ function css_loadfile($file,$location=''){
$css = io_readFile($file);
if(!$location) return $css;
- $css = preg_replace('#(url\([ \'"]*)((?!/|http://|https://| |\'|"))#','\\1'.$location.'\\3',$css);
+ $css = preg_replace('#(url\([ \'"]*)(?!/|http://|https://| |\'|")#','\\1'.$location,$css);
+ $css = preg_replace('#(@import\s+[\'"])(?!/|http://|https://)#', '\\1'.$location, $css);
return $css;
}
@@ -274,20 +280,15 @@ function css_loadfile($file,$location=''){
*
* @author Andreas Gohr <andi@splitbrain.org>
*/
-function css_pluginstyles($mode='screen'){
+function css_pluginstyles($mediatype='screen'){
global $lang;
$list = array();
$plugins = plugin_list();
foreach ($plugins as $p){
- if($mode == 'all'){
- $list[DOKU_PLUGIN."$p/all.css"] = DOKU_BASE."lib/plugins/$p/";
- }elseif($mode == 'print'){
- $list[DOKU_PLUGIN."$p/print.css"] = DOKU_BASE."lib/plugins/$p/";
- }elseif($mode == 'feed'){
- $list[DOKU_PLUGIN."$p/feed.css"] = DOKU_BASE."lib/plugins/$p/";
- }else{
+ $list[DOKU_PLUGIN."$p/$mediatype.css"] = DOKU_BASE."lib/plugins/$p/";
+ // alternative for screen.css
+ if ($mediatype=='screen') {
$list[DOKU_PLUGIN."$p/style.css"] = DOKU_BASE."lib/plugins/$p/";
- $list[DOKU_PLUGIN."$p/screen.css"] = DOKU_BASE."lib/plugins/$p/";
}
if($lang['direction'] == 'rtl'){
$list[DOKU_PLUGIN."$p/rtl.css"] = DOKU_BASE."lib/plugins/$p/";
@@ -297,6 +298,29 @@ function css_pluginstyles($mode='screen'){
}
/**
+ * Move all @import statements in a combined stylesheet to the top so they
+ * aren't ignored by the browser.
+ *
+ * @author Gabriel Birke <birke@d-scribe.de>
+ */
+function css_moveimports($css)
+{
+ if(!preg_match_all('/@import\s+(?:url\([^)]+\)|"[^"]+")\s*[^;]*;\s*/', $css, $matches, PREG_OFFSET_CAPTURE)) {
+ return $css;
+ }
+ $newCss = "";
+ $imports = "";
+ $offset = 0;
+ foreach($matches[0] as $match) {
+ $newCss .= substr($css, $offset, $match[1] - $offset);
+ $imports .= $match[0];
+ $offset = $match[1] + strlen($match[0]);
+ }
+ $newCss .= substr($css, $offset);
+ return $imports.$newCss;
+}
+
+/**
* Very simple CSS optimizer
*
* @author Andreas Gohr <andi@splitbrain.org>
@@ -330,4 +354,4 @@ function css_comment_cb($matches){
return $matches[0];
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/exe/fetch.php b/lib/exe/fetch.php
index 680fd9ae4..3ad4f1937 100644
--- a/lib/exe/fetch.php
+++ b/lib/exe/fetch.php
@@ -198,4 +198,4 @@ function calc_cache($cache){
return -1; //cache endless
}
-//Setup VIM: ex: et ts=2 enc=utf-8 :
+//Setup VIM: ex: et ts=2 :
diff --git a/lib/exe/indexer.php b/lib/exe/indexer.php
index f8e2f7981..95e2af05b 100644
--- a/lib/exe/indexer.php
+++ b/lib/exe/indexer.php
@@ -11,9 +11,6 @@ require_once(DOKU_INC.'inc/init.php');
session_write_close(); //close session
if(!defined('NL')) define('NL',"\n");
-// Version tag used to force rebuild on upgrade
-define('INDEXER_VERSION', 2);
-
// keep running after browser closes connection
@ignore_user_abort(true);
@@ -26,14 +23,14 @@ if(!$defer){
$ID = cleanID($_REQUEST['id']);
// Catch any possible output (e.g. errors)
-if(!isset($_REQUEST['debug'])) ob_start();
+$output = isset($_REQUEST['debug']) && $conf['allowdebug'];
+if(!$output) ob_start();
// run one of the jobs
$tmp = array(); // No event data
$evt = new Doku_Event('INDEXER_TASKS_RUN', $tmp);
if ($evt->advise_before()) {
runIndexer() or
- metaUpdate() or
runSitemapper() or
sendDigest() or
runTrimRecentChanges() or
@@ -42,7 +39,7 @@ if ($evt->advise_before()) {
}
if($defer) sendGIF();
-if(!isset($_REQUEST['debug'])) ob_end_clean();
+if(!$output) ob_end_clean();
exit;
// --------------------------------------------------------------------
@@ -136,90 +133,8 @@ function runIndexer(){
if(!$ID) return false;
- // check if indexing needed
- $idxtag = metaFN($ID,'.indexed');
- if(@file_exists($idxtag)){
- if(io_readFile($idxtag) >= INDEXER_VERSION){
- $last = @filemtime($idxtag);
- if($last > @filemtime(wikiFN($ID))){
- print "runIndexer(): index for $ID up to date".NL;
- return false;
- }
- }
- }
-
- // try to aquire a lock
- $lock = $conf['lockdir'].'/_indexer.lock';
- while(!@mkdir($lock,$conf['dmode'])){
- usleep(50);
- if(time()-@filemtime($lock) > 60*5){
- // looks like a stale lock - remove it
- @rmdir($lock);
- print "runIndexer(): stale lock removed".NL;
- }else{
- print "runIndexer(): indexer locked".NL;
- return false;
- }
- }
- if($conf['dperm']) chmod($lock, $conf['dperm']);
-
- // upgrade to version 2
- if (!@file_exists($conf['indexdir'].'/pageword.idx'))
- idx_upgradePageWords();
-
// do the work
- idx_addPage($ID);
-
- // we're finished - save and free lock
- io_saveFile(metaFN($ID,'.indexed'),INDEXER_VERSION);
- @rmdir($lock);
- print "runIndexer(): finished".NL;
- return true;
-}
-
-/**
- * Will render the metadata for the page if not exists yet
- *
- * This makes sure pages which are created from outside DokuWiki will
- * gain their data when viewed for the first time.
- */
-function metaUpdate(){
- global $ID;
- print "metaUpdate(): started".NL;
-
- if(!$ID) return false;
- $file = metaFN($ID, '.meta');
- echo "meta file: $file".NL;
-
- // rendering needed?
- if (@file_exists($file)) return false;
- if (!@file_exists(wikiFN($ID))) return false;
-
- global $conf;
-
- // gather some additional info from changelog
- $info = io_grep($conf['changelog'],
- '/^(\d+)\t(\d+\.\d+\.\d+\.\d+)\t'.preg_quote($ID,'/').'\t([^\t]+)\t([^\t\n]+)/',
- 0,true);
-
- $meta = array();
- if(!empty($info)){
- $meta['date']['created'] = $info[0][1];
- foreach($info as $item){
- if($item[4] != '*'){
- $meta['date']['modified'] = $item[1];
- if($item[3]){
- $meta['contributor'][$item[3]] = $item[3];
- }
- }
- }
- }
-
- $meta = p_render_metadata($ID, $meta);
- io_saveFile($file, serialize($meta));
-
- echo "metaUpdate(): finished".NL;
- return true;
+ return idx_addPage($ID, true);
}
/**
@@ -232,88 +147,10 @@ function metaUpdate(){
* @link https://www.google.com/webmasters/sitemaps/docs/en/about.html
*/
function runSitemapper(){
- global $conf;
print "runSitemapper(): started".NL;
- if(!$conf['sitemap']) return false;
-
- if($conf['compression'] == 'bz2' || $conf['compression'] == 'gz'){
- $sitemap = 'sitemap.xml.gz';
- }else{
- $sitemap = 'sitemap.xml';
- }
- print "runSitemapper(): using $sitemap".NL;
-
- if(@file_exists(DOKU_INC.$sitemap)){
- if(!is_writable(DOKU_INC.$sitemap)) return false;
- }else{
- if(!is_writable(DOKU_INC)) return false;
- }
-
- if(@filesize(DOKU_INC.$sitemap) &&
- @filemtime(DOKU_INC.$sitemap) > (time()-($conf['sitemap']*60*60*24))){
- print 'runSitemapper(): Sitemap up to date'.NL;
- return false;
- }
-
- $pages = idx_getIndex('page', '');
- print 'runSitemapper(): creating sitemap using '.count($pages).' pages'.NL;
-
- // build the sitemap
- ob_start();
- print '<?xml version="1.0" encoding="UTF-8"?>'.NL;
- print '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'.NL;
- foreach($pages as $id){
- $id = trim($id);
- $file = wikiFN($id);
-
- //skip hidden, non existing and restricted files
- if(isHiddenPage($id)) continue;
- $date = @filemtime($file);
- if(!$date) continue;
- if(auth_aclcheck($id,'','') < AUTH_READ) continue;
-
- print ' <url>'.NL;
- print ' <loc>'.wl($id,'',true).'</loc>'.NL;
- print ' <lastmod>'.date_iso8601($date).'</lastmod>'.NL;
- print ' </url>'.NL;
- }
- print '</urlset>'.NL;
- $data = ob_get_contents();
- ob_end_clean();
-
- //save the new sitemap
- io_saveFile(DOKU_INC.$sitemap,$data);
-
- //ping search engines...
- $http = new DokuHTTPClient();
- $http->timeout = 8;
-
- //ping google
- print 'runSitemapper(): pinging google'.NL;
- $url = 'http://www.google.com/webmasters/sitemaps/ping?sitemap=';
- $url .= urlencode(DOKU_URL.$sitemap);
- $resp = $http->get($url);
- if($http->error) print 'runSitemapper(): '.$http->error.NL;
- print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
-
- //ping yahoo
- print 'runSitemapper(): pinging yahoo'.NL;
- $url = 'http://search.yahooapis.com/SiteExplorerService/V1/updateNotification?appid=dokuwiki&url=';
- $url .= urlencode(DOKU_URL.$sitemap);
- $resp = $http->get($url);
- if($http->error) print 'runSitemapper(): '.$http->error.NL;
- print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
-
- //ping microsoft
- print 'runSitemapper(): pinging microsoft'.NL;
- $url = 'http://www.bing.com/webmaster/ping.aspx?siteMap=';
- $url .= urlencode(DOKU_URL.$sitemap);
- $resp = $http->get($url);
- if($http->error) print 'runSitemapper(): '.$http->error.NL;
- print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
-
+ $result = Sitemapper::generate() && Sitemapper::pingSearchEngines();
print 'runSitemapper(): finished'.NL;
- return true;
+ return $result;
}
/**
@@ -409,21 +246,6 @@ function sendDigest() {
}
/**
- * Formats a timestamp as ISO 8601 date
- *
- * @author <ungu at terong dot com>
- * @link http://www.php.net/manual/en/function.date.php#54072
- */
-function date_iso8601($int_date) {
- //$int_date: current date in UNIX timestamp
- $date_mod = date('Y-m-d\TH:i:s', $int_date);
- $pre_timezone = date('O', $int_date);
- $time_zone = substr($pre_timezone, 0, 3).":".substr($pre_timezone, 3, 2);
- $date_mod .= $time_zone;
- return $date_mod;
-}
-
-/**
* Just send a 1x1 pixel blank gif to the browser
*
* @author Andreas Gohr <andi@splitbrain.org>
@@ -444,6 +266,6 @@ function sendGIF(){
// Thinks it's got the whole image
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
// No trailing PHP closing tag - no output please!
// See Note at http://www.php.net/manual/en/language.basic-syntax.instruction-separation.php
diff --git a/lib/exe/js.php b/lib/exe/js.php
index 59d1ded2c..f953aae9e 100644
--- a/lib/exe/js.php
+++ b/lib/exe/js.php
@@ -57,10 +57,11 @@ function js_out(){
DOKU_INC.'lib/scripts/textselection.js',
DOKU_INC.'lib/scripts/toolbar.js',
DOKU_INC.'lib/scripts/edit.js',
+ DOKU_INC.'lib/scripts/locktimer.js',
DOKU_INC.'lib/scripts/linkwiz.js',
DOKU_INC.'lib/scripts/media.js',
DOKU_INC.'lib/scripts/subscriptions.js',
- DOKU_INC.'lib/scripts/hotkeys.js',
+# disabled for FS#1958 DOKU_INC.'lib/scripts/hotkeys.js',
DOKU_TPLINC.'script.js',
);
@@ -126,7 +127,7 @@ function js_out(){
js_runonstart('scrollToMarker()');
js_runonstart('focusMarker()');
// init hotkeys - must have been done after init of toolbar
- js_runonstart('initializeHotkeys()');
+# disabled for FS#1958 js_runonstart('initializeHotkeys()');
// end output buffering and get contents
$js = ob_get_contents();
@@ -405,4 +406,4 @@ function js_compress($s){
return trim($result);
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/exe/mediamanager.php b/lib/exe/mediamanager.php
index c79a25c08..02fde5a8d 100644
--- a/lib/exe/mediamanager.php
+++ b/lib/exe/mediamanager.php
@@ -82,18 +82,24 @@
// handle deletion
if($DEL) {
- $INUSE = media_inuse($DEL);
- if(!$INUSE) {
- if(media_delete($DEL,$AUTH)) {
- msg(sprintf($lang['deletesucc'],noNS($DEL)),1);
- } else {
- msg(sprintf($lang['deletefail'],noNS($DEL)),-1);
+ $res = 0;
+ if(checkSecurityToken()) {
+ $res = media_delete($DEL,$AUTH);
+ }
+ if ($res & DOKU_MEDIA_DELETED) {
+ $msg = sprintf($lang['deletesucc'], noNS($DEL));
+ if ($res & DOKU_MEDIA_EMPTY_NS) {
+ // current namespace was removed. redirecting to root ns passing msg along
+ send_redirect(DOKU_URL.'lib/exe/mediamanager.php?msg1='.
+ rawurlencode($msg).'&edid='.$_REQUEST['edid']);
}
- } else {
+ msg($msg,1);
+ } elseif ($res & DOKU_MEDIA_INUSE) {
if(!$conf['refshow']) {
- unset($INUSE);
msg(sprintf($lang['mediainuse'],noNS($DEL)),0);
}
+ } else {
+ msg(sprintf($lang['deletefail'],noNS($DEL)),-1);
}
}
diff --git a/lib/exe/opensearch.php b/lib/exe/opensearch.php
index f16b4f681..03a1632c4 100644
--- a/lib/exe/opensearch.php
+++ b/lib/exe/opensearch.php
@@ -35,4 +35,4 @@ echo ' <Url type="application/x-suggestions+json" template="'.
DOKU_URL.'lib/exe/ajax.php?call=suggestions&amp;q={searchTerms}" />'.NL;
echo '</OpenSearchDescription>'.NL;
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/exe/xmlrpc.php b/lib/exe/xmlrpc.php
index f06792361..108dd8fd1 100644
--- a/lib/exe/xmlrpc.php
+++ b/lib/exe/xmlrpc.php
@@ -1,13 +1,13 @@
<?php
if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../');
-// fix when '<?xml' isn't on the very first line
+// fix when '< ?xml' isn't on the very first line
if(isset($HTTP_RAW_POST_DATA)) $HTTP_RAW_POST_DATA = trim($HTTP_RAW_POST_DATA);
/**
* Increased whenever the API is changed
*/
-define('DOKU_XMLRPC_API_VERSION',4);
+define('DOKU_XMLRPC_API_VERSION',5);
require_once(DOKU_INC.'inc/init.php');
session_write_close(); //close session
@@ -143,6 +143,13 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
true
);
+ $this->addCallback(
+ 'dokuwiki.appendPage',
+ 'this:appendPage',
+ array('int', 'string', 'string', 'struct'),
+ 'Append text to a wiki page.'
+ );
+
/* Wiki API v2 http://www.jspwiki.org/wiki/WikiRPCInterface2 */
$this->addCallback(
'wiki.getRPCVersionSupported',
@@ -289,6 +296,7 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* Return a raw wiki page
*/
function rawPage($id,$rev=''){
+ $id = cleanID($id);
if(auth_quickaclcheck($id) < AUTH_READ){
return new IXR_Error(1, 'You are not allowed to read this page');
}
@@ -344,6 +352,7 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* Return a wiki page rendered to html
*/
function htmlPage($id,$rev=''){
+ $id = cleanID($id);
if(auth_quickaclcheck($id) < AUTH_READ){
return new IXR_Error(1, 'You are not allowed to read this page');
}
@@ -355,9 +364,8 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
*/
function listPages(){
$list = array();
- $pages = array_filter(array_filter(idx_getIndex('page', ''),
- 'isVisiblePage'),
- 'page_exists');
+ $pages = idx_get_indexer()->getPages();
+ $pages = array_filter(array_filter($pages,'isVisiblePage'),'page_exists');
foreach(array_keys($pages) as $idx) {
$perm = auth_quickaclcheck($pages[$idx]);
@@ -481,6 +489,7 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* Return some basic data about a page
*/
function pageInfo($id,$rev=''){
+ $id = cleanID($id);
if(auth_quickaclcheck($id) < AUTH_READ){
return new IXR_Error(1, 'You are not allowed to read this page');
}
@@ -552,29 +561,20 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
unlock($id);
// run the indexer if page wasn't indexed yet
- if(!@file_exists(metaFN($id, '.indexed'))) {
- // try to aquire a lock
- $lock = $conf['lockdir'].'/_indexer.lock';
- while(!@mkdir($lock,$conf['dmode'])){
- usleep(50);
- if(time()-@filemtime($lock) > 60*5){
- // looks like a stale lock - remove it
- @rmdir($lock);
- }else{
- return false;
- }
- }
- if($conf['dperm']) chmod($lock, $conf['dperm']);
+ idx_addPage($id);
- // do the work
- idx_addPage($id);
+ return 0;
+ }
- // we're finished - save and free lock
- io_saveFile(metaFN($id,'.indexed'),INDEXER_VERSION);
- @rmdir($lock);
+ /**
+ * Appends text to a wiki page.
+ */
+ function appendPage($id, $text, $params) {
+ $currentpage = $this->rawPage($id);
+ if (!is_string($currentpage)) {
+ return $currentpage;
}
-
- return 0;
+ return $this->putPage($id, $currentpage.$text, $params);
}
/**
@@ -583,64 +583,27 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* Michael Klier <chi@chimeric.de>
*/
function putAttachment($id, $file, $params) {
- global $conf;
- global $lang;
-
+ $id = cleanID($id);
$auth = auth_quickaclcheck(getNS($id).':*');
- if($auth >= AUTH_UPLOAD) {
- if(!isset($id)) {
- return new IXR_ERROR(1, 'Filename not given.');
- }
-
- $ftmp = $conf['tmpdir'] . '/' . md5($id.clientIP());
- // save temporary file
- @unlink($ftmp);
- $buff = base64_decode($file);
- io_saveFile($ftmp, $buff);
+ if(!isset($id)) {
+ return new IXR_ERROR(1, 'Filename not given.');
+ }
- // get filename
- list($iext, $imime,$dl) = mimetype($id);
- $id = cleanID($id);
- $fn = mediaFN($id);
-
- // get filetype regexp
- $types = array_keys(getMimeTypes());
- $types = array_map(create_function('$q','return preg_quote($q,"/");'),$types);
- $regex = join('|',$types);
-
- // because a temp file was created already
- if(preg_match('/\.('.$regex.')$/i',$fn)) {
- //check for overwrite
- $overwrite = @file_exists($fn);
- if($overwrite && (!$params['ow'] || $auth < AUTH_DELETE)) {
- return new IXR_ERROR(1, $lang['uploadexist'].'1');
- }
- // check for valid content
- $ok = media_contentcheck($ftmp, $imime);
- if($ok == -1) {
- return new IXR_ERROR(1, sprintf($lang['uploadexist'].'2', ".$iext"));
- } elseif($ok == -2) {
- return new IXR_ERROR(1, $lang['uploadspam']);
- } elseif($ok == -3) {
- return new IXR_ERROR(1, $lang['uploadxss']);
- }
+ global $conf;
- // prepare event data
- $data[0] = $ftmp;
- $data[1] = $fn;
- $data[2] = $id;
- $data[3] = $imime;
- $data[4] = $overwrite;
+ $ftmp = $conf['tmpdir'] . '/' . md5($id.clientIP());
- // trigger event
- return trigger_event('MEDIA_UPLOAD_FINISH', $data, array($this, '_media_upload_action'), true);
+ // save temporary file
+ @unlink($ftmp);
+ $buff = base64_decode($file);
+ io_saveFile($ftmp, $buff);
- } else {
- return new IXR_ERROR(1, $lang['uploadwrong']);
- }
+ $res = media_save(array('name' => $ftmp), $id, $params['ow'], $auth, 'rename');
+ if (is_array($res)) {
+ return new IXR_ERROR(-$res[1], $res[0]);
} else {
- return new IXR_ERROR(1, "You don't have permissions to upload files.");
+ return $res;
}
}
@@ -650,56 +613,17 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* @author Gina Haeussge <osd@foosel.net>
*/
function deleteAttachment($id){
+ $id = cleanID($id);
$auth = auth_quickaclcheck(getNS($id).':*');
- if($auth < AUTH_DELETE) return new IXR_ERROR(1, "You don't have permissions to delete files.");
- global $conf;
- global $lang;
-
- // check for references if needed
- $mediareferences = array();
- if($conf['refcheck']){
- $mediareferences = ft_mediause($id,$conf['refshow']);
- }
-
- if(!count($mediareferences)){
- $file = mediaFN($id);
- if(@unlink($file)){
- addMediaLogEntry(time(), $id, DOKU_CHANGE_TYPE_DELETE);
- io_sweepNS($id,'mediadir');
- return 0;
- }
- //something went wrong
- return new IXR_ERROR(1, 'Could not delete file');
- } else {
+ $res = media_delete($id, $auth);
+ if ($res & DOKU_MEDIA_DELETED) {
+ return 0;
+ } elseif ($res & DOKU_MEDIA_NOT_AUTH) {
+ return new IXR_ERROR(1, "You don't have permissions to delete files.");
+ } elseif ($res & DOKU_MEDIA_INUSE) {
return new IXR_ERROR(1, 'File is still referenced');
- }
- }
-
- /**
- * Moves the temporary file to its final destination.
- *
- * Michael Klier <chi@chimeric.de>
- */
- function _media_upload_action($data) {
- global $conf;
-
- if(is_array($data) && count($data)===5) {
- io_createNamespace($data[2], 'media');
- if(rename($data[0], $data[1])) {
- chmod($data[1], $conf['fmode']);
- media_notify($data[2], $data[1], $data[3]);
- // add a log entry to the media changelog
- if ($data[4]) {
- addMediaLogEntry(time(), $data[2], DOKU_CHANGE_TYPE_EDIT);
- } else {
- addMediaLogEntry(time(), $data[2], DOKU_CHANGE_TYPE_CREATE);
- }
- return $data[2];
- } else {
- return new IXR_ERROR(1, 'Upload failed.');
- }
} else {
- return new IXR_ERROR(1, 'Upload failed.');
+ return new IXR_ERROR(1, 'Could not delete file');
}
}
@@ -707,6 +631,7 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* Returns the permissions of a given wiki page
*/
function aclCheck($id) {
+ $id = cleanID($id);
return auth_quickaclcheck($id);
}
@@ -716,13 +641,14 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* @author Michael Klier <chi@chimeric.de>
*/
function listLinks($id) {
+ $id = cleanID($id);
if(auth_quickaclcheck($id) < AUTH_READ){
return new IXR_Error(1, 'You are not allowed to read this page');
}
$links = array();
// resolve page instructions
- $ins = p_cached_instructions(wikiFN(cleanID($id)));
+ $ins = p_cached_instructions(wikiFN($id));
// instantiate new Renderer - needed for interwiki links
include(DOKU_INC.'inc/parser/xhtml.php');
@@ -830,6 +756,10 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
* @author Michael Klier <chi@chimeric.de>
*/
function pageVersions($id, $first) {
+ $id = cleanID($id);
+ if(auth_quickaclcheck($id) < AUTH_READ){
+ return new IXR_Error(1, 'You are not allowed to read this page');
+ }
global $conf;
$versions = array();
@@ -905,7 +835,8 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
$unlockfail = array();
foreach((array) $set['lock'] as $id){
- if(checklock($id)){
+ $id = cleanID($id);
+ if(auth_quickaclcheck($id) < AUTH_EDIT || checklock($id)){
$lockfail[] = $id;
}else{
lock($id);
@@ -914,10 +845,11 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
}
foreach((array) $set['unlock'] as $id){
- if(unlock($id)){
- $unlocked[] = $id;
- }else{
+ $id = cleanID($id);
+ if(auth_quickaclcheck($id) < AUTH_EDIT || !unlock($id)){
$unlockfail[] = $id;
+ }else{
+ $unlocked[] = $id;
}
}
@@ -950,4 +882,4 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
$server = new dokuwiki_xmlrpc_server();
-// vim:ts=4:sw=4:et:enc=utf-8:
+// vim:ts=4:sw=4:et:
diff --git a/lib/images/admin/acl.png b/lib/images/admin/acl.png
index 96fb4cd56..c8f610c12 100644
--- a/lib/images/admin/acl.png
+++ b/lib/images/admin/acl.png
Binary files differ
diff --git a/lib/images/admin/config.png b/lib/images/admin/config.png
index e4d376d85..3ec3923d1 100644
--- a/lib/images/admin/config.png
+++ b/lib/images/admin/config.png
Binary files differ
diff --git a/lib/images/admin/plugin.png b/lib/images/admin/plugin.png
index e2823bac7..6896a1365 100644
--- a/lib/images/admin/plugin.png
+++ b/lib/images/admin/plugin.png
Binary files differ
diff --git a/lib/images/admin/popularity.png b/lib/images/admin/popularity.png
index 4e22aaf0d..f7fe254f8 100644
--- a/lib/images/admin/popularity.png
+++ b/lib/images/admin/popularity.png
Binary files differ
diff --git a/lib/images/admin/revert.png b/lib/images/admin/revert.png
index 002d3a75b..76cc3e9bc 100644
--- a/lib/images/admin/revert.png
+++ b/lib/images/admin/revert.png
Binary files differ
diff --git a/lib/images/admin/usermanager.png b/lib/images/admin/usermanager.png
index c5c8dc6d6..e1edff2fc 100644
--- a/lib/images/admin/usermanager.png
+++ b/lib/images/admin/usermanager.png
Binary files differ
diff --git a/lib/images/close.png b/lib/images/close.png
index e1b498c14..4ccef0603 100644
--- a/lib/images/close.png
+++ b/lib/images/close.png
Binary files differ
diff --git a/lib/images/del.png b/lib/images/del.png
index a3260d718..e59ded55f 100644
--- a/lib/images/del.png
+++ b/lib/images/del.png
Binary files differ
diff --git a/lib/images/diff.png b/lib/images/diff.png
index 0b98d79ac..657b10999 100644
--- a/lib/images/diff.png
+++ b/lib/images/diff.png
Binary files differ
diff --git a/lib/images/error.png b/lib/images/error.png
index 8a1ba4c66..7bd84f7a3 100644
--- a/lib/images/error.png
+++ b/lib/images/error.png
Binary files differ
diff --git a/lib/images/fileicons/bz2.png b/lib/images/fileicons/bz2.png
index d48cae038..6ec2f98ef 100644
--- a/lib/images/fileicons/bz2.png
+++ b/lib/images/fileicons/bz2.png
Binary files differ
diff --git a/lib/images/fileicons/c.png b/lib/images/fileicons/c.png
index 9446afcb4..6f57337c7 100644
--- a/lib/images/fileicons/c.png
+++ b/lib/images/fileicons/c.png
Binary files differ
diff --git a/lib/images/fileicons/conf.png b/lib/images/fileicons/conf.png
index ddffe6fd1..20c20fa3d 100644
--- a/lib/images/fileicons/conf.png
+++ b/lib/images/fileicons/conf.png
Binary files differ
diff --git a/lib/images/fileicons/cpp.png b/lib/images/fileicons/cpp.png
index 2dc51b16d..6f2797da5 100644
--- a/lib/images/fileicons/cpp.png
+++ b/lib/images/fileicons/cpp.png
Binary files differ
diff --git a/lib/images/fileicons/cs.png b/lib/images/fileicons/cs.png
index d5db29ba5..d3afa112c 100644
--- a/lib/images/fileicons/cs.png
+++ b/lib/images/fileicons/cs.png
Binary files differ
diff --git a/lib/images/fileicons/csv.png b/lib/images/fileicons/csv.png
index 3a8835360..b604453c4 100644
--- a/lib/images/fileicons/csv.png
+++ b/lib/images/fileicons/csv.png
Binary files differ
diff --git a/lib/images/fileicons/deb.png b/lib/images/fileicons/deb.png
index 9229d8783..e61300de9 100644
--- a/lib/images/fileicons/deb.png
+++ b/lib/images/fileicons/deb.png
Binary files differ
diff --git a/lib/images/fileicons/doc.png b/lib/images/fileicons/doc.png
index 932567f8a..b48fdac89 100644
--- a/lib/images/fileicons/doc.png
+++ b/lib/images/fileicons/doc.png
Binary files differ
diff --git a/lib/images/fileicons/docx.png b/lib/images/fileicons/docx.png
index 932567f8a..b48fdac89 100644
--- a/lib/images/fileicons/docx.png
+++ b/lib/images/fileicons/docx.png
Binary files differ
diff --git a/lib/images/fileicons/file.png b/lib/images/fileicons/file.png
index 817014fa7..c1a7ef1b4 100644
--- a/lib/images/fileicons/file.png
+++ b/lib/images/fileicons/file.png
Binary files differ
diff --git a/lib/images/fileicons/gif.png b/lib/images/fileicons/gif.png
index b4c07a912..1d9dd562a 100644
--- a/lib/images/fileicons/gif.png
+++ b/lib/images/fileicons/gif.png
Binary files differ
diff --git a/lib/images/fileicons/gz.png b/lib/images/fileicons/gz.png
index 2426bd169..48f19596c 100644
--- a/lib/images/fileicons/gz.png
+++ b/lib/images/fileicons/gz.png
Binary files differ
diff --git a/lib/images/fileicons/htm.png b/lib/images/fileicons/htm.png
index 1a6812185..d45e4c19a 100644
--- a/lib/images/fileicons/htm.png
+++ b/lib/images/fileicons/htm.png
Binary files differ
diff --git a/lib/images/fileicons/html.png b/lib/images/fileicons/html.png
index 672cbce42..d45e4c19a 100644
--- a/lib/images/fileicons/html.png
+++ b/lib/images/fileicons/html.png
Binary files differ
diff --git a/lib/images/fileicons/jpeg.png b/lib/images/fileicons/jpeg.png
index aa4cc23a5..1d9dd562a 100644
--- a/lib/images/fileicons/jpeg.png
+++ b/lib/images/fileicons/jpeg.png
Binary files differ
diff --git a/lib/images/fileicons/jpg.png b/lib/images/fileicons/jpg.png
index 1fb6cc1fb..1d9dd562a 100644
--- a/lib/images/fileicons/jpg.png
+++ b/lib/images/fileicons/jpg.png
Binary files differ
diff --git a/lib/images/fileicons/lua.png b/lib/images/fileicons/lua.png
index 7c07d023f..dd72770bb 100644
--- a/lib/images/fileicons/lua.png
+++ b/lib/images/fileicons/lua.png
Binary files differ
diff --git a/lib/images/fileicons/mp3.png b/lib/images/fileicons/mp3.png
index 928705d7a..d5d3ec1e4 100644
--- a/lib/images/fileicons/mp3.png
+++ b/lib/images/fileicons/mp3.png
Binary files differ
diff --git a/lib/images/fileicons/odc.png b/lib/images/fileicons/odc.png
index 47f65c84d..4d6676c3a 100644
--- a/lib/images/fileicons/odc.png
+++ b/lib/images/fileicons/odc.png
Binary files differ
diff --git a/lib/images/fileicons/odf.png b/lib/images/fileicons/odf.png
index a2fbc5195..65c62ebbe 100644
--- a/lib/images/fileicons/odf.png
+++ b/lib/images/fileicons/odf.png
Binary files differ
diff --git a/lib/images/fileicons/odg.png b/lib/images/fileicons/odg.png
index 434f18262..a07216f4a 100644
--- a/lib/images/fileicons/odg.png
+++ b/lib/images/fileicons/odg.png
Binary files differ
diff --git a/lib/images/fileicons/odi.png b/lib/images/fileicons/odi.png
index 74f6303d3..a07216f4a 100644
--- a/lib/images/fileicons/odi.png
+++ b/lib/images/fileicons/odi.png
Binary files differ
diff --git a/lib/images/fileicons/odp.png b/lib/images/fileicons/odp.png
index a5c77f845..ed51fcaf1 100644
--- a/lib/images/fileicons/odp.png
+++ b/lib/images/fileicons/odp.png
Binary files differ
diff --git a/lib/images/fileicons/ods.png b/lib/images/fileicons/ods.png
index 2ab1273f0..4d6676c3a 100644
--- a/lib/images/fileicons/ods.png
+++ b/lib/images/fileicons/ods.png
Binary files differ
diff --git a/lib/images/fileicons/odt.png b/lib/images/fileicons/odt.png
index b0c21fc1f..67ef1a42d 100644
--- a/lib/images/fileicons/odt.png
+++ b/lib/images/fileicons/odt.png
Binary files differ
diff --git a/lib/images/fileicons/ogg.png b/lib/images/fileicons/ogg.png
index 62cea6aaa..0a21eae65 100644
--- a/lib/images/fileicons/ogg.png
+++ b/lib/images/fileicons/ogg.png
Binary files differ
diff --git a/lib/images/fileicons/pdf.png b/lib/images/fileicons/pdf.png
index 638066dea..f40f22826 100644
--- a/lib/images/fileicons/pdf.png
+++ b/lib/images/fileicons/pdf.png
Binary files differ
diff --git a/lib/images/fileicons/php.png b/lib/images/fileicons/php.png
index e735f875b..f81e405de 100644
--- a/lib/images/fileicons/php.png
+++ b/lib/images/fileicons/php.png
Binary files differ
diff --git a/lib/images/fileicons/pl.png b/lib/images/fileicons/pl.png
index 6ac381cd7..92f3f9754 100644
--- a/lib/images/fileicons/pl.png
+++ b/lib/images/fileicons/pl.png
Binary files differ
diff --git a/lib/images/fileicons/png.png b/lib/images/fileicons/png.png
index f0b5b00ee..1d9dd562a 100644
--- a/lib/images/fileicons/png.png
+++ b/lib/images/fileicons/png.png
Binary files differ
diff --git a/lib/images/fileicons/ppt.png b/lib/images/fileicons/ppt.png
index adaefc602..b7afb2266 100644
--- a/lib/images/fileicons/ppt.png
+++ b/lib/images/fileicons/ppt.png
Binary files differ
diff --git a/lib/images/fileicons/pptx.png b/lib/images/fileicons/pptx.png
index adaefc602..b7afb2266 100644
--- a/lib/images/fileicons/pptx.png
+++ b/lib/images/fileicons/pptx.png
Binary files differ
diff --git a/lib/images/fileicons/ps.png b/lib/images/fileicons/ps.png
index c51c763ab..78e3af8fb 100644
--- a/lib/images/fileicons/ps.png
+++ b/lib/images/fileicons/ps.png
Binary files differ
diff --git a/lib/images/fileicons/py.png b/lib/images/fileicons/py.png
index a21b8da49..15a727c54 100644
--- a/lib/images/fileicons/py.png
+++ b/lib/images/fileicons/py.png
Binary files differ
diff --git a/lib/images/fileicons/rar.png b/lib/images/fileicons/rar.png
index a6af4d1ca..c761a4f7f 100644
--- a/lib/images/fileicons/rar.png
+++ b/lib/images/fileicons/rar.png
Binary files differ
diff --git a/lib/images/fileicons/rb.png b/lib/images/fileicons/rb.png
index 45f448978..408f708a1 100644
--- a/lib/images/fileicons/rb.png
+++ b/lib/images/fileicons/rb.png
Binary files differ
diff --git a/lib/images/fileicons/rpm.png b/lib/images/fileicons/rpm.png
index 22212eafa..5cf727de0 100644
--- a/lib/images/fileicons/rpm.png
+++ b/lib/images/fileicons/rpm.png
Binary files differ
diff --git a/lib/images/fileicons/rtf.png b/lib/images/fileicons/rtf.png
index d8bada5fe..a1170af7f 100644
--- a/lib/images/fileicons/rtf.png
+++ b/lib/images/fileicons/rtf.png
Binary files differ
diff --git a/lib/images/fileicons/sql.png b/lib/images/fileicons/sql.png
index f60054a3a..13772b73c 100644
--- a/lib/images/fileicons/sql.png
+++ b/lib/images/fileicons/sql.png
Binary files differ
diff --git a/lib/images/fileicons/swf.png b/lib/images/fileicons/swf.png
index 0729ed020..ecc7309ad 100644
--- a/lib/images/fileicons/swf.png
+++ b/lib/images/fileicons/swf.png
Binary files differ
diff --git a/lib/images/fileicons/sxc.png b/lib/images/fileicons/sxc.png
index 419c183c1..4d6676c3a 100644
--- a/lib/images/fileicons/sxc.png
+++ b/lib/images/fileicons/sxc.png
Binary files differ
diff --git a/lib/images/fileicons/sxd.png b/lib/images/fileicons/sxd.png
index 5801bb23a..a07216f4a 100644
--- a/lib/images/fileicons/sxd.png
+++ b/lib/images/fileicons/sxd.png
Binary files differ
diff --git a/lib/images/fileicons/sxi.png b/lib/images/fileicons/sxi.png
index 2a94290d7..ed51fcaf1 100644
--- a/lib/images/fileicons/sxi.png
+++ b/lib/images/fileicons/sxi.png
Binary files differ
diff --git a/lib/images/fileicons/sxw.png b/lib/images/fileicons/sxw.png
index 6da97beb3..67ef1a42d 100644
--- a/lib/images/fileicons/sxw.png
+++ b/lib/images/fileicons/sxw.png
Binary files differ
diff --git a/lib/images/fileicons/tar.png b/lib/images/fileicons/tar.png
index 5a2f717fc..a28c86f2d 100644
--- a/lib/images/fileicons/tar.png
+++ b/lib/images/fileicons/tar.png
Binary files differ
diff --git a/lib/images/fileicons/tgz.png b/lib/images/fileicons/tgz.png
index 141acf564..48f19596c 100644
--- a/lib/images/fileicons/tgz.png
+++ b/lib/images/fileicons/tgz.png
Binary files differ
diff --git a/lib/images/fileicons/txt.png b/lib/images/fileicons/txt.png
index da20009c6..bb94949f6 100644
--- a/lib/images/fileicons/txt.png
+++ b/lib/images/fileicons/txt.png
Binary files differ
diff --git a/lib/images/fileicons/wav.png b/lib/images/fileicons/wav.png
index 79e80760e..46ff63f0f 100644
--- a/lib/images/fileicons/wav.png
+++ b/lib/images/fileicons/wav.png
Binary files differ
diff --git a/lib/images/fileicons/xls.png b/lib/images/fileicons/xls.png
index e8cd58dc0..24911b802 100644
--- a/lib/images/fileicons/xls.png
+++ b/lib/images/fileicons/xls.png
Binary files differ
diff --git a/lib/images/fileicons/xlsx.png b/lib/images/fileicons/xlsx.png
index e8cd58dc0..24911b802 100644
--- a/lib/images/fileicons/xlsx.png
+++ b/lib/images/fileicons/xlsx.png
Binary files differ
diff --git a/lib/images/fileicons/xml.png b/lib/images/fileicons/xml.png
index eb4632397..ae9831b34 100644
--- a/lib/images/fileicons/xml.png
+++ b/lib/images/fileicons/xml.png
Binary files differ
diff --git a/lib/images/fileicons/zip.png b/lib/images/fileicons/zip.png
index 999ffbe80..f4a10bf9c 100644
--- a/lib/images/fileicons/zip.png
+++ b/lib/images/fileicons/zip.png
Binary files differ
diff --git a/lib/images/history.png b/lib/images/history.png
index ef9e311d3..82a418d44 100644
--- a/lib/images/history.png
+++ b/lib/images/history.png
Binary files differ
diff --git a/lib/images/info.png b/lib/images/info.png
index a237c1782..121c7336d 100644
--- a/lib/images/info.png
+++ b/lib/images/info.png
Binary files differ
diff --git a/lib/images/interwiki.png b/lib/images/interwiki.png
index 73d6f8d39..f9c73d505 100644
--- a/lib/images/interwiki.png
+++ b/lib/images/interwiki.png
Binary files differ
diff --git a/lib/images/interwiki/callto.gif b/lib/images/interwiki/callto.gif
new file mode 100644
index 000000000..880e9d8e7
--- /dev/null
+++ b/lib/images/interwiki/callto.gif
Binary files differ
diff --git a/lib/images/interwiki/paypal.gif b/lib/images/interwiki/paypal.gif
new file mode 100644
index 000000000..4a063b4a5
--- /dev/null
+++ b/lib/images/interwiki/paypal.gif
Binary files differ
diff --git a/lib/images/interwiki/sb.gif b/lib/images/interwiki/sb.gif
index e272a29b7..8771b346d 100644
--- a/lib/images/interwiki/sb.gif
+++ b/lib/images/interwiki/sb.gif
Binary files differ
diff --git a/lib/images/interwiki/skype.png b/lib/images/interwiki/skype.png
new file mode 100644
index 000000000..c70216702
--- /dev/null
+++ b/lib/images/interwiki/skype.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by-nc-nd.png b/lib/images/license/badge/cc-by-nc-nd.png
index 49f272f82..3231da3a3 100644
--- a/lib/images/license/badge/cc-by-nc-nd.png
+++ b/lib/images/license/badge/cc-by-nc-nd.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by-nc-sa.png b/lib/images/license/badge/cc-by-nc-sa.png
index 0f2a0f107..6bcf6a11d 100644
--- a/lib/images/license/badge/cc-by-nc-sa.png
+++ b/lib/images/license/badge/cc-by-nc-sa.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by-nc.png b/lib/images/license/badge/cc-by-nc.png
index 5f9821470..6d646321f 100644
--- a/lib/images/license/badge/cc-by-nc.png
+++ b/lib/images/license/badge/cc-by-nc.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by-nd.png b/lib/images/license/badge/cc-by-nd.png
index 8f317035e..442353808 100644
--- a/lib/images/license/badge/cc-by-nd.png
+++ b/lib/images/license/badge/cc-by-nd.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by-sa.png b/lib/images/license/badge/cc-by-sa.png
index f0a944e0b..e9fb436af 100644
--- a/lib/images/license/badge/cc-by-sa.png
+++ b/lib/images/license/badge/cc-by-sa.png
Binary files differ
diff --git a/lib/images/license/badge/cc-by.png b/lib/images/license/badge/cc-by.png
index 822491edb..cdc1f58fa 100644
--- a/lib/images/license/badge/cc-by.png
+++ b/lib/images/license/badge/cc-by.png
Binary files differ
diff --git a/lib/images/license/badge/cc-zero.png b/lib/images/license/badge/cc-zero.png
index 8a0ef3e3b..fd3dff422 100644
--- a/lib/images/license/badge/cc-zero.png
+++ b/lib/images/license/badge/cc-zero.png
Binary files differ
diff --git a/lib/images/license/badge/cc.png b/lib/images/license/badge/cc.png
index a66f4d1a0..8ac73aa4e 100644
--- a/lib/images/license/badge/cc.png
+++ b/lib/images/license/badge/cc.png
Binary files differ
diff --git a/lib/images/license/badge/gnufdl.png b/lib/images/license/badge/gnufdl.png
index 1371aba88..e92910128 100644
--- a/lib/images/license/badge/gnufdl.png
+++ b/lib/images/license/badge/gnufdl.png
Binary files differ
diff --git a/lib/images/license/badge/publicdomain.png b/lib/images/license/badge/publicdomain.png
index cedc39c62..ea8eeb4e1 100644
--- a/lib/images/license/badge/publicdomain.png
+++ b/lib/images/license/badge/publicdomain.png
Binary files differ
diff --git a/lib/images/license/button/cc-by-nc-nd.png b/lib/images/license/button/cc-by-nc-nd.png
index b27ead2f6..e1344a954 100644
--- a/lib/images/license/button/cc-by-nc-nd.png
+++ b/lib/images/license/button/cc-by-nc-nd.png
Binary files differ
diff --git a/lib/images/license/button/cc-by-nc-sa.png b/lib/images/license/button/cc-by-nc-sa.png
index 1c54f994d..6855a7586 100644
--- a/lib/images/license/button/cc-by-nc-sa.png
+++ b/lib/images/license/button/cc-by-nc-sa.png
Binary files differ
diff --git a/lib/images/license/button/cc-by-nc.png b/lib/images/license/button/cc-by-nc.png
index 33c7b1fa4..0b4d97268 100644
--- a/lib/images/license/button/cc-by-nc.png
+++ b/lib/images/license/button/cc-by-nc.png
Binary files differ
diff --git a/lib/images/license/button/cc-by-nd.png b/lib/images/license/button/cc-by-nd.png
index 52073c043..cdd3da9cc 100644
--- a/lib/images/license/button/cc-by-nd.png
+++ b/lib/images/license/button/cc-by-nd.png
Binary files differ
diff --git a/lib/images/license/button/cc-by-sa.png b/lib/images/license/button/cc-by-sa.png
index 0b1880f91..c512da0c4 100644
--- a/lib/images/license/button/cc-by-sa.png
+++ b/lib/images/license/button/cc-by-sa.png
Binary files differ
diff --git a/lib/images/license/button/cc-by.png b/lib/images/license/button/cc-by.png
index 99d8efd35..9179e2f57 100644
--- a/lib/images/license/button/cc-by.png
+++ b/lib/images/license/button/cc-by.png
Binary files differ
diff --git a/lib/images/license/button/cc-zero.png b/lib/images/license/button/cc-zero.png
index fc99eff61..9243a8097 100644
--- a/lib/images/license/button/cc-zero.png
+++ b/lib/images/license/button/cc-zero.png
Binary files differ
diff --git a/lib/images/license/button/cc.png b/lib/images/license/button/cc.png
index adfa085bd..087115aa6 100644
--- a/lib/images/license/button/cc.png
+++ b/lib/images/license/button/cc.png
Binary files differ
diff --git a/lib/images/license/button/gnufdl.png b/lib/images/license/button/gnufdl.png
index cb815ac13..d26e95f77 100644
--- a/lib/images/license/button/gnufdl.png
+++ b/lib/images/license/button/gnufdl.png
Binary files differ
diff --git a/lib/images/license/button/publicdomain.png b/lib/images/license/button/publicdomain.png
index f78e73d02..1dcde15eb 100644
--- a/lib/images/license/button/publicdomain.png
+++ b/lib/images/license/button/publicdomain.png
Binary files differ
diff --git a/lib/images/magnifier.png b/lib/images/magnifier.png
index cf3d97f75..89febff10 100644
--- a/lib/images/magnifier.png
+++ b/lib/images/magnifier.png
Binary files differ
diff --git a/lib/images/media_align_center.png b/lib/images/media_align_center.png
index 3db90fc17..807f9d9a8 100644
--- a/lib/images/media_align_center.png
+++ b/lib/images/media_align_center.png
Binary files differ
diff --git a/lib/images/media_align_left.png b/lib/images/media_align_left.png
index cebbb1a9a..fa6cf33ca 100644
--- a/lib/images/media_align_left.png
+++ b/lib/images/media_align_left.png
Binary files differ
diff --git a/lib/images/media_align_noalign.png b/lib/images/media_align_noalign.png
index 74f34e5f1..263e090fe 100644
--- a/lib/images/media_align_noalign.png
+++ b/lib/images/media_align_noalign.png
Binary files differ
diff --git a/lib/images/media_align_right.png b/lib/images/media_align_right.png
index 5f54a4a49..33539dbdb 100644
--- a/lib/images/media_align_right.png
+++ b/lib/images/media_align_right.png
Binary files differ
diff --git a/lib/images/media_link_direct.png b/lib/images/media_link_direct.png
index 4bdb3541e..4350b803d 100644
--- a/lib/images/media_link_direct.png
+++ b/lib/images/media_link_direct.png
Binary files differ
diff --git a/lib/images/media_link_displaylnk.png b/lib/images/media_link_displaylnk.png
index 25eacb7c2..53927566a 100644
--- a/lib/images/media_link_displaylnk.png
+++ b/lib/images/media_link_displaylnk.png
Binary files differ
diff --git a/lib/images/media_link_lnk.png b/lib/images/media_link_lnk.png
index 1209164ca..5ff4ee182 100644
--- a/lib/images/media_link_lnk.png
+++ b/lib/images/media_link_lnk.png
Binary files differ
diff --git a/lib/images/media_link_nolnk.png b/lib/images/media_link_nolnk.png
index fc3c393ca..c9378c7fd 100644
--- a/lib/images/media_link_nolnk.png
+++ b/lib/images/media_link_nolnk.png
Binary files differ
diff --git a/lib/images/media_size_large.png b/lib/images/media_size_large.png
index e2fb548d9..012a418c3 100644
--- a/lib/images/media_size_large.png
+++ b/lib/images/media_size_large.png
Binary files differ
diff --git a/lib/images/media_size_medium.png b/lib/images/media_size_medium.png
index b33157256..1469f519f 100644
--- a/lib/images/media_size_medium.png
+++ b/lib/images/media_size_medium.png
Binary files differ
diff --git a/lib/images/media_size_original.png b/lib/images/media_size_original.png
index d179aa2db..f58d056aa 100644
--- a/lib/images/media_size_original.png
+++ b/lib/images/media_size_original.png
Binary files differ
diff --git a/lib/images/media_size_small.png b/lib/images/media_size_small.png
index 04efe7080..a0aafa4a7 100644
--- a/lib/images/media_size_small.png
+++ b/lib/images/media_size_small.png
Binary files differ
diff --git a/lib/images/multiupload.png b/lib/images/multiupload.png
index 1e8efa063..bc16c76d6 100644
--- a/lib/images/multiupload.png
+++ b/lib/images/multiupload.png
Binary files differ
diff --git a/lib/images/notify.png b/lib/images/notify.png
index 6e0015df4..c18ef1001 100644
--- a/lib/images/notify.png
+++ b/lib/images/notify.png
Binary files differ
diff --git a/lib/images/ns.png b/lib/images/ns.png
index da3c2a2d7..c35e832da 100644
--- a/lib/images/ns.png
+++ b/lib/images/ns.png
Binary files differ
diff --git a/lib/images/page.png b/lib/images/page.png
index 03ddd799f..b1b7ebe94 100644
--- a/lib/images/page.png
+++ b/lib/images/page.png
Binary files differ
diff --git a/lib/images/pencil.png b/lib/images/pencil.png
index 0bfecd50e..3ea754120 100644
--- a/lib/images/pencil.png
+++ b/lib/images/pencil.png
Binary files differ
diff --git a/lib/images/smileys/facepalm.gif b/lib/images/smileys/facepalm.gif
new file mode 100644
index 000000000..4ce005e63
--- /dev/null
+++ b/lib/images/smileys/facepalm.gif
Binary files differ
diff --git a/lib/images/success.png b/lib/images/success.png
index a5ae9f11b..9241adbb2 100644
--- a/lib/images/success.png
+++ b/lib/images/success.png
Binary files differ
diff --git a/lib/images/toolbar/bold.png b/lib/images/toolbar/bold.png
index 7ebe99ee9..1fc8a9cc4 100644
--- a/lib/images/toolbar/bold.png
+++ b/lib/images/toolbar/bold.png
Binary files differ
diff --git a/lib/images/toolbar/chars.png b/lib/images/toolbar/chars.png
index 3f3396aeb..bad37e503 100644
--- a/lib/images/toolbar/chars.png
+++ b/lib/images/toolbar/chars.png
Binary files differ
diff --git a/lib/images/toolbar/h.png b/lib/images/toolbar/h.png
index aae052462..6a48cbbc0 100644
--- a/lib/images/toolbar/h.png
+++ b/lib/images/toolbar/h.png
Binary files differ
diff --git a/lib/images/toolbar/h1.png b/lib/images/toolbar/h1.png
index 93dae935f..85bd06e6c 100644
--- a/lib/images/toolbar/h1.png
+++ b/lib/images/toolbar/h1.png
Binary files differ
diff --git a/lib/images/toolbar/h2.png b/lib/images/toolbar/h2.png
index f0eee3bd0..be2c60031 100644
--- a/lib/images/toolbar/h2.png
+++ b/lib/images/toolbar/h2.png
Binary files differ
diff --git a/lib/images/toolbar/h3.png b/lib/images/toolbar/h3.png
index 8cfd4c077..350da88b6 100644
--- a/lib/images/toolbar/h3.png
+++ b/lib/images/toolbar/h3.png
Binary files differ
diff --git a/lib/images/toolbar/h4.png b/lib/images/toolbar/h4.png
index 7b8f51a1b..bc1b7038f 100644
--- a/lib/images/toolbar/h4.png
+++ b/lib/images/toolbar/h4.png
Binary files differ
diff --git a/lib/images/toolbar/h5.png b/lib/images/toolbar/h5.png
index 44b00d9c8..b6c263dfb 100644
--- a/lib/images/toolbar/h5.png
+++ b/lib/images/toolbar/h5.png
Binary files differ
diff --git a/lib/images/toolbar/hequal.png b/lib/images/toolbar/hequal.png
index 8fc6b0d75..da4e921ff 100644
--- a/lib/images/toolbar/hequal.png
+++ b/lib/images/toolbar/hequal.png
Binary files differ
diff --git a/lib/images/toolbar/hminus.png b/lib/images/toolbar/hminus.png
index f9d67adcb..c00f70223 100644
--- a/lib/images/toolbar/hminus.png
+++ b/lib/images/toolbar/hminus.png
Binary files differ
diff --git a/lib/images/toolbar/hplus.png b/lib/images/toolbar/hplus.png
index 66f3d5e33..6124b5c33 100644
--- a/lib/images/toolbar/hplus.png
+++ b/lib/images/toolbar/hplus.png
Binary files differ
diff --git a/lib/images/toolbar/hr.png b/lib/images/toolbar/hr.png
index f86a8ec94..de3a8a55b 100644
--- a/lib/images/toolbar/hr.png
+++ b/lib/images/toolbar/hr.png
Binary files differ
diff --git a/lib/images/toolbar/image.png b/lib/images/toolbar/image.png
index 1aab5d7de..70b12fcc2 100644
--- a/lib/images/toolbar/image.png
+++ b/lib/images/toolbar/image.png
Binary files differ
diff --git a/lib/images/toolbar/italic.png b/lib/images/toolbar/italic.png
index 324e7c036..d69e66070 100644
--- a/lib/images/toolbar/italic.png
+++ b/lib/images/toolbar/italic.png
Binary files differ
diff --git a/lib/images/toolbar/link.png b/lib/images/toolbar/link.png
index 41e52c6ab..01105b0d3 100644
--- a/lib/images/toolbar/link.png
+++ b/lib/images/toolbar/link.png
Binary files differ
diff --git a/lib/images/toolbar/linkextern.png b/lib/images/toolbar/linkextern.png
index 75afd3dc2..acc0c6fc5 100644
--- a/lib/images/toolbar/linkextern.png
+++ b/lib/images/toolbar/linkextern.png
Binary files differ
diff --git a/lib/images/toolbar/mono.png b/lib/images/toolbar/mono.png
index 178cec9f2..b91ad2e0d 100644
--- a/lib/images/toolbar/mono.png
+++ b/lib/images/toolbar/mono.png
Binary files differ
diff --git a/lib/images/toolbar/ol.png b/lib/images/toolbar/ol.png
index 3162fa21d..186f1fad4 100644
--- a/lib/images/toolbar/ol.png
+++ b/lib/images/toolbar/ol.png
Binary files differ
diff --git a/lib/images/toolbar/sig.png b/lib/images/toolbar/sig.png
index ef997b7cd..72fdad0a0 100644
--- a/lib/images/toolbar/sig.png
+++ b/lib/images/toolbar/sig.png
Binary files differ
diff --git a/lib/images/toolbar/smiley.png b/lib/images/toolbar/smiley.png
index e92845cb4..85036c1a8 100644
--- a/lib/images/toolbar/smiley.png
+++ b/lib/images/toolbar/smiley.png
Binary files differ
diff --git a/lib/images/toolbar/strike.png b/lib/images/toolbar/strike.png
index 203aacc2b..e532d1f07 100644
--- a/lib/images/toolbar/strike.png
+++ b/lib/images/toolbar/strike.png
Binary files differ
diff --git a/lib/images/toolbar/ul.png b/lib/images/toolbar/ul.png
index 471171db4..008820722 100644
--- a/lib/images/toolbar/ul.png
+++ b/lib/images/toolbar/ul.png
Binary files differ
diff --git a/lib/images/toolbar/underline.png b/lib/images/toolbar/underline.png
index bf9665a68..fa271517c 100644
--- a/lib/images/toolbar/underline.png
+++ b/lib/images/toolbar/underline.png
Binary files differ
diff --git a/lib/images/trash.png b/lib/images/trash.png
index ebad933c8..efc97ba8f 100644
--- a/lib/images/trash.png
+++ b/lib/images/trash.png
Binary files differ
diff --git a/lib/images/up.png b/lib/images/up.png
index 557d5e6a9..27beb4445 100644
--- a/lib/images/up.png
+++ b/lib/images/up.png
Binary files differ
diff --git a/lib/plugins/acl/admin.php b/lib/plugins/acl/admin.php
index 84932f7ac..3e7bd8121 100644
--- a/lib/plugins/acl/admin.php
+++ b/lib/plugins/acl/admin.php
@@ -765,7 +765,7 @@ class admin_plugin_acl extends DokuWiki_Admin_Plugin {
//build code
$ret .= '<label for="pbox'.$label.'" title="'.$this->getLang('acl_perm'.$perm).'"'.$class.'>';
- $ret .= '<input '.html_attbuild($atts).' />&nbsp;';
+ $ret .= '<input '.buildAttributes($atts).' />&nbsp;';
$ret .= $this->getLang('acl_perm'.$perm);
$ret .= '</label>'.NL;
}
diff --git a/lib/plugins/acl/lang/bg/help.txt b/lib/plugins/acl/lang/bg/help.txt
index 23028cb35..2de453420 100644
--- a/lib/plugins/acl/lang/bg/help.txt
+++ b/lib/plugins/acl/lang/bg/help.txt
@@ -1,11 +1,11 @@
=== Помощ ===
-На тази страница можете да добавяте и премахвате разрешения за определяне на имена и страници във Вашето Wiki.
+От тук можете да добавяте и премахвате права за именни пространства и страници във вашето Wiki.
-Левият панел показва всички налични имена и страници.
+Левият панел показва всички налични именни пространства и страници.
-Формата по-горе ви позволява да видите и промените разрешенията на избрания потребител или група.
+Формата отгоре ви позволява да преглеждате и променяте правата на избран потребител или група.
-В таблицата по-долу са показани всички актуални правила за контрол на достъпа. Можете да я използвате за бързо изтриване или промяна на множество правила.
+В таблицата отдолу са показани всички актуални правила за контрол на достъпа. Можете да я ползвате за бързо изтриване или промяна на множество правила.
-Четене на [[doku>acl|ACL документацията]] може да ви помогне да разберете напълно как работи контрола на достъпа в DokuWiki. \ No newline at end of file
+За да разберете как работи контрола на достъпа в DokuWiki трябва да прочетете [[doku>acl|документацията относно ACL]]. \ No newline at end of file
diff --git a/lib/plugins/acl/lang/bg/lang.php b/lib/plugins/acl/lang/bg/lang.php
index 9facd4259..2b956deba 100644
--- a/lib/plugins/acl/lang/bg/lang.php
+++ b/lib/plugins/acl/lang/bg/lang.php
@@ -5,6 +5,7 @@
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author Nikolay Vladimirov <nikolay@vladimiroff.com>
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
$lang['admin_acl'] = 'Управление на списъците за достъп';
$lang['acl_group'] = 'Група';
@@ -13,15 +14,15 @@ $lang['acl_perms'] = 'Права за';
$lang['page'] = 'Страница';
$lang['namespace'] = 'Именно пространство';
$lang['btn_select'] = 'Избери';
-$lang['p_user_id'] = 'Потребителят <b class="acluser">%s</b> има в момента следните права за страницата <b class="aclpage">%s</b>: <i>%s</i>.';
-$lang['p_user_ns'] = 'Потребителят <b class="acluser">%s</b> има в момента следните права в именното пространство <b class="aclns">%s</b>: <i>%s</i>.';
-$lang['p_group_id'] = 'Членове на групата <b class="aclgroup">%s</b> имат в момента следните права за страницата <b class="aclpage">%s</b>: <i>%s</i>.';
-$lang['p_group_ns'] = 'Членове на групата <b class="aclgroup">%s</b> имат в момента следните права в именното пространство <b class="aclns">%s</b>: <i>%s</i>.';
-$lang['p_choose_id'] = 'Моля <b>въведете потребител или група</b> в полето горе, за да видите или промените правата за страницата <b class="aclpage">%s</b>.';
-$lang['p_choose_ns'] = 'Моля <b>въведете потребител или група</b> в полето горе, за да видите или промените правата за именното пространство <b class="aclns">%s</b>.';
-$lang['p_inherited'] = 'Забележка: Тези разрешения не са определени изрично, но са били наследени от други групи или именни пространства.';
-$lang['p_isadmin'] = 'Забележка: Избраните група или потребител притежават пълни права, според конфигурацията им.';
-$lang['p_include'] = 'Висши разрешения включват по-нисши такива. Създаване или премахване на разрешения се прилага само за именни пространства, не за страници.';
+$lang['p_user_id'] = 'Потребителят <b class="acluser">%s</b> в момента има следните права за страницата <b class="aclpage">%s</b>: <i>%s</i>.';
+$lang['p_user_ns'] = 'Потребителят <b class="acluser">%s</b> в момента има следните права за именното пространство <b class="aclns">%s</b>: <i>%s</i>.';
+$lang['p_group_id'] = 'Членовете на групата <b class="aclgroup">%s</b> в момента имат следните права за страницата <b class="aclpage">%s</b>: <i>%s</i>.';
+$lang['p_group_ns'] = 'Членовете на групата <b class="aclgroup">%s</b> в момента имат следните права за именното пространство <b class="aclns">%s</b>: <i>%s</i>.';
+$lang['p_choose_id'] = 'Моля, <b>въведете потребител или група</b> в полето отгоре, за да видите или промените правата за страницата <b class="aclpage">%s</b>.';
+$lang['p_choose_ns'] = 'Моля, <b>въведете потребител или група</b> в полето отгоре, за да видите или промените правата за именното пространство <b class="aclns">%s</b>.';
+$lang['p_inherited'] = 'Бележка: Тези разрешения не са зададени директно, а са наследени от други групи или именни пространства.';
+$lang['p_isadmin'] = 'Бележка: Избраната група или потребител има всички права, защото е определен за суперпотребител.';
+$lang['p_include'] = 'Висши права включват по-нисшите такива. Правата за създаване, качване и изтриване са приложими само за именни пространства, но не за страници.';
$lang['current'] = 'Текущи ACL права';
$lang['where'] = 'Страница/Именно постранство';
$lang['who'] = 'Потребител/Група';
@@ -32,5 +33,5 @@ $lang['acl_perm2'] = 'Редактиране';
$lang['acl_perm4'] = 'Създаване';
$lang['acl_perm8'] = 'Качване';
$lang['acl_perm16'] = 'Изтриване';
-$lang['acl_new'] = 'Добавяне на ново';
-$lang['acl_mod'] = 'Промяна на вписване';
+$lang['acl_new'] = 'Добавяне на право';
+$lang['acl_mod'] = 'Промяна на записа';
diff --git a/lib/plugins/acl/lang/de-informal/lang.php b/lib/plugins/acl/lang/de-informal/lang.php
index fdb6f5a89..e24584a55 100644
--- a/lib/plugins/acl/lang/de-informal/lang.php
+++ b/lib/plugins/acl/lang/de-informal/lang.php
@@ -6,6 +6,7 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['admin_acl'] = 'Zugriffskontrollsystem Management';
$lang['acl_group'] = 'Gruppe';
diff --git a/lib/plugins/acl/lang/de/lang.php b/lib/plugins/acl/lang/de/lang.php
index 0d30fe7a1..3c6bf8cf0 100644
--- a/lib/plugins/acl/lang/de/lang.php
+++ b/lib/plugins/acl/lang/de/lang.php
@@ -17,6 +17,8 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['admin_acl'] = 'Zugangsverwaltung';
$lang['acl_group'] = 'Gruppe';
diff --git a/lib/plugins/acl/lang/en/lang.php b/lib/plugins/acl/lang/en/lang.php
index 38ff20c88..779614d32 100644
--- a/lib/plugins/acl/lang/en/lang.php
+++ b/lib/plugins/acl/lang/en/lang.php
@@ -43,4 +43,4 @@ $lang['acl_perm8'] = 'Upload';
$lang['acl_perm16'] = 'Delete';
$lang['acl_new'] = 'Add new Entry';
$lang['acl_mod'] = 'Modify Entry';
-//Setup VIM: ex: et ts=2 enc=utf-8 :
+//Setup VIM: ex: et ts=2 :
diff --git a/lib/plugins/acl/lang/et/lang.php b/lib/plugins/acl/lang/et/lang.php
index e90d5eaa9..04ce0c08a 100644
--- a/lib/plugins/acl/lang/et/lang.php
+++ b/lib/plugins/acl/lang/et/lang.php
@@ -3,21 +3,19 @@
* Estonian language file
*
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
- * @author Oliver S6ro <seem.iges@mail.ee>
- * @author Aari Juhanson <aari@vmg.vil.ee>
- * @author Kaiko Kaur <kaiko@kultuur.edu.ee>
+ * @author Oliver S6ro <seem.iges@mail.ee>
+ * @author Aari Juhanson <aari@vmg.vil.ee>
+ * @author Kaiko Kaur <kaiko@kultuur.edu.ee>
+ * @author kristian.kankainen@kuu.la
*/
-
-$lang['admin_acl'] = 'Ligipääsukontrolli nimekirja haldamine';
-$lang['acl_group'] = 'Grupp';
-$lang['acl_user'] = 'Kasutaja';
-$lang['acl_perms'] = 'Lubatud';
-$lang['page'] = 'leht';
-$lang['namespace'] = 'alajaotus';
-
-$lang['acl_perm1'] = 'Lugemine';
-$lang['acl_perm2'] = 'Toimetamine';
-$lang['acl_perm4'] = 'Tekitamine';
-$lang['acl_perm8'] = 'Üles laadimine';
-$lang['acl_new'] = 'Uue kirje lisamine';
-//Setup VIM: ex: et ts=2 enc=utf-8 :
+$lang['admin_acl'] = 'Ligipääsukontrolli nimekirja haldamine';
+$lang['acl_group'] = 'Grupp';
+$lang['acl_user'] = 'Kasutaja';
+$lang['acl_perms'] = 'Lubatud';
+$lang['page'] = 'leht';
+$lang['namespace'] = 'alajaotus';
+$lang['acl_perm1'] = 'Lugemine';
+$lang['acl_perm2'] = 'Toimetamine';
+$lang['acl_perm4'] = 'Tekitamine';
+$lang['acl_perm8'] = 'Üles laadimine';
+$lang['acl_new'] = 'Uue kirje lisamine';
diff --git a/lib/plugins/acl/lang/fr/lang.php b/lib/plugins/acl/lang/fr/lang.php
index 63e529aab..36323a51f 100644
--- a/lib/plugins/acl/lang/fr/lang.php
+++ b/lib/plugins/acl/lang/fr/lang.php
@@ -20,6 +20,7 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
$lang['admin_acl'] = 'Gestion de la liste des contrôles d\'accès (ACL)';
$lang['acl_group'] = 'Groupe';
diff --git a/lib/plugins/acl/lang/he/lang.php b/lib/plugins/acl/lang/he/lang.php
index ac00730dd..91025f4b8 100644
--- a/lib/plugins/acl/lang/he/lang.php
+++ b/lib/plugins/acl/lang/he/lang.php
@@ -7,6 +7,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['admin_acl'] = 'ניהול רשימת בקרת גישות';
$lang['acl_group'] = 'קבוצה';
diff --git a/lib/plugins/acl/lang/hi/lang.php b/lib/plugins/acl/lang/hi/lang.php
index d8630a281..d6f78ffd6 100644
--- a/lib/plugins/acl/lang/hi/lang.php
+++ b/lib/plugins/acl/lang/hi/lang.php
@@ -3,4 +3,5 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
diff --git a/lib/plugins/acl/lang/it/lang.php b/lib/plugins/acl/lang/it/lang.php
index 89e421bbb..f789b979f 100644
--- a/lib/plugins/acl/lang/it/lang.php
+++ b/lib/plugins/acl/lang/it/lang.php
@@ -12,6 +12,7 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['admin_acl'] = 'Gestione Lista Controllo Accessi (ACL)';
$lang['acl_group'] = 'Gruppo';
diff --git a/lib/plugins/acl/lang/ko/lang.php b/lib/plugins/acl/lang/ko/lang.php
index 43a5ceeeb..6f4e991cb 100644
--- a/lib/plugins/acl/lang/ko/lang.php
+++ b/lib/plugins/acl/lang/ko/lang.php
@@ -10,6 +10,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['admin_acl'] = '접근 제어 목록 관리';
$lang['acl_group'] = '그룹';
diff --git a/lib/plugins/acl/lang/la/help.txt b/lib/plugins/acl/lang/la/help.txt
new file mode 100644
index 000000000..553884c30
--- /dev/null
+++ b/lib/plugins/acl/lang/la/help.txt
@@ -0,0 +1,11 @@
+=== Auxilium: ===
+
+Hic facultates generum paginarumque addere delereue potes.
+
+Tabella sinistra omnes paginas generaque ostendit.
+
+His campis mutare facultates electorum Sodalium Gregumque potes.
+
+In tabula omnes administrationis leges ostensae sunt. Delere quoque uel mutare plures leges potes.
+
+Si [[doku>acl|official documentation on ACL]] legas, maius auxilium in Vicem mutando habes. \ No newline at end of file
diff --git a/lib/plugins/acl/lang/la/lang.php b/lib/plugins/acl/lang/la/lang.php
new file mode 100644
index 000000000..941de1f79
--- /dev/null
+++ b/lib/plugins/acl/lang/la/lang.php
@@ -0,0 +1,34 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['admin_acl'] = 'Administratio Indicis Custodiae Aditus';
+$lang['acl_group'] = 'Grex';
+$lang['acl_user'] = 'Sodalis';
+$lang['acl_perms'] = 'Facultas:';
+$lang['page'] = 'Pagina';
+$lang['namespace'] = 'Genus';
+$lang['btn_select'] = 'eligere';
+$lang['p_user_id'] = 'Sodalis <b class="acluser">%s</b> nunc has facultates paginae "<b class="aclpage">%s</b> habes: <i>%s</i>.';
+$lang['p_user_ns'] = 'Sodalis <b class="acluser">%s</b> nunc has facultates generis "<b class="aclns">%s</b> habes: <i>%s</i>.';
+$lang['p_group_id'] = 'Socius\a gregis <b class="aclgroup">%s</b> nunc has facultates paginae "<b class="aclpage">%s</b> habes: <i>%s</i>.';
+$lang['p_group_ns'] = 'Socius\a gregis <b class="aclgroup">%s</b> nunc has facultates generis "<b class="aclns">%s</b> habes: <i>%s</i>.';
+$lang['p_choose_id'] = '<b>Sodalis grexue</b> in campo insere ut facultates paginae <b class="aclpage">%s</b> uideas.';
+$lang['p_choose_ns'] = '<b>Sodalis grexue</b> in campo insere ut facultates generis <b class="aclns">%s</b> uideas.';
+$lang['p_inherited'] = 'Caue: hae facultates et huic rei et aliis gregibus uel generibus legitimae sunt.';
+$lang['p_isadmin'] = 'Caue: electi greges semper plenum ius habent, eo quod ut magister\stra elegitur.';
+$lang['p_include'] = 'Maiores facultates minores includunt. Creandi, onerandi uel delendi facultates solum generibus, non paginis sunt.';
+$lang['current'] = 'Communes ICA leges';
+$lang['where'] = 'Pagina/Genus';
+$lang['who'] = 'Sodalis/Grex';
+$lang['perm'] = 'Facultates';
+$lang['acl_perm0'] = 'Nihil';
+$lang['acl_perm1'] = 'Legere';
+$lang['acl_perm2'] = 'Recensere';
+$lang['acl_perm4'] = 'Creare';
+$lang['acl_perm8'] = 'Onerare';
+$lang['acl_perm16'] = 'Delere';
+$lang['acl_new'] = 'Nouom addere';
+$lang['acl_mod'] = 'Nouom recensere';
diff --git a/lib/plugins/acl/lang/ru/help.txt b/lib/plugins/acl/lang/ru/help.txt
index a3c1b4f64..7807105a8 100644
--- a/lib/plugins/acl/lang/ru/help.txt
+++ b/lib/plugins/acl/lang/ru/help.txt
@@ -1,11 +1,7 @@
-=== Краткая справка: ===
+=== Краткая справка ===
-На этой странице вы можете добавить или удалить права доступа к пространствам имён и страницам вашей вики.
-
-На панели слева отображены доступные пространства имён и страницы.
-
-Форма выше позволяет вам просмотреть и изменить права доступа для выбранного пользователя или группы.
-
-Текущие права доступа отображены в таблице ниже. Вы можете использовать её для быстрого удаления или изменения правил.
-
-Прочтение [[doku>acl|официальной документации по ACL]] может помочь вам в полном понимании работы управления правами доступа в «ДокуВики».
+На этой странице вы можете добавить или удалить права доступа к пространствам имён и страницам своей вики.\\
+На панели слева отображены доступные пространства имён и страницы.\\
+Форма выше позволяет вам просмотреть и изменить права доступа для выбранного пользователя или группы.\\
+Текущие права доступа отображены в таблице ниже. Вы можете использовать её для быстрого удаления или изменения правил.\\
+Прочтение [[doku>acl|официальной документации по ACL]] может помочь вам в полном понимании работы управления правами доступа в «ДокуВики».
diff --git a/lib/plugins/acl/lang/ru/lang.php b/lib/plugins/acl/lang/ru/lang.php
index 0c02dfbb1..6d04dde21 100644
--- a/lib/plugins/acl/lang/ru/lang.php
+++ b/lib/plugins/acl/lang/ru/lang.php
@@ -13,13 +13,15 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['admin_acl'] = 'Управление списками контроля доступа';
$lang['acl_group'] = 'Группа';
$lang['acl_user'] = 'Пользователь';
$lang['acl_perms'] = 'Права доступа для';
$lang['page'] = 'Страница';
-$lang['namespace'] = 'Пространство имен';
+$lang['namespace'] = 'Пространство имён';
$lang['btn_select'] = 'Выбрать';
$lang['p_user_id'] = 'Сейчас пользователь <b class="acluser">%s</b> имеет следующие права на доступ к странице <b class="aclpage">%s</b>: <i>%s</i>.';
$lang['p_user_ns'] = 'Сейчас пользователь <b class="acluser">%s</b> имеет следующие права на доступ к пространству имён <b class="aclns">%s</b>: <i>%s</i>.';
diff --git a/lib/plugins/acl/lang/sl/help.txt b/lib/plugins/acl/lang/sl/help.txt
new file mode 100644
index 000000000..eada41c29
--- /dev/null
+++ b/lib/plugins/acl/lang/sl/help.txt
@@ -0,0 +1,11 @@
+=== Hitra pomo ===
+
+Na tej strani je mogoe dodajati, odstranjevati in spreminjati dovoljenja za delo z wiki stranmi in imenskimi prostori.
+
+Na veli strani so izpisani vsi imenski prostori in strani.
+
+Na obrazcu zgoraj je mogoe pregledovati in spreminjati dovoljenja za izbranega uporabnika ali skupino.
+
+V preglednici spodaj so prikazana vsa pravila nadzora. Ta je mogoe hitro spreminjati ali brisati.
+
+Ve podrobnosti o delovanju nadzora dostopa sistema DokuWiki je mogoe najti v [[doku>acl|uradni dokumentaciji ACL]].
diff --git a/lib/plugins/acl/lang/sl/lang.php b/lib/plugins/acl/lang/sl/lang.php
index 32141fbce..3fb391570 100644
--- a/lib/plugins/acl/lang/sl/lang.php
+++ b/lib/plugins/acl/lang/sl/lang.php
@@ -4,14 +4,30 @@
*
* @author Dejan Levec <webphp@gmail.com>
* @author Boštjan Seničar <senicar@gmail.com>
+ * @author Gregor Skumavc (grega.skumavc@gmail.com)
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
+$lang['admin_acl'] = 'Upravljanje dostopa';
$lang['acl_group'] = 'Skupina';
$lang['acl_user'] = 'Uporabnik';
$lang['acl_perms'] = 'Dovoljenja za';
$lang['page'] = 'Stran';
+$lang['namespace'] = 'Imenski prostor';
$lang['btn_select'] = 'Izberi';
+$lang['p_user_id'] = 'Uporabnik %s ima naslednja dovoljenja za stran %s: %s.';
+$lang['p_user_ns'] = 'Uporabnik %s ima naslednja dovoljenja za imenski prostor %s: %s.';
+$lang['p_group_id'] = 'Uporabniška skupina %s ima naslednja dovoljenja za stran %s: %s.';
+$lang['p_group_ns'] = 'Uporabniška skupina %s ima naslednja dovoljenja za imenski prostor %s: %s.';
+$lang['p_choose_id'] = 'Vnesite ime <b>uporabnika ali skupine</b> v zgornji obrazec za ogled ali urejanje dovoljenj za stran %s.';
+$lang['p_choose_ns'] = 'Vnesite ime <b>uporabnika ali skupine</b> v zgornji obrazec za ogled ali urejanje dovoljenj za imenski prostor %s.';
+$lang['p_inherited'] = 'Opomba: trenutna dovoljenja niso bila posebej določena, temveč so bila prevzeta iz drugih skupin ali višjih imenskih prostorov.';
+$lang['p_isadmin'] = 'Opomba: izbrana skupina ali uporabnik imajo vsa dovoljenja za spreminjanje, saj so določeni kot skrbniki sistema.';
+$lang['p_include'] = 'Višja dovoljenja vključujejo tudi nižja. ';
+$lang['current'] = 'Trenutna pravila dostopa';
+$lang['where'] = 'Stran / Imenski prostor';
$lang['who'] = 'Uporabnik/Skupina';
$lang['perm'] = 'Dovoljenja';
+$lang['acl_perm0'] = 'Nič';
$lang['acl_perm1'] = 'Preberi';
$lang['acl_perm2'] = 'Uredi';
$lang['acl_perm4'] = 'Ustvari';
diff --git a/lib/plugins/acl/lang/tr/lang.php b/lib/plugins/acl/lang/tr/lang.php
index 45fbe7489..de96d2906 100644
--- a/lib/plugins/acl/lang/tr/lang.php
+++ b/lib/plugins/acl/lang/tr/lang.php
@@ -4,11 +4,10 @@
*
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author Selim Farsakoğlu <farsakogluselim@yahoo.de>
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['admin_acl'] = 'Erişim Kontrol Listesi (ACL) Yönetimi';
$lang['acl_group'] = 'Grup';
diff --git a/lib/plugins/acl/lang/vi/lang.php b/lib/plugins/acl/lang/vi/lang.php
index 4458d806b..6237f79ba 100644
--- a/lib/plugins/acl/lang/vi/lang.php
+++ b/lib/plugins/acl/lang/vi/lang.php
@@ -18,4 +18,4 @@ $lang['acl_perm2'] = 'Biên soạn';
$lang['acl_perm4'] = 'Tạo';
$lang['acl_perm8'] = 'Tải lên';
$lang['acl_new'] = 'Thêm mục mới';
-//Setup VIM: ex: et ts=2 enc=utf-8 :
+//Setup VIM: ex: et ts=2 :
diff --git a/lib/plugins/acl/lang/zh-tw/help.txt b/lib/plugins/acl/lang/zh-tw/help.txt
index 871c1f4f1..bc1bddb00 100644
--- a/lib/plugins/acl/lang/zh-tw/help.txt
+++ b/lib/plugins/acl/lang/zh-tw/help.txt
@@ -1,11 +1,12 @@
=== 快速指南: ===
-在此頁面你可以為你的wiki中的namespace以及頁面增加或移除權限
+你可以用這個頁面為維基中的命名空間或頁面增加或移除權限。
-左方的面板顯示了所有的namespace以及頁面
+左方面板顯示了所有命名空間和頁面。
-上方的表格允許你觀看以及修改被選擇的使用者或群組的權限
+上方表格允許你觀看及修改選取的使用者或群組的權限。
-下方的表格顯示了目前所有的存取控制規則(ACL) 你可以使用它快速的刪除或更改多項規則
+下方表格顯示了目前所有的存取控制表 (ACL),你可以用它快速刪除或更改多項規則。
+
+閱讀 [[doku>acl|official documentation on ACL]] 可以幫助你完整地了解 DokuWiki 存取控制的運作。
-閱讀 [[doku>acl|official documentation on ACL]] 也許可以幫助你去完整地了解在DokuWiki中, 存取控制是如何運作的.
diff --git a/lib/plugins/acl/lang/zh-tw/lang.php b/lib/plugins/acl/lang/zh-tw/lang.php
index d64e85a92..085537864 100644
--- a/lib/plugins/acl/lang/zh-tw/lang.php
+++ b/lib/plugins/acl/lang/zh-tw/lang.php
@@ -9,32 +9,34 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin <danny0838@pchome.com.tw>
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
-$lang['admin_acl'] = '設定 ACL 存取名單';
+$lang['admin_acl'] = '管理存取控制表 (ACL)';
$lang['acl_group'] = '群組';
-$lang['acl_user'] = '帳號';
+$lang['acl_user'] = '使用者';
$lang['acl_perms'] = '設定權限於';
$lang['page'] = '頁面';
$lang['namespace'] = '命名空間';
$lang['btn_select'] = '選擇';
-$lang['p_user_id'] = '使用者 <b class="acluser">%s</b> 在頁面 <b class="aclpage">%s</b>目前擁有以下的權限: <i>%s</i>.';
-$lang['p_user_ns'] = '用戶 <b class=\"acluser\">%s</b> 當前在命名空間 <b class=\"aclns\">%s</b> 擁有以下權限:<i>%s</i>。';
-$lang['p_group_id'] = '群組 <b class="aclgroup">%s</b> 的成員目前對於頁面 <b class="aclpage">%s</b> 擁有以下的權限: <i>%s</i>.';
-$lang['p_group_ns'] = '<b class=\"aclgroup\">%s</b> 組成員當前在命名空間 <b class=\"aclns\">%s</b> 擁有以下權限:<i>%s</i>。';
-$lang['p_choose_id'] = '請在上方的表格中 <b>輸入一個帳號或群組</b> 來觀看或編輯頁面 <b class="aclpage">%s</b> 的權限.';
-$lang['p_choose_ns'] = '請在上表中<b>輸入用戶名或組名稱</b>,來查看或編輯命名空間 <b class=\"aclns\">%s</b> 的權限設置。';
-$lang['p_inherited'] = '請注意:這些權限並沒有明確設定,而是從其他組或更高級的名稱空間繼承而來。';
-$lang['p_isadmin'] = '請注意:選定的組或用戶擁有完全權限,因為它被設定為超級用戶。';
-$lang['p_include'] = '較高的權限亦包含了較低的權限。新增、上傳與刪除權限只能在命名空間中使用,而非頁面。';
-$lang['current'] = '目前的ACL規則';
+$lang['p_user_id'] = '使用者 <b class="acluser">%s</b> 目前在頁面 <b class="aclpage">%s</b> 擁有以下權限:<i>%s</i>。';
+$lang['p_user_ns'] = '使用者 <b class=\"acluser\">%s</b> 目前在命名空間 <b class=\"aclns\">%s</b> 擁有以下權限:<i>%s</i>。';
+$lang['p_group_id'] = '群組 <b class="aclgroup">%s</b> 的成員目前在頁面 <b class="aclpage">%s</b> 擁有以下權限:<i>%s</i>。';
+$lang['p_group_ns'] = '群組 <b class=\"aclgroup\">%s</b> 的成員目前在命名空間 <b class=\"aclns\">%s</b> 擁有以下權限:<i>%s</i>。';
+$lang['p_choose_id'] = '請在上方表格<b>輸入使用者或群組</b>以檢視或編輯頁面 <b class="aclpage">%s</b> 的權限設定。';
+$lang['p_choose_ns'] = '請在上方表格<b>輸入使用者或群組</b>以檢視或編輯命名空間 <b class=\"aclns\">%s</b> 的權限設定。';
+$lang['p_inherited'] = '注意:這些權限並未明確指定,而是從群組或上層的命名空間繼承而來。';
+$lang['p_isadmin'] = '注意:選取的群組或使用者擁有完整權限,因為它被設定為超級使用者。';
+$lang['p_include'] = '較高的權限亦包含了較低的權限。新增、上傳與刪除權限只能設定在命名空間,不能設定在頁面。';
+$lang['current'] = '目前的存取控制規則';
$lang['where'] = '頁面/命名空間';
$lang['who'] = '使用者/群組';
$lang['perm'] = '權限';
$lang['acl_perm0'] = '無';
-$lang['acl_perm1'] = '讀取權限';
+$lang['acl_perm1'] = '讀取頁面';
$lang['acl_perm2'] = '編輯頁面';
$lang['acl_perm4'] = '新增頁面';
$lang['acl_perm8'] = '上傳圖檔';
$lang['acl_perm16'] = '刪除檔案';
-$lang['acl_new'] = '新增管理規則';
+$lang['acl_new'] = '增加規則';
$lang['acl_mod'] = '修改規則';
diff --git a/lib/plugins/acl/lang/zh/lang.php b/lib/plugins/acl/lang/zh/lang.php
index f9f924089..50b9d63af 100644
--- a/lib/plugins/acl/lang/zh/lang.php
+++ b/lib/plugins/acl/lang/zh/lang.php
@@ -9,6 +9,9 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['admin_acl'] = '访问控制列表(ACL)管理器';
$lang['acl_group'] = '组';
diff --git a/lib/plugins/acl/pix/group.png b/lib/plugins/acl/pix/group.png
index 7fb4e1f1e..d80eb2606 100644
--- a/lib/plugins/acl/pix/group.png
+++ b/lib/plugins/acl/pix/group.png
Binary files differ
diff --git a/lib/plugins/acl/pix/ns.png b/lib/plugins/acl/pix/ns.png
index da3c2a2d7..c35e832da 100644
--- a/lib/plugins/acl/pix/ns.png
+++ b/lib/plugins/acl/pix/ns.png
Binary files differ
diff --git a/lib/plugins/acl/pix/page.png b/lib/plugins/acl/pix/page.png
index 03ddd799f..b1b7ebe94 100644
--- a/lib/plugins/acl/pix/page.png
+++ b/lib/plugins/acl/pix/page.png
Binary files differ
diff --git a/lib/plugins/acl/pix/user.png b/lib/plugins/acl/pix/user.png
index 8fd539e9c..7b4a507a0 100644
--- a/lib/plugins/acl/pix/user.png
+++ b/lib/plugins/acl/pix/user.png
Binary files differ
diff --git a/lib/plugins/admin.php b/lib/plugins/admin.php
index 25f01b657..9a1fb9fdc 100644
--- a/lib/plugins/admin.php
+++ b/lib/plugins/admin.php
@@ -43,4 +43,4 @@ class DokuWiki_Admin_Plugin extends DokuWiki_Plugin {
return array();
}
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/config/admin.php b/lib/plugins/config/admin.php
index 49712b73f..d245d3fce 100644
--- a/lib/plugins/config/admin.php
+++ b/lib/plugins/config/admin.php
@@ -109,7 +109,11 @@ class admin_plugin_config extends DokuWiki_Admin_Plugin {
elseif ($this->_changed)
ptln('<div class="success">'.$this->getLang('updated').'</div>');
+ // POST to script() instead of wl($ID) so config manager still works if
+ // rewrite config is broken. Add $ID as hidden field to remember
+ // current ID in most cases.
ptln('<form action="'.script().'" method="post">');
+ ptln('<input type="hidden" name="id" value="'.$ID.'" />');
formSecurityToken();
$this->_print_h1('dokuwiki_settings', $this->getLang('_header_dokuwiki'));
diff --git a/lib/plugins/config/images/danger.png b/lib/plugins/config/images/danger.png
index c37bd062e..7bd84f7a3 100644
--- a/lib/plugins/config/images/danger.png
+++ b/lib/plugins/config/images/danger.png
Binary files differ
diff --git a/lib/plugins/config/images/security.png b/lib/plugins/config/images/security.png
index 2ebc4f6f9..1800f8e56 100644
--- a/lib/plugins/config/images/security.png
+++ b/lib/plugins/config/images/security.png
Binary files differ
diff --git a/lib/plugins/config/images/warning.png b/lib/plugins/config/images/warning.png
index 628cf2dae..c5e482f84 100644
--- a/lib/plugins/config/images/warning.png
+++ b/lib/plugins/config/images/warning.png
Binary files differ
diff --git a/lib/plugins/config/lang/ar/lang.php b/lib/plugins/config/lang/ar/lang.php
index 5d0ff76b9..26cc16e5c 100644
--- a/lib/plugins/config/lang/ar/lang.php
+++ b/lib/plugins/config/lang/ar/lang.php
@@ -116,6 +116,7 @@ $lang['rss_update'] = 'تحديث تلقيم XML (ثوان)';
$lang['recent_days'] = 'مدة إبقاء أحدث التغييرات (ايام)';
$lang['rss_show_summary'] = 'تلقيم XML يظهر ملخصا في العنوان';
$lang['target____wiki'] = 'النافذة الهدف للروابط الداخلية';
+$lang['target____interwiki'] = 'النافذة الهدف للروابط الممرة interwiki';
$lang['target____extern'] = 'النافذة الهدف للروابط الخارجية';
$lang['target____media'] = 'النافذة الهدف لروابط الوسائط';
$lang['target____windows'] = 'النافذة الهدف لروابط النوافذ';
@@ -124,6 +125,7 @@ $lang['proxy____port'] = 'منفذ الوكيل';
$lang['proxy____user'] = 'اسم مستخدم الوكيل';
$lang['proxy____pass'] = 'كلمة سر الوكيل';
$lang['proxy____ssl'] = 'استخدم ssl للاتصال بالوكيل';
+$lang['proxy____except'] = 'تعبير شرطي لمقابلة العناوين التي ستتجاوز البروكسي.';
$lang['safemodehack'] = 'مكّن hack الوضع الآمن';
$lang['ftp____host'] = 'خادوم FTP ل hack الوضع الآمن';
$lang['ftp____port'] = 'منفذ FTP ل hack الوضع الآمن';
@@ -136,6 +138,7 @@ $lang['typography_o_1'] = 'استبعاد الاقتباس المفرد';
$lang['typography_o_2'] = 'تضمين علامات اقتباس مفردة (قد لا يعمل دائما)';
$lang['userewrite_o_0'] = 'لاشيء';
$lang['userewrite_o_1'] = '.htaccess';
+$lang['userewrite_o_2'] = 'دو';
$lang['deaccent_o_0'] = 'معطل';
$lang['gdlib_o_0'] = 'مكتبة GD غير متوفرة';
$lang['gdlib_o_1'] = 'الاصدار 1.x';
@@ -156,11 +159,15 @@ $lang['compression_o_0'] = 'لا شيء';
$lang['compression_o_gz'] = 'gzip';
$lang['compression_o_bz2'] = 'bz2';
$lang['xsendfile_o_0'] = 'لا تستخدم';
+$lang['xsendfile_o_1'] = 'ترويسة lighttpd مملوكة (قبل الاصدار 1.5)';
+$lang['xsendfile_o_2'] = 'ترويسة X-Sendfile قياسية';
+$lang['xsendfile_o_3'] = 'ترويسة Nginx X-Accel-Redirect مملوكة';
$lang['showuseras_o_loginname'] = 'اسم الدخول';
$lang['showuseras_o_username'] = 'اسم المستخدم الكامل';
$lang['showuseras_o_email'] = 'عنوان بريد المستخدم (مبهم تبعا لاعدادات حارس_البريد)';
$lang['showuseras_o_email_link'] = 'عنوان بريد المستخدم كـ مالتيو: رابط';
$lang['useheading_o_0'] = 'أبدا';
-$lang['useheading_o_navigation'] = 'ال';
+$lang['useheading_o_navigation'] = 'التنقل فقط';
$lang['useheading_o_content'] = 'محتوى الويكي فقط';
$lang['useheading_o_1'] = 'دائما';
+$lang['readdircache'] = 'المدة القصوى لتخزين ';
diff --git a/lib/plugins/config/lang/bg/intro.txt b/lib/plugins/config/lang/bg/intro.txt
index 8723a77a4..db09e6838 100644
--- a/lib/plugins/config/lang/bg/intro.txt
+++ b/lib/plugins/config/lang/bg/intro.txt
@@ -1,7 +1,7 @@
-====== Управление на настройките ======
+====== Диспечер на настройките ======
-Използвайте тази страница за да управлявате настройките на вашета Dokuwiki инсталация. За отделните настройки вижте [[doku>config]]. За повече подробности за тази приставка вижте [[doku>plugin:config]].
+От тук можете да управлявате настройките на вашето Dokuwiki. За отделните настройки вижте [[doku>config]]. За повече информация относно тази приставка вижте [[doku>plugin:config]].
-Настройките показани със светло червен фон за защитени и не могат да се променят с тази приставка. Настройките показани със син фон са стандартните стойности и настройките с бял фон са били настроени локално за тази конкретна инсталация. Както сините, така и белите настройки могат да се променят.
+Настройките изобразени със светло червен фон са защитени и не могат да бъдат променяни с тази приставка. Настройките показани със син фон са стандартните стойности, а настройките с бял фон са били настроени локално за тази конкретна инсталация. Можете да променяте както сините, така и белите настройки.
-Не забравяйте да натиснете бутона **ЗАПИС** преди да напуснете страницата, иначе промените ви ще бъдат загубени.
+Не забравяйте да натиснете бутона **ЗАПИС** преди да напуснете страницата, в противен случай промените няма да бъдат приложени.
diff --git a/lib/plugins/config/lang/bg/lang.php b/lib/plugins/config/lang/bg/lang.php
index 855f0b2c2..eb2c3a426 100644
--- a/lib/plugins/config/lang/bg/lang.php
+++ b/lib/plugins/config/lang/bg/lang.php
@@ -5,75 +5,76 @@
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author Nikolay Vladimirov <nikolay@vladimiroff.com>
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
$lang['menu'] = 'Настройки';
-$lang['error'] = 'Невъзможно е обновяването на настройките, поради невалидна стойност, моля, прегледайте промените си и пробвайте отново.
- <br />Неверните стойности ще бъдат обградени с червена рамка.';
-$lang['updated'] = 'Обновяването на настройките бе успешно.';
+$lang['error'] = 'Обновяването на настройките е невъзможно, поради невалидна стойност, моля, прегледайте промените си и пробвайте отново.
+<br />Неверните стойности ще бъдат обградени с червена рамка.';
+$lang['updated'] = 'Обновяването на настройките е успешно.';
$lang['nochoice'] = '(няма друг възможен избор)';
-$lang['locked'] = 'Невъзможно е обновяването на файлът с настройките, ако това не е нарочно, проверете,<br /> дали локалните име на файл и права са верни.';
-$lang['danger'] = 'Внимание: промяна на тази опция може да направи уикито и конфигурационното меню недостъпни.';
-$lang['warning'] = 'Предупреждение: промяна на тази опция може предизвика нежелани реакции.';
-$lang['security'] = 'Предупреждение: промяната на тази опция може да представлява риск за сигурността.';
-$lang['_configuration_manager'] = 'Управление на настройките';
-$lang['_header_dokuwiki'] = 'DokuWiki настройки';
-$lang['_header_plugin'] = 'Настройки на приставките';
-$lang['_header_template'] = 'Настройки на шаблоните';
+$lang['locked'] = 'Обновяването на файла с настройките е невъзможно, ако това не е нарочно, проверете,<br /> дали името на локалния файл с настройки и правата са верни.';
+$lang['danger'] = 'Внимание: промяна на опцията може да направи wiki-то и менюто за настройване недостъпни.';
+$lang['warning'] = 'Предупреждение: промяна на опцията може предизвика нежелани последици.';
+$lang['security'] = 'Предупреждение: промяна на опцията може да представлява риск за сигурността.';
+$lang['_configuration_manager'] = 'Диспечер на настройките';
+$lang['_header_dokuwiki'] = 'Настройки на DokuWiki';
+$lang['_header_plugin'] = 'Настройки на приставки';
+$lang['_header_template'] = 'Настройки на шаблони';
$lang['_header_undefined'] = 'Неопределени настройки';
$lang['_basic'] = 'Основни настройки';
$lang['_display'] = 'Настройки на показването';
-$lang['_authentication'] = 'Настройки на идентификацията';
-$lang['_anti_spam'] = 'Анти-спам настройки';
-$lang['_editing'] = 'Настройки на редактирането';
+$lang['_authentication'] = 'Настройки за удостоверяване';
+$lang['_anti_spam'] = 'Настройки за борба със SPAM-ма';
+$lang['_editing'] = 'Настройки за редактиране';
$lang['_links'] = 'Настройки на препратките';
$lang['_media'] = 'Настройки на медията';
$lang['_advanced'] = 'Допълнителни настройки';
$lang['_network'] = 'Мрежови настройки';
-$lang['_plugin_sufix'] = 'Настройки на приставките';
+$lang['_plugin_sufix'] = 'Настройки на приставки';
$lang['_template_sufix'] = 'Настройки на шаблони';
-$lang['_msg_setting_undefined'] = 'Няма метаданни на настройките.';
+$lang['_msg_setting_undefined'] = 'Няма метаданни за настройките.';
$lang['_msg_setting_no_class'] = 'Няма клас настройки.';
$lang['_msg_setting_no_default'] = 'Няма стандартна стойност.';
-$lang['fmode'] = 'Режим(права) на създаване на файловете';
-$lang['dmode'] = 'Режим(права) за създаване на директориите';
+$lang['fmode'] = 'Режим (права) за създаване на файлове';
+$lang['dmode'] = 'Режим (права) за създаване на директории';
$lang['lang'] = 'Език';
-$lang['basedir'] = 'Главна директория';
-$lang['baseurl'] = 'Главен адрес (URL)';
+$lang['basedir'] = 'Главна директория (напр. <code>/dokuwiki/</code>). Оставете празно, за да бъде засечена автоматично.';
+$lang['baseurl'] = 'URL адрес (напр. <code>http://www.yourserver.com</code>). Оставете празно, за да бъде засечен автоматично.';
$lang['savedir'] = 'Директория за записване на данните';
$lang['start'] = 'Име на началната страница';
-$lang['title'] = 'Име на Wiki';
+$lang['title'] = 'Име на Wiki-то';
$lang['template'] = 'Шаблон';
$lang['license'] = 'Под какъв лиценз да бъде публикувано съдържанието?';
-$lang['fullpath'] = 'Показване на пълния път до страниците в долния им край.';
-$lang['recent'] = 'Последни промени';
+$lang['fullpath'] = 'Показване на пълния път до страниците в долния колонтитул.';
+$lang['recent'] = 'Скорошни промени';
$lang['breadcrumbs'] = 'Брой на следите';
$lang['youarehere'] = 'Йерархични следи';
$lang['typography'] = 'Поправяне на разместени букви';
-$lang['htmlok'] = 'Позволяване на вграден HTML код';
-$lang['phpok'] = 'Позволяване на вграден PHP код';
+$lang['htmlok'] = 'Разрешаване вграждането на HTML код';
+$lang['phpok'] = 'Разрешаване вграждането на PHP код';
$lang['dformat'] = 'Формат на датата (виж. <a href="http://www.php.net/strftime">strftime</a> функцията на PHP)';
$lang['signature'] = 'Подпис';
$lang['toptoclevel'] = 'Главно ниво за съдържанието';
-$lang['tocminheads'] = 'Минимална сума на заглавията, която определя дали съдържанието е създадено';
+$lang['tocminheads'] = 'Минимален брой заглавия, определящ дали съдържанието е създадено';
$lang['maxtoclevel'] = 'Максимално ниво на съдържанието';
-$lang['maxseclevel'] = 'Максимално ниво на редактиране на секция';
-$lang['camelcase'] = 'Използване на CamelCase за препратки';
-$lang['deaccent'] = 'Окончателни имена на страници';
-$lang['useheading'] = 'Използване на първото заглавие за име на страница';
+$lang['maxseclevel'] = 'Максимално ниво за редактиране на секция';
+$lang['camelcase'] = 'Ползване на CamelCase за линкове';
+$lang['deaccent'] = 'Почистване имената на страниците (на файловете)';
+$lang['useheading'] = 'Ползване на първото заглавие за име на страница';
$lang['refcheck'] = 'Проверка за препратка на медия';
-$lang['refshow'] = 'Брой на показани медийни препратки';
-$lang['allowdebug'] = 'Пускане на debug <b>изключете, ако не е нужен!</b>';
-$lang['usewordblock'] = 'Блокиране на спам базирано на списък от думи';
-$lang['indexdelay'] = 'Забавяне преди индексиране(секунди)';
-$lang['relnofollow'] = 'Използване на rel="nofollow" за външни връзки';
-$lang['mailguard'] = 'Промяна на адреса на електронната поща във форма непозволяваща пращането на спам';
+$lang['refshow'] = 'Брой на показваните медийни препратки';
+$lang['allowdebug'] = 'Включване на debug <b>изключете, ако не е нужен!</b>';
+$lang['usewordblock'] = 'Блокиране на SPAM въз основа на на списък от думи';
+$lang['indexdelay'] = 'Забавяне преди индексиране (сек)';
+$lang['relnofollow'] = 'Ползване на rel="nofollow" за външни препратки';
+$lang['mailguard'] = 'Промяна на адресите на ел. поща (във форма непозволяваща пращането на SPAM)';
$lang['iexssprotect'] = 'Проверяване на качените файлове за възможно зловреден JavaScript и HTML код';
-$lang['showuseras'] = 'Какво да се показва на дисплея за потребителя, който последно е променил тази страница';
-$lang['useacl'] = 'Използване на списъци за достъп';
+$lang['showuseras'] = 'Какво да се показва за потребителя, който последно е променил страницата';
+$lang['useacl'] = 'Ползване на списъци за достъп';
$lang['autopasswd'] = 'Автоматично генериране на пароли';
-$lang['authtype'] = 'Метод на идентификация';
+$lang['authtype'] = 'Метод за удостоверяване';
$lang['passcrypt'] = 'Метод за криптиране на паролите';
-$lang['defaultgroup'] = 'Група по подразбиране';
+$lang['defaultgroup'] = 'Стандартна група';
$lang['superuser'] = 'Супер потребител - група или потребител с пълен достъп до всички страници и функции без значение от настройките на списъците за достъп (ACL)';
$lang['manager'] = 'Управител - група или потребител, с достъп до определени управляващи фунции ';
$lang['profileconfirm'] = 'Потвърждаване на промени в профила с парола';
@@ -82,73 +83,77 @@ $lang['disableactions_check'] = 'Проверка';
$lang['disableactions_subscription'] = 'Записване/Отписване';
$lang['disableactions_wikicode'] = 'Преглед на кода/Експортиране на оригинална версия';
$lang['disableactions_other'] = 'Други действия (разделени със запетая)';
-$lang['sneaky_index'] = 'По подразбиране DokuWiki ще показва всички именни пространства в индекса. Избирането на настройката ще доведе до скриване на тези, за които потребителят няма права за четене. Това може да означава и скриване на достъпните подименни пространства. Това може да направи индекса неизползваем при определени настрокйки на списъците за контрол на достъп (ACL). ';
-$lang['auth_security_timeout'] = 'Изчакване при вписване преди Timeout (в секунди)';
-$lang['securecookie'] = 'Да се изпращат ли бисквитки, посочени чрез HTTPS, само чрез HTTPS от браузъра? Забранете тази опция, когато SSL се използва само за вписване в системата, а четенето е възможно и без SSL.
+$lang['sneaky_index'] = 'Стандартно DokuWiki ще показва всички именни пространства в индекса. Опцията скрива тези, за които потребителят няма права за четене. Това може да доведе и до скриване на иначе достъпни подименни пространства. С определени настройки на списъците за контрол на достъпа (ACL) може да направи индекса неизползваем. ';
+$lang['auth_security_timeout'] = 'Считане на вписване за неуспешно след (сек)';
+$lang['securecookie'] = 'Да се изпращат ли бисквитките зададени чрез HTTPS, само чрез HTTPS от браузъра? Изключете опцията, когато SSL се ползва само за вписване в системата, а четенето е възможно и без SSL.
';
-$lang['xmlrpc'] = 'Включи/изключи XML-RPC интерфейса';
-$lang['xmlrpcuser'] = 'Ограничаване на XML-RPC достъп до дадени тук и отделени със запетая групи или потребители. Оставете празни да даде достъп до всички.';
-$lang['updatecheck'] = 'Проверка за нови версии и предупреждения за сигурност? Dokiwiki трябва да може да се свърже със splitbrain.org за тази функционалност.';
-$lang['userewrite'] = 'Използване на валидни URL';
-$lang['useslash'] = 'Използване на наклонена черта за разделител на именнипространсвта в URL';
-$lang['usedraft'] = 'Автоматично запазване на чернова при редактиране';
+$lang['xmlrpc'] = 'Включване/Изключване на интерфейса XML-RPC.';
+$lang['xmlrpcuser'] = 'Ограничаване на XML-RPC достъпа до отделени със запетая групи или потребители. Оставете празно, за да даде достъп на всеки.';
+$lang['updatecheck'] = 'Проверяване за за нови версии и предупреждения за сигурността? Необходимо е Dokiwiki да може да се свързва със splitbrain.org за тази функционалност.';
+$lang['userewrite'] = 'Ползване на nice URL адреси';
+$lang['useslash'] = 'Ползване на наклонена черта за разделител на именните пространства в URL';
+$lang['usedraft'] = 'Автоматично запазване на чернова по време на редактиране';
$lang['sepchar'] = 'Разделител между думите в имената на страници';
-$lang['canonical'] = 'Използване на уеднаквени URL';
-$lang['autoplural'] = 'Проверка за множествено число в препратките';
+$lang['canonical'] = 'Ползване на напълно уеднаквени URL адреси';
+$lang['fnencode'] = 'Метод за кодиране на не-ASCII именуваните файлове.';
+$lang['autoplural'] = 'Проверяване за множествено число в препратките';
$lang['compression'] = 'Метод за компресия на attic файлове';
-$lang['cachetime'] = 'Максимална възраст на кеша (сек)';
-$lang['locktime'] = 'Максимална възраст на заключващите файлове (сек)';
-$lang['fetchsize'] = 'Максимален размер (байтове), който fetch.php може да дърпа';
-$lang['notify'] = 'Пращане на съобщения за промени на тази e-поща';
-$lang['registernotify'] = 'Пращане информация на нови потребители на тази е-поща';
-$lang['mailfrom'] = 'Адрес на е-поща, който да се използва за пращане на автоматичната поща';
-$lang['gzip_output'] = 'Използване gzip Кодиране на съдържанието(Content-Encoding) за xhtml';
+$lang['cachetime'] = 'Макс. период за съхраняване на кеша (сек)';
+$lang['locktime'] = 'Макс. период за съхраняване на заключените файлове (сек)';
+$lang['fetchsize'] = 'Максимален размер (байтове), който fetch.php може да сваля';
+$lang['notify'] = 'Пращане на съобщения за промени на тази eл. поща';
+$lang['registernotify'] = 'Пращане информация за нови потребители на тази ел. поща';
+$lang['mailfrom'] = 'Ел. поща, която да се ползва за автоматично изпращане на ел. писма';
+$lang['mailprefix'] = 'Представка за темите (поле subject) на автоматично изпращаните ел. писма';
+$lang['gzip_output'] = 'Кодиране на съдържанието с gzip за xhtml';
$lang['gdlib'] = 'Версия на GD Lib';
$lang['im_convert'] = 'Път до инструмента за трансформация на ImageMagick';
$lang['jpg_quality'] = 'Kачество на JPG компресията (0-100)';
-$lang['subscribers'] = 'Поддръжка за абониране към страница';
-$lang['compress'] = 'Компактен CSS и javascript изход';
-$lang['hidepages'] = 'Скриване на съвпадащи имена на страници(regular expressions)';
+$lang['subscribers'] = 'Включване на поддръжката за абониране към страници';
+$lang['subscribe_time'] = 'Време след което абонаментните списъци и обобщения се изпращат (сек); Трябва да е по-малко от времето определено в recent_days.';
+$lang['compress'] = 'Компактен CSS и javascript изглед';
+$lang['hidepages'] = 'Скриване на съвпадащите страници (regular expressions)';
$lang['send404'] = 'Пращане на "HTTP 404/Page Not Found" за несъществуващи страници';
$lang['sitemap'] = 'Генериране на Google sitemap (дни)';
-$lang['broken_iua'] = 'Отметнете, ако ignore_user_abort функцията не работи, търсенето може да не се извършва правилно.Известно е, че комбинацията IIS+PHP/CGI е лоша. Вижте <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">Грешка 852</a> за повече информация.';
-$lang['xsendfile'] = 'Използване на Х-Sendfile header, за позволяване на уеб сървъра да дава статични файлове? Вашият уеб сървър трябва да поддържа това.';
-$lang['renderer_xhtml'] = 'Показвай main (XHTML) код за wiki';
-$lang['renderer__core'] = '%s (DokuWiki ядро)';
+$lang['broken_iua'] = 'Отметнете, ако ignore_user_abort функцията не работи. Може да попречи на търсенето в страниците. Знае се, че комбинацията IIS+PHP/CGI е лоша. Вижте <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">Грешка 852</a> за повече информация.';
+$lang['xsendfile'] = 'Ползване на Х-Sendfile header, за да може уебсървъра да дава статични файлове? Вашият уебсървър трябва да го поддържа.';
+$lang['renderer_xhtml'] = 'Представяне на основните изходни данни (xhtml) от wiki-то с';
+$lang['renderer__core'] = '%s (ядрото на DokuWiki)';
$lang['renderer__plugin'] = '%s (приставка)';
-$lang['rememberme'] = 'Остави постоянни бисквитки за вход (запомни ме)';
-$lang['rss_type'] = 'Вид на XML източника (feed)';
-$lang['rss_linkto'] = 'XML feed препраща към';
-$lang['rss_content'] = 'Какво да се показва в XML feed елементите?';
-$lang['rss_update'] = 'Интервал на обновяване XML източника (сек)';
-$lang['recent_days'] = 'Колко последни промени да се пазят (дни)';
-$lang['rss_show_summary'] = 'XML feed show summary in title';
+$lang['rememberme'] = 'Ползване на постоянни бисквитки за вписване (запомни ме)';
+$lang['rss_type'] = 'Тип на XML емисията';
+$lang['rss_linkto'] = 'XML емисията препраща към';
+$lang['rss_content'] = 'Какво да показват елементите на XML емисията?';
+$lang['rss_update'] = 'Интервал на актуализиране на XML емисията (сек)';
+$lang['recent_days'] = 'Колко от скорошните промени да се пазят (дни)';
+$lang['rss_show_summary'] = 'Показване на обобщение в заглавието на XML емисията';
$lang['target____wiki'] = 'Прозорец за вътрешни препратки';
-$lang['target____interwiki'] = 'Прозорец за вътрешни уики препратки';
+$lang['target____interwiki'] = 'Прозорец за препратки в wiki-то';
$lang['target____extern'] = 'Прозорец за външни препратки';
-$lang['target____media'] = 'Прозорец за препратки към медия';
-$lang['target____windows'] = 'Прозорец за препратки към прозорци';
+$lang['target____media'] = 'Прозорец за медийни препратки';
+$lang['target____windows'] = 'Прозорец за препратки към Windows';
$lang['proxy____host'] = 'Име на прокси сървър';
-$lang['proxy____port'] = 'Порт на проксито';
+$lang['proxy____port'] = 'Порт за проксито';
$lang['proxy____user'] = 'Потребител за проксито';
$lang['proxy____pass'] = 'Парола за проксито';
-$lang['proxy____ssl'] = 'Използване на ssl за връзка към проксито';
-$lang['safemodehack'] = 'Позволи safemode хак';
-$lang['ftp____host'] = 'FTP сървър за safemode хака';
-$lang['ftp____port'] = 'FTP порт за safemode хака';
-$lang['ftp____user'] = 'FTP потребител за safemode хака';
-$lang['ftp____pass'] = 'FTP парола за safemode хака';
-$lang['ftp____root'] = 'FTP главна директория safemode хака';
+$lang['proxy____ssl'] = 'Ползване на SSL при свързване с проксито';
+$lang['proxy____except'] = 'Регулярен израз определящ за кои URL адреси да не се ползва прокси сървър.';
+$lang['safemodehack'] = 'Ползване на хака safemode';
+$lang['ftp____host'] = 'FTP сървър за хака safemode';
+$lang['ftp____port'] = 'FTP порт за хака safemode';
+$lang['ftp____user'] = 'FTP потребител за хака safemode';
+$lang['ftp____pass'] = 'FTP парола за хака safemode';
+$lang['ftp____root'] = 'FTP главна директория хака safemode';
$lang['license_o_'] = 'Нищо не е избрано';
$lang['typography_o_0'] = 'без';
$lang['typography_o_1'] = 'с изключение на единични кавички';
-$lang['typography_o_2'] = 'всякаква форма за кавичките (не винаги работи)';
+$lang['typography_o_2'] = 'включително единични кавички (не винаги работи)';
$lang['userewrite_o_0'] = 'без';
-$lang['userewrite_o_1'] = '.htaccess файл';
+$lang['userewrite_o_1'] = 'файлът .htaccess';
$lang['userewrite_o_2'] = 'вътрешно от DokuWiki ';
$lang['deaccent_o_0'] = 'изключено';
$lang['deaccent_o_1'] = 'премахване на акценти';
-$lang['deaccent_o_2'] = 'романизация';
+$lang['deaccent_o_2'] = 'транслитерация';
$lang['gdlib_o_0'] = 'GD Lib не е достъпна';
$lang['gdlib_o_1'] = 'Версия 1.x';
$lang['gdlib_o_2'] = 'Автоматично разпознаване';
@@ -158,12 +163,12 @@ $lang['rss_type_o_rss2'] = 'RSS версия 2.0';
$lang['rss_type_o_atom'] = 'Atom версия 0.3';
$lang['rss_type_o_atom1'] = 'Atom версия 1.0';
$lang['rss_content_o_abstract'] = 'Извлечение';
-$lang['rss_content_o_diff'] = 'Обединен Diff';
-$lang['rss_content_o_htmldiff'] = 'Diff таблица в HTML формат';
+$lang['rss_content_o_diff'] = 'Обединени разлики';
+$lang['rss_content_o_htmldiff'] = 'Таблица с разликите в HTML формат';
$lang['rss_content_o_html'] = 'Цялото съдържание на HTML страницата';
$lang['rss_linkto_o_diff'] = 'изглед на разликите';
$lang['rss_linkto_o_page'] = 'променената страница';
-$lang['rss_linkto_o_rev'] = 'списък на текущите версии';
+$lang['rss_linkto_o_rev'] = 'списък на версиите';
$lang['rss_linkto_o_current'] = 'текущата страница';
$lang['compression_o_0'] = 'без';
$lang['compression_o_gz'] = 'gzip';
@@ -172,11 +177,12 @@ $lang['xsendfile_o_0'] = 'не използвайте';
$lang['xsendfile_o_1'] = 'Специфичен lighttpd header (преди версия 1.5)';
$lang['xsendfile_o_2'] = 'Стандартен X-Sendfile header';
$lang['xsendfile_o_3'] = 'Специфичен Nginx X-Accel-Redirect header за пренасочване';
-$lang['showuseras_o_loginname'] = 'Потребителско име';
+$lang['showuseras_o_loginname'] = 'Име за вписване';
$lang['showuseras_o_username'] = 'Пълно потребителско име';
-$lang['showuseras_o_email'] = 'Пълен адрес на електронната поща на потребителя';
-$lang['showuseras_o_email_link'] = 'Адрес на електронната поща на потребителя под формата на mailto: линк';
+$lang['showuseras_o_email'] = 'Ел, поща на потребителите (променени според настройките на mailguard)';
+$lang['showuseras_o_email_link'] = 'Ел. поща на потребителите под формата на mailto: връзки';
$lang['useheading_o_0'] = 'Никога';
$lang['useheading_o_navigation'] = 'Само за навигация';
-$lang['useheading_o_content'] = 'Само за Wiki съдържание';
+$lang['useheading_o_content'] = 'Само за съдържанието на Wiki-то';
$lang['useheading_o_1'] = 'Винаги';
+$lang['readdircache'] = 'Максимален период за съхраняване кеша на readdir (сек)';
diff --git a/lib/plugins/config/lang/cs/intro.txt b/lib/plugins/config/lang/cs/intro.txt
index bad92ac8e..63381b84e 100644
--- a/lib/plugins/config/lang/cs/intro.txt
+++ b/lib/plugins/config/lang/cs/intro.txt
@@ -2,7 +2,7 @@
Tuto stránku můžete používat ke správě nastavení vaší instalace DokuWiki. Nápovědu pro konkrétní položky nastavení naleznete na [[doku>config]]. Pro další detaily o tomto pluginu viz [[doku>plugin:config]].
-Položky se světle červeným pozadím jsou chráněné a nelze je upravovat tímto pluginem. Položky s modrým pozadím jsou výchozí hodnoty a položky s bílým pozadím byly nastaveny lokálně v této konktétní instalaci. Modré i bílé položky je možné upravovat.
+Položky se světle červeným pozadím jsou chráněné a nelze je upravovat tímto pluginem. Položky s modrým pozadím jsou výchozí hodnoty a položky s bílým pozadím byly nastaveny lokálně v této konkrétní instalaci. Modré i bílé položky je možné upravovat.
Než opustíte tuto stránku, nezapomeňte stisknout tlačítko **Uložit**, jinak budou změny ztraceny.
diff --git a/lib/plugins/config/lang/cs/lang.php b/lib/plugins/config/lang/cs/lang.php
index 3f8c05f26..06839c1d0 100644
--- a/lib/plugins/config/lang/cs/lang.php
+++ b/lib/plugins/config/lang/cs/lang.php
@@ -11,7 +11,7 @@
*/
$lang['menu'] = 'Správa nastavení';
$lang['error'] = 'Nastavení nebyla změněna kvůli alespoň jedné neplatné položce,
-zkotrolujte prosím své úpravy a odešlete je znovu.<br />
+zkontrolujte prosím své úpravy a odešlete je znovu.<br />
Neplatné hodnoty se zobrazí v červeném rámečku.';
$lang['updated'] = 'Nastavení byla úspěšně upravena.';
$lang['nochoice'] = '(nejsou k dispozici žádné další volby)';
@@ -69,10 +69,10 @@ $lang['useheading'] = 'Používat první nadpis jako název stránky'
$lang['refcheck'] = 'Kontrolovat odkazy na média (před vymazáním)';
$lang['refshow'] = 'Počet zobrazených odkazů na média';
$lang['allowdebug'] = 'Povolit debugování. <b>Vypněte, pokud to nepotřebujete!</b>';
-$lang['usewordblock'] = 'Blokovat spam za použítí seznamu známých spamových slov';
+$lang['usewordblock'] = 'Blokovat spam za použití seznamu známých spamových slov';
$lang['indexdelay'] = 'Časová prodleva před indexací (v sekundách)';
$lang['relnofollow'] = 'Používat rel="nofollow" na externí odkazy';
-$lang['mailguard'] = 'Metoda "zamaskování" emailových addres';
+$lang['mailguard'] = 'Metoda "zamaskování" emailových adres';
$lang['iexssprotect'] = 'Zkontrolovat nahrané soubory vůči možnému škodlivému JavaScriptu či HTML';
$lang['showuseras'] = 'Co se má přesně zobrazit, když se ukazuje uživatel, který naposledy editoval stránku';
$lang['useacl'] = 'Používat přístupová práva (ACL)';
@@ -95,7 +95,7 @@ vnořené jmenné prostory, k nimž právo má, budou přesto skryty.
To může mít za následek, že index bude při některých
nastaveních ACL nepoužitelný.';
$lang['auth_security_timeout'] = 'Časový limit pro autentikaci (v sekundách)';
-$lang['securecookie'] = 'Má prohlížeč posílat cookies nastavené přes HTTPS opět jen přes HTTPS? Vypňete tuto volbu, pokud chcete, aby bylo pomocí SSL zabezpečeno pouze přihlašování do wiki, ale obsah budete prohlížet nezabezpečeně.';
+$lang['securecookie'] = 'Má prohlížeč posílat cookies nastavené přes HTTPS opět jen přes HTTPS? Vypněte tuto volbu, pokud chcete, aby bylo pomocí SSL zabezpečeno pouze přihlašování do wiki, ale obsah budete prohlížet nezabezpečeně.';
$lang['xmlrpc'] = 'Povolit/Zakázat rozhraní XML-RPC.';
$lang['xmlrpcuser'] = 'Omezit přístup pomocí XML-RPC pouze na zde zadané skupiny či uživatele (oddělené čárkami). Necháte-li pole prázdné, dáte přístup komukoliv.';
$lang['updatecheck'] = 'Kontrolovat aktualizace a bezpečnostní varování? DokuWiki potřebuje pro tuto funkci přístup k splitbrain.org';
@@ -112,7 +112,7 @@ $lang['locktime'] = 'Maximální životnost zámkových souborů (v
$lang['fetchsize'] = 'Maximální velikost souboru (v bajtech), co ještě fetch.php bude stahovat z externích zdrojů';
$lang['notify'] = 'Posílat oznámení o změnách na následující emailovou adresu';
$lang['registernotify'] = 'Posílat informace o nově registrovaných uživatelích na tuto mailovou adresu';
-$lang['mailfrom'] = 'Emailová addresa, která se bude používat pro automatické maily';
+$lang['mailfrom'] = 'Emailová adresa, která se bude používat pro automatické maily';
$lang['gzip_output'] = 'Používat pro xhtml Content-Encoding gzip';
$lang['gdlib'] = 'Verze GD knihovny';
$lang['im_convert'] = 'Cesta k nástroji convert z balíku ImageMagick';
diff --git a/lib/plugins/config/lang/da/lang.php b/lib/plugins/config/lang/da/lang.php
index 29c222174..bc2bc0560 100644
--- a/lib/plugins/config/lang/da/lang.php
+++ b/lib/plugins/config/lang/da/lang.php
@@ -100,6 +100,7 @@ $lang['useslash'] = 'Brug skråstreg som navnerumsdeler i netadress
$lang['usedraft'] = 'Gem automatisk en kladde under redigering';
$lang['sepchar'] = 'Orddelingstegn til sidenavne';
$lang['canonical'] = 'Benyt fuldt kanoniske netadresser';
+$lang['fnencode'] = 'Metode for indkodning af ikke ASCII filnavne';
$lang['autoplural'] = 'Tjek for flertalsendelser i henvisninger';
$lang['compression'] = 'Pakningsmetode for attic-filer';
$lang['cachetime'] = 'Længste levetid for "cache" (sek)';
@@ -140,6 +141,7 @@ $lang['proxy____port'] = 'Proxy-port';
$lang['proxy____user'] = 'Proxy-brugernavn';
$lang['proxy____pass'] = 'Proxy-kodeord';
$lang['proxy____ssl'] = 'Brug SSL til at forbinde til proxy';
+$lang['proxy____except'] = 'Regular expression til at matche URL\'er for hvilke proxier der skal ignores';
$lang['safemodehack'] = 'Slå "safemode hack" til ';
$lang['ftp____host'] = 'FTP-server til "safemode hack"';
$lang['ftp____port'] = 'FTP-port til "safemode hack"';
@@ -187,3 +189,4 @@ $lang['useheading_o_0'] = 'Aldrig';
$lang['useheading_o_navigation'] = 'Kun navigering';
$lang['useheading_o_content'] = 'Kun wiki-indhold';
$lang['useheading_o_1'] = 'Altid';
+$lang['readdircache'] = 'Maksimum alder for readdir hukommelse (sek)';
diff --git a/lib/plugins/config/lang/de-informal/lang.php b/lib/plugins/config/lang/de-informal/lang.php
index 54769bb22..f6ddaa8e9 100644
--- a/lib/plugins/config/lang/de-informal/lang.php
+++ b/lib/plugins/config/lang/de-informal/lang.php
@@ -6,6 +6,7 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Einstellungen';
$lang['error'] = 'Einstellungen wurden nicht aktualisiert auf Grund eines ungültigen Wertes. Bitte überprüfe deine Änderungen und versuche es erneut.<br />Die/der ungültige(n) Wert(e) werden durch eine rote Umrandung hervorgehoben.';
@@ -102,6 +103,7 @@ $lang['fetchsize'] = 'Maximale Größe (in Bytes), die fetch.php von
$lang['notify'] = 'Sende Änderungsbenachrichtigungen an diese E-Mail-Adresse.';
$lang['registernotify'] = 'Sende Information bei neu registrierten Benutzern an diese E-Mail-Adresse.';
$lang['mailfrom'] = 'Absenderadresse für automatisch erzeugte E-Mails';
+$lang['mailprefix'] = 'Präfix für E-Mail-Betreff beim automatischen Versand von Benachrichtigungen';
$lang['gzip_output'] = 'Seiten mit gzip komprimiert ausliefern';
$lang['gdlib'] = 'GD Lib Version';
$lang['im_convert'] = 'Pfad zu ImageMagicks Konvertierwerkzeug';
@@ -118,23 +120,23 @@ $lang['renderer_xhtml'] = 'Standard-Renderer für die normale (XHTML) Wik
$lang['renderer__core'] = '%s (DokuWiki Kern)';
$lang['renderer__plugin'] = '%s (Erweiterung)';
$lang['rememberme'] = 'Permanente Login-Cookies erlauben (Auf diesem Computer eingeloggt bleiben)';
-$lang['rss_type'] = 'XML Feed-Typ';
+$lang['rss_type'] = 'XML-Feed-Format';
$lang['rss_linkto'] = 'XML-Feed verlinken auf';
$lang['rss_content'] = 'Was soll in XML-Feedinhalten angezeigt werden?';
$lang['rss_update'] = 'Aktualisierungsintervall für XML-Feeds (Sekunden)';
$lang['recent_days'] = 'Wie viele Änderungen sollen vorgehalten werden? (Tage)';
$lang['rss_show_summary'] = 'Bearbeitungs-Zusammenfassung im XML-Feed anzeigen';
$lang['target____wiki'] = 'Zielfenstername für interne Links';
-$lang['target____interwiki'] = 'Zielfenstername für interwiki Links';
+$lang['target____interwiki'] = 'Zielfenstername für InterWiki-Links';
$lang['target____extern'] = 'Zielfenstername für externe Links';
$lang['target____media'] = 'Zielfenstername für Medienlinks';
-$lang['target____windows'] = 'Zielfenstername für Windowslinks';
+$lang['target____windows'] = 'Zielfenstername für Windows-Freigaben-Links';
$lang['proxy____host'] = 'Proxyadresse';
$lang['proxy____port'] = 'Proxyport';
$lang['proxy____user'] = 'Benutzername für den Proxy';
$lang['proxy____pass'] = 'Passwort von dem Proxybenutzer';
$lang['proxy____ssl'] = 'SSL verwenden um auf den Proxy zu zugreifen';
-$land['proxy____except'] = 'Regulärer Ausdruck um Adressen zu beschreiben, für die kein Proxy verwendet werden soll';
+$lang['proxy____except'] = 'Regulärer Ausdruck um Adressen zu beschreiben, für die kein Proxy verwendet werden soll';
$lang['safemodehack'] = 'Aktiviere safemode Hack';
$lang['ftp____host'] = 'FTP Server für safemode Hack';
$lang['ftp____port'] = 'FTP Port für safemode Hack';
diff --git a/lib/plugins/config/lang/de/lang.php b/lib/plugins/config/lang/de/lang.php
index b1e92174d..b26df4993 100644
--- a/lib/plugins/config/lang/de/lang.php
+++ b/lib/plugins/config/lang/de/lang.php
@@ -13,6 +13,8 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Konfiguration';
$lang['error'] = 'Die Einstellungen wurden wegen einer fehlerhaften Eingabe nicht gespeichert.
@@ -111,6 +113,7 @@ $lang['fetchsize'] = 'Maximale Größe (in Bytes), die fetch.php von
$lang['notify'] = 'Änderungsmitteilungen an diese E-Mail-Adresse versenden';
$lang['registernotify'] = 'Information über neu registrierte Nutzer an diese E-Mail-Adresse senden';
$lang['mailfrom'] = 'Absender-E-Mail-Adresse für automatische Mails';
+$lang['mailprefix'] = 'Präfix für E-Mail-Betreff beim automatischen Versand von Benachrichtigungen';
$lang['gzip_output'] = 'Seiten mit gzip komprimiert ausliefern';
$lang['gdlib'] = 'GD Lib Version';
$lang['im_convert'] = 'Pfad zu ImageMagicks Konvertierwerkzeug';
@@ -143,7 +146,7 @@ $lang['proxy____port'] = 'Proxy-Port';
$lang['proxy____user'] = 'Proxy Nutzername';
$lang['proxy____pass'] = 'Proxy Passwort';
$lang['proxy____ssl'] = 'SSL bei Verbindung zum Proxy verwenden';
-$land['proxy____except'] = 'Regulärer Ausdruck um Adressen zu beschreiben, für die kein Proxy verwendet werden soll';
+$lang['proxy____except'] = 'Regulärer Ausdruck um Adressen zu beschreiben, für die kein Proxy verwendet werden soll';
$lang['safemodehack'] = 'Safemodehack verwenden';
$lang['ftp____host'] = 'FTP-Host für Safemodehack';
$lang['ftp____port'] = 'FTP-Port für Safemodehack';
diff --git a/lib/plugins/config/lang/el/lang.php b/lib/plugins/config/lang/el/lang.php
index df9029506..ebd676886 100644
--- a/lib/plugins/config/lang/el/lang.php
+++ b/lib/plugins/config/lang/el/lang.php
@@ -108,6 +108,7 @@ $lang['fetchsize'] = 'Μέγιστο μέγεθος (σε bytes) ε
$lang['notify'] = 'Αποστολή ενημέρωσης για αλλαγές σε αυτή την e-mail διεύθυνση';
$lang['registernotify'] = 'Αποστολή ενημερωτικών μηνυμάτων σε αυτή την e-mail διεύθυνση κατά την εγγραφή νέων χρηστών';
$lang['mailfrom'] = 'e-mail διεύθυνση αποστολέα για μηνύματα από την εφαρμογή';
+$lang['mailprefix'] = 'Πρόθεμα θέματος που να χρησιμοποιείται για τα αυτόματα μηνύματα ηλεκτρονικού ταχυδρομείου.';
$lang['gzip_output'] = 'Χρήση gzip Content-Encoding για την xhtml';
$lang['gdlib'] = 'Έκδοση βιβλιοθήκης GD';
$lang['im_convert'] = 'Διαδρομή προς το εργαλείο μετατροπής εικόνων του ImageMagick';
diff --git a/lib/plugins/config/lang/en/lang.php b/lib/plugins/config/lang/en/lang.php
index a944d6bd7..18bfb56fa 100644
--- a/lib/plugins/config/lang/en/lang.php
+++ b/lib/plugins/config/lang/en/lang.php
@@ -125,6 +125,7 @@ $lang['fetchsize'] = 'Maximum size (bytes) fetch.php may download from extern'
$lang['notify'] = 'Send change notifications to this email address';
$lang['registernotify'] = 'Send info on newly registered users to this email address';
$lang['mailfrom'] = 'Email address to use for automatic mails';
+$lang['mailprefix'] = 'Email subject prefix to use for automatic mails';
$lang['gzip_output'] = 'Use gzip Content-Encoding for xhtml';
$lang['gdlib'] = 'GD Lib version';
$lang['im_convert'] = 'Path to ImageMagick\'s convert tool';
diff --git a/lib/plugins/config/lang/et/lang.php b/lib/plugins/config/lang/et/lang.php
new file mode 100644
index 000000000..0ffea1244
--- /dev/null
+++ b/lib/plugins/config/lang/et/lang.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Estonian language file
+ *
+ * @author kristian.kankainen@kuu.la
+ */
diff --git a/lib/plugins/config/lang/eu/lang.php b/lib/plugins/config/lang/eu/lang.php
index 380b00971..a50bd6d4e 100644
--- a/lib/plugins/config/lang/eu/lang.php
+++ b/lib/plugins/config/lang/eu/lang.php
@@ -91,6 +91,7 @@ $lang['useslash'] = 'Erabili barra (/) izen-espazio banatzaile modu
$lang['usedraft'] = 'Automatikoki zirriborroa gorde editatze garaian';
$lang['sepchar'] = 'Orri izenaren hitz banatzailea';
$lang['canonical'] = 'Erabili URL erabat kanonikoak';
+$lang['fnencode'] = 'Non-ASCII fitxategi izenak kodetzeko metodoa.';
$lang['autoplural'] = 'Kontrolatu forma pluralak esteketan';
$lang['compression'] = 'Trinkotze metodoa attic fitxategientzat';
$lang['cachetime'] = 'Adin maximoa cachearentzat (seg)';
@@ -104,6 +105,7 @@ $lang['gdlib'] = 'GD Lib bertsioa';
$lang['im_convert'] = 'ImageMagick-en aldaketa tresnara bidea';
$lang['jpg_quality'] = 'JPG konprimitze kalitatea (0-100)';
$lang['subscribers'] = 'Gaitu orri harpidetza euskarria';
+$lang['subscribe_time'] = 'Harpidetza zerrendak eta laburpenak bidali aurretik pasa beharreko denbora (seg); Denbora honek, recent_days-en ezarritakoa baino txikiagoa behar luke.';
$lang['compress'] = 'Trinkotu CSS eta javascript irteera';
$lang['hidepages'] = 'Ezkutatu kointzidentziak dituzten orriak (espresio erregularrak)';
$lang['send404'] = 'Bidali "HTTP 404/Ez Da Orria Aurkitu" existitzen ez diren orrientzat';
@@ -130,6 +132,7 @@ $lang['proxy____port'] = 'Proxy portua';
$lang['proxy____user'] = 'Proxyaren erabiltzaile izena';
$lang['proxy____pass'] = 'Proxyaren pasahitza ';
$lang['proxy____ssl'] = 'Erabili SSL Proxyra konektatzeko';
+$lang['proxy____except'] = 'URLak detektatzeko espresio erregularra, zeinentzat Proxy-a sahiestu beharko litzatekeen.';
$lang['safemodehack'] = 'Gaitu modu segurua hack-a';
$lang['ftp____host'] = 'FTP zerbitzaria modu seguruarentzat';
$lang['ftp____port'] = 'FTP portua modu seguruarentzat';
@@ -177,3 +180,4 @@ $lang['useheading_o_0'] = 'Inoiz';
$lang['useheading_o_navigation'] = 'Nabigazioa Bakarrik';
$lang['useheading_o_content'] = 'Wiki Edukia Bakarrik';
$lang['useheading_o_1'] = 'Beti';
+$lang['readdircache'] = 'Aintzintasun maximoa readdir cache-rentzat (seg)';
diff --git a/lib/plugins/config/lang/fi/lang.php b/lib/plugins/config/lang/fi/lang.php
index f5c7b911b..b033e312b 100644
--- a/lib/plugins/config/lang/fi/lang.php
+++ b/lib/plugins/config/lang/fi/lang.php
@@ -85,7 +85,7 @@ $lang['disableactions_wikicode'] = 'Näytä lähdekoodi/Vie raakana';
$lang['disableactions_other'] = 'Muut toiminnot (pilkulla erotettuna)';
$lang['sneaky_index'] = 'Oletuksena DokuWiki näyttää kaikki nimiavaruudet index-näkymäsä. Tämä asetus piilottaa ne, joihin käyttäjällä ei ole lukuoikeuksia. Tämä voi piilottaa joitakin sallittuja alinimiavaruuksia. Tästä johtuen index-näkymä voi olla käyttökelvoton joillakin ACL-asetuksilla';
$lang['auth_security_timeout'] = 'Autentikoinnin aikakatkaisu (sekunteja)';
-$lang['securecookie'] = 'Lähetetäänkö HTTPS:n kautta asetetut evästetiedot HTTPS-yhdeydellä? Kytke pois, jos vain wikisi kirjautuminen on suojattu SSL:n avulla, mutta muuten wikiä käytetään ilman suojausta.';
+$lang['securecookie'] = 'Lähetetäänkö HTTPS:n kautta asetetut evästetiedot HTTPS-yhteydellä? Kytke pois, jos vain wikisi kirjautuminen on suojattu SSL:n avulla, mutta muuten wikiä käytetään ilman suojausta.';
$lang['xmlrpc'] = 'Käytä/poista XML-RPC liityntää';
$lang['xmlrpcuser'] = 'Estä XML-RPC:n käyttö pilkulla erotetun listan ryhmille tai käyttäjille. Jätä tyhjäksi salliaksesi käyttö kaikille.';
$lang['updatecheck'] = 'Tarkista päivityksiä ja turvavaroituksia? Tätä varten DokuWikin pitää ottaa yhteys splitbrain.orgiin.';
@@ -94,7 +94,7 @@ $lang['useslash'] = 'Käytä kauttaviivaa nimiavaruuksien erottimen
$lang['usedraft'] = 'Tallenna vedos muokkaustilassa automaattisesti ';
$lang['sepchar'] = 'Sivunimen sanaerotin';
$lang['canonical'] = 'Käytä kanonisoituja URLeja';
-$lang['fnencode'] = 'Muita kuin ASCII merkkejä sisältävien tiedotonimien koodaustapa.';
+$lang['fnencode'] = 'Muita kuin ASCII merkkejä sisältävien tiedostonimien koodaustapa.';
$lang['autoplural'] = 'Etsi monikkomuotoja linkeistä';
$lang['compression'] = 'Attic-tiedostojen pakkausmenetelmä';
$lang['cachetime'] = 'Välimuisti-tiedostojen maksimi-ikä (sek)';
diff --git a/lib/plugins/config/lang/fr/lang.php b/lib/plugins/config/lang/fr/lang.php
index b51c260fc..99e140af5 100644
--- a/lib/plugins/config/lang/fr/lang.php
+++ b/lib/plugins/config/lang/fr/lang.php
@@ -15,6 +15,7 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
$lang['menu'] = 'Paramètres de configuration';
$lang['error'] = 'Paramètres non modifiés en raison d\'une valeur non valide, vérifiez vos réglages et réessayez. <br />Les valeurs erronées sont entourées d\'une bordure rouge.';
@@ -111,6 +112,7 @@ $lang['fetchsize'] = 'Taille maximale (en octets) du fichier que fet
$lang['notify'] = 'Notifier les modifications à cette adresse de courriel';
$lang['registernotify'] = 'Envoyer un courriel annonçant les nouveaux utilisateurs enregistrés à cette adresse';
$lang['mailfrom'] = 'Expéditeur des notifications par courriel du wiki';
+$lang['mailprefix'] = 'Préfixe à utiliser dans les objets des courriels automatiques';
$lang['gzip_output'] = 'Utiliser Content-Encoding gzip pour XHTML';
$lang['gdlib'] = 'Version de GD Lib';
$lang['im_convert'] = 'Chemin vers l\'outil de conversion d\'ImageMagick';
@@ -161,7 +163,7 @@ $lang['userewrite_o_2'] = 'Interne à DokuWiki';
$lang['deaccent_o_0'] = 'off';
$lang['deaccent_o_1'] = 'supprimer les accents';
$lang['deaccent_o_2'] = 'convertir en roman';
-$lang['gdlib_o_0'] = 'GD Lib non disponible';
+$lang['gdlib_o_0'] = 'Librairie GD non disponible';
$lang['gdlib_o_1'] = 'version 1.x';
$lang['gdlib_o_2'] = 'auto-détectée';
$lang['rss_type_o_rss'] = 'RSS 0.91';
diff --git a/lib/plugins/config/lang/he/lang.php b/lib/plugins/config/lang/he/lang.php
index a39d0ab5c..ab4a8928e 100644
--- a/lib/plugins/config/lang/he/lang.php
+++ b/lib/plugins/config/lang/he/lang.php
@@ -7,6 +7,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['menu'] = 'הגדרות תצורה';
$lang['error'] = 'ההגדרות לא עודכנו בגלל ערך לא תקף, נא לעיין בשינויים ולשלוח שנית.
diff --git a/lib/plugins/config/lang/hi/lang.php b/lib/plugins/config/lang/hi/lang.php
index d73b62764..a224fdf7c 100644
--- a/lib/plugins/config/lang/hi/lang.php
+++ b/lib/plugins/config/lang/hi/lang.php
@@ -3,6 +3,7 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
$lang['sepchar'] = 'पृष्ठ का नाम शब्द प्रथक्कर';
$lang['sitemap'] = 'गूगल का सूचना पटल नक्शा बनायें (दिन)';
@@ -10,3 +11,4 @@ $lang['license_o_'] = 'कुछ नहीं चुना';
$lang['typography_o_0'] = 'कुछ नहीं';
$lang['showuseras_o_username'] = 'उपयोगकर्ता का पूर्ण नाम';
$lang['useheading_o_0'] = 'कभी नहीं';
+$lang['useheading_o_1'] = 'हमेशा';
diff --git a/lib/plugins/config/lang/it/intro.txt b/lib/plugins/config/lang/it/intro.txt
index 95e7151f3..617e8c7b5 100644
--- a/lib/plugins/config/lang/it/intro.txt
+++ b/lib/plugins/config/lang/it/intro.txt
@@ -4,6 +4,6 @@ Usa questa pagina per gestire la configurazione della tua installazione DokuWiki
Le impostazioni con lo sfondo rosso chiaro sono protette e non possono essere modificate con questo plugin. Le impostazioni con lo sfondo blu contengono i valori predefiniti, e le impostazioni con lo sfondo bianco sono relative solo a questa particolare installazione. Sia le impostazioni su sfondo blu che quelle su sfondo bianco possono essere modificate.
-Ricordati di premere il pulsante **SALVA** prima di lasciare questa pagina altrimenti le modifiche saranno perse.
+Ricordati di premere il pulsante **SALVA** prima di lasciare questa pagina altrimenti le modifiche andranno perse.
diff --git a/lib/plugins/config/lang/it/lang.php b/lib/plugins/config/lang/it/lang.php
index 5bbc6894f..2208ff86b 100644
--- a/lib/plugins/config/lang/it/lang.php
+++ b/lib/plugins/config/lang/it/lang.php
@@ -12,6 +12,7 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['menu'] = 'Configurazione Wiki';
$lang['error'] = 'Impostazioni non aggiornate a causa di un valore non corretto, controlla le modifiche apportate e salva di nuovo.
@@ -110,6 +111,7 @@ $lang['fetchsize'] = 'Dimensione massima (bytes) scaricabile da fetc
$lang['notify'] = 'Invia notifiche sulle modifiche a questo indirizzo';
$lang['registernotify'] = 'Invia informazioni sui nuovi utenti registrati a questo indirizzo email';
$lang['mailfrom'] = 'Mittente per le mail automatiche';
+$lang['mailprefix'] = 'Prefisso da inserire nell\'oggetto delle mail automatiche';
$lang['gzip_output'] = 'Usa il Content-Encoding gzip per xhtml';
$lang['gdlib'] = 'Versione GD Lib ';
$lang['im_convert'] = 'Percorso per il convertitore di ImageMagick';
@@ -182,7 +184,7 @@ $lang['xsendfile_o_0'] = 'non usare';
$lang['xsendfile_o_1'] = 'Header proprietario lighttpd (prima della versione 1.5)';
$lang['xsendfile_o_2'] = 'Header standard X-Sendfile';
$lang['xsendfile_o_3'] = 'Header proprietario Nginx X-Accel-Redirect';
-$lang['showuseras_o_loginname'] = 'Nome accesso';
+$lang['showuseras_o_loginname'] = 'Nome utente';
$lang['showuseras_o_username'] = 'Nome completo dell\'utente';
$lang['showuseras_o_email'] = 'Indirizzo email dell\'utente (offuscato in base alle impostazioni di sicurezza posta)';
$lang['showuseras_o_email_link'] = 'Indirizzo email dell\'utente come collegamento mailto:';
diff --git a/lib/plugins/config/lang/ja/lang.php b/lib/plugins/config/lang/ja/lang.php
index c3bca045d..9ec416196 100644
--- a/lib/plugins/config/lang/ja/lang.php
+++ b/lib/plugins/config/lang/ja/lang.php
@@ -97,6 +97,7 @@ $lang['useslash'] = 'URL上の名前空間の区切りにスラッ
$lang['usedraft'] = '編集中の自動保存(ドラフト)機能を使用';
$lang['sepchar'] = 'ページ名の単語区切り文字';
$lang['canonical'] = 'canonical URL(正準URL)を使用';
+$lang['fnencode'] = '非アスキーファイル名のエンコーディング方法';
$lang['autoplural'] = '自動複数形処理';
$lang['compression'] = 'アーカイブファイルの圧縮方法';
$lang['cachetime'] = 'キャッシュ保持時間(秒)';
@@ -110,6 +111,7 @@ $lang['gdlib'] = 'GDlibバージョン';
$lang['im_convert'] = 'ImageMagick変換ツールへのパス';
$lang['jpg_quality'] = 'JPG圧縮品質(0-100)';
$lang['subscribers'] = '更新通知機能';
+$lang['subscribe_time'] = '購読リストと概要を送信する期間(秒)。「最近の変更とする期間」で指定した期間より小さくしてください。';
$lang['compress'] = 'CSSとJavaScriptを圧縮';
$lang['hidepages'] = '非公開ページ(Regex)';
$lang['send404'] = '文書が存在しないページに"HTTP404/Page Not Found"を使用';
@@ -136,6 +138,7 @@ $lang['proxy____port'] = 'プロキシ - ポート';
$lang['proxy____user'] = 'プロキシ - ユーザー名';
$lang['proxy____pass'] = 'プロキシ - パスワード';
$lang['proxy____ssl'] = 'プロキシへの接続にsslを使用';
+$lang['proxy____except'] = 'スキップするプロキシのURL正規表現';
$lang['safemodehack'] = 'セーフモード対策を行う';
$lang['ftp____host'] = 'FTP サーバー名(セーフモード対策)';
$lang['ftp____port'] = 'FTP ポート(セーフモード対策)';
@@ -183,3 +186,4 @@ $lang['useheading_o_0'] = '使用しない';
$lang['useheading_o_navigation'] = 'ナビゲーションのみ';
$lang['useheading_o_content'] = 'Wikiの内容のみ';
$lang['useheading_o_1'] = '常に使用する';
+$lang['readdircache'] = 'readdir キャッシュの最大保持期間(秒)';
diff --git a/lib/plugins/config/lang/ko/lang.php b/lib/plugins/config/lang/ko/lang.php
index efac643ab..13f5efefe 100644
--- a/lib/plugins/config/lang/ko/lang.php
+++ b/lib/plugins/config/lang/ko/lang.php
@@ -7,6 +7,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['menu'] = '환경 설정';
$lang['error'] = '잘못된 값때문에 설정들을 변경할 수 없습니다. 수정한 값들을 검사하고 확인을 누르기 바랍니다.
@@ -89,12 +90,15 @@ $lang['sneaky_index'] = '기본적으로, DokuWiki는 색인 목록에
특정 ACL 설정은 색인 사용이 불가능하게 할 수도 있습니다.';
$lang['auth_security_timeout'] = '인증 보안 초과 시간(초)';
$lang['securecookie'] = 'HTTPS로 보내진 쿠키는 HTTPS에만 적용 할까요? 위키의 로그인 페이지만 SSL로 암호화 하고 위키 페이지는 그렇지 않은경우 꺼야 합니다.';
+$lang['xmlrpc'] = 'XML-RPC 인터페이스 지원/무시';
+$lang['xmlrpcuser'] = '주어진 그룹이나 유저들에게만 XML-RPC접근을 허락하려면 컴마로 구분하여 적으세요. 비어두면 모두에게 허용됩니다.';
$lang['updatecheck'] = '업데이트와 보안 문제를 검사(DokuWiki를 splitbrain.org에 연결해야 합니다.)';
$lang['userewrite'] = 'URL rewriting기능 사용';
$lang['useslash'] = 'URL에서 네임스페이스 구분자로 슬래쉬 문자 사용';
$lang['usedraft'] = '편집하는 동안 자동으로 문서 초안 저장';
$lang['sepchar'] = '페이지 이름 단어 구분자';
$lang['canonical'] = '완전한 canonical URL 사용';
+$lang['fnencode'] = '아스키가 아닌 파일이르믈 인코딩 하는 방법.';
$lang['autoplural'] = '링크 연결시 plural폼 검사';
$lang['compression'] = 'attic파일 압축 방법 선택';
$lang['cachetime'] = '최대 캐쉬 생존 시간(초)';
@@ -108,6 +112,7 @@ $lang['gdlib'] = 'GD 라이브러리 버전';
$lang['im_convert'] = 'ImageMagick 위치';
$lang['jpg_quality'] = 'JPG 압축 품질 (0-100)';
$lang['subscribers'] = '페이지 갱신 알람 기능';
+$lang['subscribe_time'] = ' 구독 목록과 요약이 보내질 경과 시간 (초); 이 것은 recent_days에서 설정된 시간보다 작아야 합니다.';
$lang['compress'] = '최적화된 CSS, javascript 출력';
$lang['hidepages'] = '매칭된 페이지 숨기기(정규표현식)';
$lang['send404'] = '존재하지 않는 페이지에 대해 "HTTP 404/Page Not Found" 응답';
@@ -115,7 +120,6 @@ $lang['sitemap'] = '구글 사이트맵 생성(날짜)';
$lang['broken_iua'] = '설치된 시스템에서 ignore_user_abort 기능에 문제가 있으면 색인이 정상적으로 동작하지 않습니다. 이 기능이 IIS+PHP/CGI에서 문제가 있는 것으로 알려졌습니다. 자세한 정보는 <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">Bug 852</a>를 참고하기 바랍니다.';
$lang['xsendfile'] = '웹 서버 static 파일 전송 지원을 위해 X-Sendfile 헤더를 사용한다면 이 옵션을 사용합니다.
웹 서버가 이 기능을 지원해야 합니다.';
-$lang['xmlrpc'] = 'XML-RPC 인터페이스 지원/무시';
$lang['renderer_xhtml'] = '주 (xhtml) 위키 출력 처리기';
$lang['renderer__core'] = '%s (DokuWiki 내부 기능)';
$lang['renderer__plugin'] = '%s (DokuWiki 플러그인)';
@@ -136,6 +140,7 @@ $lang['proxy____port'] = '프록시 서버 포트';
$lang['proxy____user'] = '프록시 사용자 이름';
$lang['proxy____pass'] = '프록시 패스워드';
$lang['proxy____ssl'] = '프록시 연결시 ssl사용';
+$lang['proxy____except'] = '프록시설정이 무시될 URL주소들의 RegEx형식표현';
$lang['safemodehack'] = 'safemode hack기능 사용';
$lang['ftp____host'] = 'safemode hack의 FTP 서버';
$lang['ftp____port'] = 'safemode hack의 FTP port';
@@ -183,3 +188,4 @@ $lang['useheading_o_0'] = '아니요';
$lang['useheading_o_navigation'] = '네비게이션에만';
$lang['useheading_o_content'] = '위키 내용에만';
$lang['useheading_o_1'] = '항상';
+$lang['readdircache'] = 'readdir 캐쉬를 위한 최대 시간 (초)';
diff --git a/lib/plugins/config/lang/la/intro.txt b/lib/plugins/config/lang/la/intro.txt
new file mode 100644
index 000000000..573d34ac1
--- /dev/null
+++ b/lib/plugins/config/lang/la/intro.txt
@@ -0,0 +1,7 @@
+====== Optionum Administratio ======
+
+In hac pagina administratoris optiones mutare et inspicere potes. Auxilia in pagina [[doku>config|conformationis]] sunt, si singulas res uidere uis, i ad paginam [[doku>plugin:config|conformationis]].
+
+Optiones ostensae rubro colore tutae et non nunc mutabiles sunt. Optiones ostensae caeruleo colore praecipuae sunt et optiones ostensae in area alba singulares huic uici sunt. Et caerulae et albae optiones mutabiles sunt.
+
+Memento premere **SERVA** ante quam nouam paginam eas: si hoc non facias, mutata amissa sunt. \ No newline at end of file
diff --git a/lib/plugins/config/lang/la/lang.php b/lib/plugins/config/lang/la/lang.php
new file mode 100644
index 000000000..689ea004d
--- /dev/null
+++ b/lib/plugins/config/lang/la/lang.php
@@ -0,0 +1,181 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['menu'] = 'Optiones Administrationis';
+$lang['error'] = 'Optiones non nouatae ob errores: rursum temptat. Errores rubro colore signati sunt.';
+$lang['updated'] = 'Optiones feliciter nouatae.';
+$lang['nochoice'] = '(nulla optio est)';
+$lang['locked'] = 'Optio documenti non nouata est, <br/> optiones et facultates documenti inspicis.';
+$lang['danger'] = 'CAVE: si has optiones mutabis, in administrationis indicem non inire potes.';
+$lang['warning'] = 'CAVE: si hae optiones mutabis, graues errores erunt.';
+$lang['security'] = 'CAVE: si hae optiones mutabis, graues errores erunt.';
+$lang['_configuration_manager'] = 'Optionum administratio';
+$lang['_header_dokuwiki'] = 'Vicis Optiones';
+$lang['_header_plugin'] = 'Addendorum Optiones';
+$lang['_header_template'] = 'Vicis Formae Optiones';
+$lang['_header_undefined'] = 'Variae Optiones';
+$lang['_basic'] = 'Praecipuae Optiones';
+$lang['_display'] = 'Speciei Optiones';
+$lang['_authentication'] = 'Confirmationis Optiones';
+$lang['_anti_spam'] = 'In Mala Optiones';
+$lang['_editing'] = 'Recensendi Optiones';
+$lang['_links'] = 'Nexi Optiones';
+$lang['_media'] = 'Visiuorum Optiones';
+$lang['_advanced'] = 'Maiores Optiones';
+$lang['_network'] = 'Interretis Optiones';
+$lang['_plugin_sufix'] = 'Addendorum Optiones';
+$lang['_template_sufix'] = 'Vicis Formae Optiones';
+$lang['_msg_setting_undefined'] = 'Res codicum sine optionibus.';
+$lang['_msg_setting_no_class'] = 'Classes sine optionibus';
+$lang['_msg_setting_no_default'] = 'Nihil';
+$lang['fmode'] = 'Documentum creandum ratio';
+$lang['dmode'] = 'Scrinia creandam ratio';
+$lang['lang'] = 'Linguae optiones';
+$lang['basedir'] = 'Computatoris seruitoris domicilium (ex. <code>/dokuwiki/</code>). Nihil scribere si id machinatione agnoscere uis.';
+$lang['baseurl'] = 'Computatoris seruitoris VRL (ex. <code>http://www.yourserver.com</code>). Nihil scribere si id machinatione agnoscere uis.';
+$lang['savedir'] = 'Documentorum seruatorum domicilium';
+$lang['start'] = 'Nomen paginae dominicae';
+$lang['title'] = 'Vicis titulus';
+$lang['template'] = 'Vicis forma';
+$lang['license'] = 'Sub quibus legibus uicem creare uin?';
+$lang['fullpath'] = 'Totum domicilium paginae in pedibus scribis.';
+$lang['recent'] = 'Extremae mutationes';
+$lang['breadcrumbs'] = 'Numerus uestigiorum';
+$lang['youarehere'] = 'Ordo uestigiorum';
+$lang['typography'] = 'Signa supponentes';
+$lang['htmlok'] = 'HTML aptum facere';
+$lang['phpok'] = 'PHP aptum facere';
+$lang['dformat'] = 'Forma diei (uide paginam <a href="http://www.php.net/strftime">de diebus</a>)';
+$lang['signature'] = 'Subscriptio';
+$lang['toptoclevel'] = 'Gradus maior tabularum argumentorum';
+$lang['tocminheads'] = 'Minimus numerus capitum';
+$lang['maxtoclevel'] = 'Maximus numerus tabularum argumentorum';
+$lang['maxseclevel'] = 'Maxima pars gradus recensendi';
+$lang['camelcase'] = 'SignaContinua nexis apta facere';
+$lang['deaccent'] = 'Titulus paginarum abrogare';
+$lang['useheading'] = 'Capite primo ut titulo paginae uti';
+$lang['refcheck'] = 'Documenta uisiua inspicere';
+$lang['refshow'] = 'Numerus documentorum ostendorum';
+$lang['allowdebug'] = '<b>ineptum facias si non necessarium!</b> aptum facere';
+$lang['usewordblock'] = 'Malum interretiale ob uerba delere';
+$lang['indexdelay'] = 'Tempus transitum in ordinando (sec)';
+$lang['relnofollow'] = 'rel="nofollow" externis nexis uti';
+$lang['mailguard'] = 'Cursus interretiales abscondere';
+$lang['iexssprotect'] = 'Documenta nouata ob mala JavaScript uel HTML inspicere';
+$lang['showuseras'] = 'Quid, cum Sodalem, qui extremus paginam recensuit, ostendat, scribere';
+$lang['useacl'] = 'Aditus inspectionis indicibus uti';
+$lang['autopasswd'] = 'Tessera machinatione generata';
+$lang['authtype'] = 'Confirmationis finis';
+$lang['passcrypt'] = 'Ratio tesserae tuendae';
+$lang['defaultgroup'] = 'Grex communis';
+$lang['superuser'] = 'Magister\stra - grex, Sodalis uel index diuisus a uigulis sodalis1,@grex,sodalis2 cum plenis facultatibus sine ICA optionum termino';
+$lang['manager'] = 'Administrator - grex, Sodalis uel index diuisus a uigulis sodalis1,@grex,sodalis2 cum certis facultatibus';
+$lang['profileconfirm'] = 'Mutationes tessera confirmanda sunt';
+$lang['disableactions'] = 'Vicis actiones ineptas facere';
+$lang['disableactions_check'] = 'Inspicere';
+$lang['disableactions_subscription'] = 'Inscribe/Delere';
+$lang['disableactions_wikicode'] = 'Fontem uidere/Rudem transcribere';
+$lang['disableactions_other'] = 'Aliae actiones (uirgulis diuisae)';
+$lang['sneaky_index'] = 'Hic uicis omnia genera in indice inserit. Si ineptam hanc optionem facias, solum ea, quae Sodales uidere possunt, in indice erunt. Hoc suggreges et suggenera abscondere potest.';
+$lang['auth_security_timeout'] = 'Confirmationis Tempus (secundis)';
+$lang['securecookie'] = 'Formulae HTTPS mittine solum per HTTPS possunt? Ineptam hanc optio facias, si accessus uicis tutus est, sed interretis non.';
+$lang['xmlrpc'] = 'Aptam\Ineptam XML-RPC administrationem facere';
+$lang['xmlrpcuser'] = 'Accessus XML-RPC gregibus uel Sodalibus in hoc indice astringere. Nihil scribere ut omnes accessum habeant';
+$lang['updatecheck'] = 'Nouationes et fiducias inspicerene? Hic uicis connectere splitbrain.org debes.';
+$lang['userewrite'] = 'VRL formosis uti';
+$lang['useslash'] = 'Repagula in URL, ut genera diuidas, uti';
+$lang['usedraft'] = 'Propositum in recensione machinatione seruatur';
+$lang['sepchar'] = 'Signum, quod paginas diuidit';
+$lang['canonical'] = 'VRL perfecto uti';
+$lang['fnencode'] = 'Ratio quae nomen documentorum non-ASCII codificit';
+$lang['autoplural'] = 'Pluralia in nexis inspicere';
+$lang['compression'] = 'Ratio compressionis documentis "attic"';
+$lang['cachetime'] = 'Maximum tempus formulis (sec)';
+$lang['locktime'] = 'Maximum tempus documentis inclusis (sec)';
+$lang['fetchsize'] = 'Maximum pondus (bytes), quod fetch.php ab externis onerare potest';
+$lang['notify'] = 'Adnotationis mutationes ad hunc cursum mittere';
+$lang['registernotify'] = 'De nouis Sodalibus ad hunc cursum notas mittere';
+$lang['mailfrom'] = 'Cursus interretialis, quo in cursibus uti';
+$lang['gzip_output'] = 'gzip Argumentum-Codificans xhtml uti';
+$lang['gdlib'] = 'GD Lib forma';
+$lang['im_convert'] = 'Domicilium machinae ImageMagick\'s';
+$lang['jpg_quality'] = 'JPG compressio colorum (0-100)';
+$lang['subscribers'] = 'Inscriptionis paginarum auxilium aptus facere';
+$lang['subscribe_time'] = 'Tempus post quod inscriptionum index et summa missa sunt (sec); Hic minor quam tempus declaratum fortasse est.';
+$lang['compress'] = 'CSS et javascript dimissio';
+$lang['hidepages'] = 'Paginas congruentes abscondere (uerba regularia)';
+$lang['send404'] = 'Mitte "HTTP 404/ Pagina non reperta" si paginae non sunt.';
+$lang['sitemap'] = 'Google formam situs gignere (dies)';
+$lang['broken_iua'] = 'ignore_user_abort functio inepta estne? Hoc indicem quaestionum, quae non aptae sunt, creare non potest. IIS+PHP/CGI ineptum est. Vide <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">Bug 852</a>';
+$lang['xsendfile'] = 'X-Sendfile utine ut seruitor interretialis documenta firma creet? Tuus seruitor interretialis hunc pati debes.';
+$lang['renderer_xhtml'] = 'Quid dimittere ut hoc in principio uicis (xhtml) utaris';
+$lang['renderer__core'] = '%s (uicis nucleus)';
+$lang['renderer__plugin'] = '%s (addenda)';
+$lang['rememberme'] = 'Formulas aditus aptas facere (memento me)';
+$lang['rss_type'] = 'XML summae genus';
+$lang['rss_linkto'] = 'XML summae connectio';
+$lang['rss_content'] = 'Quid in XML summis uidere?';
+$lang['rss_update'] = 'XML summae renouationis interuallum temporis';
+$lang['recent_days'] = 'Numerus mutationum recentium tenendorum (dies)';
+$lang['rss_show_summary'] = 'XML summa titulos ostendit';
+$lang['target____wiki'] = 'Fenestra nexis internis';
+$lang['target____interwiki'] = 'Fenestra nexis inter uicem';
+$lang['target____extern'] = 'Fenestra nexis externis';
+$lang['target____media'] = 'Fenestra nexis uisiuis';
+$lang['target____windows'] = 'Fenestra nexis fenestrarum';
+$lang['proxy____host'] = 'Proxis seruitoris nomen';
+$lang['proxy____port'] = 'Proxis portus';
+$lang['proxy____user'] = 'Proxis nomen sodalis';
+$lang['proxy____pass'] = 'Proxis tessera';
+$lang['proxy____ssl'] = 'SSL ut connectas uti';
+$lang['proxy____except'] = 'Verba, ut VRL inspicias, quibus Proxis non agnoscitur.';
+$lang['safemodehack'] = 'Ad tempus conseruatio apta facere';
+$lang['ftp____host'] = 'FTP computator seruitor ad tempus seruatis';
+$lang['ftp____port'] = 'FTP ianua ad tempus seruatis';
+$lang['ftp____user'] = 'FTP Sodalis ad tempus seruatis';
+$lang['ftp____pass'] = 'FTP tessera ad tempus seruatis';
+$lang['ftp____root'] = 'FTP domicilium ad tempus seruatis';
+$lang['license_o_'] = 'Nihil electum';
+$lang['typography_o_0'] = 'neuter';
+$lang['typography_o_1'] = 'sine singulis uirgulis';
+$lang['typography_o_2'] = 'cum singulis uirgulis';
+$lang['userewrite_o_0'] = 'neuter';
+$lang['userewrite_o_1'] = '.htaccess';
+$lang['userewrite_o_2'] = 'DokuWiki domesticus';
+$lang['deaccent_o_0'] = 'ex';
+$lang['deaccent_o_1'] = 'accentum tollere';
+$lang['deaccent_o_2'] = 'Latinis litteris';
+$lang['gdlib_o_0'] = 'GD Lib inepta';
+$lang['gdlib_o_1'] = 'Forma 1.x';
+$lang['gdlib_o_2'] = 'Machinatione inspicere';
+$lang['rss_type_o_rss'] = 'RSS 0.91';
+$lang['rss_type_o_rss1'] = 'RSS 1.0';
+$lang['rss_type_o_rss2'] = 'RSS 2.0';
+$lang['rss_type_o_atom'] = 'Atom 0.3';
+$lang['rss_type_o_atom1'] = 'Atom 1.0';
+$lang['rss_content_o_abstract'] = 'Summa';
+$lang['rss_content_o_diff'] = 'Comparatio una';
+$lang['rss_content_o_htmldiff'] = 'Tabulae HTML formatae comparatae';
+$lang['rss_content_o_html'] = 'Pagina cum HTML';
+$lang['rss_linkto_o_diff'] = 'discrimina uidere';
+$lang['rss_linkto_o_page'] = 'pagina recensita';
+$lang['rss_linkto_o_rev'] = 'recensionum index';
+$lang['rss_linkto_o_current'] = 'hic pagina';
+$lang['compression_o_0'] = 'neuter';
+$lang['compression_o_gz'] = 'gzip';
+$lang['compression_o_bz2'] = 'bz2';
+$lang['xsendfile_o_0'] = 'Noli uti';
+$lang['xsendfile_o_2'] = 'Praecipuus X-Sendfile';
+$lang['xsendfile_o_3'] = 'Proprietarius Nginx X-Accel-Redirect';
+$lang['showuseras_o_loginname'] = 'Sodalis nomen';
+$lang['showuseras_o_username'] = 'Sodalis nomen uerum';
+$lang['showuseras_o_email'] = 'Sodalis cursus interretialis (absconditus ut is tueratur)';
+$lang['showuseras_o_email_link'] = 'Sodalis cursus interretialis ut mailto: nexum';
+$lang['useheading_o_0'] = 'Numquam';
+$lang['useheading_o_navigation'] = 'Solum adspicere';
+$lang['useheading_o_content'] = 'Solum uicis argumentum';
+$lang['useheading_o_1'] = 'Semper';
+$lang['readdircache'] = 'Maximum tempus readdir (sec)';
diff --git a/lib/plugins/config/lang/nl/lang.php b/lib/plugins/config/lang/nl/lang.php
index a9e0d935f..1b630b12e 100644
--- a/lib/plugins/config/lang/nl/lang.php
+++ b/lib/plugins/config/lang/nl/lang.php
@@ -109,6 +109,7 @@ $lang['fetchsize'] = 'Maximum grootte (bytes) die fetch.php mag down
$lang['notify'] = 'Stuur e-mailnotificaties naar dit adres';
$lang['registernotify'] = 'Stuur informatie over nieuw aangemelde gebruikers naar dit e-mailadres';
$lang['mailfrom'] = 'E-mailadres voor automatische e-mail';
+$lang['mailprefix'] = 'Te gebruiken voorvoegsel voor onderwerp automatische email';
$lang['gzip_output'] = 'Gebruik gzip Content-Encoding voor xhtml';
$lang['gdlib'] = 'Versie GD Lib ';
$lang['im_convert'] = 'Path naar ImageMagick\'s convert tool';
diff --git a/lib/plugins/config/lang/pt/lang.php b/lib/plugins/config/lang/pt/lang.php
index 5b88f4bfc..c0ada0a26 100644
--- a/lib/plugins/config/lang/pt/lang.php
+++ b/lib/plugins/config/lang/pt/lang.php
@@ -94,6 +94,7 @@ $lang['useslash'] = 'Usar a barra como separador de espaços de nom
$lang['usedraft'] = 'Guardar o rascunho automaticamente durante a edição';
$lang['sepchar'] = 'Separador de palavras no nome da página';
$lang['canonical'] = 'Usar URLs absolutas (http://servidor/caminho)';
+$lang['fnencode'] = 'Método de codificar nomes de ficheiro não-ASCII.';
$lang['autoplural'] = 'Verificar formas plurais nos links';
$lang['compression'] = 'Método de compressão para histórico';
$lang['cachetime'] = 'Idade máxima para cache (seg.)';
@@ -102,11 +103,13 @@ $lang['fetchsize'] = 'Tamanho máximo (bytes) que o fetch.php pode t
$lang['notify'] = 'Enviar notificações de mudanças para este endereço de email';
$lang['registernotify'] = 'Enviar informações de utilizadores registados para este endereço de email';
$lang['mailfrom'] = 'Endereço de email a ser utilizado para mensagens automáticas';
+$lang['mailprefix'] = 'Prefixo de email a ser utilizado para mensagens automáticas';
$lang['gzip_output'] = 'Usar "Content-Encoding" do gzip para o código xhtml';
$lang['gdlib'] = 'Versão GD Lib';
$lang['im_convert'] = 'Caminho para a ferramenta "convert" do ImageMagick';
$lang['jpg_quality'] = 'Compressão/Qualidade JPG (0-100)';
$lang['subscribers'] = 'Habilitar o suporte a subscrição de páginas ';
+$lang['subscribe_time'] = 'Tempo após o qual as listas de subscrição e "digests" são enviados (seg.); Isto deve ser inferior ao tempo especificado em recent_days.';
$lang['compress'] = 'Compactar as saídas de CSS e JavaScript';
$lang['hidepages'] = 'Esconder páginas correspondentes (expressões regulares)';
$lang['send404'] = 'Enviar "HTTP 404/Página não encontrada" para páginas não existentes';
@@ -133,6 +136,7 @@ $lang['proxy____port'] = 'Porta de Proxy';
$lang['proxy____user'] = 'Nome de utilizador Proxy';
$lang['proxy____pass'] = 'Password de Proxy ';
$lang['proxy____ssl'] = 'Usar SSL para conectar ao proxy';
+$lang['proxy____except'] = 'Expressão regular para condizer URLs para os quais o proxy deve ser saltado.';
$lang['safemodehack'] = 'Habilitar modo de segurança';
$lang['ftp____host'] = 'Servidor FTP para o modo de segurança';
$lang['ftp____port'] = 'Porta de FTP para o modo de segurança';
@@ -180,3 +184,4 @@ $lang['useheading_o_0'] = 'Nunca';
$lang['useheading_o_navigation'] = 'Apenas Navegação';
$lang['useheading_o_content'] = 'Apenas Conteúdo Wiki';
$lang['useheading_o_1'] = 'Sempre';
+$lang['readdircache'] = 'Idade máxima para a cache de "readdir" (seg)';
diff --git a/lib/plugins/config/lang/ro/lang.php b/lib/plugins/config/lang/ro/lang.php
index 7eb22c341..c6457f311 100644
--- a/lib/plugins/config/lang/ro/lang.php
+++ b/lib/plugins/config/lang/ro/lang.php
@@ -104,6 +104,7 @@ $lang['fetchsize'] = 'Dimensiunea maximă (byte) pe care fetch.php p
$lang['notify'] = 'Trimite notificări privind modificările pe această adresă de email';
$lang['registernotify'] = 'Trimite informare noilor utilizatori înregistraţi pe această adresă de email';
$lang['mailfrom'] = 'Adresa de email utilizată pentru mailuri automate';
+$lang['mailprefix'] = 'Prefix subiect e-mail de folosit pentru mail-uri automate';
$lang['gzip_output'] = 'Foloseşte gzip pentru codarea conţinutului xhtml';
$lang['gdlib'] = 'Versiunea GD Lib';
$lang['im_convert'] = 'Calea către instrumentul de conversie ImageMagick';
@@ -136,6 +137,7 @@ $lang['proxy____port'] = 'Port Proxy';
$lang['proxy____user'] = 'Nume utilizator Proxy';
$lang['proxy____pass'] = 'Parolă Proxy';
$lang['proxy____ssl'] = 'Foloseşte SSL pentru conectare la Proxy';
+$lang['proxy____except'] = 'Expresie regulară de potrivit cu URL-uri pentru care proxy-ul trebuie păsuit.';
$lang['safemodehack'] = 'Activează safemode hack';
$lang['ftp____host'] = 'Server FTP pentru safemode hack';
$lang['ftp____port'] = 'Port FTP pentru safemode hack';
@@ -183,3 +185,4 @@ $lang['useheading_o_0'] = 'Niciodată';
$lang['useheading_o_navigation'] = 'Doar navigare';
$lang['useheading_o_content'] = 'Doar conţinutul Wiki';
$lang['useheading_o_1'] = 'Întotdeauna';
+$lang['readdircache'] = 'Vârsta maximă depozitare readdir (sec)';
diff --git a/lib/plugins/config/lang/ru/intro.txt b/lib/plugins/config/lang/ru/intro.txt
index c66a69e64..a629d9332 100644
--- a/lib/plugins/config/lang/ru/intro.txt
+++ b/lib/plugins/config/lang/ru/intro.txt
@@ -1,9 +1,9 @@
====== Настройки вики ======
-Здесь вы можете изменить настройки вашей «ДокуВики». Для справки по поводу конкретных опций смотрите [[doku>config]]. Дополнительные детали об этом плагине доступны здесь: [[doku>plugin:config]].
+Здесь вы можете изменить настройки своей «ДокуВики». Для справки по поводу конкретных опций смотрите [[doku>config]]. Дополнительные детали об этом плагине доступны здесь: [[doku>plugin:config]].
Настройки, отображаемые на светло-красном фоне, защищены от изменений и не могут быть отредактированы с помощью этого плагина. Голубым фоном отмечены настройки со значениями по умолчанию, а белым фоном — настройки, которые были локально изменены для этой конкретной «ДокуВики». Как голубые, так и белые настройки доступны для изменения.
-Не забудьте нажать кнопку **Сохранить** перед тем, как покинуть эту страницу, иначе все ваши изменения будут потеряны.
+Не забудьте нажать кнопку «**Сохранить**» перед тем, как покинуть эту страницу, иначе все ваши изменения будут потеряны.
diff --git a/lib/plugins/config/lang/ru/lang.php b/lib/plugins/config/lang/ru/lang.php
index 167c54eea..f29257a28 100644
--- a/lib/plugins/config/lang/ru/lang.php
+++ b/lib/plugins/config/lang/ru/lang.php
@@ -14,13 +14,14 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['menu'] = 'Настройки вики';
-$lang['error'] = 'Настройки не были сохранены из-за ошибки в одном из значений. Пожалуйста, проверьте ваши изменения и попробуйте еще раз.<br />Неправильные значения будут обведены красной рамкой.';
+$lang['error'] = 'Настройки не были сохранены из-за ошибки в одном из значений. Пожалуйста, проверьте свои изменения и попробуйте ещё раз.<br />Неправильные значения будут обведены красной рамкой.';
$lang['updated'] = 'Настройки успешно сохранены.';
$lang['nochoice'] = '(нет других вариантов)';
-$lang['locked'] = 'Файл настройки недоступен для изменения. Если это не специально, <br />
-убедитесь, что файл локальной настройки имеет правильное имя и права доступа.';
+$lang['locked'] = 'Файл настройки недоступен для изменения. Если это не специально, <br />убедитесь, что файл локальной настройки имеет правильное имя и права доступа.';
$lang['danger'] = 'Внимание: изменение этой опции может сделать вашу вики и меню конфигурации недоступными.';
$lang['warning'] = 'Предостережение: изменение этой опции может вызвать непредсказуемое поведение.';
$lang['security'] = 'Предостережение по безопасности: изменение этой опции может вызвать риск, связанный с безопасностью.';
@@ -63,7 +64,7 @@ $lang['phpok'] = 'Разрешить PHP';
$lang['dformat'] = 'Формат даты и времени';
$lang['signature'] = 'Шаблон подписи';
$lang['toptoclevel'] = 'Мин. уровень в содержании';
-$lang['tocminheads'] = 'Минимальное количество заголовков, при котором будет составлено содержание';
+$lang['tocminheads'] = 'Мин. количество заголовков, при котором будет составлено содержание';
$lang['maxtoclevel'] = 'Макс. уровень в содержании';
$lang['maxseclevel'] = 'Макс. уровень для правки';
$lang['camelcase'] = 'Использовать ВикиРегистр для ссылок';
@@ -84,22 +85,22 @@ $lang['authtype'] = 'Механизм аутентификации'
$lang['passcrypt'] = 'Метод шифрования пароля';
$lang['defaultgroup'] = 'Группа по умолчанию';
$lang['superuser'] = 'Суперпользователь — группа или пользователь с полным доступом ко всем страницам и функциям администрирования, независимо от установок ACL. Перечень разделяйте запятыми: user1,@group1,user2';
-$lang['manager'] = 'Менеджер — группа или пользователь с доступом к определенным функциям управления. Перечень разделяйте запятыми: user1,@group1,user2';
+$lang['manager'] = 'Менеджер — группа или пользователь с доступом к определённым функциям управления. Перечень разделяйте запятыми: user1,@group1,user2';
$lang['profileconfirm'] = 'Пароль для изменения профиля';
$lang['disableactions'] = 'Заблокировать операции «ДокуВики»';
$lang['disableactions_check'] = 'Проверка';
$lang['disableactions_subscription'] = 'Подписка/Отмена подписки';
$lang['disableactions_wikicode'] = 'Показ/экспорт исходного текста';
$lang['disableactions_other'] = 'Другие операции (через запятую)';
-$lang['sneaky_index'] = 'По умолчанию, «ДокуВики» показывает в индексе страниц все пространства имен. Включение этой опции скроет пространства имен, для которых пользователь не имеет прав чтения. Это может привести к скрытию доступных вложенных пространств имен и потере функциональности индекса страниц при некоторых конфигурациях прав доступа.';
+$lang['sneaky_index'] = 'По умолчанию, «ДокуВики» показывает в индексе страниц все пространства имён. Включение этой опции скроет пространства имён, для которых пользователь не имеет прав чтения. Это может привести к скрытию доступных вложенных пространств имён и потере функциональности индекса страниц при некоторых конфигурациях прав доступа.';
$lang['auth_security_timeout'] = 'Интервал для безопасности авторизации (сек.)';
$lang['securecookie'] = 'Должны ли куки (cookies), выставленные через HTTPS, отправляться браузером только через HTTPS. Отключите эту опцию в случае, когда только логин вашей вики передаётся через SSL, а обычный просмотр осуществляется в небезопасном режиме.';
$lang['xmlrpc'] = 'Включить/выключить XML-RPC интерфейс.';
-$lang['xmlrpcuser'] = 'Запретить XML-RPC доступ для списка групп и пользователей, перечисленных через запятую. Оставьте пустым, если хотите оставить доступ всем.';
-$lang['updatecheck'] = 'Проверять наличие обновлений и предупреждений о безопасности? Для этого «ДокуВики» потребуется связываться со <a href="http://www.splitbrain.org/">splitbrain.org</a>.';
+$lang['xmlrpcuser'] = 'Запретить XML-RPC-доступ для списка групп и пользователей, перечисленных через запятую. Оставьте пустым, если хотите оставить доступ всем.';
+$lang['updatecheck'] = 'Проверять наличие обновлений и предупреждений о безопасности? Для этого «ДокуВики» потребуется связываться с сайтом <a href="http://www.splitbrain.org/">splitbrain.org</a>.';
$lang['userewrite'] = 'Удобочитаемые адреса (URL)';
$lang['useslash'] = 'Использовать слэш';
-$lang['usedraft'] = 'Автоматически сохранять черновик в время правки';
+$lang['usedraft'] = 'Автоматически сохранять черновик во время правки';
$lang['sepchar'] = 'Разделитель слов в имени страницы';
$lang['canonical'] = 'Полные канонические адреса (URL)';
$lang['fnencode'] = 'Метод кодирования имён файлов, записанных не ASCII-символами.';
@@ -111,18 +112,19 @@ $lang['fetchsize'] = 'Максимальный размер файл
$lang['notify'] = 'Электронный адрес для извещений';
$lang['registernotify'] = 'Посылать информацию о новых зарегистрированных пользователях на этот электронный адрес';
$lang['mailfrom'] = 'Электронный адрес вики (От:)';
+$lang['mailprefix'] = 'Префикс используемый для автоматического письма станет темой сообщений';
$lang['gzip_output'] = 'Использовать gzip-сжатие для xhtml';
$lang['gdlib'] = 'Версия LibGD';
$lang['im_convert'] = 'Путь к ImageMagick';
-$lang['jpg_quality'] = 'Качество сжатия JPG (0–100). Значение о умолчнию — 70.';
+$lang['jpg_quality'] = 'Качество сжатия JPG (0–100). Значение по умолчанию — 70.';
$lang['subscribers'] = 'Разрешить подписку на изменения';
-$lang['subscribe_time'] = 'Интервал рассылки подписок и сводок (сек.); Должен быть меньше, чем значение, указанное в recent_days.';
+$lang['subscribe_time'] = 'Интервал рассылки подписок и сводок (сек.). Должен быть меньше, чем значение, указанное в recent_days.';
$lang['compress'] = 'Сжимать файлы CSS и javascript';
$lang['hidepages'] = 'Скрыть страницы (рег. выражение)';
$lang['send404'] = 'Посылать «HTTP404/Page Not Found»';
$lang['sitemap'] = 'Число дней, через которое нужно создавать (обновлять) карту сайта для поисковиков (Гугл, Яндекс и др.)';
$lang['broken_iua'] = 'Возможно, функция ignore_user_abort не работает в вашей системе? Это может привести к потере функциональности индексирования поиска. Эта проблема присутствует, например, в IIS+PHP/CGI. Для дополнительной информации смотрите <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">баг 852</a>.';
-$lang['xsendfile'] = 'Используете заголовок X-Sendfile для загрузки файлов на вебсервер? Ваш вебсервер должен поддерживать это.';
+$lang['xsendfile'] = 'Используете заголовок X-Sendfile для загрузки файлов на веб-сервер? Ваш веб-сервер должен поддерживать это.';
$lang['renderer_xhtml'] = 'Обработчик основного (xhtml) вывода вики';
$lang['renderer__core'] = '%s (ядро dokuwiki)';
$lang['renderer__plugin'] = '%s (плагин)';
@@ -138,18 +140,18 @@ $lang['target____interwiki'] = 'target для ссылок между вики
$lang['target____extern'] = 'target для внешних ссылок';
$lang['target____media'] = 'target для ссылок на медиафайлы';
$lang['target____windows'] = 'target для ссылок на сетевые каталоги';
-$lang['proxy____host'] = 'proxy - адрес';
-$lang['proxy____port'] = 'proxy - порт';
-$lang['proxy____user'] = 'proxy - имя пользователя';
-$lang['proxy____pass'] = 'proxy - пароль';
-$lang['proxy____ssl'] = 'proxy - ssl';
+$lang['proxy____host'] = 'proxy-адрес';
+$lang['proxy____port'] = 'proxy-порт';
+$lang['proxy____user'] = 'proxy-имя пользователя';
+$lang['proxy____pass'] = 'proxy-пароль';
+$lang['proxy____ssl'] = 'proxy-ssl';
$lang['proxy____except'] = 'Регулярное выражение для адресов (URL), для которых прокси должен быть пропущен.';
$lang['safemodehack'] = 'Включить обход safemode (хак)';
-$lang['ftp____host'] = 'ftp - адрес';
-$lang['ftp____port'] = 'ftp - порт';
-$lang['ftp____user'] = 'ftp - имя пользователя';
-$lang['ftp____pass'] = 'ftp - пароль';
-$lang['ftp____root'] = 'ftp - корневая директория';
+$lang['ftp____host'] = 'ftp-адрес';
+$lang['ftp____port'] = 'ftp-порт';
+$lang['ftp____user'] = 'ftp-имя пользователя';
+$lang['ftp____pass'] = 'ftp-пароль';
+$lang['ftp____root'] = 'ftp-корневая директория';
$lang['license_o_'] = 'Не выбрано';
$lang['typography_o_0'] = 'нет';
$lang['typography_o_1'] = 'Только двойные кавычки';
@@ -185,10 +187,10 @@ $lang['xsendfile_o_2'] = 'Стандартный заголовок X-Se
$lang['xsendfile_o_3'] = 'Проприетарный заголовок Nginx X-Accel-Redirect';
$lang['showuseras_o_loginname'] = 'Логин';
$lang['showuseras_o_username'] = 'Полное имя пользователя';
-$lang['showuseras_o_email'] = 'Адрес электронной почты пользователя (зашифрован согласно настройкам mailguard)';
-$lang['showuseras_o_email_link'] = 'Адрес электронной почты пользователя в виде ссылки mailto:';
+$lang['showuseras_o_email'] = 'Адрес электропочты в шифрованном виде (см. mailguard)';
+$lang['showuseras_o_email_link'] = 'Адрес электропочты в виде ссылки mailto:';
$lang['useheading_o_0'] = 'Никогда';
$lang['useheading_o_navigation'] = 'Только навигация';
$lang['useheading_o_content'] = 'Только содержимое вики';
$lang['useheading_o_1'] = 'Всегда';
-$lang['readdircache'] = 'Максимальное время жизни кэша readdir (сек)';
+$lang['readdircache'] = 'Максимальное время жизни кэша readdir (сек.)';
diff --git a/lib/plugins/config/lang/sl/intro.txt b/lib/plugins/config/lang/sl/intro.txt
new file mode 100644
index 000000000..506cd34bd
--- /dev/null
+++ b/lib/plugins/config/lang/sl/intro.txt
@@ -0,0 +1,7 @@
+====== Splošne nastavitve ======
+
+Na tej strani je mogoče spreminjati nastavitve sistema DokuWiki. Pomoč o posameznih nastavitvah je na voljo med [[doku>config|nastavitvami]]. Več podrobnosti o vstavku je na voljo na [[doku>plugin:config|nastavitvami vstavka]].
+
+Nastavitve označene s svetlo rdečim ozadjem so zaščitene in jih s tem vstavkom ni mogoče spreminjati. Nastavitve označene s svetlo modrim ozadjem so privzete vrednosti in nastavitve z belim ozadjem so tiste, ki so bile določene krajevno posebej za to nastavitev. Spreminjati je mogoče vrednosti označene z modrimi in belim ozadjem.
+
+Spremembe je treba **shraniti**, da se uveljavijo, sicer se spremembe prezrejo.
diff --git a/lib/plugins/config/lang/sl/lang.php b/lib/plugins/config/lang/sl/lang.php
index 52b88a053..dadd01595 100644
--- a/lib/plugins/config/lang/sl/lang.php
+++ b/lib/plugins/config/lang/sl/lang.php
@@ -4,21 +4,183 @@
*
* @author Dejan Levec <webphp@gmail.com>
* @author Boštjan Seničar <senicar@gmail.com>
+ * @author Gregor Skumavc (grega.skumavc@gmail.com)
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
-$lang['lang'] = 'Jezik';
+
+$lang['menu'] = 'Splošne nastavitve';
+$lang['error'] = 'Nastavitve niso shranjene zaradi neveljavne vrednosti.<br />Neveljavna vrednost je označena z rdečim robom vnosnega polja.';
+$lang['updated'] = 'Nastavitve so uspešno posodobljene.';
+$lang['nochoice'] = '(ni drugih možnosti na voljo)';
+$lang['locked'] = 'Nastavitvene datoteke ni mogoče posodobiti.<br />Preverite dovoljenja za spreminjanje in ime nastavitvene datoteke.';
+$lang['danger'] = 'Opozorilo: spreminjanje te možnosti lahko povzroči težave v delovanju sistema wiki.';
+$lang['warning'] = 'Opozorilo: spreminjanje te možnosti lahko vpliva na pravilno delovanje sistema wiki.';
+$lang['security'] = 'Varnostno opozorilo: spreminjanje te možnosti lahko vpliva na varnost sistema.';
+$lang['_configuration_manager'] = 'Upravljalnik nastavitev';
+$lang['_header_dokuwiki'] = 'Nastavitve DokuWiki';
+$lang['_header_plugin'] = 'Nastavitve vstavkov';
+$lang['_header_template'] = 'Nastavitve predlog';
+$lang['_header_undefined'] = 'Neopredeljene nastavitve';
+$lang['_basic'] = 'Osnovne nastavitve';
+$lang['_display'] = 'Nastavitve prikazovanja';
+$lang['_authentication'] = 'Nastavitve overjanja';
+$lang['_anti_spam'] = 'Nastavitve neželenih sporočil (Anti-Spam)';
+$lang['_editing'] = 'Nastavitve urejanja';
+$lang['_links'] = 'Nastavitve povezav';
+$lang['_media'] = 'Predstavnostne nastavitve';
+$lang['_advanced'] = 'Napredne nastavitve';
+$lang['_network'] = 'Omrežne nastavitve';
+$lang['_plugin_sufix'] = 'nastavitve';
+$lang['_template_sufix'] = 'nastavitve';
+$lang['_msg_setting_undefined'] = 'Ni nastavitvenih metapodatkov.';
+$lang['_msg_setting_no_class'] = 'Ni nastavitvenega razreda.';
+$lang['_msg_setting_no_default'] = 'Ni privzete vrednosti.';
+$lang['fmode'] = 'Način ustvarjanja datotek';
+$lang['dmode'] = 'Način ustvarjanja map';
+$lang['lang'] = 'Jezik vmesnika';
+$lang['basedir'] = 'Pot do strežnika (npr. /dokuwiki/). Prazno polje določa samodejno zaznavanje';
+$lang['baseurl'] = 'Naslov URL strežnika (npr. http://www.streznik.si). Prazno polje določa samodejno zaznavanje';
+$lang['savedir'] = 'Mapa za shranjevanje podatkov';
+$lang['start'] = 'Ime začetne strani wiki';
+$lang['title'] = 'Naslov Wiki spletišča';
$lang['template'] = 'Predloga';
-$lang['recent'] = 'Zadnje spremembe';
+$lang['license'] = 'Pod pogoji katerega dovoljenja je objavljena vsebina?';
+$lang['fullpath'] = 'Pokaži polno pot strani v nogi strani';
+$lang['recent'] = 'Nedavne spremembe';
+$lang['breadcrumbs'] = 'Število drobtinic poti';
+$lang['youarehere'] = 'Hierarhične drobtinice poti';
+$lang['typography'] = 'Omogoči tipografske zamenjave';
+$lang['htmlok'] = 'Dovoli vstavljeno kodo HTML';
+$lang['phpok'] = 'Dovoli vstavljeno kodo PHP';
+$lang['dformat'] = 'Oblika zapisa časa (funkcija PHP <a href="http://www.php.net/strftime">strftime</a>)';
$lang['signature'] = 'Podpis';
+$lang['toptoclevel'] = 'Vrhnja raven kazala';
+$lang['tocminheads'] = 'Najmanjše število naslovov za izgradnjo kazala';
+$lang['maxtoclevel'] = 'Najvišja raven kazala';
+$lang['maxseclevel'] = 'Največja raven urejanja odseka';
+$lang['camelcase'] = 'Uporabi EnoBesedni zapisa za povezave';
+$lang['deaccent'] = 'Počisti imena strani';
+$lang['useheading'] = 'Uporabi prvi naslov za ime strani';
+$lang['refcheck'] = 'Preverjanje sklica predstavnih datotek';
+$lang['refshow'] = 'Število predstavnostnih sklicev za prikaz';
+$lang['allowdebug'] = 'Dovoli razhroščevanje (po potrebi!)';
+$lang['usewordblock'] = 'Zaustavi neželeno besedilo glede na seznam besed';
+$lang['indexdelay'] = 'Časovni zamik pred ustvarjanjem kazala (v sekundah)';
+$lang['relnofollow'] = 'Uporabni možnost rel="nofollow" pri zunanjih povezavah';
+$lang['mailguard'] = 'Šifriraj elektronske naslove';
+$lang['iexssprotect'] = 'Preveri poslane datoteke za zlonamerno kodo JavaScript ali HTML';
+$lang['showuseras'] = 'Kaj prikazati za prikaz uporabnika, ki je zadnji urejal stran';
+$lang['useacl'] = 'Uporabi seznam nadzora dostopa (ACL)';
+$lang['autopasswd'] = 'Samodejno ustvari gesla';
+$lang['authtype'] = 'Ozadnji način overitve';
+$lang['passcrypt'] = 'Način šifriranja gesel';
$lang['defaultgroup'] = 'Privzeta skupina';
+$lang['superuser'] = 'Skrbnik - skupina, uporabnik ali z vejico ločen seznam uporabnik1,@skupina1,uporabnik2 s polnim dostopom do vseh strani in možnosti, neodvisno od nastavitev nadzora dostopa ACL';
+$lang['manager'] = 'Upravljavec - skupina, uporabnik ali z vejico ločen seznam uporabnik1,@skupina1,uporabnik2 z dovoljenji za dostop do nekaterih možnosti upravljanja';
+$lang['profileconfirm'] = 'Potrdi spremembe profila z geslom';
+$lang['disableactions'] = 'Onemogoči dejanja DokuWiki';
$lang['disableactions_check'] = 'Preveri';
-$lang['userewrite'] = 'Uporabi lepše URL naslove';
+$lang['disableactions_subscription'] = 'Naročanje/Preklic naročnine';
+$lang['disableactions_wikicode'] = 'Pogled izvorne kode/Surovi izvoz';
+$lang['disableactions_other'] = 'Druga dejanja (z vejico ločen seznam)';
+$lang['sneaky_index'] = 'Privzeto pokaže sistem DokuWiki vse imenske prostore v pogledu kazala. Z omogočanjem te možnosti bodo skriti vsi imenski prostori, v katere prijavljen uporabnik nima dovoljenj dostopa. S tem je mogoče preprečiti dostop do podrejenih strani. Možnost lahko vpliva na uporabnost nastavitev nadzora dostopa ACL.';
+$lang['auth_security_timeout'] = 'Varnostna časovna omejitev overitve (v sekundah)';
+$lang['securecookie'] = 'Ali naj se piškotki poslani preko varne povezave HTTPS v brskalniku pošiljajo le preko HTTPS? Onemogočanje možnosti je priporočljivo le takrat, ko je prijava varovana s protokolom SSL, brskanje po strani pa ni posebej zavarovano.';
+$lang['xmlrpc'] = 'Omogoči/Onemogoči vmesnik XML-RPC.';
+$lang['xmlrpcuser'] = 'Omejitev dostopa do vmesnika XML-RPC z vejico ločenim seznamom skupin in uporabnikov. Prazno polje pomeni, prost dostop za vse uporabnike.';
+$lang['updatecheck'] = 'Ali naj sistem preveri za posodobitve in varnostna opozorila.';
+$lang['userewrite'] = 'Uporabi olepšan zapis naslovov URL';
+$lang['useslash'] = 'Uporabi poševnico kot ločilnik imenskih prostorov v naslovih URL';
+$lang['usedraft'] = 'Samodejno shrani osnutek med urejanjem strani';
+$lang['sepchar'] = 'Ločilnik besed imen strani';
+$lang['canonical'] = 'Uporabi polni kanonični zapis naslova URL';
+$lang['fnencode'] = 'Način kodiranja ne-ASCII imen datotek.';
+$lang['autoplural'] = 'Preveri množinske oblike povezav';
+$lang['compression'] = 'Način stiskanja za arhivirane datoteke';
+$lang['cachetime'] = 'Največja dovoljena starost predpomnilnika (v sekundah)';
+$lang['locktime'] = 'Največja dovoljena starost datotek zaklepa (v sekundah)';
+$lang['fetchsize'] = 'največja dovoljena velikost zunanjega prejemanja z datoteko fetch.php (v bajtih)';
+$lang['notify'] = 'Pošlji obvestila o spremembah na določen elektronski naslov';
+$lang['registernotify'] = 'Pošlji obvestila o novih vpisanih uporabnikih na določen elektronski naslov';
+$lang['mailfrom'] = 'Elektronski naslov za samodejno poslana sporočila';
+$lang['gzip_output'] = 'Uporabi stiskanje gzip vsebine za xhtml';
+$lang['gdlib'] = 'Različica GD Lib';
+$lang['im_convert'] = 'Pot do orodja za pretvarjanje slik ImageMagick';
+$lang['jpg_quality'] = 'Kakovost stiskanja datotek JPG (0-100)';
+$lang['subscribers'] = 'Omogoči podporo naročanju na strani';
+$lang['subscribe_time'] = 'Čas po katerem so poslani povzetki sprememb (v sekundah); Vrednost mora biti krajša od časa, ki je določen z nedavno_dni.';
+$lang['compress'] = 'Združi odvod CSS in JavaScript v brskalniku';
+$lang['hidepages'] = 'Skrij skladne strani (logični izraz)';
+$lang['send404'] = 'Pošlji "HTTP 404/Strani ni mogoče najti" pri dostopu do neobstoječih strani';
+$lang['sitemap'] = 'Ustvari Google kazalo strani (v dnevih)';
+$lang['broken_iua'] = 'Ali je možnost ignore_user_abort okvarjena na sistemu? Napaka lahko vpliva na delovanje iskalnika. Napake so pogoste ob uporabi IIS+PHP/CGI. Več o tem si je mogoče prebrati v <a href="http://bugs.splitbrain.org/?do=details&amp;task_id=852">poročilu o hrošču 852</a>.';
+$lang['xsendfile'] = 'Uporabi glavo X-Sendfile za prejemanje statičnih datotek. Spletni strežnik mora možnost podpirati.';
+$lang['renderer_xhtml'] = 'Izrisovalnik za odvod Wiki strani (xhtml)';
+$lang['renderer__core'] = '%s (jedro dokuwiki)';
+$lang['renderer__plugin'] = '%s (vstavek)';
+$lang['rememberme'] = 'Dovoli trajne prijavne piškotke (trajno pomnenje prijave)';
+$lang['rss_type'] = 'Vrsta virov XML';
+$lang['rss_linkto'] = 'XML viri so povezani z';
+$lang['rss_content'] = 'Kaj prikazati med predmeti virov XML?';
+$lang['rss_update'] = 'Časovni razmik posodobitve virov XML (v sekundah)';
+$lang['recent_days'] = 'Koliko nedavnih sprememb naj se ohrani (v dnevih)';
+$lang['rss_show_summary'] = 'Viri XML so povzeti v naslovu';
+$lang['target____wiki'] = 'Ciljno okno za notranje povezave';
+$lang['target____interwiki'] = 'Ciljno okno za notranje wiki povezave';
+$lang['target____extern'] = 'Ciljno okno za zunanje povezave';
+$lang['target____media'] = 'Ciljno okno za predstavne povezave';
+$lang['target____windows'] = 'Ciljno okno za povezave oken';
+$lang['proxy____host'] = 'Ime posredniškega strežnika';
+$lang['proxy____port'] = 'Vrata posredniškega strežnika';
+$lang['proxy____user'] = 'Uporabniško ime posredniškega strežnika';
+$lang['proxy____pass'] = 'Geslo posredniškega strežnika';
+$lang['proxy____ssl'] = 'Uporabi varno povezavo SSL za povezavo z posredniškim strežnikom';
+$lang['proxy____except'] = 'Logični izrazi morajo biti skladni z naslovi URL, ki gredo mimo posredniškega strežnika.';
+$lang['safemodehack'] = 'Omogoči obhod načina SafeMode PHP';
+$lang['ftp____host'] = 'Strežnik FTP za obhod načina SafeMode';
+$lang['ftp____port'] = 'Vrata strežnika FTP za obhod načina SafeMode';
+$lang['ftp____user'] = 'Uporabniško ime za FTP za obhod načina SafeMode';
+$lang['ftp____pass'] = 'Geslo za strežnik FTP za obhod načina SafeMode';
+$lang['ftp____root'] = 'Korenska mapa FTP za obhod načina SafeMode';
+$lang['license_o_'] = 'Ni izbranega dovoljenja';
+$lang['typography_o_0'] = 'brez';
+$lang['typography_o_1'] = 'izloči enojne narekovaje';
+$lang['typography_o_2'] = 'z enojnimi narekovaji (lahko včasih ne deluje)';
+$lang['userewrite_o_0'] = 'brez';
$lang['userewrite_o_1'] = '.htaccess';
+$lang['userewrite_o_2'] = 'notranji DokuWiki';
+$lang['deaccent_o_0'] = 'onemogočeno';
+$lang['deaccent_o_1'] = 'odstrani naglasne oznake';
+$lang['deaccent_o_2'] = 'pretvori v romanski zapis';
+$lang['gdlib_o_0'] = 'Knjižnica GD Lib ni na voljo';
+$lang['gdlib_o_1'] = 'Različica 1.x';
+$lang['gdlib_o_2'] = 'Samodejno zaznavanje';
$lang['rss_type_o_rss'] = 'RSS 0.91';
$lang['rss_type_o_rss1'] = 'RSS 1.0';
$lang['rss_type_o_rss2'] = 'RSS 2.0';
$lang['rss_type_o_atom'] = 'Atom 0.3';
$lang['rss_type_o_atom1'] = 'Atom 1.0';
+$lang['rss_content_o_abstract'] = 'Povzetek';
+$lang['rss_content_o_diff'] = 'Poenotena primerjava';
+$lang['rss_content_o_htmldiff'] = 'HTML oblikovana preglednica primerjave';
+$lang['rss_content_o_html'] = 'Polna HTML vsebina strani';
+$lang['rss_linkto_o_diff'] = 'primerjalni pogled';
+$lang['rss_linkto_o_page'] = 'pregledana stran';
+$lang['rss_linkto_o_rev'] = 'seznam pregledovanj';
$lang['rss_linkto_o_current'] = 'trenutna stran';
-$lang['compression_o_0'] = 'brez stiskanja';
-$lang['compression_o_gz'] = 'gzip stiskanje';
-$lang['compression_o_bz2'] = 'bz2 stiskanje';
+$lang['compression_o_0'] = 'brez';
+$lang['compression_o_gz'] = 'gzip';
+$lang['compression_o_bz2'] = 'bz2';
+$lang['xsendfile_o_0'] = 'ne uporabi';
+$lang['xsendfile_o_1'] = 'plačniška glava lighttpd (pred različico 1.5)';
+$lang['xsendfile_o_2'] = 'običajna glava X-Sendfile';
+$lang['xsendfile_o_3'] = 'plačniška glava Nginx X-Accel-Redirect';
+$lang['showuseras_o_loginname'] = 'Prijavno ime';
+$lang['showuseras_o_username'] = 'Polno ime uporabnika';
+$lang['showuseras_o_email'] = 'Elektronski naslov uporabnika (šifriran po določilih varovanja)';
+$lang['showuseras_o_email_link'] = 'Elektronski naslov uporabnika kot povezava mailto:';
+$lang['useheading_o_0'] = 'nikoli';
+$lang['useheading_o_navigation'] = 'le za krmarjenje';
+$lang['useheading_o_content'] = 'le za vsebino Wiki';
+$lang['useheading_o_1'] = 'vedno';
+$lang['readdircache'] = 'Največja dovoljena starost predpomnilnika prebranih map (v sekundah)';
diff --git a/lib/plugins/config/lang/sv/lang.php b/lib/plugins/config/lang/sv/lang.php
index 3b5752ea1..50c75234b 100644
--- a/lib/plugins/config/lang/sv/lang.php
+++ b/lib/plugins/config/lang/sv/lang.php
@@ -112,6 +112,7 @@ $lang['fetchsize'] = 'Maximal storlek (bytes) som fetch.php får lad
$lang['notify'] = 'Skicka meddelande om ändrade sidor till den här e-postadressen';
$lang['registernotify'] = 'Skicka meddelande om nyregistrerade användare till en här e-postadressen';
$lang['mailfrom'] = 'Avsändaradress i automatiska e-postmeddelanden';
+$lang['mailprefix'] = 'Prefix i början på ämnesraden vid automatiska e-postmeddelanden';
$lang['gzip_output'] = 'Använd gzip Content-Encoding för xhtml';
$lang['gdlib'] = 'Version av GD-biblioteket';
$lang['im_convert'] = 'Sökväg till ImageMagicks konverteringsverktyg';
diff --git a/lib/plugins/config/lang/tr/lang.php b/lib/plugins/config/lang/tr/lang.php
index 9929c663e..6d7d7cc2e 100644
--- a/lib/plugins/config/lang/tr/lang.php
+++ b/lib/plugins/config/lang/tr/lang.php
@@ -2,11 +2,10 @@
/**
* Turkish language file
*
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['menu'] = 'Site Ayarları';
$lang['error'] = 'Ayarlar yanlış bir değer girildiği için güncellenemedi. Lütfen değişikliklerinizi gözden geçirin ve tekrar gönderin.
diff --git a/lib/plugins/config/lang/zh-tw/intro.txt b/lib/plugins/config/lang/zh-tw/intro.txt
index e27b18ba2..c257947d9 100644
--- a/lib/plugins/config/lang/zh-tw/intro.txt
+++ b/lib/plugins/config/lang/zh-tw/intro.txt
@@ -1,7 +1,7 @@
====== 配置管理器 ======
-使用本頁中的內容來控制您的 Dokuwiki 設置。 每個單獨設置的相關信息請參閱 [[doku>config]]。 配置管理器的更多信息請參閱 [[doku>plugin:config]]。
+使用本頁控制您的 Dokuwiki 設定。每個獨立設定的相關訊息可參閱 [[doku>config]]。配置管理器的更多訊息請參閱 [[doku>plugin:config]]。
-淡紅色背景的項目被保護,不能通過這個管理器更改。 藍色背景的項目是系統的默認值,白色背景的項目是您作出更改的項目。藍色和白色的設置項目都可以更改。
+淡紅色背景的項目是被保護的,不能通過這個管理器更改。藍色背景的項目是系統的預設值,白色背景的項目是您更改過的。藍色和白色的設定項目都可以更改。
-離開本頁之前不要忘記點擊最后的 **保存** 按鈕,否則您做的修改不會生效。
+離開本頁之前不要忘記點擊最下面的 **儲存** 按鈕,否則您的修改將不會生效。
diff --git a/lib/plugins/config/lang/zh-tw/lang.php b/lib/plugins/config/lang/zh-tw/lang.php
index c363fb709..aca415ab9 100644
--- a/lib/plugins/config/lang/zh-tw/lang.php
+++ b/lib/plugins/config/lang/zh-tw/lang.php
@@ -7,150 +7,155 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
$lang['menu'] = '系統配置設定';
-$lang['error'] = '設定因為不合法的值而失敗,請檢查您的改變並重新送出。
-<br />不正確的值會被紅色方框圍住。';
+$lang['error'] = '設定因為不合法的值而未更新,請檢查您的更改並重新送出。
+<br />不正確的值會被紅色方框包住。';
$lang['updated'] = '成功地更新設定。';
-$lang['nochoice'] = '(無其他選項可選)';
-$lang['locked'] = '設定檔無法被更新, 如果這不是故意的, <br />
-請確定設定檔名以及權限是正確的.';
-$lang['danger'] = '危險:改變此選項可能使得您的 wiki 以及其設定選單無法存取。';
-$lang['warning'] = '警告:改變此選項可能導致未預期的行為。';
-$lang['security'] = '安全性警告:改變此選項可能造成安全上的危險。';
-$lang['_configuration_manager'] = '設定管理';
+$lang['nochoice'] = '(無其他可用選項)';
+$lang['locked'] = '設定檔無法更新,若非故意,請確認本地檔名及權限正確。';
+$lang['danger'] = '危險:改變此選項可能使您無法存取維基及配置選單。';
+$lang['warning'] = '警告:改變此選項可能導致不可預期的行為。';
+$lang['security'] = '安全性警告:改變此選項可能造成安全風險。';
+$lang['_configuration_manager'] = '配置管理';
$lang['_header_dokuwiki'] = 'DokuWiki 設定';
-$lang['_header_plugin'] = '外掛設定';
+$lang['_header_plugin'] = '插件設定';
$lang['_header_template'] = '樣板設定';
-$lang['_header_undefined'] = '不明確的設定';
+$lang['_header_undefined'] = '未定義設定';
$lang['_basic'] = '基本設定';
$lang['_display'] = '顯示設定';
$lang['_authentication'] = '認證設定';
-$lang['_anti_spam'] = 'Anti-Spam 設定';
+$lang['_anti_spam'] = '反垃圾設定';
$lang['_editing'] = '編輯設定';
$lang['_links'] = '連結設定';
$lang['_media'] = '媒體設定';
$lang['_advanced'] = '進階設定';
$lang['_network'] = '網路設定';
-$lang['_plugin_sufix'] = '外掛設定';
+$lang['_plugin_sufix'] = '插件設定';
$lang['_template_sufix'] = '樣板設定';
-$lang['_msg_setting_undefined'] = '设置的元数据不存在。';
-$lang['_msg_setting_no_class'] = '設置的分類不存在。';
+$lang['_msg_setting_undefined'] = '設定的後設數據不存在。';
+$lang['_msg_setting_no_class'] = '設定的分類不存在。';
$lang['_msg_setting_no_default'] = '無預設值';
$lang['fmode'] = '檔案建立模式';
$lang['dmode'] = '目錄建立模式';
$lang['lang'] = '語系';
$lang['basedir'] = '根目錄';
-$lang['baseurl'] = '根路徑(URL)';
+$lang['baseurl'] = '根路徑 (URL)';
$lang['savedir'] = '儲存資料的目錄';
$lang['start'] = '開始頁面的名稱';
-$lang['title'] = 'Wiki 標題';
+$lang['title'] = '維基標題';
$lang['template'] = '樣板';
$lang['license'] = '您希望您的內容為何種授權方式?';
$lang['fullpath'] = '顯示完整的路徑於頁面底部';
$lang['recent'] = '最近更新';
-$lang['breadcrumbs'] = '显示“足迹”的数量';
-$lang['youarehere'] = '顯示“您在這裡”';
-$lang['typography'] = '進行字符替換';
-$lang['htmlok'] = '允許嵌入式HTML';
-$lang['phpok'] = '允許嵌入式PHP';
-$lang['dformat'] = '日期格式(請見 PHP\'s <a href="http://www.php.net/strftime">strftime</a> function)';
+$lang['breadcrumbs'] = '導覽鏈數量';
+$lang['youarehere'] = '顯示階層式導覽鏈';
+$lang['typography'] = '進行字元替換';
+$lang['htmlok'] = '允許嵌入式 HTML';
+$lang['phpok'] = '允許嵌入式 PHP';
+$lang['dformat'] = '日期格式 (參見 PHP 的 <a href="http://www.php.net/strftime">strftime</a> 函數)';
$lang['signature'] = '簽名';
-$lang['toptoclevel'] = '本頁目錄的最高層級';
-$lang['tocminheads'] = '決定是否建立本頁目錄的最少標題數量';
-$lang['maxtoclevel'] = '本頁目錄顯示的最大層級';
+$lang['toptoclevel'] = '目錄表的最上層級';
+$lang['tocminheads'] = '決定是否建立目錄表的最少標題數量';
+$lang['maxtoclevel'] = '目錄表顯示的最大層級';
$lang['maxseclevel'] = '可編輯段落的最大層級';
-$lang['camelcase'] = '對鏈接使用 CamelCase';
+$lang['camelcase'] = '對連結使用 CamelCase';
$lang['deaccent'] = '清理頁面名稱';
$lang['useheading'] = '使用第一個標題作為頁面名稱';
$lang['refcheck'] = '媒體連結檢查';
$lang['refshow'] = '媒體連結的顯示數量';
-$lang['allowdebug'] = '允許 debug <b> 如果不需要則停用! </b>';
-$lang['usewordblock'] = '基於 wordlist 來限制 spam';
-$lang['indexdelay'] = '建立索引前的延遲時間(秒)';
-$lang['relnofollow'] = '使用 rel="nofollow" 於外部連結';
-$lang['mailguard'] = '暗化E-mail位址';
+$lang['allowdebug'] = '允許除錯 <b>(不需要請停用!)</b>';
+$lang['usewordblock'] = '根據字詞表阻擋垃圾訊息';
+$lang['indexdelay'] = '建立索引前的延遲時間 (秒)';
+$lang['relnofollow'] = '外部連結使用 rel="nofollow"';
+$lang['mailguard'] = '混淆 E-mail 位址';
$lang['iexssprotect'] = '檢查上傳的檔案中是否隱含惡意的 JavaScript 或 HTML 碼';
-$lang['showuseras'] = '在顯示最近修改頁面,將使用者顯示為:';
+$lang['showuseras'] = '將最後編輯頁面的使用者顯示為:';
$lang['useacl'] = '使用存取控制名單';
$lang['autopasswd'] = '自動產生密碼';
-$lang['authtype'] = '认证后台管理方式';
+$lang['authtype'] = '認證後台管理方式';
$lang['passcrypt'] = '密碼加密方式';
$lang['defaultgroup'] = '預設群組';
-$lang['superuser'] = '超級用戶 - 不論 ACL 如何設置,都能訪問所有頁面與功能的用戶組/用戶';
-$lang['manager'] = '管理员 - 能访问相应管理功能的用户组/用户';
+$lang['superuser'] = '超級用戶 - 不論 ACL 如何設定,都能訪問所有頁面與功能的用戶組/用戶';
+$lang['manager'] = '管理員 - 能訪問相應管理功能的用戶组/用戶';
$lang['profileconfirm'] = '修改個人資料時需要確認密碼';
-$lang['disableactions'] = '停用DokuWiki功能';
+$lang['disableactions'] = '停用的 DokuWiki 動作';
$lang['disableactions_check'] = '檢查';
$lang['disableactions_subscription'] = '訂閱/取消訂閱';
-$lang['disableactions_wikicode'] = '查看源文件/導出源文件';
-$lang['disableactions_other'] = '其他功能(以逗號分隔)';
-$lang['sneaky_index'] = '默認情況下,DokuWiki 在索引頁會顯示所有 namespace。啟用該選項能隱藏那些用戶沒有權限閱讀的頁面。但也可能將用戶能夠閱讀的子頁面一並隱藏。這有可能導致在特定 ACL 設置下,索引功能不可用。';
-$lang['auth_security_timeout'] = '認證確定的 Timeout (秒)';
-$lang['securecookie'] = '「cookies set via HTTPS」是否只能由瀏覽器經 HTTPS 傳送?當你登入 wiki 是被 SSL 所保護但瀏覽 wiki 是沒有被保護時,取消此選項。';
+$lang['disableactions_wikicode'] = '檢視原始碼/匯出原始檔';
+$lang['disableactions_other'] = '其他功能 (逗號分隔)';
+$lang['sneaky_index'] = '預設情況下,DokuWiki 會在索引頁會顯示所有命名空間。啟用此選項會隱藏用戶沒有閱讀權限的頁面,但也可能將能閱讀的子頁面一併隱藏。在特定 ACL 設定下,這可能導致索引無法使用。';
+$lang['auth_security_timeout'] = '安全認證的計時 (秒)';
+$lang['securecookie'] = 'HTTPS 頁面設定的 cookie 是否只能由瀏覽器經 HTTPS 傳送?取消此選項後,只有登入維基會被 SSL 保護而瀏覽時不會。';
$lang['xmlrpc'] = '啟用/停用 XML-RPC 介面';
-$lang['xmlrpcuser'] = 'XML-RPC 存取權限將局限於在此提供的群組或使用者(逗點分隔)。若要開放權限給所有人請留白。';
-$lang['updatecheck'] = '檢查更新與安全性警告? 使用此功能, DokuWiki 需要聯繫 splitbrain.org.';
-$lang['userewrite'] = '使用更整潔的 URL';
-$lang['useslash'] = '在 URL 中使用斜杠作为命名空间的分隔符';
+$lang['xmlrpcuser'] = 'XML-RPC 存取權限將局限於在此提供的群組或使用者 (逗號分隔)。若要開放權限給所有人請留白。';
+$lang['updatecheck'] = '檢查更新與安全性警告?DokuWiki 需要聯繫 splitbrain.org 才能使用此功能。';
+$lang['userewrite'] = '使用好看的 URL';
+$lang['useslash'] = '在 URL 中使用斜線作為命名空間的分隔字元';
$lang['usedraft'] = '編輯時自動儲存草稿';
$lang['sepchar'] = '頁面名稱中單字的分隔字元';
-$lang['canonical'] = '使用完全標准的 URL';
-$lang['autoplural'] = '在鏈接中檢查多種格式';
+$lang['canonical'] = '使用最典型的 URL';
+$lang['fnencode'] = '非 ASCII 文件名稱的編輯方法。';
+$lang['autoplural'] = '檢查複數形式的連結 (英文)';
$lang['compression'] = 'attic 文件的壓縮方式';
-$lang['cachetime'] = 'cache的最大時間(秒)';
-$lang['locktime'] = '鎖定檔案的最大時間(秒)';
-$lang['fetchsize'] = 'fetch.php可以從外部下載的最大檔案尺寸(bytes)';
-$lang['notify'] = '寄送變更通知信到這個E-mail位址';
-$lang['registernotify'] = '寄送新使用者註冊資訊到這個E-mail位址';
+$lang['cachetime'] = '緩存的最大存在時間 (秒)';
+$lang['locktime'] = '檔案的最大鎖定時間 (秒)';
+$lang['fetchsize'] = 'fetch.php 可以從外部下載的最大檔案尺寸 (bytes)';
+$lang['notify'] = '寄送變更通知信到這個 E-mail 位址';
+$lang['registernotify'] = '寄送新使用者註冊資訊到這個 E-mail 位址';
$lang['mailfrom'] = '自動發送郵件時使用的郵件地址';
+$lang['mailprefix'] = '自動發送郵件時使用的標題前綴';
$lang['gzip_output'] = '對 xhtml 使用 gzip 內容編碼';
$lang['gdlib'] = 'GD Lib 版本';
-$lang['im_convert'] = 'ImageMagick的轉換工具路徑';
+$lang['im_convert'] = 'ImageMagick 的轉換工具路徑';
$lang['jpg_quality'] = 'JPG 壓縮品質(0-100)';
$lang['subscribers'] = '啟用頁面訂閱';
-$lang['compress'] = '緊密CSS與JavaScript的輸出';
-$lang['hidepages'] = '隱藏匹配的界面(正則表達式)';
-$lang['send404'] = '存取不存在的頁面時送出"HTTP 404/Page Not Found"';
-$lang['sitemap'] = '產生 Google sitemap (天)';
+$lang['subscribe_time'] = '訂閱列表和摘要發送的時間間隔 (秒);這個值應該小於指定的最近更改保留時間 (recent_days)。';
+$lang['compress'] = '壓縮 CSS 與 JavaScript 的輸出';
+$lang['hidepages'] = '隱藏匹配的界面 (正規式)';
+$lang['send404'] = '存取不存在的頁面時送出 "HTTP 404/Page Not Found"';
+$lang['sitemap'] = '產生 Google 站台地圖 (天)';
$lang['broken_iua'] = 'ignore_user_abort 功能失效了?這有可能導致搜索索引不可用。IIS+PHP/CGI 已損壞。請參閱 <a href=\"http://bugs.splitbrain.org/?do=details&task_id=852\">Bug 852</a> 獲取更多信息。';
$lang['xsendfile'] = '使用 X-Sendfile 頭讓服務器發送狀態文件?您的服務器需要支持該功能。';
-$lang['renderer_xhtml'] = '主维基页面 (xhtml) 输出使用的渲染';
+$lang['renderer_xhtml'] = '主要維基輸出 (xhtml) 的的渲染器';
$lang['renderer__core'] = '%s (dokuwiki 核心)';
-$lang['renderer__plugin'] = '%s (外掛)';
-$lang['rememberme'] = '是否在登入畫面顯示記住我';
+$lang['renderer__plugin'] = '%s (插件)';
+$lang['rememberme'] = '允許自動登入 (記住我)';
$lang['rss_type'] = 'XML feed 類型';
$lang['rss_linkto'] = 'XML feed 連結到';
$lang['rss_content'] = 'XML feed 項目中顯示什麼呢?';
-$lang['rss_update'] = 'XML feed 更新間隔時間(秒)';
-$lang['recent_days'] = '保存多少天內的變更';
-$lang['rss_show_summary'] = '於標題中顯示簡要的XML feed';
+$lang['rss_update'] = 'XML feed 更新間隔時間 (秒)';
+$lang['recent_days'] = '儲存多少天內的變更';
+$lang['rss_show_summary'] = '於標題中顯示簡要的 XML feed';
$lang['target____wiki'] = '內部連結的目標視窗';
-$lang['target____interwiki'] = 'wiki內部連結的目標視窗';
+$lang['target____interwiki'] = '跨維基連結的目標視窗';
$lang['target____extern'] = '外部連結的目標視窗';
$lang['target____media'] = '媒體連結的目標視窗';
-$lang['target____windows'] = '視窗連結的目標視窗';
+$lang['target____windows'] = 'Windows 連結的目標視窗';
$lang['proxy____host'] = 'Proxy 伺服器名稱';
$lang['proxy____port'] = 'Proxy 連接埠';
$lang['proxy____user'] = 'Proxy 使用者名稱';
$lang['proxy____pass'] = 'Proxy 密碼';
$lang['proxy____ssl'] = '使用 SSL 連接到 Proxy';
+$lang['proxy____except'] = '比對 proxy 代理時應跳過的地址的正規式。';
$lang['safemodehack'] = '啟用 Safemode Hack';
-$lang['ftp____host'] = 'Safemode Hack 的 FTP 服務器';
+$lang['ftp____host'] = 'Safemode Hack 的 FTP 伺服器';
$lang['ftp____port'] = 'Safemode Hack 的 FTP 端口';
-$lang['ftp____user'] = 'Safemode Hack 的 FTP 用戶名';
+$lang['ftp____user'] = 'Safemode Hack 的 FTP 帳戶';
$lang['ftp____pass'] = 'Safemode Hack 的 FTP 密碼';
$lang['ftp____root'] = 'Safemode Hack 的 FTP 根路徑';
$lang['license_o_'] = '未選擇';
$lang['typography_o_0'] = '無';
-$lang['typography_o_1'] = '仅限双引号';
-$lang['typography_o_2'] = '所有引號(不一定能正常運行)';
+$lang['typography_o_1'] = '只限雙引號';
+$lang['typography_o_2'] = '包括單引號 (未必能運作)';
$lang['userewrite_o_0'] = '無';
$lang['userewrite_o_1'] = '.htaccess';
$lang['userewrite_o_2'] = 'DokuWiki 內部控制';
$lang['deaccent_o_0'] = '關閉';
$lang['deaccent_o_1'] = '移除重音符號';
-$lang['deaccent_o_2'] = '用羅馬字拼寫';
+$lang['deaccent_o_2'] = '羅馬字母轉寫';
$lang['gdlib_o_0'] = 'GD Lib 無法使用';
$lang['gdlib_o_1'] = '版本 1.x';
$lang['gdlib_o_2'] = '自動偵測';
@@ -159,11 +164,11 @@ $lang['rss_type_o_rss1'] = 'RSS 1.0';
$lang['rss_type_o_rss2'] = 'RSS 2.0';
$lang['rss_type_o_atom'] = 'Atom 0.3';
$lang['rss_type_o_atom1'] = 'Atom 1.0';
-$lang['rss_content_o_abstract'] = '概要';
-$lang['rss_content_o_diff'] = '統一差異';
-$lang['rss_content_o_htmldiff'] = 'HTML格式的差異對照表';
+$lang['rss_content_o_abstract'] = '摘要';
+$lang['rss_content_o_diff'] = '統一的差異';
+$lang['rss_content_o_htmldiff'] = 'HTML 格式的差異對照表';
$lang['rss_content_o_html'] = '完整的 HTML 頁面內容';
-$lang['rss_linkto_o_diff'] = '差別查看';
+$lang['rss_linkto_o_diff'] = '差異檢視';
$lang['rss_linkto_o_page'] = '已修訂的頁面';
$lang['rss_linkto_o_rev'] = '版本清單';
$lang['rss_linkto_o_current'] = '目前頁面';
@@ -171,14 +176,15 @@ $lang['compression_o_0'] = '無';
$lang['compression_o_gz'] = 'gzip';
$lang['compression_o_bz2'] = 'bz2';
$lang['xsendfile_o_0'] = '不使用';
-$lang['xsendfile_o_1'] = '專有 lighttpd 頭(1.5 發布前)';
-$lang['xsendfile_o_2'] = '標准 X-Sendfile 頭';
-$lang['xsendfile_o_3'] = '專有 Nginx X-Accel-Redirect 頭';
+$lang['xsendfile_o_1'] = '專有 lighttpd 標頭 (1.5 發布前)';
+$lang['xsendfile_o_2'] = '標準 X-Sendfile 標頭';
+$lang['xsendfile_o_3'] = '專有 Nginx X-Accel-Redirect 標頭';
$lang['showuseras_o_loginname'] = '登入名稱';
$lang['showuseras_o_username'] = '完整姓名';
-$lang['showuseras_o_email'] = '使用者的 email 位址 (根據郵件監控設定來暗化)';
-$lang['showuseras_o_email_link'] = '使用者的 eamil 位址標示成 mailto: link';
+$lang['showuseras_o_email'] = '使用者的 email 位址 (根據郵件監控設定混淆化)';
+$lang['showuseras_o_email_link'] = '使用者的 email 位址標示成 mailto: link';
$lang['useheading_o_0'] = '永不';
-$lang['useheading_o_navigation'] = '只有導覽';
-$lang['useheading_o_content'] = '只有 Wiki 內容';
+$lang['useheading_o_navigation'] = '僅導覽';
+$lang['useheading_o_content'] = '僅維基內容';
$lang['useheading_o_1'] = '總是';
+$lang['readdircache'] = 'readdir 緩存的最大存在時間 (秒)';
diff --git a/lib/plugins/config/lang/zh/lang.php b/lib/plugins/config/lang/zh/lang.php
index 279d7c5b7..93565f313 100644
--- a/lib/plugins/config/lang/zh/lang.php
+++ b/lib/plugins/config/lang/zh/lang.php
@@ -9,6 +9,9 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['menu'] = '配置设置';
$lang['error'] = '由于非法参数,设置没有更新。请检查您做的改动并重新提交。
@@ -91,12 +94,14 @@ $lang['sneaky_index'] = '默认情况下,DokuWiki 在索引页会显
$lang['auth_security_timeout'] = '认证安全超时(秒)';
$lang['securecookie'] = '要让浏览器须以HTTPS方式传送在HTTPS会话中设置的cookies吗?请只在登录过程为SSL加密而浏览维基为明文的情况下打开此选项。';
$lang['xmlrpc'] = '启用/禁用 XML-RPC 交互界面。';
+$lang['xmlrpcuser'] = '将 XML-RPC 连接限制在用逗号分隔的组或用户中。留空对所有人开启连接权限。';
$lang['updatecheck'] = '自动检查更新并接收安全警告吗?开启该功能后 DokuWiki 将自动访问 splitbrain.org。';
$lang['userewrite'] = '使用更整洁的 URL';
$lang['useslash'] = '在 URL 中使用斜杠作为命名空间的分隔符';
$lang['usedraft'] = '编辑时自动保存一份草稿';
$lang['sepchar'] = '页面名称中的单词分隔符';
$lang['canonical'] = '使用完全标准的 URL';
+$lang['fnencode'] = '非 ASCII 文件名的编码方法。';
$lang['autoplural'] = '在链接中检查多种格式';
$lang['compression'] = 'attic 文件的压缩方式';
$lang['cachetime'] = '缓存的最长时间(秒)';
@@ -105,12 +110,15 @@ $lang['fetchsize'] = 'fetch.php 能从外部下载的最大文件大
$lang['notify'] = '发送更改通知给这个邮件地址';
$lang['registernotify'] = '发送新注册用户的信息给这个邮件地址';
$lang['mailfrom'] = '自动发送邮件时使用的邮件地址';
+$lang['mailprefix'] = '自动发送邮件时使用的邮件地址前缀';
$lang['gzip_output'] = '对 xhtml 使用 gzip 内容编码';
$lang['gdlib'] = 'GD 库版本';
$lang['im_convert'] = 'ImageMagick 转换工具的路径';
$lang['jpg_quality'] = 'JPG 压缩质量(0-100)';
$lang['subscribers'] = '启用页面订阅支持';
-$lang['compress'] = '使 CSS 和 javascript 输出更紧密';
+$lang['subscribe_time'] = '订阅列表和摘要发送的时间间隔(秒);这应当小于指定的最近更改保留时间(recent_days)。
+';
+$lang['compress'] = '使 CSS 和 javascript 的输出更紧密';
$lang['hidepages'] = '隐藏匹配的界面(正则表达式)';
$lang['send404'] = '发送 "HTTP 404/页面没有找到" 错误信息给不存在的页面';
$lang['sitemap'] = '生成 Google sitemap(天)';
@@ -136,6 +144,7 @@ $lang['proxy____port'] = '代理服务器的端口';
$lang['proxy____user'] = '代理服务器的用户名';
$lang['proxy____pass'] = '代理服务器的密码';
$lang['proxy____ssl'] = '使用 SSL 连接到代理服务器';
+$lang['proxy____except'] = '用来匹配代理应跳过的地址的正则表达式。';
$lang['safemodehack'] = '启用 Safemode Hack';
$lang['ftp____host'] = 'Safemode Hack 的 FTP 服务器';
$lang['ftp____port'] = 'Safemode Hack 的 FTP 端口';
@@ -183,3 +192,4 @@ $lang['useheading_o_0'] = '从不';
$lang['useheading_o_navigation'] = '仅限导航';
$lang['useheading_o_content'] = '仅限维基内容内';
$lang['useheading_o_1'] = '一直';
+$lang['readdircache'] = 'readdir缓存的最长寿命(秒)';
diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php
index 4f2129c70..01f15a54e 100644
--- a/lib/plugins/config/settings/config.class.php
+++ b/lib/plugins/config/settings/config.class.php
@@ -342,8 +342,8 @@ if (!class_exists('setting')) {
var $_cautionList = array(
'basedir' => 'danger', 'baseurl' => 'danger', 'savedir' => 'danger', 'useacl' => 'danger', 'authtype' => 'danger', 'superuser' => 'danger', 'userewrite' => 'danger',
- 'start' => 'warning', 'camelcase' => 'warning', 'deaccent' => 'warning', 'sepchar' => 'warning', 'compression' => 'warning', 'xsendfile' => 'warning', 'renderer_xhtml' => 'warning',
- 'allowdebug' => 'security', 'htmlok' => 'security', 'phpok' => 'security', 'iexssprotect' => 'security', 'xmlrpc' => 'security', 'fnencode' => 'warning'
+ 'start' => 'warning', 'camelcase' => 'warning', 'deaccent' => 'warning', 'sepchar' => 'warning', 'compression' => 'warning', 'xsendfile' => 'warning', 'renderer_xhtml' => 'warning', 'fnencode' => 'warning',
+ 'allowdebug' => 'security', 'htmlok' => 'security', 'phpok' => 'security', 'iexssprotect' => 'security', 'xmlrpc' => 'security', 'fullpath' => 'security'
);
function setting($key, $params=NULL) {
@@ -616,8 +616,25 @@ if (!class_exists('setting_numeric')) {
// This allows for many PHP syntax errors...
// var $_pattern = '/^[-+\/*0-9 ]*$/';
// much more restrictive, but should eliminate syntax errors.
- var $_pattern = '/^[-]?[0-9]+(?:[-+*][0-9]+)*$/';
- //FIXME - make the numeric error checking better.
+ var $_pattern = '/^[-+]? *[0-9]+ *(?:[-+*] *[0-9]+ *)*$/';
+ var $_min = null;
+ var $_max = null;
+
+ function update($input) {
+ $local = $this->_local;
+ $valid = parent::update($input);
+ if ($valid && !(is_null($this->_min) && is_null($this->_max))) {
+ $numeric_local = (int) eval('return '.$this->_local.';');
+ if ((!is_null($this->_min) && $numeric_local < $this->_min) ||
+ (!is_null($this->_max) && $numeric_local > $this->_max)) {
+ $this->_error = true;
+ $this->_input = $input;
+ $this->_local = $local;
+ $valid = false;
+ }
+ }
+ return $valid;
+ }
function out($var, $fmt='php') {
diff --git a/lib/plugins/config/settings/config.metadata.php b/lib/plugins/config/settings/config.metadata.php
index edba65262..af7e63a61 100644
--- a/lib/plugins/config/settings/config.metadata.php
+++ b/lib/plugins/config/settings/config.metadata.php
@@ -16,6 +16,7 @@
* '' - default class ('setting'), textarea, minimal input validation, setting output in quotes
* 'string' - single line text input, minimal input validation, setting output in quotes
* 'numeric' - text input, accepts numbers and arithmetic operators, setting output without quotes
+ * if given the '_min' and '_max' parameters are used for validation
* 'numericopt' - like above, but accepts empty values
* 'onoff' - checkbox input, setting output 0|1
* 'multichoice' - select input (single choice), setting output with quotes, required _choices parameter
@@ -54,6 +55,8 @@
* '_combine' - complimentary output setting values which can be combined into a single display checkbox
* optional for 'multicheckbox', ignored by other classes
* '_code' - encoding method to use, accepted values: 'base64','uuencode','plain'. defaults to plain.
+ * '_min' - minimum numeric value, optional for 'numeric' and 'numericopt', ignored by others
+ * '_max' - maximum numeric value, optional for 'numeric' and 'numericopt', ignored by others
*
* @author Chris Smith <chris@jalakai.co.uk>
*/
@@ -98,7 +101,7 @@ $meta['allowdebug'] = array('onoff');
$meta['_display'] = array('fieldset');
$meta['recent'] = array('numeric');
-$meta['breadcrumbs'] = array('numeric');
+$meta['breadcrumbs'] = array('numeric','_min' => 0);
$meta['youarehere'] = array('onoff');
$meta['fullpath'] = array('onoff');
$meta['typography'] = array('multichoice','_choices' => array(0,1,2));
@@ -119,7 +122,7 @@ $meta['_authentication'] = array('fieldset');
$meta['useacl'] = array('onoff');
$meta['autopasswd'] = array('onoff');
$meta['authtype'] = array('authtype');
-$meta['passcrypt'] = array('multichoice','_choices' => array('smd5','md5','apr1','sha1','ssha','crypt','mysql','my411','kmd5'));
+$meta['passcrypt'] = array('multichoice','_choices' => array('smd5','md5','apr1','sha1','ssha','crypt','mysql','my411','kmd5','pmd5','hmd5'));
$meta['defaultgroup']= array('string');
$meta['superuser'] = array('string');
$meta['manager'] = array('string');
@@ -174,6 +177,7 @@ $meta['canonical'] = array('onoff');
$meta['fnencode'] = array('multichoice','_choices' => array('url','safe','utf-8'));
$meta['autoplural'] = array('onoff');
$meta['mailfrom'] = array('richemail');
+$meta['mailprefix'] = array('string');
$meta['compress'] = array('onoff');
$meta['gzip_output'] = array('onoff');
$meta['hidepages'] = array('string');
diff --git a/lib/plugins/config/settings/extra.class.php b/lib/plugins/config/settings/extra.class.php
index f6b69ead1..b4e35b1cc 100644
--- a/lib/plugins/config/settings/extra.class.php
+++ b/lib/plugins/config/settings/extra.class.php
@@ -90,7 +90,6 @@ if (!class_exists('setting_disableactions')) {
// transfer some DokuWiki language strings to the plugin
if (!$plugin->localised) $this->setupLocale();
$plugin->lang[$this->_key.'_revisions'] = $lang['btn_revs'];
- $plugin->lang[$this->_key.'_register'] = $lang['register'];
foreach ($this->_choices as $choice)
if (isset($lang['btn_'.$choice])) $plugin->lang[$this->_key.'_'.$choice] = $lang['btn_'.$choice];
diff --git a/lib/plugins/info/lang/sl/lang.php b/lib/plugins/info/lang/sl/lang.php
new file mode 100644
index 000000000..62936947c
--- /dev/null
+++ b/lib/plugins/info/lang/sl/lang.php
@@ -0,0 +1,12 @@
+<?php
+/**
+ * English language file
+ *
+ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
+ * @author Guillaume Turri <guillaume.turri@gmail.com>
+ */
+
+$lang['encoding'] = 'utf-8';
+$lang['direction'] = 'ltr';
+$lang['onHidden'] = 'Click to display ⇲';
+$lang['onVisible'] = 'Click to hide ⇱';
diff --git a/lib/plugins/info/syntax.php b/lib/plugins/info/syntax.php
index ba2831a90..026a438bb 100644
--- a/lib/plugins/info/syntax.php
+++ b/lib/plugins/info/syntax.php
@@ -253,4 +253,4 @@ class syntax_plugin_info extends DokuWiki_Syntax_Plugin {
}
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/plugin/admin.php b/lib/plugins/plugin/admin.php
index c662b565a..b2108f185 100644
--- a/lib/plugins/plugin/admin.php
+++ b/lib/plugins/plugin/admin.php
@@ -44,7 +44,7 @@ class admin_plugin_plugin extends DokuWiki_Admin_Plugin {
function admin_plugin_plugin() {
global $conf;
- $this->disabled = (isset($conf['pluginmanager']) && ($conf['pluginmanager'] == 0));
+ $this->disabled = plugin_isdisabled('plugin');
}
/**
diff --git a/lib/plugins/plugin/classes/ap_download.class.php b/lib/plugins/plugin/classes/ap_download.class.php
index beba0ab07..784095aaf 100644
--- a/lib/plugins/plugin/classes/ap_download.class.php
+++ b/lib/plugins/plugin/classes/ap_download.class.php
@@ -1,7 +1,7 @@
<?php
class ap_download extends ap_manage {
- var $overwrite = false;
+ var $overwrite = true;
/**
* Initiate the plugin download
diff --git a/lib/plugins/plugin/classes/ap_manage.class.php b/lib/plugins/plugin/classes/ap_manage.class.php
index 656b4762b..fb148f263 100644
--- a/lib/plugins/plugin/classes/ap_manage.class.php
+++ b/lib/plugins/plugin/classes/ap_manage.class.php
@@ -121,7 +121,7 @@ class ap_manage {
// update latest plugin date - FIXME
global $ID;
- send_redirect(wl($ID,array('do'=>'admin','page'=>'plugin'),true));
+ send_redirect(wl($ID,array('do'=>'admin','page'=>'plugin'),true, '&'));
}
/**
@@ -176,7 +176,7 @@ class ap_manage {
function dir_delete($path) {
if (!is_string($path) || $path == "") return false;
- if (is_dir($path)) {
+ if (is_dir($path) && !is_link($path)) {
if (!$dh = @opendir($path)) return false;
while ($f = readdir($dh)) {
diff --git a/lib/plugins/plugin/lang/bg/admin_plugin.txt b/lib/plugins/plugin/lang/bg/admin_plugin.txt
index e74e88d00..0227d6fe8 100644
--- a/lib/plugins/plugin/lang/bg/admin_plugin.txt
+++ b/lib/plugins/plugin/lang/bg/admin_plugin.txt
@@ -1,3 +1,3 @@
====== Управление на приставките ======
-На тази страница можете на управлявате всичко свързано с [[doku>plugins|приставките]] на Dokuwiki. За да можете да свалите и инсталирате приставка, вашата plugin директория трябва да е позволена за писане от сървъра.
+На тази страница можете на управлявате всичко свързано с [[doku>plugins|приставките]] на Dokuwiki. За да можете да свалите и инсталирате приставка, е необходимо писането в директорията plugin да е позволено на сървъра.
diff --git a/lib/plugins/plugin/lang/bg/lang.php b/lib/plugins/plugin/lang/bg/lang.php
index 99e7a2fe4..40331fb54 100644
--- a/lib/plugins/plugin/lang/bg/lang.php
+++ b/lib/plugins/plugin/lang/bg/lang.php
@@ -5,6 +5,7 @@
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* @author Nikolay Vladimirov <nikolay@vladimiroff.com>
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
$lang['menu'] = 'Управление на приставките';
$lang['download'] = 'Сваляне и инсталиране на нова приставка';
@@ -16,37 +17,37 @@ $lang['btn_settings'] = 'настройки';
$lang['btn_download'] = 'Сваляне';
$lang['btn_enable'] = 'Запис';
$lang['url'] = 'URL';
-$lang['installed'] = 'Инсталирани:';
-$lang['lastupdate'] = 'Последно обновени:';
+$lang['installed'] = 'Инсталирана:';
+$lang['lastupdate'] = 'Актуализирана:';
$lang['source'] = 'Източник:';
$lang['unknown'] = 'непознат';
-$lang['updating'] = 'Качване ...';
-$lang['updated'] = 'Качването на приставката %s бе упешно.';
-$lang['updates'] = 'Обновяването на следните приставки бе успешно';
-$lang['update_none'] = 'Не бяха намерени нови версии.';
+$lang['updating'] = 'Актуализиране ...';
+$lang['updated'] = 'Приставката %s е качена успешно';
+$lang['updates'] = 'Следните приставки са актуализирани успешно';
+$lang['update_none'] = 'Не са намерени нови версии.';
$lang['deleting'] = 'Изтриване ...';
-$lang['deleted'] = 'Изтриването на приставката %s бе успешно.';
+$lang['deleted'] = 'Приставката %s е изтрита успешно.';
$lang['downloading'] = 'Сваляне ...';
-$lang['downloaded'] = 'Инсталирането на приставката %s бе успешно ';
-$lang['downloads'] = 'Инсталирането на следните приставки бе успешно:';
-$lang['download_none'] = 'Не бяха намерени приставки или е имало грешка при свалянето и инсталирането.';
-$lang['plugin'] = 'Приставки:';
+$lang['downloaded'] = 'Приставката %s е инсталирана успешно ';
+$lang['downloads'] = 'Следните приставки са инсталирани успешно:';
+$lang['download_none'] = 'Не са намерени приставки или е възникнала непозната грешка при свалянето и инсталирането.';
+$lang['plugin'] = 'Приставка:';
$lang['components'] = 'Компоненти';
-$lang['noinfo'] = 'Тази приставка не върна информация, може да е повредена.';
+$lang['noinfo'] = 'Приставка не върна информация, може да е повредена.';
$lang['name'] = 'Име:';
$lang['date'] = 'Дата:';
$lang['type'] = 'Тип:';
$lang['desc'] = 'Описание:';
$lang['author'] = 'Автор:';
-$lang['www'] = 'Сайт:';
-$lang['error'] = 'Имаше непозната грешка.';
-$lang['error_download'] = 'Свалянето на приставката %s бе невъзможно.';
-$lang['error_badurl'] = 'Предполагаем грешен адрес - не може да се определи име на файла от адреса(url)';
-$lang['error_dircreate'] = 'Създаването на временна директория за сваляне е невъзможно.';
-$lang['error_decompress'] = 'Разархивирането на сваленият файл е невъзможно.Това може да е резултат от грешно сваляне, в такъв случай трябва да опитате отново; или формата на компресия е непозната - в този случай трябва да свалите и инсталирате приставката ръчно.';
-$lang['error_copy'] = 'Имаше грешка при копирането на файл по време на инсталацията на приставката <em>%s</em>: дискът е пълен или правата за достъп до файловете са грешни. Това може да е довело до частично инсталирана приставка и оставяне на нестабилна инсталация на уикито ви.';
-$lang['error_delete'] = 'Имаше грешка при изтриването на приставката <em>%s</em>. Най-вероятната причина е недостатъчна права за достъп до файл или директория';
-$lang['enabled'] = 'Приставката %s бе включена.';
-$lang['notenabled'] = 'Приставката %s не бе включена, моля проверете файловите разрешения.';
-$lang['disabled'] = 'Приставката %s бе изключена.';
-$lang['notdisabled'] = 'Приставката %s не бе изключена, моля проверете файловите разрешения.';
+$lang['www'] = 'Уебстраница:';
+$lang['error'] = 'Възникна непозната грешка.';
+$lang['error_download'] = 'Свалянето на приставката %s е невъзможно.';
+$lang['error_badurl'] = 'Предполагаем грешен адрес - не може да се определи име на файла от URL адреса';
+$lang['error_dircreate'] = 'Създаването на временна директория за сваляне не е възможно.';
+$lang['error_decompress'] = 'Разархивирането на сваленият файл е невъзможно. Вероятно е резултат от грешка при свалянето, в този случай трябва да опитате отново; или формата на компресия е непознат - тогава трябва да свалите и инсталирате приставката ръчно.';
+$lang['error_copy'] = 'Възникна грешка при копиране на файл по време на инсталиране на приставката <em>%s</em>: вероятно дискът е пълен или правата за достъп до файловете са грешни. Може да доведе до частично инсталирана приставка и да причини нестабилно функциониране на wiki-то ви.';
+$lang['error_delete'] = 'Възникна грешка при изтриването на приставката <em>%s</em>. Най-вероятната причина е в правата за достъп до файл или директория';
+$lang['enabled'] = 'Приставката %s е включена.';
+$lang['notenabled'] = 'Приставката %s не може да бъде включена, моля проверете правата за файловете.';
+$lang['disabled'] = 'Приставката %s е изключена.';
+$lang['notdisabled'] = 'Приставката %s не е изключена, моля проверете правата за файловете.';
diff --git a/lib/plugins/plugin/lang/cs/lang.php b/lib/plugins/plugin/lang/cs/lang.php
index c15a5ca21..54de0ff18 100644
--- a/lib/plugins/plugin/lang/cs/lang.php
+++ b/lib/plugins/plugin/lang/cs/lang.php
@@ -26,7 +26,7 @@ $lang['source'] = 'Zdroj:';
$lang['unknown'] = 'neznámý';
$lang['updating'] = 'Aktualizuji ...';
$lang['updated'] = 'Modul %s úspěšně aktualizován';
-$lang['updates'] = 'Následjící pluginy byly úspěšně aktualizovány';
+$lang['updates'] = 'Následující pluginy byly úspěšně aktualizovány';
$lang['update_none'] = 'Žádné aktualizace nenalezeny.';
$lang['deleting'] = 'Probíhá mazání ...';
$lang['deleted'] = 'Plugin %s smazán.';
@@ -49,7 +49,7 @@ $lang['error_download'] = 'Nelze stáhnout soubor s pluginem: %s';
$lang['error_badurl'] = 'URL je zřejmě chybná - nelze z ní určit název souboru';
$lang['error_dircreate'] = 'Nelze vytvořit dočasný adresář ke stažení dat';
$lang['error_decompress'] = 'Správce pluginů nemůže rozbalit stažený soubor. Toto může být způsobeno chybou při stahování. Můžete se pokusit stahování opakovat. Chyba může být také v kompresním formátu souboru. V tom případě bude nutné stáhnout a nainstalovat plugin ručně.';
-$lang['error_copy'] = 'Došlo k chybě při instalaci pluginu <em>%s</em>. Je možné, že na disku není volné místo, nebo mohou být špatně nastavena přístupová práva. Pozor, mohlo dojít k častečné a tudíž chybné instalaci pluginu a tím může být ohrožena stabilita wiki.';
+$lang['error_copy'] = 'Došlo k chybě při instalaci pluginu <em>%s</em>. Je možné, že na disku není volné místo, nebo mohou být špatně nastavena přístupová práva. Pozor, mohlo dojít k částečné a tudíž chybné instalaci pluginu a tím může být ohrožena stabilita wiki.';
$lang['error_delete'] = 'Došlo k chybě při pokusu o smazání pluginu <em>%s</em>. Nejspíše je chyba v nastavení přístupových práv k některým souborům či adresářům.';
$lang['enabled'] = 'Plugin %s aktivován.';
$lang['notenabled'] = 'Plugin %s nelze aktivovat, zkontrolujte práva k souborům.';
diff --git a/lib/plugins/plugin/lang/de-informal/lang.php b/lib/plugins/plugin/lang/de-informal/lang.php
index 65050b896..3ba729fd6 100644
--- a/lib/plugins/plugin/lang/de-informal/lang.php
+++ b/lib/plugins/plugin/lang/de-informal/lang.php
@@ -6,6 +6,7 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Plugins verwalten';
$lang['download'] = 'Herunterladen und installieren einer neuen Erweiterung';
diff --git a/lib/plugins/plugin/lang/de/lang.php b/lib/plugins/plugin/lang/de/lang.php
index e981f4a60..6f785168b 100644
--- a/lib/plugins/plugin/lang/de/lang.php
+++ b/lib/plugins/plugin/lang/de/lang.php
@@ -14,6 +14,8 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Plugins verwalten';
$lang['download'] = 'Neues Plugin herunterladen und installieren';
diff --git a/lib/plugins/plugin/lang/en/lang.php b/lib/plugins/plugin/lang/en/lang.php
index e575d3d67..ccbd207e9 100644
--- a/lib/plugins/plugin/lang/en/lang.php
+++ b/lib/plugins/plugin/lang/en/lang.php
@@ -74,4 +74,4 @@ $lang['notenabled'] = 'Plugin %s could not be enabled, check file permissi
$lang['disabled'] = 'Plugin %s disabled.';
$lang['notdisabled'] = 'Plugin %s could not be disabled, check file permissions.';
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/plugin/lang/et/lang.php b/lib/plugins/plugin/lang/et/lang.php
new file mode 100644
index 000000000..0ffea1244
--- /dev/null
+++ b/lib/plugins/plugin/lang/et/lang.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Estonian language file
+ *
+ * @author kristian.kankainen@kuu.la
+ */
diff --git a/lib/plugins/plugin/lang/fr/lang.php b/lib/plugins/plugin/lang/fr/lang.php
index 79080f5f3..5daf3b3ad 100644
--- a/lib/plugins/plugin/lang/fr/lang.php
+++ b/lib/plugins/plugin/lang/fr/lang.php
@@ -15,6 +15,7 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
$lang['menu'] = 'Gestion des modules externes';
$lang['download'] = 'Télécharger et installer un nouveau module';
diff --git a/lib/plugins/plugin/lang/he/lang.php b/lib/plugins/plugin/lang/he/lang.php
index c6e462193..47253e335 100644
--- a/lib/plugins/plugin/lang/he/lang.php
+++ b/lib/plugins/plugin/lang/he/lang.php
@@ -7,6 +7,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['menu'] = 'ניהול הרחבות';
$lang['download'] = 'הורדת והתקנת הרחבה חדשה';
diff --git a/lib/plugins/plugin/lang/hi/lang.php b/lib/plugins/plugin/lang/hi/lang.php
index d8630a281..ab29c6550 100644
--- a/lib/plugins/plugin/lang/hi/lang.php
+++ b/lib/plugins/plugin/lang/hi/lang.php
@@ -3,4 +3,10 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
+$lang['unknown'] = 'अज्ञात';
+$lang['deleted'] = 'मिटाया हुआ';
+$lang['date'] = 'दिनांक:';
+$lang['author'] = 'लेखक:';
+$lang['error'] = 'अज्ञात त्रुटि हुइ';
diff --git a/lib/plugins/plugin/lang/it/lang.php b/lib/plugins/plugin/lang/it/lang.php
index c7ce28a59..e675c5530 100644
--- a/lib/plugins/plugin/lang/it/lang.php
+++ b/lib/plugins/plugin/lang/it/lang.php
@@ -12,6 +12,7 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['menu'] = 'Gestione Plugin';
$lang['download'] = 'Scarica e installa un nuovo plugin';
diff --git a/lib/plugins/plugin/lang/ko/lang.php b/lib/plugins/plugin/lang/ko/lang.php
index af14a0cd2..72c04ddab 100644
--- a/lib/plugins/plugin/lang/ko/lang.php
+++ b/lib/plugins/plugin/lang/ko/lang.php
@@ -7,6 +7,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['menu'] = '플러그인 관리자';
$lang['download'] = '새로운 플러그인 다운로드 및 설치';
diff --git a/lib/plugins/plugin/lang/la/admin_plugin.txt b/lib/plugins/plugin/lang/la/admin_plugin.txt
new file mode 100644
index 000000000..2a41977fc
--- /dev/null
+++ b/lib/plugins/plugin/lang/la/admin_plugin.txt
@@ -0,0 +1,3 @@
+====== Addendorum Administratio ======
+
+In hac pagina omnia uicis [[doku>plugins|plugins]] mutare et administrare potes. Vt addenda capere et his uti, in scrinio addendorum scribere et legere potest. \ No newline at end of file
diff --git a/lib/plugins/plugin/lang/la/lang.php b/lib/plugins/plugin/lang/la/lang.php
new file mode 100644
index 000000000..cd2d81cbd
--- /dev/null
+++ b/lib/plugins/plugin/lang/la/lang.php
@@ -0,0 +1,50 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['menu'] = 'Addendorum administratio';
+$lang['download'] = 'Noua addenda cape';
+$lang['manage'] = 'Addenta in usu';
+$lang['btn_info'] = 'Notae';
+$lang['btn_update'] = 'Nouare';
+$lang['btn_delete'] = 'Delere';
+$lang['btn_settings'] = 'Optiones';
+$lang['btn_download'] = 'Capere';
+$lang['btn_enable'] = 'Seruare';
+$lang['url'] = 'VRL';
+$lang['installed'] = 'In usu:';
+$lang['lastupdate'] = 'Extrema renouatio:';
+$lang['source'] = 'Fons:';
+$lang['unknown'] = 'Ignotum';
+$lang['updating'] = 'Nouans...';
+$lang['updated'] = 'Addenda %s nouata feliciter';
+$lang['updates'] = 'Hae addenda nouata feliciter sunt';
+$lang['update_none'] = 'Nulla renouatio inuenta';
+$lang['deleting'] = 'Delens...';
+$lang['deleted'] = 'Addenda %s deleta.';
+$lang['downloading'] = 'Capens ...';
+$lang['downloaded'] = 'Addenda %s recte in usu';
+$lang['downloads'] = 'Hae addenda feliciter in usu:';
+$lang['download_none'] = 'Nulla addenda reperta aut errores in capiendo sunt.';
+$lang['plugin'] = 'Addenda:';
+$lang['components'] = 'Partes';
+$lang['noinfo'] = 'Addenda alias notas non habent.';
+$lang['name'] = 'Nomen:';
+$lang['date'] = 'Dies:';
+$lang['type'] = 'Genus:';
+$lang['desc'] = 'Descriptio:';
+$lang['author'] = 'Auctor:';
+$lang['www'] = 'Situs interretialis:';
+$lang['error'] = 'Error ignotus.';
+$lang['error_download'] = 'Addenda quae non renouantur: %s';
+$lang['error_badurl'] = 'VRL malum';
+$lang['error_dircreate'] = 'Scrinium temporaneum non creatur, sic nihil capi potest';
+$lang['error_decompress'] = 'Addendorum administrator nouare non potest. Rursum capere nouationes temptat aut manu addenda noua.';
+$lang['error_copy'] = 'Exemplar malum in scrinio addendorum <em>%s</em> est: facultates documenti scrinique fortasse illegitimae sunt. Hic accidit cum addenda partim nouata sunt.';
+$lang['error_delete'] = 'Addenda <em>%s</em> non delentur.';
+$lang['enabled'] = 'Addenda %s apta facta.';
+$lang['notenabled'] = 'Addenda %s quae apta fieri non possunt.';
+$lang['disabled'] = 'Addenda %s non in usu.';
+$lang['notdisabled'] = 'Addenda %s quae inepta fieri non possunt.';
diff --git a/lib/plugins/plugin/lang/pt-br/admin_plugin.txt b/lib/plugins/plugin/lang/pt-br/admin_plugin.txt
index 1809bb585..9e49f5136 100644
--- a/lib/plugins/plugin/lang/pt-br/admin_plugin.txt
+++ b/lib/plugins/plugin/lang/pt-br/admin_plugin.txt
@@ -1,3 +1,3 @@
====== Gerenciamento de Plug-ins ======
-Nesta página você pode gerenciar tudo relacionado aos [[doku>plug-ins|plug-ins]] do DokuWiki. Para você baixar e instalar um plug-in o servidor web deve ter permissão de escrita na pasta onde ficam os plug-ins.
+Nesta página você pode gerenciar tudo relacionado aos [[doku>plugins|plug-ins]] do DokuWiki. Para você baixar e instalar um plug-in o servidor web deve ter permissão de escrita na pasta onde ficam os plug-ins.
diff --git a/lib/plugins/plugin/lang/ru/lang.php b/lib/plugins/plugin/lang/ru/lang.php
index a33f95418..757b607f5 100644
--- a/lib/plugins/plugin/lang/ru/lang.php
+++ b/lib/plugins/plugin/lang/ru/lang.php
@@ -14,6 +14,8 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['menu'] = 'Управление плагинами';
$lang['download'] = 'Скачать и установить новый плагин';
@@ -30,11 +32,11 @@ $lang['lastupdate'] = 'Последнее обновление:';
$lang['source'] = 'Источник:';
$lang['unknown'] = 'неизвестно';
$lang['updating'] = 'Обновление...';
-$lang['updated'] = 'Плагин %s успешно обновлен';
+$lang['updated'] = 'Плагин %s успешно обновлён';
$lang['updates'] = 'Следующие плагины были успешно обновлены';
$lang['update_none'] = 'Обновления не найдены.';
$lang['deleting'] = 'Удаление...';
-$lang['deleted'] = 'Плагин %s удален.';
+$lang['deleted'] = 'Плагин %s удалён.';
$lang['downloading'] = 'Скачивание...';
$lang['downloaded'] = 'Плагин %s успешно установлен';
$lang['downloads'] = 'Следующие плагины были успешно установлены:';
@@ -50,9 +52,9 @@ $lang['author'] = 'Автор:';
$lang['www'] = 'Странца:';
$lang['error'] = 'Произошла неизвестная ошибка.';
$lang['error_download'] = 'Не могу скачать файл плагина: %s';
-$lang['error_badurl'] = 'Возможно, неправильный адрес — не могу определить имя файла из адреса';
+$lang['error_badurl'] = 'Возможно неправильный адрес — не могу определить имя файла из адреса';
$lang['error_dircreate'] = 'Не могу создать временную директорию для скачивания';
-$lang['error_decompress'] = 'Менеджеру плагинов не удалось распаковать скачанный файл. Это может быть результатом ошибки при скачивании, в этом случае вы можете попробовать снова; или же плагин упакован неизвестным архиватором, тогда вам необходимо скачать и установить плагин вручную.';
+$lang['error_decompress'] = 'Менеджеру плагинов не удалось распаковать скачанный файл. Это может быть результатом ошибки при скачивании, в этом случае вы можете попробовать снова, или же плагин упакован неизвестным архиватором, тогда вам необходимо скачать и установить плагин вручную.';
$lang['error_copy'] = 'Произошла ошибка копирования при попытке установки файлов для плагина <em>%s</em>: переполнение диска или неправильные права доступа. Это могло привести к частичной установке плагина и неустойчивости вашей вики.';
$lang['error_delete'] = 'Произошла ошибка при попытке удалить плагин <em>%s</em>. Наиболее вероятно, что нет необходимых прав доступа к файлам или директориям';
$lang['enabled'] = 'Плагин %s включён.';
diff --git a/lib/plugins/plugin/lang/sl/admin_plugin.txt b/lib/plugins/plugin/lang/sl/admin_plugin.txt
new file mode 100644
index 000000000..2e99c6297
--- /dev/null
+++ b/lib/plugins/plugin/lang/sl/admin_plugin.txt
@@ -0,0 +1,3 @@
+====== Upravljanje vstavkov ======
+
+Na tej strani je mogoe spreminjati in prilagajati nastavitve Dokuwiki [[doku>plugins|vstavkov]]. Za prejemanje in nameanje vstavkov v ustrezne mape, morajo imeti te doloena ustrezna dovoljenja za pisanje spletnega strenika.
diff --git a/lib/plugins/plugin/lang/sl/lang.php b/lib/plugins/plugin/lang/sl/lang.php
index 9423e4e75..39ba20139 100644
--- a/lib/plugins/plugin/lang/sl/lang.php
+++ b/lib/plugins/plugin/lang/sl/lang.php
@@ -4,19 +4,51 @@
*
* @author Dejan Levec <webphp@gmail.com>
* @author Boštjan Seničar <senicar@gmail.com>
+ * @author Gregor Skumavc (grega.skumavc@gmail.com)
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
+
+$lang['menu'] = 'Upravljanje vstavkov';
+$lang['download'] = 'Prejmi in namesti nov vstavek';
+$lang['manage'] = 'Nameščeni vstavki';
+$lang['btn_info'] = 'Podrobnosti';
+$lang['btn_update'] = 'Posodobi';
$lang['btn_delete'] = 'Izbriši';
$lang['btn_settings'] = 'Nastavitve';
+$lang['btn_download'] = 'Prejmi';
$lang['btn_enable'] = 'Shrani';
$lang['url'] = 'URL';
$lang['installed'] = 'Nameščeno:';
$lang['lastupdate'] = 'Nazadnje posodobljeno:';
$lang['source'] = 'Vir:';
+$lang['unknown'] = 'neznano';
$lang['updating'] = 'Posodabljanje ...';
+$lang['updated'] = 'Vstavek %s je uspešno posodobljen';
+$lang['updates'] = 'Navedeni vstavki so uspešno posodobljeni';
+$lang['update_none'] = 'Posodobitev ni mogoče najti.';
$lang['deleting'] = 'Brisanje ...';
+$lang['deleted'] = 'Vstavek %s je izbrisan.';
+$lang['downloading'] = 'Prejemanje ...';
+$lang['downloaded'] = 'Vstavek %s je uspešno nameščen';
+$lang['downloads'] = 'Navedeni vstavki so uspešno nameščeni:';
+$lang['download_none'] = 'Vstavkov ni mogoče najti ali pa je prišlo do napake med prejemanjem in nameščanjem.';
+$lang['plugin'] = 'Vstavek:';
+$lang['components'] = 'Sestavni deli';
+$lang['noinfo'] = 'Vstavek nima vpisanih podrobnih podatkov, kar pomeni, da je morda neveljaven.';
$lang['name'] = 'Ime:';
$lang['date'] = 'Datum:';
-$lang['type'] = 'Tip:';
+$lang['type'] = 'Vrsta:';
$lang['desc'] = 'Opis:';
$lang['author'] = 'Avtor:';
$lang['www'] = 'Spletna stran:';
+$lang['error'] = 'Prišlo je do neznane napake.';
+$lang['error_download'] = 'Ni mogoče prejeti datoteke vstavka: %s';
+$lang['error_badurl'] = 'Napaka naslova URL - ni mogoče določiti imena datoteke iz naslova URL';
+$lang['error_dircreate'] = 'Ni mogoče ustvariti začasne mape za prejemanje';
+$lang['error_decompress'] = 'Z upravljalnikom vstavkov ni mogoče razširiti prejetega arhiva vstavka. Najverjetneje je prišlo do napake med prejemanjem datoteke ali pa zapis arhiva ni znan. Poskusite znova ali pa napako odpravite z ročnim nameščanjem vstavka.';
+$lang['error_copy'] = 'Prišlo je do napake med nameščanjem datotek vstavka <em>%s</em>: najverjetneje so težave s prostorom za namestitev ali pa ni ustreznih dovoljenj za nameščanje. Zaradi nepopolne namestitve lahko nastopijo težave v delovanju sistema Wiki.';
+$lang['error_delete'] = 'Prišlo je do napake med brisanjem vstavka <em>%s</em>: najverjetneje ni ustreznih dovoljenj za dostop do datoteke ali mape';
+$lang['enabled'] = 'Vstavek %s je omogočen.';
+$lang['notenabled'] = 'Vstavka %s ni mogoče omogočiti zaradi neustreznih dovoljen.';
+$lang['disabled'] = 'Vstavek %s je onemogočen.';
+$lang['notdisabled'] = 'Vstavka %s ni mogoče onemogočiti zaradi neustreznih dovoljen.';
diff --git a/lib/plugins/plugin/lang/tr/lang.php b/lib/plugins/plugin/lang/tr/lang.php
index 28db9109d..9a655e400 100644
--- a/lib/plugins/plugin/lang/tr/lang.php
+++ b/lib/plugins/plugin/lang/tr/lang.php
@@ -2,11 +2,10 @@
/**
* Turkish language file
*
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['menu'] = 'Eklenti Yönetimi';
$lang['download'] = 'Yeni bir eklenti indirip kur';
diff --git a/lib/plugins/plugin/lang/zh-tw/admin_plugin.txt b/lib/plugins/plugin/lang/zh-tw/admin_plugin.txt
index 41d630199..84d095f51 100644
--- a/lib/plugins/plugin/lang/zh-tw/admin_plugin.txt
+++ b/lib/plugins/plugin/lang/zh-tw/admin_plugin.txt
@@ -1,3 +1,3 @@
====== 插件管理器 ======
-本頁中您可以管理與 Dokuwiki [[doku>plugins|插件]] 相關的選項。 要通過插件管理器正常下載並安裝插件,插件所在的文件夾必須可寫。
+您可以用本頁管理與 Dokuwiki [[doku>plugins|插件]] 相關的選項。若要正常下載及安裝插件,插件所在的資料夾必須允許網頁伺服器寫入。
diff --git a/lib/plugins/plugin/lang/zh-tw/lang.php b/lib/plugins/plugin/lang/zh-tw/lang.php
index 2e480ee15..77e692fcf 100644
--- a/lib/plugins/plugin/lang/zh-tw/lang.php
+++ b/lib/plugins/plugin/lang/zh-tw/lang.php
@@ -7,10 +7,12 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
-$lang['menu'] = '管理外掛(Plugins)';
-$lang['download'] = '下載與安裝外掛';
-$lang['manage'] = '已安裝的外掛';
+$lang['menu'] = '管理插件 (Plugins)';
+$lang['download'] = '下載與安裝插件';
+$lang['manage'] = '已安裝的插件';
$lang['btn_info'] = '資訊';
$lang['btn_update'] = '更新';
$lang['btn_delete'] = '刪除';
@@ -20,21 +22,21 @@ $lang['btn_enable'] = '儲存';
$lang['url'] = 'URL';
$lang['installed'] = '安裝:';
$lang['lastupdate'] = '上次更新:';
-$lang['source'] = '来源:';
+$lang['source'] = '來源:';
$lang['unknown'] = '未知';
$lang['updating'] = '更新中 ...';
-$lang['updated'] = '外掛(Plugin) %s 成功地更新';
-$lang['updates'] = '以下的外掛(Plugin)已經成功地更新';
+$lang['updated'] = '插件 %s 成功地更新';
+$lang['updates'] = '以下的插件已經成功地更新';
$lang['update_none'] = '找不到更新';
$lang['deleting'] = '刪除中 ...';
-$lang['deleted'] = '外掛(Plugin) %s 已刪除。';
+$lang['deleted'] = '插件 %s 已刪除。';
$lang['downloading'] = '下載中 ...';
-$lang['downloaded'] = '外掛(Plugin) %s 已成功地安裝';
-$lang['downloads'] = '以下的外掛(Plugins)已成功地安裝:';
-$lang['download_none'] = '找不到外掛, 或是下載與安裝的期間發生了一些未知的問題';
-$lang['plugin'] = '外掛(Plugin):';
+$lang['downloaded'] = '插件 %s 已成功地安裝';
+$lang['downloads'] = '以下的插件已成功地安裝:';
+$lang['download_none'] = '找不到插件,或在下載與安裝時發生了未知的問題';
+$lang['plugin'] = '插件:';
$lang['components'] = '元件';
-$lang['noinfo'] = '此外掛沒有回傳任何資訊, 可能是無效的';
+$lang['noinfo'] = '此插件沒有回傳任何資訊,可能是無效的';
$lang['name'] = '名稱:';
$lang['date'] = '日期:';
$lang['type'] = '類型:';
@@ -42,13 +44,13 @@ $lang['desc'] = '描述:';
$lang['author'] = '作者:';
$lang['www'] = '網頁:';
$lang['error'] = '一個未知的錯誤發生。';
-$lang['error_download'] = '無法下載外掛檔案: %s';
+$lang['error_download'] = '無法下載插件檔案: %s';
$lang['error_badurl'] = 'URL 可能有問題 - 從 URL 中無法得知文件名';
$lang['error_dircreate'] = '無法建立暫存目錄來接收下載的內容';
$lang['error_decompress'] = '插件管理器無法解壓下載的文件。這可能是由於下載出現錯誤,遇到這種情況,請您再次嘗試;或者是壓縮格式無法識別,遇到這種情況,您需要手動下載並安裝該插件。';
-$lang['error_copy'] = '嘗試安裝插件 <em>%s</em> 的相關文件時產生一個復制錯誤:磁盤空間已滿或文件訪問權限錯誤。這可能是由於一個安裝了一部分的插件,並使得您的維基系統不穩定。';
-$lang['error_delete'] = '嘗試刪除插件 <em>%s</em> 時產生一個錯誤。最有可能的情況是文件或路徑的訪問權限不夠';
-$lang['enabled'] = '插件 %s 已啟動。';
-$lang['notenabled'] = '插件 %s 無法啟動,請檢查檔案權限。';
+$lang['error_copy'] = '嘗試安裝插件 <em>%s</em> 的相關文件時發生複製錯誤:可能是磁碟空間不足或檔案存取權限錯誤。這可能是由於未安裝完全的插件使維基系統不穩定導致。';
+$lang['error_delete'] = '嘗試刪除插件 <em>%s</em> 時發生錯誤。最可能原因是檔案或目錄存取權限不足';
+$lang['enabled'] = '插件 %s 已啟用。';
+$lang['notenabled'] = '插件 %s 無法啟用,請檢查檔案權限。';
$lang['disabled'] = '插件 %s 已停用。';
$lang['notdisabled'] = '插件 %s 無法停用,請檢查檔案權限。';
diff --git a/lib/plugins/plugin/lang/zh/lang.php b/lib/plugins/plugin/lang/zh/lang.php
index f53eca96a..fcc353fed 100644
--- a/lib/plugins/plugin/lang/zh/lang.php
+++ b/lib/plugins/plugin/lang/zh/lang.php
@@ -9,6 +9,9 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['menu'] = '插件管理器';
$lang['download'] = '下载并安装新的插件';
@@ -50,7 +53,7 @@ $lang['error_dircreate'] = '无法创建用于接收下载文件的';
$lang['error_decompress'] = '插件管理器无法解压下载的文件。这可能是由于下载出现错误,遇到这种情况,请您再次尝试;或者是压缩格式无法识别,遇到这种情况,您需要手动下载并安装该插件。';
$lang['error_copy'] = '尝试安装插件 <em>%s</em> 的相关文件时产生一个复制错误:磁盘空间已满或文件访问权限错误。这可能是由于一个安装了一部分的插件,并使得您的维基系统不稳定。';
$lang['error_delete'] = '尝试删除插件 <em>%s</em> 时产生一个错误。最有可能的情况是文件或路径的访问权限不够';
-$lang['enabled'] = '%s 插件开';
-$lang['notenabled'] = '%s插件打开失败,请检查文件权限。';
-$lang['disabled'] = '%s 插件关';
-$lang['notdisabled'] = '%s插件关闭失败,请检查文件权限。';
+$lang['enabled'] = '%s 插件启用';
+$lang['notenabled'] = '%s插件启用失败,请检查文件权限。';
+$lang['disabled'] = '%s 插件禁用';
+$lang['notdisabled'] = '%s插件禁用失败,请检查文件权限。';
diff --git a/lib/plugins/popularity/action.php b/lib/plugins/popularity/action.php
new file mode 100644
index 000000000..bf11efba6
--- /dev/null
+++ b/lib/plugins/popularity/action.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * Popularity Feedback Plugin
+ *
+ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
+ */
+
+require_once(DOKU_PLUGIN.'action.php');
+require_once(DOKU_PLUGIN.'popularity/admin.php');
+
+class action_plugin_popularity extends Dokuwiki_Action_Plugin {
+ var $helper;
+
+ function action_plugin_popularity(){
+ $this->helper = $this->loadHelper('popularity', false);
+ }
+
+ /**
+ * Register its handlers with the dokuwiki's event controller
+ */
+ function register(&$controller) {
+ $controller->register_hook('INDEXER_TASKS_RUN', 'AFTER', $this, '_autosubmit', array());
+ }
+
+ function _autosubmit(&$event, $param){
+ //Do we have to send the data now
+ if ( !$this->helper->isAutosubmitEnabled() || $this->_isTooEarlyToSubmit() ){
+ return;
+ }
+
+ //Actually send it
+ $status = $this->helper->sendData( $this->helper->gatherAsString() );
+
+
+ if ( $status !== '' ){
+ //If an error occured, log it
+ io_saveFile( $this->helper->autosubmitErrorFile, $status );
+ } else {
+ //If the data has been sent successfully, previous log of errors are useless
+ @unlink($this->helper->autosubmitErrorFile);
+ //Update the last time we sent data
+ touch ( $this->helper->autosubmitFile );
+ }
+
+ $event->stopPropagation();
+ $event->preventDefault();
+ }
+
+ /**
+ * Check if it's time to send autosubmit data
+ * (we should have check if autosubmit is enabled first)
+ */
+ function _isTooEarlyToSubmit(){
+ $lastSubmit = $this->helper->lastSentTime();
+ return $lastSubmit + 24*60*60*30 > time();
+ }
+}
diff --git a/lib/plugins/popularity/admin.php b/lib/plugins/popularity/admin.php
index 71ea40799..40c3f5452 100644
--- a/lib/plugins/popularity/admin.php
+++ b/lib/plugins/popularity/admin.php
@@ -13,21 +13,15 @@ if(!defined('DOKU_INC')) die();
* need to inherit from this class
*/
class admin_plugin_popularity extends DokuWiki_Admin_Plugin {
- var $version = '2010-09-17';
+ var $version;
+ var $helper;
+ var $sentStatus = null;
+ function admin_plugin_popularity(){
+ $this->helper = $this->loadHelper('popularity', false);
- /**
- * return some info
- */
- function getInfo(){
- return array(
- 'author' => 'Andreas Gohr',
- 'email' => 'andi@splitbrain.org',
- 'date' => $this->version,
- 'name' => 'Popularity Feedback Plugin',
- 'desc' => 'Send anonymous data about your wiki to the developers.',
- 'url' => 'http://www.dokuwiki.org/plugin:popularity',
- );
+ $pluginInfo = $this->getInfo();
+ $this->version = $pluginInfo['date'];
}
/**
@@ -56,204 +50,99 @@ class admin_plugin_popularity extends DokuWiki_Admin_Plugin {
* handle user request
*/
function handle() {
+ //Send the data
+ if ( isset($_REQUEST['data']) ){
+ $this->sentStatus = $this->helper->sendData( $_REQUEST['data'] );
+ if ( $this->sentStatus === '' ){
+ //Update the last time we sent the data
+ touch ( $this->helper->popularityLastSubmitFile );
+ }
+ //Deal with the autosubmit option
+ $this->_enableAutosubmit( isset($_REQUEST['autosubmit']) );
+ }
}
/**
- * Output HTML form
+ * Enable or disable autosubmit
+ * @param bool $enable If TRUE, it will enable autosubmit. Else, it will disable it.
*/
- function html() {
- echo $this->locale_xhtml('intro');
-
- flush();
- $data = $this->_gather();
- echo '<form method="post" action="http://update.dokuwiki.org/popularity.php" accept-charset="utf-8">';
- echo '<fieldset style="width: 60%;">';
- echo '<textarea class="edit" rows="10" cols="80" readonly="readonly" name="data">';
- foreach($data as $key => $val){
- if(is_array($val)) foreach($val as $v){
- echo hsc($key)."\t".hsc($v)."\n";
- }else{
- echo hsc($key)."\t".hsc($val)."\n";
- }
+ function _enableAutosubmit( $enable ){
+ if ( $enable ){
+ io_saveFile( $this->helper->autosubmitFile, ' ');
+ } else {
+ @unlink($this->helper->autosubmitFile);
}
- echo '</textarea><br />';
- echo '<input type="submit" class="button" value="'.$this->getLang('submit').'"/>';
- echo '</fieldset>';
- echo '</form>';
-
-// dbg($data);
}
-
/**
- * Gather all information
+ * Output HTML form
*/
- function _gather(){
- global $conf;
- global $auth;
- $data = array();
- $phptime = ini_get('max_execution_time');
- @set_time_limit(0);
-
- // version
- $data['anon_id'] = md5(auth_cookiesalt());
- $data['version'] = getVersion();
- $data['popversion'] = $this->version;
- $data['language'] = $conf['lang'];
- $data['now'] = time();
-
- // some config values
- $data['conf_useacl'] = $conf['useacl'];
- $data['conf_authtype'] = $conf['authtype'];
- $data['conf_template'] = $conf['template'];
-
- // number and size of pages
- $list = array();
- search($list,$conf['datadir'],array($this,'_search_count'),'','');
- $data['page_count'] = $list['file_count'];
- $data['page_size'] = $list['file_size'];
- $data['page_biggest'] = $list['file_max'];
- $data['page_smallest'] = $list['file_min'];
- $data['page_nscount'] = $list['dir_count'];
- $data['page_nsnest'] = $list['dir_nest'];
- if($list['file_count']) $data['page_avg'] = $list['file_size'] / $list['file_count'];
- $data['page_oldest'] = $list['file_oldest'];
- unset($list);
-
- // number and size of media
- $list = array();
- search($list,$conf['mediadir'],array($this,'_search_count'),array('all'=>true));
- $data['media_count'] = $list['file_count'];
- $data['media_size'] = $list['file_size'];
- $data['media_biggest'] = $list['file_max'];
- $data['media_smallest'] = $list['file_min'];
- $data['media_nscount'] = $list['dir_count'];
- $data['media_nsnest'] = $list['dir_nest'];
- if($list['file_count']) $data['media_avg'] = $list['file_size'] / $list['file_count'];
- unset($list);
-
- // number and size of cache
- $list = array();
- search($list,$conf['cachedir'],array($this,'_search_count'),array('all'=>true));
- $data['cache_count'] = $list['file_count'];
- $data['cache_size'] = $list['file_size'];
- $data['cache_biggest'] = $list['file_max'];
- $data['cache_smallest'] = $list['file_min'];
- if($list['file_count']) $data['cache_avg'] = $list['file_size'] / $list['file_count'];
- unset($list);
-
- // number and size of index
- $list = array();
- search($list,$conf['indexdir'],array($this,'_search_count'),array('all'=>true));
- $data['index_count'] = $list['file_count'];
- $data['index_size'] = $list['file_size'];
- $data['index_biggest'] = $list['file_max'];
- $data['index_smallest'] = $list['file_min'];
- if($list['file_count']) $data['index_avg'] = $list['file_size'] / $list['file_count'];
- unset($list);
-
- // number and size of meta
- $list = array();
- search($list,$conf['metadir'],array($this,'_search_count'),array('all'=>true));
- $data['meta_count'] = $list['file_count'];
- $data['meta_size'] = $list['file_size'];
- $data['meta_biggest'] = $list['file_max'];
- $data['meta_smallest'] = $list['file_min'];
- if($list['file_count']) $data['meta_avg'] = $list['file_size'] / $list['file_count'];
- unset($list);
-
- // number and size of attic
- $list = array();
- search($list,$conf['olddir'],array($this,'_search_count'),array('all'=>true));
- $data['attic_count'] = $list['file_count'];
- $data['attic_size'] = $list['file_size'];
- $data['attic_biggest'] = $list['file_max'];
- $data['attic_smallest'] = $list['file_min'];
- if($list['file_count']) $data['attic_avg'] = $list['file_size'] / $list['file_count'];
- $data['attic_oldest'] = $list['file_oldest'];
- unset($list);
+ function html() {
+ if ( ! isset($_REQUEST['data']) ){
+ echo $this->locale_xhtml('intro');
+
+ //If there was an error the last time we tried to autosubmit, warn the user
+ if ( $this->helper->isAutoSubmitEnabled() ){
+ if ( @file_exists($this->helper->autosubmitErrorFile) ){
+ echo $this->getLang('autosubmitError');
+ echo io_readFile( $this->helper->autosubmitErrorFile );
+ }
+ }
- // user count
- if($auth && $auth->canDo('getUserCount')){
- $data['user_count'] = $auth->getUserCount();
- }
+ flush();
+ echo $this->buildForm('server');
- // calculate edits per day
- $list = @file($conf['metadir'].'/_dokuwiki.changes');
- $count = count($list);
- if($count > 2){
- $first = (int) substr(array_shift($list),0,10);
- $last = (int) substr(array_pop($list),0,10);
- $dur = ($last - $first)/(60*60*24); // number of days in the changelog
- $data['edits_per_day'] = $count/$dur;
+ //Print the last time the data was sent
+ $lastSent = $this->helper->lastSentTime();
+ if ( $lastSent !== 0 ){
+ echo $this->getLang('lastSent') . datetime_h($lastSent);
+ }
+ } else {
+ //If we just submitted the form
+ if ( $this->sentStatus === '' ){
+ //If we successfully sent the data
+ echo $this->locale_xhtml('submitted');
+ } else {
+ //If we failed to submit the data, try directly with the browser
+ echo $this->getLang('submissionFailed') . $this->sentStatus . '<br />';
+ echo $this->getLang('submitDirectly');
+ echo $this->buildForm('browser', $_REQUEST['data']);
+ }
}
- unset($list);
-
- // plugins
- $data['plugin'] = plugin_list();
-
- // pcre info
- if(defined('PCRE_VERSION')) $data['pcre_version'] = PCRE_VERSION;
- $data['pcre_backtrack'] = ini_get('pcre.backtrack_limit');
- $data['pcre_recursion'] = ini_get('pcre.recursion_limit');
-
- // php info
- $data['os'] = PHP_OS;
- $data['webserver'] = $_SERVER['SERVER_SOFTWARE'];
- $data['php_version'] = phpversion();
- $data['php_sapi'] = php_sapi_name();
- $data['php_memory'] = $this->_to_byte(ini_get('memory_limit'));
- $data['php_exectime'] = $phptime;
- $data['php_extension'] = get_loaded_extensions();
-
- return $data;
}
- function _search_count(&$data,$base,$file,$type,$lvl,$opts){
- // traverse
- if($type == 'd'){
- if($data['dir_nest'] < $lvl) $data['dir_nest'] = $lvl;
- $data['dir_count']++;
- return true;
- }
-
- //only search txt files if 'all' option not set
- if($opts['all'] || substr($file,-4) == '.txt'){
- $size = filesize($base.'/'.$file);
- $date = filemtime($base.'/'.$file);
- $data['file_count']++;
- $data['file_size'] += $size;
- if(!isset($data['file_min']) || $data['file_min'] > $size) $data['file_min'] = $size;
- if($data['file_max'] < $size) $data['file_max'] = $size;
- if(!isset($data['file_oldest']) || $data['file_oldest'] > $date) $data['file_oldest'] = $date;
- }
-
- return false;
- }
-
/**
- * Convert php.ini shorthands to byte
- *
- * @author <gilthans dot NO dot SPAM at gmail dot com>
- * @link http://de3.php.net/manual/en/ini.core.php#79564
+ * Build the form which presents the data to be sent
+ * @param string $submit How is the data supposed to be sent? (may be: 'browser' or 'server')
+ * @param string $data The popularity data, if it has already been computed. NULL otherwise.
+ * @return The form, as an html string
*/
- function _to_byte($v){
- $l = substr($v, -1);
- $ret = substr($v, 0, -1);
- switch(strtoupper($l)){
- case 'P':
- $ret *= 1024;
- case 'T':
- $ret *= 1024;
- case 'G':
- $ret *= 1024;
- case 'M':
- $ret *= 1024;
- case 'K':
- $ret *= 1024;
- break;
+ function buildForm($submissionMode, $data = null){
+ $url = ($submissionMode === 'browser' ? $this->helper->submitUrl : script());
+ if ( is_null($data) ){
+ $data = $this->helper->gatherAsString();
+ }
+
+ $form = '<form method="post" action="'. $url .'" accept-charset="utf-8">'
+ .'<fieldset style="width: 60%;">'
+ .'<textarea class="edit" rows="10" cols="80" readonly="readonly" name="data">'
+ .$data
+ .'</textarea><br />';
+
+ //If we submit via the server, we give the opportunity to suscribe to the autosubmission option
+ if ( $submissionMode !== 'browser' ){
+ $form .= '<label for="autosubmit">'
+ .'<input type="checkbox" name="autosubmit" id="autosubmit" '
+ .($this->helper->isAutosubmitEnabled() ? 'checked' : '' )
+ .'/>' . $this->getLang('autosubmit') .'<br />'
+ .'</label>'
+ .'<input type="hidden" name="do" value="admin">'
+ .'<input type="hidden" name="page" value="popularity">';
}
- return $ret;
+ $form .= '<input type="submit" class="button" value="'.$this->getLang('submit').'"/>'
+ .'</fieldset>'
+ .'</form>';
+ return $form;
}
}
diff --git a/lib/plugins/popularity/helper.php b/lib/plugins/popularity/helper.php
new file mode 100644
index 000000000..5ce562319
--- /dev/null
+++ b/lib/plugins/popularity/helper.php
@@ -0,0 +1,291 @@
+<?php
+/**
+ * Popularity Feedback Plugin
+ *
+ * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
+ */
+
+class helper_plugin_popularity extends Dokuwiki_Plugin {
+ /**
+ * The url where the data should be sent
+ */
+ var $submitUrl = 'http://update.dokuwiki.org/popularity.php';
+
+ /**
+ * Name of the file which determine if the the autosubmit is enabled,
+ * and when it was submited for the last time
+ */
+ var $autosubmitFile;
+
+ /**
+ * File where the last error which happened when we tried to autosubmit, will be log
+ */
+ var $autosubmitErrorFile;
+
+ /**
+ * Name of the file which determine when the popularity data was manually
+ * submitted for the last time
+ * (If this file doesn't exist, the data has never been sent)
+ */
+ var $popularityLastSubmitFile;
+
+
+ function helper_plugin_popularity(){
+ global $conf;
+ $this->autosubmitFile = $conf['cachedir'].'/autosubmit.txt';
+ $this->autosubmitErrorFile = $conf['cachedir'].'/autosubmitError.txt';
+ $this->popularityLastSubmitFile = $conf['cachedir'].'/lastSubmitTime.txt';
+ }
+
+ function getMethods(){
+ $result = array();
+ $result[] = array(
+ 'name' => 'isAutoSubmitEnabled',
+ 'desc' => 'Check if autosubmit is enabled',
+ 'params' => array(),
+ 'return' => array('result' => 'bool')
+ );
+ $result[] = array(
+ 'name' => 'sendData',
+ 'desc' => 'Send the popularity data',
+ 'params' => array('data' => 'string'),
+ 'return' => array()
+ );
+ $result[] = array(
+ 'name' => 'gatherAsString',
+ 'desc' => 'Gather the popularity data',
+ 'params' => array(),
+ 'return' => array('data' => 'string')
+ );
+ $result[] = array(
+ 'name' => 'lastSentTime',
+ 'desc' => 'Compute the last time popularity data was sent',
+ 'params' => array(),
+ 'return' => array('data' => 'int')
+ );
+ return $result;
+
+ }
+
+ /**
+ * Check if autosubmit is enabled
+ * @return TRUE if we should send data once a month, FALSE otherwise
+ */
+ function isAutoSubmitEnabled(){
+ return @file_exists($this->autosubmitFile);
+ }
+
+ /**
+ * Send the data, to the submit url
+ * @param string $data The popularity data
+ * @return An empty string if everything worked fine, a string describing the error otherwise
+ */
+ function sendData($data){
+ $error = '';
+ $httpClient = new DokuHTTPClient();
+ $status = $httpClient->sendRequest($this->submitUrl, $data, 'POST');
+ if ( ! $status ){
+ $error = $httpClient->error;
+ }
+ return $error;
+ }
+
+ /**
+ * Compute the last time the data was sent. If it has never been sent, we return 0.
+ */
+ function lastSentTime(){
+ $manualSubmission = @filemtime($this->popularityLastSubmitFile);
+ $autoSubmission = @filemtime($this->autosubmitFile);
+
+ return max((int) $manualSubmission, (int) $autoSubmission);
+ }
+
+ /**
+ * Gather all information
+ * @return The popularity data as a string
+ */
+ function gatherAsString(){
+ $data = $this->_gather();
+ $string = '';
+ foreach($data as $key => $val){
+ if(is_array($val)) foreach($val as $v){
+ $string .= hsc($key)."\t".hsc($v)."\n";
+ }else{
+ $string .= hsc($key)."\t".hsc($val)."\n";
+ }
+ }
+ return $string;
+ }
+
+ /**
+ * Gather all information
+ * @return The popularity data as an array
+ */
+ function _gather(){
+ global $conf;
+ global $auth;
+ $data = array();
+ $phptime = ini_get('max_execution_time');
+ @set_time_limit(0);
+
+ // version
+ $data['anon_id'] = md5(auth_cookiesalt());
+ $data['version'] = getVersion();
+ $data['popversion'] = $this->version;
+ $data['language'] = $conf['lang'];
+ $data['now'] = time();
+
+ // some config values
+ $data['conf_useacl'] = $conf['useacl'];
+ $data['conf_authtype'] = $conf['authtype'];
+ $data['conf_template'] = $conf['template'];
+
+ // number and size of pages
+ $list = array();
+ search($list,$conf['datadir'],array($this,'_search_count'),'','');
+ $data['page_count'] = $list['file_count'];
+ $data['page_size'] = $list['file_size'];
+ $data['page_biggest'] = $list['file_max'];
+ $data['page_smallest'] = $list['file_min'];
+ $data['page_nscount'] = $list['dir_count'];
+ $data['page_nsnest'] = $list['dir_nest'];
+ if($list['file_count']) $data['page_avg'] = $list['file_size'] / $list['file_count'];
+ $data['page_oldest'] = $list['file_oldest'];
+ unset($list);
+
+ // number and size of media
+ $list = array();
+ search($list,$conf['mediadir'],array($this,'_search_count'),array('all'=>true));
+ $data['media_count'] = $list['file_count'];
+ $data['media_size'] = $list['file_size'];
+ $data['media_biggest'] = $list['file_max'];
+ $data['media_smallest'] = $list['file_min'];
+ $data['media_nscount'] = $list['dir_count'];
+ $data['media_nsnest'] = $list['dir_nest'];
+ if($list['file_count']) $data['media_avg'] = $list['file_size'] / $list['file_count'];
+ unset($list);
+
+ // number and size of cache
+ $list = array();
+ search($list,$conf['cachedir'],array($this,'_search_count'),array('all'=>true));
+ $data['cache_count'] = $list['file_count'];
+ $data['cache_size'] = $list['file_size'];
+ $data['cache_biggest'] = $list['file_max'];
+ $data['cache_smallest'] = $list['file_min'];
+ if($list['file_count']) $data['cache_avg'] = $list['file_size'] / $list['file_count'];
+ unset($list);
+
+ // number and size of index
+ $list = array();
+ search($list,$conf['indexdir'],array($this,'_search_count'),array('all'=>true));
+ $data['index_count'] = $list['file_count'];
+ $data['index_size'] = $list['file_size'];
+ $data['index_biggest'] = $list['file_max'];
+ $data['index_smallest'] = $list['file_min'];
+ if($list['file_count']) $data['index_avg'] = $list['file_size'] / $list['file_count'];
+ unset($list);
+
+ // number and size of meta
+ $list = array();
+ search($list,$conf['metadir'],array($this,'_search_count'),array('all'=>true));
+ $data['meta_count'] = $list['file_count'];
+ $data['meta_size'] = $list['file_size'];
+ $data['meta_biggest'] = $list['file_max'];
+ $data['meta_smallest'] = $list['file_min'];
+ if($list['file_count']) $data['meta_avg'] = $list['file_size'] / $list['file_count'];
+ unset($list);
+
+ // number and size of attic
+ $list = array();
+ search($list,$conf['olddir'],array($this,'_search_count'),array('all'=>true));
+ $data['attic_count'] = $list['file_count'];
+ $data['attic_size'] = $list['file_size'];
+ $data['attic_biggest'] = $list['file_max'];
+ $data['attic_smallest'] = $list['file_min'];
+ if($list['file_count']) $data['attic_avg'] = $list['file_size'] / $list['file_count'];
+ $data['attic_oldest'] = $list['file_oldest'];
+ unset($list);
+
+ // user count
+ if($auth && $auth->canDo('getUserCount')){
+ $data['user_count'] = $auth->getUserCount();
+ }
+
+ // calculate edits per day
+ $list = @file($conf['metadir'].'/_dokuwiki.changes');
+ $count = count($list);
+ if($count > 2){
+ $first = (int) substr(array_shift($list),0,10);
+ $last = (int) substr(array_pop($list),0,10);
+ $dur = ($last - $first)/(60*60*24); // number of days in the changelog
+ $data['edits_per_day'] = $count/$dur;
+ }
+ unset($list);
+
+ // plugins
+ $data['plugin'] = plugin_list();
+
+ // pcre info
+ if(defined('PCRE_VERSION')) $data['pcre_version'] = PCRE_VERSION;
+ $data['pcre_backtrack'] = ini_get('pcre.backtrack_limit');
+ $data['pcre_recursion'] = ini_get('pcre.recursion_limit');
+
+ // php info
+ $data['os'] = PHP_OS;
+ $data['webserver'] = $_SERVER['SERVER_SOFTWARE'];
+ $data['php_version'] = phpversion();
+ $data['php_sapi'] = php_sapi_name();
+ $data['php_memory'] = $this->_to_byte(ini_get('memory_limit'));
+ $data['php_exectime'] = $phptime;
+ $data['php_extension'] = get_loaded_extensions();
+
+ return $data;
+ }
+
+ function _search_count(&$data,$base,$file,$type,$lvl,$opts){
+ // traverse
+ if($type == 'd'){
+ if($data['dir_nest'] < $lvl) $data['dir_nest'] = $lvl;
+ $data['dir_count']++;
+ return true;
+ }
+
+ //only search txt files if 'all' option not set
+ if($opts['all'] || substr($file,-4) == '.txt'){
+ $size = filesize($base.'/'.$file);
+ $date = filemtime($base.'/'.$file);
+ $data['file_count']++;
+ $data['file_size'] += $size;
+ if(!isset($data['file_min']) || $data['file_min'] > $size) $data['file_min'] = $size;
+ if($data['file_max'] < $size) $data['file_max'] = $size;
+ if(!isset($data['file_oldest']) || $data['file_oldest'] > $date) $data['file_oldest'] = $date;
+ }
+
+ return false;
+ }
+
+ /**
+ * Convert php.ini shorthands to byte
+ *
+ * @author <gilthans dot NO dot SPAM at gmail dot com>
+ * @link http://de3.php.net/manual/en/ini.core.php#79564
+ */
+ function _to_byte($v){
+ $l = substr($v, -1);
+ $ret = substr($v, 0, -1);
+ switch(strtoupper($l)){
+ case 'P':
+ $ret *= 1024;
+ case 'T':
+ $ret *= 1024;
+ case 'G':
+ $ret *= 1024;
+ case 'M':
+ $ret *= 1024;
+ case 'K':
+ $ret *= 1024;
+ break;
+ }
+ return $ret;
+ }
+}
diff --git a/lib/plugins/popularity/lang/ar/lang.php b/lib/plugins/popularity/lang/ar/lang.php
index c0e7dc6af..b2581294a 100644
--- a/lib/plugins/popularity/lang/ar/lang.php
+++ b/lib/plugins/popularity/lang/ar/lang.php
@@ -7,3 +7,8 @@
*/
$lang['name'] = 'رد الشعبية (قد يأخذ بعض الوقت ليحمل)';
$lang['submit'] = 'أرسل البيانات';
+$lang['autosubmit'] = 'ارسل البيانات آليا كل شهر';
+$lang['submissionFailed'] = 'تعذر إرسال البيانات بسبب الخطأ التالي:';
+$lang['submitDirectly'] = 'يمكنك إرسال البيانات يدويا بارسال النموذج التالي.';
+$lang['autosubmitError'] = 'فشلت آخر محاولة للإرسال، بسبب الخطأ التالي:';
+$lang['lastSent'] = 'أرسلت البيانات';
diff --git a/lib/plugins/popularity/lang/ar/submitted.txt b/lib/plugins/popularity/lang/ar/submitted.txt
new file mode 100644
index 000000000..085e3bd98
--- /dev/null
+++ b/lib/plugins/popularity/lang/ar/submitted.txt
@@ -0,0 +1,3 @@
+====== رد الشعبية ======
+
+أرسلت البيانات بنجاح. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/bg/intro.txt b/lib/plugins/popularity/lang/bg/intro.txt
index 06c338585..35023b897 100644
--- a/lib/plugins/popularity/lang/bg/intro.txt
+++ b/lib/plugins/popularity/lang/bg/intro.txt
@@ -1,9 +1,9 @@
-====== Обратна връзка за популярност ======
+====== Обратна връзка ======
-Този инструмент събира данни за потребителите на Вашето Wiki и ви позволява да ги изпратите анонимно на DokuWiki. Това ни помага да разберем как DokuWiki се използва от потребителите си и да разработваме бъдещи решения, съответно реалното използване.
+Инструментът събира данни за вашето Wiki и ви позволява да ги изпратите да разработчиците на DokuWiki. Информацията ще им помогне да разберат как DokuWiki се ползва от потребителите и че статистиката е в подкрепа на поетата насока за развитие.
-Моля изпозвайте тази опция, за да информирате разработчиците на този продукт. Вашите данни ще бъдат идентифицирани с анонимен номер.
+Моля, ползвайте функцията, от време на време, когато уебстраницата ви се разраства, за да информирате разработчиците. Изпратените данни ще бъдат идентифицирани с анонимен идентификатор.
-Събраните данни съдържат информация за вашата версия на DokuWiki, броя и размера на вашите страници и файлове, инсталирани плъгини и информация за вашата PHP инсталация.
+Събираните данни съдържат информация като версията на DokuWiki, броя и размера на вашите страници и файлове, инсталирани приставки и информация за локалната инсталация на PHP.
-Изходните данни са показано по-долу във вида, в който ще бъдат изпратени. Моля ползвайте сьответния бутон, за да изпратите тази информация. \ No newline at end of file
+Данните, които ще бъдат изпратени са изобразени отдолу. Моля, натиснете бутона "Изпращане на данните", за да бъдат изпратени. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/bg/lang.php b/lib/plugins/popularity/lang/bg/lang.php
index adf99a9f5..ba731c0fc 100644
--- a/lib/plugins/popularity/lang/bg/lang.php
+++ b/lib/plugins/popularity/lang/bg/lang.php
@@ -3,6 +3,12 @@
* Bulgarian language file
*
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
-$lang['name'] = 'Обратна връзка за популярност (може да отнеме известно време за зареждане)';
-$lang['submit'] = 'Прати данните';
+$lang['name'] = 'Обратна връзка (зареждането изисква време)';
+$lang['submit'] = 'Изпращане на данните';
+$lang['autosubmit'] = 'Автоматично изпращане на данните веднъж в месеца';
+$lang['submissionFailed'] = 'Данните не могат да бъдат изпратени поради следната грешка:';
+$lang['submitDirectly'] = 'Можете да изпратите данните ръчно чрез следния формуляр.';
+$lang['autosubmitError'] = 'Последното автоматично изпращане се провали, поради следната грешка:';
+$lang['lastSent'] = 'Данните са изпратени';
diff --git a/lib/plugins/popularity/lang/bg/submitted.txt b/lib/plugins/popularity/lang/bg/submitted.txt
new file mode 100644
index 000000000..3ecd24f96
--- /dev/null
+++ b/lib/plugins/popularity/lang/bg/submitted.txt
@@ -0,0 +1,3 @@
+====== Обратна връзка ======
+
+Данните са изпратени успешно. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/cs/intro.txt b/lib/plugins/popularity/lang/cs/intro.txt
index 70cf1a42c..4b386568a 100644
--- a/lib/plugins/popularity/lang/cs/intro.txt
+++ b/lib/plugins/popularity/lang/cs/intro.txt
@@ -1,6 +1,6 @@
===== Průzkum používání =====
-Tento nástroj jednorázově shromáží anonymní data o vaší wiki a umožní vám odeslat je vývojářům DokuWiki. To jim pomůže lépe porozumět, jak uživatelé DokuWiki používají, a jejich rozhodnutí při dalším vývoji budou založena na statistikách z reálného používání DokuWiki.
+Tento nástroj jednorázově shromáždí anonymní data o vaší wiki a umožní vám odeslat je vývojářům DokuWiki. To jim pomůže lépe porozumět, jak uživatelé DokuWiki používají, a jejich rozhodnutí při dalším vývoji budou založena na statistikách z reálného používání DokuWiki.
Chcete-li pomoci vývojářům, čas od času, jak vaše wiki poroste, použijte tento nástroj. Vaše data budou pokaždé označena stejným anonymním identifikátorem.
diff --git a/lib/plugins/popularity/lang/de-informal/lang.php b/lib/plugins/popularity/lang/de-informal/lang.php
index 076b37115..f884ed690 100644
--- a/lib/plugins/popularity/lang/de-informal/lang.php
+++ b/lib/plugins/popularity/lang/de-informal/lang.php
@@ -6,6 +6,12 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['name'] = 'Popularitätsrückmeldung (kann eine Weile dauern, bis es fertig geladen wurde)';
$lang['submit'] = 'Sende Daten';
+$lang['autosubmit'] = 'Daten einmal im Monat automatisch senden';
+$lang['submissionFailed'] = 'Die Daten konnten aufgrund des folgenden Fehlers nicht gesendet werden: ';
+$lang['submitDirectly'] = 'Du kannst die Daten durch Betätigung des Buttons manuell versenden.';
+$lang['autosubmitError'] = 'Beim letzten automatischen Versuch die Daten zu senden, ist folgender Fehler aufgetreten: ';
+$lang['lastSent'] = 'Die Daten wurden gesendet';
diff --git a/lib/plugins/popularity/lang/de-informal/submitted.txt b/lib/plugins/popularity/lang/de-informal/submitted.txt
new file mode 100644
index 000000000..e7b45b5b7
--- /dev/null
+++ b/lib/plugins/popularity/lang/de-informal/submitted.txt
@@ -0,0 +1,3 @@
+====== Popularitäts-Feedback ======
+
+Die Daten wurden erfolgreich versandt. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/de/lang.php b/lib/plugins/popularity/lang/de/lang.php
index 1372e9d8a..4649062f7 100644
--- a/lib/plugins/popularity/lang/de/lang.php
+++ b/lib/plugins/popularity/lang/de/lang.php
@@ -11,6 +11,13 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['name'] = 'Popularitäts-Feedback (Eventuell längere Ladezeit)';
$lang['submit'] = 'Daten senden';
+$lang['autosubmit'] = 'Daten einmal im Monat automatisch senden';
+$lang['submissionFailed'] = 'Die Daten konnten aufgrund des folgenden Fehlers nicht gesendet werden: ';
+$lang['submitDirectly'] = 'Sie können die Daten durch Betätigung des Buttons manuell versenden.';
+$lang['autosubmitError'] = 'Beim letzten automatischen Versuch die Daten zu senden, ist folgender Fehler aufgetreten: ';
+$lang['lastSent'] = 'Die Daten wurden gesendet';
diff --git a/lib/plugins/popularity/lang/de/submitted.txt b/lib/plugins/popularity/lang/de/submitted.txt
new file mode 100644
index 000000000..e7b45b5b7
--- /dev/null
+++ b/lib/plugins/popularity/lang/de/submitted.txt
@@ -0,0 +1,3 @@
+====== Popularitäts-Feedback ======
+
+Die Daten wurden erfolgreich versandt. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/el/lang.php b/lib/plugins/popularity/lang/el/lang.php
index 0d16bbf86..41704fa06 100644
--- a/lib/plugins/popularity/lang/el/lang.php
+++ b/lib/plugins/popularity/lang/el/lang.php
@@ -7,3 +7,8 @@
*/
$lang['name'] = 'Αναφορά Δημοτικότητας (ίσως αργήσει λίγο να εμφανιστεί)';
$lang['submit'] = 'Αποστολή Δεδομένων';
+$lang['autosubmit'] = 'Να αποστέλονται τα δεδομένα αυτόματα μια φορά το μήνα.';
+$lang['submissionFailed'] = 'Τα δεδομένα δεν ήταν δυνατό να αποσταλλούν λόγω του παρακάτω σφάλματος:';
+$lang['submitDirectly'] = 'Μπορείτε να αποστείλλετε τα δεδομένα χειροκίνητα με την υποβολή της παρακάτω φόρμας.';
+$lang['autosubmitError'] = 'Η τελευταία αυτόματη υποβολή των δεδομένων απέτυχε με το παρακάτω μήνυμα σφάλματος:';
+$lang['lastSent'] = 'Τα δεδομένα έχουν σταλεί.';
diff --git a/lib/plugins/popularity/lang/el/submitted.txt b/lib/plugins/popularity/lang/el/submitted.txt
new file mode 100644
index 000000000..8004f9997
--- /dev/null
+++ b/lib/plugins/popularity/lang/el/submitted.txt
@@ -0,0 +1,3 @@
+====== Αποτέλεσμα Υποβολής Δημοσιότητας ======
+
+Τα δεδομένα στάλθηκαν επιτυχώς. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/en/lang.php b/lib/plugins/popularity/lang/en/lang.php
index c9912b7ad..78a5e862c 100644
--- a/lib/plugins/popularity/lang/en/lang.php
+++ b/lib/plugins/popularity/lang/en/lang.php
@@ -1,4 +1,9 @@
<?php
-$lang['name'] = 'Popularity Feedback (may take some time to load)';
-$lang['submit'] = 'Send Data';
+$lang['name'] = 'Popularity Feedback (may take some time to load)';
+$lang['submit'] = 'Send Data';
+$lang['autosubmit'] = 'Automatically send data once a month';
+$lang['submissionFailed'] = 'The data couldn\'t be sent due to the following error:';
+$lang['submitDirectly'] = 'You can send the data manually by submitting the following form.';
+$lang['autosubmitError'] = 'The last autosubmit failed, because of the following error: ';
+$lang['lastSent'] = 'The data has been sent ';
diff --git a/lib/plugins/popularity/lang/en/submitted.txt b/lib/plugins/popularity/lang/en/submitted.txt
new file mode 100644
index 000000000..30f2784aa
--- /dev/null
+++ b/lib/plugins/popularity/lang/en/submitted.txt
@@ -0,0 +1,3 @@
+====== Popularity Feedback ======
+
+The data has been sent succesfully.
diff --git a/lib/plugins/popularity/lang/es/lang.php b/lib/plugins/popularity/lang/es/lang.php
index c76190c2c..6aa9a823d 100644
--- a/lib/plugins/popularity/lang/es/lang.php
+++ b/lib/plugins/popularity/lang/es/lang.php
@@ -19,3 +19,8 @@
*/
$lang['name'] = 'Retroinformación (Feedback) plugin Popularity';
$lang['submit'] = 'Enviar datos';
+$lang['autosubmit'] = 'Enviar automáticamente datos una vez al mes';
+$lang['submissionFailed'] = 'Los datos no se pudo enviar debido al error siguiente:';
+$lang['submitDirectly'] = 'Puede enviar los datos de forma manual mediante la presentación de la siguiente forma.';
+$lang['autosubmitError'] = 'El último auto no pudo presentar, debido al error siguiente:';
+$lang['lastSent'] = 'Los datos se han enviado';
diff --git a/lib/plugins/popularity/lang/es/submitted.txt b/lib/plugins/popularity/lang/es/submitted.txt
new file mode 100644
index 000000000..bb1754cdd
--- /dev/null
+++ b/lib/plugins/popularity/lang/es/submitted.txt
@@ -0,0 +1,3 @@
+====== Retroinformación Popularity ======
+
+Los datos se han enviado con éxito. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/et/lang.php b/lib/plugins/popularity/lang/et/lang.php
new file mode 100644
index 000000000..0ffea1244
--- /dev/null
+++ b/lib/plugins/popularity/lang/et/lang.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Estonian language file
+ *
+ * @author kristian.kankainen@kuu.la
+ */
diff --git a/lib/plugins/popularity/lang/fr/lang.php b/lib/plugins/popularity/lang/fr/lang.php
index 5ddd074a7..9aaf3c7d2 100644
--- a/lib/plugins/popularity/lang/fr/lang.php
+++ b/lib/plugins/popularity/lang/fr/lang.php
@@ -12,6 +12,12 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
-$lang['name'] = 'Enquête de popularité (peut nécessiter un certain temps pour être chargé)';
+$lang['name'] = 'Enquête de popularité (peut nécessiter un certain temps pour être chargée)';
$lang['submit'] = 'Envoyer les données';
+$lang['autosubmit'] = 'Envoyer les données automatiquement chaque mois';
+$lang['submissionFailed'] = 'Les données ne peuvent pas être envoyées à cause des erreurs suivantes :';
+$lang['submitDirectly'] = 'Vous pouvez envoyer le données manuellement en soumettant ce formulaire.';
+$lang['autosubmitError'] = 'La dernière soumission automatique a échoué pour les raisons suivantes :';
+$lang['lastSent'] = 'Les données ont été envoyées';
diff --git a/lib/plugins/popularity/lang/fr/submitted.txt b/lib/plugins/popularity/lang/fr/submitted.txt
new file mode 100644
index 000000000..0bc4cfe71
--- /dev/null
+++ b/lib/plugins/popularity/lang/fr/submitted.txt
@@ -0,0 +1,2 @@
+====== Enquête de popularité ======
+Les données ont été envoyées avec succès. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/he/lang.php b/lib/plugins/popularity/lang/he/lang.php
index 024f94ae8..f619127cd 100644
--- a/lib/plugins/popularity/lang/he/lang.php
+++ b/lib/plugins/popularity/lang/he/lang.php
@@ -5,6 +5,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['name'] = 'משוב פופולריות (יתכן זמן טעינה ארוך)';
$lang['submit'] = 'שלח מידע';
diff --git a/lib/plugins/popularity/lang/hi/lang.php b/lib/plugins/popularity/lang/hi/lang.php
index d8630a281..c0085d72a 100644
--- a/lib/plugins/popularity/lang/hi/lang.php
+++ b/lib/plugins/popularity/lang/hi/lang.php
@@ -3,4 +3,6 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
+$lang['submit'] = 'डेटा भेजे';
diff --git a/lib/plugins/popularity/lang/it/intro.txt b/lib/plugins/popularity/lang/it/intro.txt
index 62303eca7..f65310a5a 100644
--- a/lib/plugins/popularity/lang/it/intro.txt
+++ b/lib/plugins/popularity/lang/it/intro.txt
@@ -2,8 +2,8 @@
Questo strumento raccoglie dati anonimi sul tuo wiki e ti permette di inviarli agli sviluppatori di Dokuwiki. Questo aiuta loro a capire come Dokuwiki viene utilizzato dagli utenti e prendere decisioni future sullo sviluppo in base a quelle che sono le reali statistiche di utilizzo da parte degli utenti.
-Ti incoraggiamo a ripetere questa operazione al più spesso per mantenere informati gli sviluppatori sulla crescita del tuo wiki. L'insieme dei dati raccolti saranno identificati tramite un ID anonimo.
+Ti incoraggiamo a ripetere ogni tanto questa operazione per mantenere informati gli sviluppatori sulla crescita del tuo wiki. L'insieme dei dati raccolti saranno identificati tramite un ID anonimo.
-I dati raccolti contengono informazioni come la versione di DokuWiki, il numero e le dimensioni delle pagine e dei files, i plugins installati e qualche informazione sulla versione di PHP presente nel sistema.
+I dati raccolti contengono informazioni come la versione di DokuWiki, il numero e le dimensioni delle pagine e dei file, i plugin installati e informazioni sulla versione di PHP presente nel sistema.
-A continuazione puoi vedere un'anteprima dei dati che saranno inviati. Utilizza il tasto "Invia dati" per trasferire le informazioni. \ No newline at end of file
+A continuazione puoi vedere un'anteprima dei dati che saranno inviati. Utilizza il pulsante "Invia dati" per trasferire le informazioni. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/it/lang.php b/lib/plugins/popularity/lang/it/lang.php
index 583dfae26..a7852f22c 100644
--- a/lib/plugins/popularity/lang/it/lang.php
+++ b/lib/plugins/popularity/lang/it/lang.php
@@ -8,6 +8,12 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['name'] = 'Raccolta dati sul wiki (può impiegare del tempo per caricarsi)';
$lang['submit'] = 'Invia dati';
+$lang['autosubmit'] = 'Invia automaticamente i dati una volta al mese';
+$lang['submissionFailed'] = 'È stato impossibile inviare i dati a causa del seguente errore:';
+$lang['submitDirectly'] = 'È possibile inviare i dati manualmente utilizzando il pulsante sottostante.';
+$lang['autosubmitError'] = 'L\'ultimo invio automatico non è andato a buon fine a causa del seguente errore:';
+$lang['lastSent'] = 'I dati sono stati inviati';
diff --git a/lib/plugins/popularity/lang/it/submitted.txt b/lib/plugins/popularity/lang/it/submitted.txt
new file mode 100644
index 000000000..78247154e
--- /dev/null
+++ b/lib/plugins/popularity/lang/it/submitted.txt
@@ -0,0 +1,3 @@
+====== Raccolta dati sul wiki ======
+
+I dati sono stati inviati correttamente. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/ja/lang.php b/lib/plugins/popularity/lang/ja/lang.php
index 7f3c90f3d..1e0dbdc3f 100644
--- a/lib/plugins/popularity/lang/ja/lang.php
+++ b/lib/plugins/popularity/lang/ja/lang.php
@@ -5,6 +5,7 @@
* @author Ikuo Obataya <i.obataya@gmail.com>
* @author Daniel Dupriest <kououken@gmail.com>
* @author Kazutaka Miyasaka <kazmiya@gmail.com>
+ * @author Yuji Takenaka <webmaster@davilin.com>
*/
$lang['name'] = '利用状況調査(ロードに少し時間が掛かります)';
$lang['submit'] = 'データ送信';
diff --git a/lib/plugins/popularity/lang/ko/lang.php b/lib/plugins/popularity/lang/ko/lang.php
index 3a28b1b0e..91d798a5f 100644
--- a/lib/plugins/popularity/lang/ko/lang.php
+++ b/lib/plugins/popularity/lang/ko/lang.php
@@ -6,6 +6,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['name'] = '인기도 조사 (불러오는데 시간이 걸릴 수 있습니다.)';
$lang['submit'] = '자료 보내기';
diff --git a/lib/plugins/popularity/lang/la/intro.txt b/lib/plugins/popularity/lang/la/intro.txt
new file mode 100644
index 000000000..c3029caf4
--- /dev/null
+++ b/lib/plugins/popularity/lang/la/intro.txt
@@ -0,0 +1,10 @@
+====== Index Fauoris Popularis ======
+
+Haoc instrumentum fauorem popularem mittis sic ut creatores uicis meliorem illum facere possint.
+
+Rursum te fauorem mittere experamus sic ut si mutationes meliores uel peiores esse uidere possimus.
+
+Res mittendae tua forma in usu, numerus et pondus paginarum et aliarum rerum, addenda in usu et de PHP.
+
+Res rudes mittendae subter ostenduntur. "Res mittere" premas ut eas transferas.
+
diff --git a/lib/plugins/popularity/lang/la/lang.php b/lib/plugins/popularity/lang/la/lang.php
new file mode 100644
index 000000000..c7f307c29
--- /dev/null
+++ b/lib/plugins/popularity/lang/la/lang.php
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['name'] = 'Index fauoris popularis (multum tempus quaerere potest)';
+$lang['submit'] = 'Missum die';
+$lang['autosubmit'] = 'Constanter res omni mense mittuntur';
+$lang['submissionFailed'] = 'Res non mittuntur ea causa:';
+$lang['submitDirectly'] = 'Res tu mittere potes cum hoc exemplar compleas.';
+$lang['autosubmitError'] = 'Extrema missio lapsa est ea causa:';
+$lang['lastSent'] = 'Res missae sunt';
diff --git a/lib/plugins/popularity/lang/la/submitted.txt b/lib/plugins/popularity/lang/la/submitted.txt
new file mode 100644
index 000000000..2b2faf439
--- /dev/null
+++ b/lib/plugins/popularity/lang/la/submitted.txt
@@ -0,0 +1,3 @@
+====== Index fauoris popularis ======
+
+Res feliciter missae sunt. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/nl/intro.txt b/lib/plugins/popularity/lang/nl/intro.txt
index 92962944b..3c045c427 100644
--- a/lib/plugins/popularity/lang/nl/intro.txt
+++ b/lib/plugins/popularity/lang/nl/intro.txt
@@ -1,9 +1,9 @@
====== Populariteitsfeedback ======
-Dit onderdeel verzamelt anonieme gegevens over je wiki en stelt je in staat deze te versturen naar de ontwikkelaars van DokuWiki. Dit helpt hen te begrijpen hoe DokuWiki wordt gebruikt door de gebruikers en zorgt er ook voor dat toekomstige ontwikkelkeuzes kunnen worden gestaafd door echte gebruikersstatistieken.
+Dit onderdeel verzamelt anonieme gegevens over uw wiki en stelt u in staat deze te versturen naar de ontwikkelaars van DokuWiki. Dit helpt hen te begrijpen hoe DokuWiki wordt gebruikt door de gebruikers en zorgt er ook voor dat toekomstige ontwikkelkeuzes kunnen worden gestaafd door echte gebruikersstatistieken.
-U wordt verzocht deze stap van tijd tot tijd te herhalen om ontwikkelaars op de hoogte te houden terwijl je wiki groeit. De herhaalde data zal worden geïdentificeerd door een uniek, anoniem ID.
+U wordt verzocht deze stap van tijd tot tijd te herhalen om ontwikkelaars op de hoogte te houden terwijl uw wiki groeit. De herhaalde data zal worden geïdentificeerd door een uniek, anoniem ID.
-De verzamelde gegevens bevat onder andere gegevens over je versie van DokuWiki, het aantal- en de grootte van de pagina's en bestanden, geïnstalleerde plugins en informatie over PHP.
+De verzamelde gegevens bevat onder andere gegevens over uw versie van DokuWiki, het aantal- en de grootte van de pagina's en bestanden, geïnstalleerde plugins en informatie over PHP.
De ruwe data die verzonden worden staan hieronder. Gebruik de knop "Verstuur" om de informatie te verzenden.
diff --git a/lib/plugins/popularity/lang/nl/lang.php b/lib/plugins/popularity/lang/nl/lang.php
index 54e12ae91..0a8386f42 100644
--- a/lib/plugins/popularity/lang/nl/lang.php
+++ b/lib/plugins/popularity/lang/nl/lang.php
@@ -13,3 +13,8 @@
*/
$lang['name'] = 'Populariteitsfeedback (kan even duren om in te laden)';
$lang['submit'] = 'Verstuur';
+$lang['autosubmit'] = 'Gegevens automatisch maandelijks verzenden';
+$lang['submissionFailed'] = 'De gegevens konden niet verstuurd worden vanwege de volgende fouten:';
+$lang['submitDirectly'] = 'Je kan de gegevens handmatig sturen door het onderstaande formulier te verzenden.';
+$lang['autosubmitError'] = 'De laatste automatische verzending is mislukt vanwege de volgende fout:';
+$lang['lastSent'] = 'De gegevens zijn verstuurd.';
diff --git a/lib/plugins/popularity/lang/nl/submitted.txt b/lib/plugins/popularity/lang/nl/submitted.txt
new file mode 100644
index 000000000..219d80fb6
--- /dev/null
+++ b/lib/plugins/popularity/lang/nl/submitted.txt
@@ -0,0 +1,3 @@
+===== Populariteitsfeedback =====
+
+Het versturen van de gegevens is gelukt. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/pt/lang.php b/lib/plugins/popularity/lang/pt/lang.php
index da92ee729..35fac0fc0 100644
--- a/lib/plugins/popularity/lang/pt/lang.php
+++ b/lib/plugins/popularity/lang/pt/lang.php
@@ -8,3 +8,7 @@
*/
$lang['name'] = 'Retorno (feedback) de Popularidade (pode levar algum tempo a carregar)';
$lang['submit'] = 'Enviar Dados';
+$lang['autosubmit'] = 'Enviar dados automáticamente uma vez por mês';
+$lang['submissionFailed'] = 'Os dados não foram enviados devido ao seguinte erro:';
+$lang['submitDirectly'] = 'Pode enviar os dados manualmente, submetendo o seguinte formulário.';
+$lang['lastSent'] = 'Os dados foram enviados';
diff --git a/lib/plugins/popularity/lang/pt/submitted.txt b/lib/plugins/popularity/lang/pt/submitted.txt
new file mode 100644
index 000000000..d2bb2b7ae
--- /dev/null
+++ b/lib/plugins/popularity/lang/pt/submitted.txt
@@ -0,0 +1,3 @@
+====== Retorno de Popularidade ======
+
+Os dados foram enviados com sucesso. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/ro/lang.php b/lib/plugins/popularity/lang/ro/lang.php
index 15da1cf3b..1644ea574 100644
--- a/lib/plugins/popularity/lang/ro/lang.php
+++ b/lib/plugins/popularity/lang/ro/lang.php
@@ -9,3 +9,8 @@
*/
$lang['name'] = 'Feedback de popularitate (încărcarea poate dura mai mult)';
$lang['submit'] = 'Trimite datele';
+$lang['autosubmit'] = 'Trimite datele automat o dată pe lună';
+$lang['submissionFailed'] = 'Datele nu au fost trimise din cauza următoarei erori:';
+$lang['submitDirectly'] = 'Puteți trimite datele manual prin completarea următorului formular.';
+$lang['autosubmitError'] = 'Ultima trimitere automată a eșuat din cauza următoarei erori:';
+$lang['lastSent'] = 'Datele au fost trimise';
diff --git a/lib/plugins/popularity/lang/ro/submitted.txt b/lib/plugins/popularity/lang/ro/submitted.txt
new file mode 100644
index 000000000..214ffb71f
--- /dev/null
+++ b/lib/plugins/popularity/lang/ro/submitted.txt
@@ -0,0 +1,3 @@
+====== Feedback de popularitate ======
+
+Datele au fost trimise cu succes. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/ru/intro.txt b/lib/plugins/popularity/lang/ru/intro.txt
index 587a7ae85..e8118e4eb 100644
--- a/lib/plugins/popularity/lang/ru/intro.txt
+++ b/lib/plugins/popularity/lang/ru/intro.txt
@@ -1,10 +1,10 @@
====== Сбор информации о популярности ======
-Этот инструмент собирает анонимные данные о вашей вики и позволяет вам отправить их разработчикам «ДокуВики». Эти данные помогут им понять то, как именно используется «ДокуВики», и удостовериться, что принимаемые проектные решения соответствуют жизненным реалиям.
+Этот инструмент собирает анонимные данные о вашей вики и позволяет вам отправить их разработчикам «ДокуВики». Эти данные помогут им понять, как именно используется «ДокуВики», и удостовериться, что принимаемые проектные решения соответствуют жизненным реалиям.
-Отправляйте данные время от времени для того, чтобы сообщить разработчикам о том, что ваша вики «подросла». Отправленные вами данные будут идентифицированы по анонимному ID.
+Отправляйте данные время от времени для того, чтобы сообщать разработчикам о том, что ваша вики «подросла». Отправленные вами данные будут идентифицированы по анонимному ID.
Собранные данные содержат такую информацию, как: версия «ДокуВики», количество и размер ваших страниц и файлов, установленные плагины, информацию об установленном PHP.
-Данные, которые будут посланы, представлены ниже. Пожалуйста, используйте кнопку «Отправить данные», чтобы передать информацию.
+Данные, которые будут отосланы, представлены ниже. Пожалуйста, используйте кнопку «Отправить данные», чтобы передать информацию.
diff --git a/lib/plugins/popularity/lang/ru/lang.php b/lib/plugins/popularity/lang/ru/lang.php
index df89c7022..79b3e224d 100644
--- a/lib/plugins/popularity/lang/ru/lang.php
+++ b/lib/plugins/popularity/lang/ru/lang.php
@@ -11,6 +11,13 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['name'] = 'Сбор информации о популярности (для загрузки может потребоваться некоторое время)';
$lang['submit'] = 'Отправить данные';
+$lang['autosubmit'] = 'Автоматически отправлять данные один раз в месяц';
+$lang['submissionFailed'] = 'Данные не могут быть отправлены из-за ошибки:';
+$lang['submitDirectly'] = 'Вы можете отправлять данные вручную, заполнив форму:';
+$lang['autosubmitError'] = 'Последнее автоотправление данных не удалось из-за ошибки:';
+$lang['lastSent'] = 'Данные отправлены';
diff --git a/lib/plugins/popularity/lang/ru/submitted.txt b/lib/plugins/popularity/lang/ru/submitted.txt
new file mode 100644
index 000000000..a239943a4
--- /dev/null
+++ b/lib/plugins/popularity/lang/ru/submitted.txt
@@ -0,0 +1,2 @@
+====== Общественная обратная связь ======
+Данные были успешно отправлены. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/sl/intro.txt b/lib/plugins/popularity/lang/sl/intro.txt
new file mode 100644
index 000000000..ceb0e61e6
--- /dev/null
+++ b/lib/plugins/popularity/lang/sl/intro.txt
@@ -0,0 +1,9 @@
+====== Poroilo o uporabi ======
+
+To orodje je namenjeno zbiranju brezimnih podatkov o postavljeni Dokuwiki strani in omogoa poiljanje nekaterih podatkov neposredno razvijalcem sistema. S temi podatki lahko razvijalci razumejo naine uporabe sistema, zahteve uporabnikov in pogostost uporabe, kar s statistinimi podatki vpliva tudi na nadaljnji razvoj sistema.
+
+Priporoeno je, da poroilo o uporabi poljete vsake toliko asa, saj lahko le tako razvijalci dobijo podatke o hitrosti rasti spletia in pogostosti uporabe. Vsi podatki so poslani oznaeni s posebno vpisno tevilko, ki omogoa brezimno sledenje.
+
+Zbrani podatki vsebujejo podrobnosti o razliici uporabljenega sistema DokuWiki, tevilo in velikost wiki strani, datotekah, ki so naloene na sistem in podatke o vstavkih ter PHP namestitvi in razliici.
+
+Surovi podatki, ki bodo poslani so prikazani spodaj. S pritiskom na gumb "Polji podatke", bodo ti poslani na strenik razvijalcev.
diff --git a/lib/plugins/popularity/lang/sl/lang.php b/lib/plugins/popularity/lang/sl/lang.php
index befb1eec0..5c92dd7c4 100644
--- a/lib/plugins/popularity/lang/sl/lang.php
+++ b/lib/plugins/popularity/lang/sl/lang.php
@@ -2,7 +2,12 @@
/**
* Slovenian language file
*
- * @author Dejan Levec <webphp@gmail.com>
- * @author Boštjan Seničar <senicar@gmail.com>
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
-$lang['submit'] = 'Pošlji';
+$lang['name'] = 'Poročilo o uporabi (nalaganje strani je lahko dolgotrajno)';
+$lang['submit'] = 'Pošlji podatke';
+$lang['autosubmit'] = 'Samodejno pošlji podatke enkrat mesečno';
+$lang['submissionFailed'] = 'Podatkov zaradi napake ni mogoče poslati:';
+$lang['submitDirectly'] = 'Podatke je mogoče poslati ročno s pošiljanjem preko obrazca.';
+$lang['autosubmitError'] = 'Zadnji poskus samodejnega pošiljanja je spodletel zaradi napake:';
+$lang['lastSent'] = 'Podatki so bili uspešno poslani.';
diff --git a/lib/plugins/popularity/lang/sl/submitted.txt b/lib/plugins/popularity/lang/sl/submitted.txt
new file mode 100644
index 000000000..988afd837
--- /dev/null
+++ b/lib/plugins/popularity/lang/sl/submitted.txt
@@ -0,0 +1,3 @@
+====== Poroilo o uporabi ======
+
+Podatki so bili uspeno poslani.
diff --git a/lib/plugins/popularity/lang/sv/lang.php b/lib/plugins/popularity/lang/sv/lang.php
index 10e71b790..b461a95cf 100644
--- a/lib/plugins/popularity/lang/sv/lang.php
+++ b/lib/plugins/popularity/lang/sv/lang.php
@@ -15,3 +15,8 @@
*/
$lang['name'] = 'Popularitets-feedback (det kan ta en stund att ladda sidan)';
$lang['submit'] = 'Sänd data';
+$lang['autosubmit'] = 'Skicka data automatiskt varje månad';
+$lang['submissionFailed'] = 'Datan kunde inte skickas för att:';
+$lang['submitDirectly'] = 'Du kan skicka datan manuellt genom att fylla i följande formulär.';
+$lang['autosubmitError'] = 'Senaste automatiska sändning av datan misslyckades för att:';
+$lang['lastSent'] = 'Datan har skickats';
diff --git a/lib/plugins/popularity/lang/sv/submitted.txt b/lib/plugins/popularity/lang/sv/submitted.txt
new file mode 100644
index 000000000..fb8eab773
--- /dev/null
+++ b/lib/plugins/popularity/lang/sv/submitted.txt
@@ -0,0 +1,3 @@
+====== Popularitetsfeedback ======
+
+Datan har skickats utan problem. \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/tr/lang.php b/lib/plugins/popularity/lang/tr/lang.php
index 682b51218..fe87d1548 100644
--- a/lib/plugins/popularity/lang/tr/lang.php
+++ b/lib/plugins/popularity/lang/tr/lang.php
@@ -2,11 +2,10 @@
/**
* Turkish language file
*
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['name'] = 'Popülerlik Geribeslemesi (yüklemesi uzun sürebilir)';
$lang['submit'] = 'Verileri Gönder';
diff --git a/lib/plugins/popularity/lang/zh-tw/intro.txt b/lib/plugins/popularity/lang/zh-tw/intro.txt
index 54444afc0..37c63dced 100644
--- a/lib/plugins/popularity/lang/zh-tw/intro.txt
+++ b/lib/plugins/popularity/lang/zh-tw/intro.txt
@@ -1,9 +1,10 @@
-====== 人氣反饋 ======
+====== 人氣回饋 ======
-本工具收集關於您維基站點的匿名信息,並允許您將其發送給 DokuWiki 的開發者。這樣做有助於我們了解用戶是如何使用 DokuWiki 的,並能使我們未來的開發決策建立在現實使用數據上。
+本工具會從您的維基站台收集訊息,並以匿名的方式發送給 DokuWiki 的開發者。這有助於他們了解使用者們如何使用 DokuWiki ,並能基於實際統計資料對未來開發做出更準確的決策。
-我們鼓勵您不時重復該步驟,以便我們能了解您的維基站點發展進度。您的數據集將被匿名 ID 標識。
+我們鼓勵您經常重複這個步驟,讓開發者了解您的維基站台的成長情形。您的資料集將會被標識為一個匿名的識別碼 (ID)。
-收集的數據包括 DokuWiki 版本、您的頁面數量以及文件大小、已安裝的插件、服務器上的 PHP 相關信息。
+收集的資料包括 DokuWiki 版本、頁面數量、檔案大小、安裝的插件、伺服器的 PHP 資訊。
+
+將被發送的原始資料顯示如下。請點擊「發送資料」按鈕進行傳輸。
-將被發送的原始數據如下所示。請點擊“發送數據”按扭進行傳輸。 \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/zh-tw/lang.php b/lib/plugins/popularity/lang/zh-tw/lang.php
index 4757ab84b..3ced0ee5a 100644
--- a/lib/plugins/popularity/lang/zh-tw/lang.php
+++ b/lib/plugins/popularity/lang/zh-tw/lang.php
@@ -7,6 +7,13 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
-$lang['name'] = '人氣反饋(載入可能需要一些時間)';
-$lang['submit'] = '發送數據';
+$lang['name'] = '人氣回饋(載入可能需要一些時間)';
+$lang['submit'] = '發送資料';
+$lang['autosubmit'] = '每月自動發送';
+$lang['submissionFailed'] = '由於以下原因,資料無法發送:';
+$lang['submitDirectly'] = '你可以利用以下的表單來發手動發送資料.';
+$lang['autosubmitError'] = '由於以下原因,上次自動發送失敗:';
+$lang['lastSent'] = '資料已發送';
diff --git a/lib/plugins/popularity/lang/zh-tw/submitted.txt b/lib/plugins/popularity/lang/zh-tw/submitted.txt
new file mode 100644
index 000000000..6febcd5b8
--- /dev/null
+++ b/lib/plugins/popularity/lang/zh-tw/submitted.txt
@@ -0,0 +1,3 @@
+====== 人氣回饋 ======
+
+資料已發送成功 \ No newline at end of file
diff --git a/lib/plugins/popularity/lang/zh/lang.php b/lib/plugins/popularity/lang/zh/lang.php
index 22fad03b2..371a8fddb 100644
--- a/lib/plugins/popularity/lang/zh/lang.php
+++ b/lib/plugins/popularity/lang/zh/lang.php
@@ -8,6 +8,14 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['name'] = '人气反馈(载入可能需要一些时间)';
$lang['submit'] = '发送数据';
+$lang['autosubmit'] = '每月自动发送';
+$lang['submissionFailed'] = '数据由于以下原因不恩你给发送:';
+$lang['submitDirectly'] = '你可以手动提交下面的表单来发送数据。';
+$lang['autosubmitError'] = '印以下原因,上一次自动提交失败:';
+$lang['lastSent'] = '数据已发送';
diff --git a/lib/plugins/popularity/lang/zh/submitted.txt b/lib/plugins/popularity/lang/zh/submitted.txt
new file mode 100644
index 000000000..6039b70e1
--- /dev/null
+++ b/lib/plugins/popularity/lang/zh/submitted.txt
@@ -0,0 +1,3 @@
+====== 人气反馈 ======
+
+数据发送成功。 \ No newline at end of file
diff --git a/lib/plugins/popularity/plugin.info.txt b/lib/plugins/popularity/plugin.info.txt
new file mode 100644
index 000000000..2652bd669
--- /dev/null
+++ b/lib/plugins/popularity/plugin.info.txt
@@ -0,0 +1,7 @@
+base popularity
+author Andreas Gohr
+email andi@splitbrain.org
+date 2010-12-09
+name Popularity Feedback Plugin
+desc Send anonymous data about your wiki to the developers.
+url http://www.dokuwiki.org/plugin:popularity
diff --git a/lib/plugins/revert/admin.php b/lib/plugins/revert/admin.php
index 8a2cd5553..e188e2488 100644
--- a/lib/plugins/revert/admin.php
+++ b/lib/plugins/revert/admin.php
@@ -196,4 +196,4 @@ class admin_plugin_revert extends DokuWiki_Admin_Plugin {
}
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/revert/lang/bg/intro.txt b/lib/plugins/revert/lang/bg/intro.txt
index ab7308d6d..791c96857 100644
--- a/lib/plugins/revert/lang/bg/intro.txt
+++ b/lib/plugins/revert/lang/bg/intro.txt
@@ -1,4 +1,4 @@
====== Възстановяване ======
-Тази страница помага при автоматичното възстановяване от спам-атака. За да намерите списък със спамнати страници, въведете текст за търсене(пр. спам препратка), след това потвърдете, че намерените страници са наистина спам и възстановете редакциите.
+Страницата помага за автоматично възстановяване след SPAM атака. За да намерите списък със спамнати страници, въведете текст за търсене (напр. линк от SPAM съобщението), след това потвърдете, че намерените страници са наистина SPAM и възстановете старите версии.
diff --git a/lib/plugins/revert/lang/bg/lang.php b/lib/plugins/revert/lang/bg/lang.php
index 6f0ff0672..0819de01a 100644
--- a/lib/plugins/revert/lang/bg/lang.php
+++ b/lib/plugins/revert/lang/bg/lang.php
@@ -3,13 +3,14 @@
* bulgarian language file
* @author Nikolay Vladimirov <nikolay@vladimiroff.com>
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
$lang['menu'] = 'Възстановяване';
-$lang['filter'] = 'Търсене на спамната страници';
-$lang['revert'] = 'Избрани страници за възстановяване';
-$lang['reverted'] = '%s върнат до версия %s';
-$lang['removed'] = '%s премахнат';
+$lang['filter'] = 'Търсене на спамнати страници';
+$lang['revert'] = 'Възстанови избраните страници';
+$lang['reverted'] = '%s върната до версия %s';
+$lang['removed'] = '%s премахната';
$lang['revstart'] = 'Процесът на възстановяване започна. Това може да отнеме много време. Ако скриптът се просрочи преди да завърши, трябва да възстановявате на по-малки парчета.';
$lang['revstop'] = 'Процесът на възстановяване завърши успешно.';
-$lang['note1'] = 'Забележка: за търсенето имат значение малки/големи букви';
-$lang['note2'] = 'Забележка: страницата ще бъде възвърната без да съдържа спам терминът <i>%s</i>.';
+$lang['note1'] = 'Бележка: при търсенето се различават малки от големи букви';
+$lang['note2'] = 'Бележка: страницата ще бъде върната към стара версия без SPAM терминa <i>%s</i>.';
diff --git a/lib/plugins/revert/lang/cs/intro.txt b/lib/plugins/revert/lang/cs/intro.txt
index bbc0df25a..1e1cd0fd8 100644
--- a/lib/plugins/revert/lang/cs/intro.txt
+++ b/lib/plugins/revert/lang/cs/intro.txt
@@ -1,3 +1,3 @@
====== Obnova zaspamovaných stránek ======
-Tato stránka pomůže při automatické obnově po spamovém útoku. Pro nalezení seznamu zaspamovaných stránek nedřív zadejte hledaný výraz (např. spamové URL) a pak potvrďte, že nalezené stránky opravdu obsahují spam a mohou být obnoveny.
+Tato stránka pomůže při automatické obnově po spamovém útoku. Pro nalezení seznamu zaspamovaných stránek nejdříve zadejte hledaný výraz (např. spamové URL) a pak potvrďte, že nalezené stránky opravdu obsahují spam a mohou být obnoveny.
diff --git a/lib/plugins/revert/lang/de-informal/lang.php b/lib/plugins/revert/lang/de-informal/lang.php
index ac2f35e85..b6709d2fa 100644
--- a/lib/plugins/revert/lang/de-informal/lang.php
+++ b/lib/plugins/revert/lang/de-informal/lang.php
@@ -6,6 +6,7 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Zurückstellungsmanager';
$lang['filter'] = 'Durchsuche als Spam markierte Seiten';
diff --git a/lib/plugins/revert/lang/de/lang.php b/lib/plugins/revert/lang/de/lang.php
index 5dee8007b..0bc8e2ce0 100644
--- a/lib/plugins/revert/lang/de/lang.php
+++ b/lib/plugins/revert/lang/de/lang.php
@@ -12,6 +12,8 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Seiten wieder herstellen';
$lang['filter'] = 'Nach betroffenen Seiten suchen';
diff --git a/lib/plugins/revert/lang/en/lang.php b/lib/plugins/revert/lang/en/lang.php
index a2002f1a7..6bf867ded 100644
--- a/lib/plugins/revert/lang/en/lang.php
+++ b/lib/plugins/revert/lang/en/lang.php
@@ -20,4 +20,4 @@ $lang['revstop'] = 'Reversion process finished successfully.';
$lang['note1'] = 'Note: this search is case sensitive';
$lang['note2'] = 'Note: the page will be reverted to the last version not containing the given spam term <i>%s</i>.';
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/revert/lang/et/lang.php b/lib/plugins/revert/lang/et/lang.php
new file mode 100644
index 000000000..0ffea1244
--- /dev/null
+++ b/lib/plugins/revert/lang/et/lang.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Estonian language file
+ *
+ * @author kristian.kankainen@kuu.la
+ */
diff --git a/lib/plugins/revert/lang/fr/lang.php b/lib/plugins/revert/lang/fr/lang.php
index d80ece209..d6dc3ee3d 100644
--- a/lib/plugins/revert/lang/fr/lang.php
+++ b/lib/plugins/revert/lang/fr/lang.php
@@ -13,6 +13,7 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
$lang['menu'] = 'Gestionnaire de réversions';
$lang['filter'] = 'Trouver les pages spammées ';
diff --git a/lib/plugins/revert/lang/he/lang.php b/lib/plugins/revert/lang/he/lang.php
index 585487816..ac3c3412e 100644
--- a/lib/plugins/revert/lang/he/lang.php
+++ b/lib/plugins/revert/lang/he/lang.php
@@ -5,6 +5,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['menu'] = 'מנהל שחזור';
$lang['filter'] = 'חפש דפים עם ספאם';
diff --git a/lib/plugins/revert/lang/hi/lang.php b/lib/plugins/revert/lang/hi/lang.php
index d8630a281..d6f78ffd6 100644
--- a/lib/plugins/revert/lang/hi/lang.php
+++ b/lib/plugins/revert/lang/hi/lang.php
@@ -3,4 +3,5 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
diff --git a/lib/plugins/revert/lang/it/lang.php b/lib/plugins/revert/lang/it/lang.php
index 319493acd..79565655b 100644
--- a/lib/plugins/revert/lang/it/lang.php
+++ b/lib/plugins/revert/lang/it/lang.php
@@ -9,6 +9,7 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['menu'] = 'Gestore di ripristini';
$lang['filter'] = 'Cerca pagine con spam';
diff --git a/lib/plugins/revert/lang/ko/lang.php b/lib/plugins/revert/lang/ko/lang.php
index 5e070de92..0163d2754 100644
--- a/lib/plugins/revert/lang/ko/lang.php
+++ b/lib/plugins/revert/lang/ko/lang.php
@@ -6,6 +6,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['menu'] = '복구 관리자';
$lang['filter'] = '스팸 페이지 검색 ';
diff --git a/lib/plugins/revert/lang/la/intro.txt b/lib/plugins/revert/lang/la/intro.txt
new file mode 100644
index 000000000..99a206f63
--- /dev/null
+++ b/lib/plugins/revert/lang/la/intro.txt
@@ -0,0 +1,3 @@
+====== Restituendi Administrator ======
+
+Haec pagina contra mala interretialia paginas restituta. Vt paginas aegras quaeras, malum VRL scribe, deinde paginas malas eligas. \ No newline at end of file
diff --git a/lib/plugins/revert/lang/la/lang.php b/lib/plugins/revert/lang/la/lang.php
new file mode 100644
index 000000000..af4203437
--- /dev/null
+++ b/lib/plugins/revert/lang/la/lang.php
@@ -0,0 +1,15 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['menu'] = 'Restituendi administrator';
+$lang['filter'] = 'Malas paginas quaerere';
+$lang['revert'] = 'Electas paginas restituere';
+$lang['reverted'] = '%s restitutur ut %s recenseas';
+$lang['removed'] = '%s deletur';
+$lang['revstart'] = 'Restitutio agens. Hic multo tempore agere potest. Si nimium tempus transit, manu restituis.';
+$lang['revstop'] = 'Restitutio feliciter perfecta.';
+$lang['note1'] = 'Caue: litteras maiores et minores discernit';
+$lang['note2'] = 'Caue: pagina in recentiori forma sine malis uerbis "<i>%s</i>" restituetur';
diff --git a/lib/plugins/revert/lang/ru/intro.txt b/lib/plugins/revert/lang/ru/intro.txt
index 66c5af005..52d1f8d3d 100644
--- a/lib/plugins/revert/lang/ru/intro.txt
+++ b/lib/plugins/revert/lang/ru/intro.txt
@@ -1,3 +1,3 @@
====== Менеджер откаток ======
-Эта страница поможет вам в автоматической откатке изменений после спам-атаки. Для того, чтобы найти спам-страницы, введите ключевые слова и произведите поиск (например, по URL спамера). Затем убедитесь, что найденные страницы действительно содержат спам, и сделайте откатку изменений.
+Эта страница поможет вам в автоматической откатке изменений после спам-атаки. Для того, чтобы найти спам-страницы, введите ключевые слова и произведите поиск (например, по URL спамера). Затем убедитесь, что найденные страницы действительно содержат спам и сделайте откатку изменений.
diff --git a/lib/plugins/revert/lang/ru/lang.php b/lib/plugins/revert/lang/ru/lang.php
index 712a41f08..9624d8fd6 100644
--- a/lib/plugins/revert/lang/ru/lang.php
+++ b/lib/plugins/revert/lang/ru/lang.php
@@ -12,6 +12,8 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['menu'] = 'Менеджер откаток';
$lang['filter'] = 'Поиск спам-страниц';
diff --git a/lib/plugins/revert/lang/sl/intro.txt b/lib/plugins/revert/lang/sl/intro.txt
new file mode 100644
index 000000000..c63f281ed
--- /dev/null
+++ b/lib/plugins/revert/lang/sl/intro.txt
@@ -0,0 +1,3 @@
+====== Povrnitev okvarjene vsebine ======
+
+Na tej strani je mogoe povrniti vsebino wiki strani na izvorne vrednosti po napadu na stran in vpisu neelenih vsebin. Za iskanje strani z neeleno vsebino, uporabite iskalnik z ustreznim nizom (npr. naslov URL), potem pa potrdite, da so najdene strani res z neeleno vsebino in nato povrnite stanje na zadnjo pravo razliico.
diff --git a/lib/plugins/revert/lang/sl/lang.php b/lib/plugins/revert/lang/sl/lang.php
index 1fcf4ca36..92b0427ce 100644
--- a/lib/plugins/revert/lang/sl/lang.php
+++ b/lib/plugins/revert/lang/sl/lang.php
@@ -2,6 +2,14 @@
/**
* Slovenian language file
*
- * @author Dejan Levec <webphp@gmail.com>
- * @author Boštjan Seničar <senicar@gmail.com>
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
+$lang['menu'] = 'Povrnitev okvarjene vsebine';
+$lang['filter'] = 'Iskanje strani z neželeno vsebino';
+$lang['revert'] = 'Povrni izbrane strani';
+$lang['reverted'] = 'stran %s je povrnjena na različico %s';
+$lang['removed'] = 'stran %s je odstranjena';
+$lang['revstart'] = 'Postopek povrnitve vsebine je začet. Opravilo je lahko dolgotrajno. V kolikor opravilo časovno poteče prek končanjem povrnitve, bo treba postopek ponoviti na manjših odsekih.';
+$lang['revstop'] = 'Postopek povrnitve vsebine je uspešno končan.';
+$lang['note1'] = 'Opomba: iskanje upošteva velikost črk';
+$lang['note2'] = 'Opomba: stran bo povrnjena na zadnjo različico brez neželenega pojma <i>%s</i>.';
diff --git a/lib/plugins/revert/lang/tr/lang.php b/lib/plugins/revert/lang/tr/lang.php
index 164a8ec4f..aa1458a95 100644
--- a/lib/plugins/revert/lang/tr/lang.php
+++ b/lib/plugins/revert/lang/tr/lang.php
@@ -2,11 +2,10 @@
/**
* Turkish language file
*
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['menu'] = 'Eskiye Döndürme';
$lang['filter'] = 'Spam bulunan sayfaları ara';
diff --git a/lib/plugins/revert/lang/zh-tw/intro.txt b/lib/plugins/revert/lang/zh-tw/intro.txt
index 2aad10206..17632b1dd 100644
--- a/lib/plugins/revert/lang/zh-tw/intro.txt
+++ b/lib/plugins/revert/lang/zh-tw/intro.txt
@@ -1,3 +1,3 @@
====== 還原管理器 ======
-該頁面能幫助您的頁面從垃圾信息的攻擊中自動還原過來。 請先輸入關鍵詞搜索包含垃圾信息的頁面(如某個垃圾信息的 URL),然后請確定搜索結果的確包含垃圾信息,並將其還原至先前的修訂版。
+本頁面能幫助您自動還原被垃圾訊息攻擊的頁面過來。先輸入關鍵字詞搜尋包含垃圾訊息的頁面(如垃圾訊息的 URL),確認找到的頁面確實包含垃圾訊息,再將它們還原。
diff --git a/lib/plugins/revert/lang/zh-tw/lang.php b/lib/plugins/revert/lang/zh-tw/lang.php
index 40a137dc0..a853ccd2e 100644
--- a/lib/plugins/revert/lang/zh-tw/lang.php
+++ b/lib/plugins/revert/lang/zh-tw/lang.php
@@ -7,13 +7,15 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin <danny0838@pchome.com.tw>
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
$lang['menu'] = '還原管理';
-$lang['filter'] = '搜索包含垃圾信息的頁面';
-$lang['revert'] = '還原所選的頁面';
-$lang['reverted'] = '%s已還原到版本%s';
-$lang['removed'] = '%s已移除';
-$lang['revstart'] = '已開始還原操作。有可能需要很長時間。如果計時器在還原操作完成前停止了,請嘗試還原較少的內容。';
-$lang['revstop'] = '還原程序已成工的完成。';
-$lang['note1'] = '注意: 搜尋有分大小寫';
-$lang['note2'] = '注意: 此頁將會被還原到不包含給予的spam term <i>%s</i> 的最新版本.';
+$lang['filter'] = '搜索包含垃圾訊息的頁面';
+$lang['revert'] = '還原選取的頁面';
+$lang['reverted'] = '%s 已還原為版本 %s';
+$lang['removed'] = '%s 已移除';
+$lang['revstart'] = '已開始還原操作。有可能需要很長時間。如果程式執行逾時,請嘗試分次還原少量內容。';
+$lang['revstop'] = '還原程序已成功完成。';
+$lang['note1'] = '注意:搜尋區分大小寫';
+$lang['note2'] = '注意:此頁面將被還原為最後一個不含垃圾訊息 <i>%s</i> 的版本。';
diff --git a/lib/plugins/revert/lang/zh/lang.php b/lib/plugins/revert/lang/zh/lang.php
index 892cf2dbe..8ba626432 100644
--- a/lib/plugins/revert/lang/zh/lang.php
+++ b/lib/plugins/revert/lang/zh/lang.php
@@ -9,6 +9,9 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['menu'] = '还原管理器';
$lang['filter'] = '搜索包含垃圾信息的页面';
diff --git a/lib/plugins/syntax.php b/lib/plugins/syntax.php
index 127b92ce5..12451f636 100644
--- a/lib/plugins/syntax.php
+++ b/lib/plugins/syntax.php
@@ -188,10 +188,13 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode {
function localFN($id) {
global $conf;
$plugin = $this->getPluginName();
- $file = DOKU_PLUGIN.$plugin.'/lang/'.$conf['lang'].'/'.$id.'.txt';
- if(!@file_exists($file)){
- //fall back to english
- $file = DOKU_PLUGIN.$plugin.'/lang/en/'.$id.'.txt';
+ $file = DOKU_CONF.'/plugin_lang/'.$plugin.'/'.$conf['lang'].'/'.$id.'.txt';
+ if (!@file_exists($file)){
+ $file = DOKU_PLUGIN.$plugin.'/lang/'.$conf['lang'].'/'.$id.'.txt';
+ if(!@file_exists($file)){
+ //fall back to english
+ $file = DOKU_PLUGIN.$plugin.'/lang/en/'.$id.'.txt';
+ }
}
return $file;
}
@@ -276,4 +279,4 @@ class DokuWiki_Syntax_Plugin extends Doku_Parser_Mode {
}
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :
diff --git a/lib/plugins/usermanager/admin.php b/lib/plugins/usermanager/admin.php
index df13f65e3..e40ee9b7e 100644
--- a/lib/plugins/usermanager/admin.php
+++ b/lib/plugins/usermanager/admin.php
@@ -562,16 +562,19 @@ class admin_plugin_usermanager extends DokuWiki_Admin_Plugin {
* @return array(user, password, full name, email, array(groups))
*/
function _retrieveUser($clean=true) {
+ global $auth;
- $user[0] = ($clean) ? cleanID(preg_replace('/.*:/','',$_REQUEST['userid'])) : $_REQUEST['userid'];
+ $user[0] = ($clean) ? $auth->cleanUser($_REQUEST['userid']) : $_REQUEST['userid'];
$user[1] = $_REQUEST['userpass'];
$user[2] = $_REQUEST['username'];
$user[3] = $_REQUEST['usermail'];
- $user[4] = preg_split('/\s*,\s*/',$_REQUEST['usergroups'],-1,PREG_SPLIT_NO_EMPTY);
+ $user[4] = explode(',',$_REQUEST['usergroups']);
- if (empty($user[4]) || (is_array($user[4]) && (count($user[4]) == 1) && (trim($user[4][0]) == ''))) {
- $user[4] = null;
- }
+ $user[4] = array_map('trim',$user[4]);
+ if($clean) $user[4] = array_map(array($auth,'cleanGroup'),$user[4]);
+ $user[4] = array_filter($user[4]);
+ $user[4] = array_unique($user[4]);
+ if(!count($user[4])) $user[4] = null;
return $user;
}
diff --git a/lib/plugins/usermanager/images/search.png b/lib/plugins/usermanager/images/search.png
index 1aa445f03..e9dabc11e 100644
--- a/lib/plugins/usermanager/images/search.png
+++ b/lib/plugins/usermanager/images/search.png
Binary files differ
diff --git a/lib/plugins/usermanager/lang/bg/lang.php b/lib/plugins/usermanager/lang/bg/lang.php
index 58c8453f2..909c1e8fe 100644
--- a/lib/plugins/usermanager/lang/bg/lang.php
+++ b/lib/plugins/usermanager/lang/bg/lang.php
@@ -4,11 +4,12 @@
*
* @author Nikolay Vladimirov <nikolay@vladimiroff.com>
* @author Viktor Usunov <usun0v@mail.bg>
+ * @author Kiril <neohidra@gmail.com>
*/
-$lang['menu'] = 'Управление на потребителите';
-$lang['noauth'] = '(идентифицирането на потребителите е недостъпно)';
-$lang['nosupport'] = '(не се поддържа управление на потребители)';
-$lang['badauth'] = 'невалиден механизъм при идентификация';
+$lang['menu'] = 'Диспечер на потребителите';
+$lang['noauth'] = '(удостоверяването на потребители не е налично)';
+$lang['nosupport'] = '(управлението на потребители не се поддържа)';
+$lang['badauth'] = 'невалиден механизъм за удостоверяване';
$lang['user_id'] = 'Потребител';
$lang['user_pass'] = 'Парола';
$lang['user_name'] = 'Истинско име';
@@ -16,33 +17,33 @@ $lang['user_mail'] = 'Електронна поща';
$lang['user_groups'] = 'Групи';
$lang['field'] = 'Поле';
$lang['value'] = 'Стойност';
-$lang['add'] = 'Добавяне';
-$lang['delete'] = 'Изтриване';
-$lang['delete_selected'] = 'Изтриване на избраните';
-$lang['edit'] = 'Редактиране';
+$lang['add'] = 'Добави';
+$lang['delete'] = 'Изтрий';
+$lang['delete_selected'] = 'Изтрий избраните';
+$lang['edit'] = 'Редактирай';
$lang['edit_prompt'] = 'Редактиране на потребителя';
-$lang['modify'] = 'Запис на промените';
+$lang['modify'] = 'Запиши промените';
$lang['search'] = 'Търсене';
-$lang['search_prompt'] = 'Търсене';
+$lang['search_prompt'] = 'Търси';
$lang['clear'] = 'Обновяване на търсенето';
$lang['filter'] = 'Филтър';
-$lang['summary'] = 'Показване на потребители %1$d-%2$d от %3$d намерени. %4$d потребители общо.';
-$lang['nonefound'] = 'Няма намерени потребители. Общо %d потребители.';
-$lang['delete_ok'] = '%d потребители изтрити';
-$lang['delete_fail'] = '%d не бяха изтрити';
-$lang['update_ok'] = 'Обновяването на потребителя бе успешно';
-$lang['update_fail'] = 'Обновяването на потребителя бе неуспешно';
-$lang['update_exists'] = 'Смяната на потребителското име бе невъзможна, оказаното потребителско име (%s) вече съществува (всякакви други промени ще бъдат приложени).';
+$lang['summary'] = 'Показване на потребители %1$d-%2$d от %3$d намерени. Общо %4$d потребителя.';
+$lang['nonefound'] = 'Не са намерени потребители. Общо %d потребителя.';
+$lang['delete_ok'] = '%d изтрити потребителя';
+$lang['delete_fail'] = 'изтриването на %d се провали.';
+$lang['update_ok'] = 'Обновяването на потребителя е успешно';
+$lang['update_fail'] = 'Обновяването на потребителя се провали';
+$lang['update_exists'] = 'Смяната на потребителското име се провали, въведеното потребителско име (%s) вече съществува (всички други промени ще бъдат приложени).';
$lang['start'] = 'начало';
-$lang['prev'] = 'предишно';
-$lang['next'] = 'следващо';
-$lang['last'] = 'последно';
-$lang['edit_usermissing'] = 'Избраният потребител не бе намерен, оказаното потребителско име може да е изтрито или променено другаде.';
-$lang['user_notify'] = 'Осведомяване на потребителя';
-$lang['note_notify'] = 'Осведомителната e-поща се праща само, ако на потребителя е дадена нова парола.';
-$lang['note_group'] = 'Новите потребители ще бъдат добавяни към групата (%s) ако не бъде посочена друга.';
-$lang['note_pass'] = 'Паролата ще бъде генерирана автоматично, ако полето е оставено празно и функцията за уведомяване на потребителя е включена.';
-$lang['add_ok'] = 'Добавянето на потребителя бе успешно';
-$lang['add_fail'] = 'Добавянето на потребителя бе неуспешно';
+$lang['prev'] = 'назад';
+$lang['next'] = 'напред';
+$lang['last'] = 'край';
+$lang['edit_usermissing'] = 'Избраният потребител не е намерен, въведеното потребителско име може да е изтрито или променено другаде.';
+$lang['user_notify'] = 'Уведомяване на потребителя';
+$lang['note_notify'] = 'Ел. писмо се изпраща само ако бъде променена паролата на потребителя.';
+$lang['note_group'] = 'Новите потребители биват добавяни към стандартната групата (%s) ако не е посочена друга.';
+$lang['note_pass'] = 'Паролата ще бъде генерирана автоматично, ако оставите полето празно и функцията за уведомяване на потребителя е включена.';
+$lang['add_ok'] = 'Добавянето на потребителя е успешно';
+$lang['add_fail'] = 'Добавянето на потребителя се провали';
$lang['notify_ok'] = 'Осведомително е-писмо бе изпратено';
$lang['notify_fail'] = 'Пращането на осведомително е-писмо е невъзможно';
diff --git a/lib/plugins/usermanager/lang/cs/lang.php b/lib/plugins/usermanager/lang/cs/lang.php
index 9c5a2abc9..7d8e4599d 100644
--- a/lib/plugins/usermanager/lang/cs/lang.php
+++ b/lib/plugins/usermanager/lang/cs/lang.php
@@ -45,7 +45,7 @@ $lang['edit_usermissing'] = 'Vybraný uživatel nebyl nalezen, zadané uži
$lang['user_notify'] = 'Upozornit uživatele';
$lang['note_notify'] = 'Maily s upozorněním se budou posílat pouze, když uživatel dostává nové heslo.';
$lang['note_group'] = 'Noví uživatelé budou přidáváni do této výchozí skupiny (%s), pokud pro ně není uvedena žádná skupina.';
-$lang['note_pass'] = 'Heslo bude automaticky vygenerováno pokud je pole ponacháno prázdné a je zapnutá notifikace uživatele.';
+$lang['note_pass'] = 'Heslo bude automaticky vygenerováno pokud je pole ponecháno prázdné a je zapnutá notifikace uživatele.';
$lang['add_ok'] = 'Uživatel úspěšně vytvořen';
$lang['add_fail'] = 'Vytvoření uživatele selhalo';
$lang['notify_ok'] = 'Odeslán mail s upozorněním';
diff --git a/lib/plugins/usermanager/lang/de-informal/lang.php b/lib/plugins/usermanager/lang/de-informal/lang.php
index e906c0cf8..95b36c60f 100644
--- a/lib/plugins/usermanager/lang/de-informal/lang.php
+++ b/lib/plugins/usermanager/lang/de-informal/lang.php
@@ -6,6 +6,7 @@
* @author Juergen Schwarzer <jschwarzer@freenet.de>
* @author Marcel Metz <marcel_metz@gmx.de>
* @author Matthias Schulte <post@lupo49.de>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Benutzerverwalter';
$lang['noauth'] = '(Benutzeranmeldung ist nicht verfügbar)';
diff --git a/lib/plugins/usermanager/lang/de/lang.php b/lib/plugins/usermanager/lang/de/lang.php
index 816aaebd7..090d1d1d9 100644
--- a/lib/plugins/usermanager/lang/de/lang.php
+++ b/lib/plugins/usermanager/lang/de/lang.php
@@ -13,6 +13,8 @@
* @author Blitzi94@gmx.de
* @author Robert Bogenschneider <robog@GMX.de>
* @author Robert Bogenschneider <robog@gmx.de>
+ * @author Niels Lange <niels@boldencursief.nl>
+ * @author Christian Wichmann <nospam@zone0.de>
*/
$lang['menu'] = 'Benutzerverwaltung';
$lang['noauth'] = '(Authentifizierungssystem nicht verfügbar)';
diff --git a/lib/plugins/usermanager/lang/et/lang.php b/lib/plugins/usermanager/lang/et/lang.php
new file mode 100644
index 000000000..0ffea1244
--- /dev/null
+++ b/lib/plugins/usermanager/lang/et/lang.php
@@ -0,0 +1,6 @@
+<?php
+/**
+ * Estonian language file
+ *
+ * @author kristian.kankainen@kuu.la
+ */
diff --git a/lib/plugins/usermanager/lang/fr/lang.php b/lib/plugins/usermanager/lang/fr/lang.php
index 92bc127ed..49baf9d51 100644
--- a/lib/plugins/usermanager/lang/fr/lang.php
+++ b/lib/plugins/usermanager/lang/fr/lang.php
@@ -14,6 +14,7 @@
* @author Philippe Bajoit <philippe.bajoit@gmail.com>
* @author Florian Gaub <floriang@floriang.net>
* @author Samuel Dorsaz samuel.dorsaz@novelion.net
+ * @author Johan Guilbaud <guilbaud.johan@gmail.com>
*/
$lang['menu'] = 'Gestion des utilisateurs';
$lang['noauth'] = '(authentification utilisateur non disponible)';
diff --git a/lib/plugins/usermanager/lang/he/lang.php b/lib/plugins/usermanager/lang/he/lang.php
index b2b55c3b4..601163013 100644
--- a/lib/plugins/usermanager/lang/he/lang.php
+++ b/lib/plugins/usermanager/lang/he/lang.php
@@ -6,6 +6,7 @@
* @author Dotan Kamber <kamberd@yahoo.com>
* @author Moshe Kaplan <mokplan@gmail.com>
* @author Yaron Yogev <yaronyogev@gmail.com>
+ * @author Yaron Shahrabani <sh.yaron@gmail.com>
*/
$lang['menu'] = 'מנהל משתמשים';
$lang['noauth'] = '(אימות משתמשים אינו זמין)';
diff --git a/lib/plugins/usermanager/lang/hi/lang.php b/lib/plugins/usermanager/lang/hi/lang.php
index d8630a281..d6f78ffd6 100644
--- a/lib/plugins/usermanager/lang/hi/lang.php
+++ b/lib/plugins/usermanager/lang/hi/lang.php
@@ -3,4 +3,5 @@
* Hindi language file
*
* @author Abhinav Tyagi <abhinavtyagi11@gmail.com>
+ * @author yndesai@gmail.com
*/
diff --git a/lib/plugins/usermanager/lang/it/lang.php b/lib/plugins/usermanager/lang/it/lang.php
index a766e5d07..34c510def 100644
--- a/lib/plugins/usermanager/lang/it/lang.php
+++ b/lib/plugins/usermanager/lang/it/lang.php
@@ -11,6 +11,7 @@
* @author snarchio@alice.it
* @author robocap <robocap1@gmail.com>
* @author Osman Tekin osman.tekin93@hotmail.it
+ * @author Jacopo Corbetta <jacopo.corbetta@gmail.com>
*/
$lang['menu'] = 'Gestione Utenti';
$lang['noauth'] = '(autenticazione non disponibile)';
diff --git a/lib/plugins/usermanager/lang/ko/lang.php b/lib/plugins/usermanager/lang/ko/lang.php
index eeb8eb791..f2322414a 100644
--- a/lib/plugins/usermanager/lang/ko/lang.php
+++ b/lib/plugins/usermanager/lang/ko/lang.php
@@ -6,6 +6,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
+ * @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['menu'] = '사용자 관리자';
$lang['noauth'] = '(사용자 인증이 불가능합니다.)';
diff --git a/lib/plugins/usermanager/lang/la/add.txt b/lib/plugins/usermanager/lang/la/add.txt
new file mode 100644
index 000000000..beb797c4a
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/add.txt
@@ -0,0 +1 @@
+===== Sodalem addere ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/la/delete.txt b/lib/plugins/usermanager/lang/la/delete.txt
new file mode 100644
index 000000000..1eb5e1f14
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/delete.txt
@@ -0,0 +1 @@
+===== Sodalem delere ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/la/edit.txt b/lib/plugins/usermanager/lang/la/edit.txt
new file mode 100644
index 000000000..4e3d3b2ae
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/edit.txt
@@ -0,0 +1 @@
+===== Sodalem recensere ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/la/intro.txt b/lib/plugins/usermanager/lang/la/intro.txt
new file mode 100644
index 000000000..7f5c011a8
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/intro.txt
@@ -0,0 +1 @@
+====== Sodalis Tabella ====== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/la/lang.php b/lib/plugins/usermanager/lang/la/lang.php
new file mode 100644
index 000000000..52c848754
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/lang.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * Latin language file
+ *
+ * @author Massimiliano Vassalli <vassalli.max@gmail.com>
+ */
+$lang['menu'] = 'Sodalis Tabella';
+$lang['noauth'] = '(Sodalis confirmatio deest)';
+$lang['nosupport'] = '(Sodalis administratio deest)';
+$lang['badauth'] = 'Confirmatio fieri non potest.';
+$lang['user_id'] = 'Sodalis';
+$lang['user_pass'] = 'Tessera';
+$lang['user_name'] = 'Nomen uerum';
+$lang['user_mail'] = 'Cursus Interretialis';
+$lang['user_groups'] = 'Grex';
+$lang['field'] = 'Campus';
+$lang['value'] = 'Vis';
+$lang['add'] = 'Addere';
+$lang['delete'] = 'Delere';
+$lang['delete_selected'] = 'Electa delere';
+$lang['edit'] = 'Recensere';
+$lang['edit_prompt'] = 'Sodalem recensere';
+$lang['modify'] = 'Mutata seruare';
+$lang['search'] = 'Quaerere';
+$lang['search_prompt'] = 'Agentem quaerere';
+$lang['clear'] = 'Colum quaerendi abrogare';
+$lang['filter'] = 'Colum';
+$lang['summary'] = 'Sodales %1$d-%2$d inter %3$d ostenduntur. Numerus Sodalium. %4$d.';
+$lang['nonefound'] = 'Sodalis non repertus. Numerus sodalium: %d';
+$lang['delete_ok'] = '%d Sodales delentur.';
+$lang['delete_fail'] = '%d non deleri possunt.';
+$lang['update_ok'] = 'Sodalis feliciter nouatus\a';
+$lang['update_fail'] = 'Sodalis infeliciter nouatus\a';
+$lang['update_exists'] = 'Nomen Sodalis non mutatur, eo quod hoc nomen (%s) iam electum est.';
+$lang['start'] = 'in primis';
+$lang['prev'] = 'antea';
+$lang['next'] = 'postea';
+$lang['last'] = 'in extremis';
+$lang['edit_usermissing'] = 'Hic Sodalis non inuenitur, eo quod nomen iam deletum uel mutatum est.';
+$lang['user_notify'] = 'Sodalem adnotare';
+$lang['note_notify'] = 'Adnotationes cursu interretiali missae solum si noua tessera petitur.';
+$lang['note_group'] = 'Noui\ae Sodales communi Gregi adduntur (%s) si Grex non elegitur.';
+$lang['note_pass'] = 'Tessera non generata nisi campus uacuos est et Sodalis adnotationes aptae faciuntur.';
+$lang['add_ok'] = 'Sodalis feliciter additur.';
+$lang['add_fail'] = 'Sodalis infeliciter additur.';
+$lang['notify_ok'] = 'Adnotationes cursu interretiali missae';
+$lang['notify_fail'] = 'Adnotationes cursu interretiali non missae';
diff --git a/lib/plugins/usermanager/lang/la/list.txt b/lib/plugins/usermanager/lang/la/list.txt
new file mode 100644
index 000000000..b470d2ea4
--- /dev/null
+++ b/lib/plugins/usermanager/lang/la/list.txt
@@ -0,0 +1 @@
+===== Sodalis index ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/ru/lang.php b/lib/plugins/usermanager/lang/ru/lang.php
index 81d9a72a6..456ba5b29 100644
--- a/lib/plugins/usermanager/lang/ru/lang.php
+++ b/lib/plugins/usermanager/lang/ru/lang.php
@@ -14,6 +14,8 @@
* @author Vlad Tsybenko <vlad.development@gmail.com>
* @author Aleksey Osadchiy <rfc@nm.ru>
* @author Aleksandr Selivanov <alexgearbox@gmail.com>
+ * @author Ladyko Andrey <fylh@succexy.spb.ru>
+ * @author Eugene <windy.wanderer@gmail.com>
*/
$lang['menu'] = 'Управление пользователями';
$lang['noauth'] = '(авторизация пользователей недоступна)';
@@ -47,12 +49,12 @@ $lang['start'] = 'в начало';
$lang['prev'] = 'назад';
$lang['next'] = 'вперёд';
$lang['last'] = 'в конец';
-$lang['edit_usermissing'] = 'Выбранный пользователь не найден. Возможно, указанный логин был удалён или изменен извне.';
+$lang['edit_usermissing'] = 'Выбранный пользователь не найден. Возможно, указанный логин был удалён или изменён извне.';
$lang['user_notify'] = 'Сообщить пользователю';
$lang['note_notify'] = 'Письма с уведомлением высылаются только в случае получения нового пароля.';
$lang['note_group'] = 'Если группа не указана, новые пользователи будут добавлены в группу по умолчанию (%s).';
$lang['note_pass'] = 'Пароль будет сгенерирован автоматически, если поле оставлено пустым и включено уведомление пользователя.';
$lang['add_ok'] = 'Пользователь успешно добавлен';
$lang['add_fail'] = 'Не удалось добавить пользователя';
-$lang['notify_ok'] = 'Пиьмо с уведомлением отправлено';
+$lang['notify_ok'] = 'Письмо с уведомлением отправлено';
$lang['notify_fail'] = 'Не удалось отправить письмо с уведомлением';
diff --git a/lib/plugins/usermanager/lang/sl/add.txt b/lib/plugins/usermanager/lang/sl/add.txt
index 985fa607e..c1d8913b4 100644
--- a/lib/plugins/usermanager/lang/sl/add.txt
+++ b/lib/plugins/usermanager/lang/sl/add.txt
@@ -1 +1 @@
-===== Dodaj uporabnika ===== \ No newline at end of file
+===== Dodajanje uporabnika ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/sl/delete.txt b/lib/plugins/usermanager/lang/sl/delete.txt
index 515b343e5..7d9de54e6 100644
--- a/lib/plugins/usermanager/lang/sl/delete.txt
+++ b/lib/plugins/usermanager/lang/sl/delete.txt
@@ -1 +1 @@
-===== Izbriši uporabnika ===== \ No newline at end of file
+===== Izbrisanje uporabnika ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/sl/edit.txt b/lib/plugins/usermanager/lang/sl/edit.txt
index 23aeb0c3b..e80bc8585 100644
--- a/lib/plugins/usermanager/lang/sl/edit.txt
+++ b/lib/plugins/usermanager/lang/sl/edit.txt
@@ -1 +1 @@
-===== Uredi uporabnika ===== \ No newline at end of file
+===== Urejanje uporabnikov ===== \ No newline at end of file
diff --git a/lib/plugins/usermanager/lang/sl/intro.txt b/lib/plugins/usermanager/lang/sl/intro.txt
new file mode 100644
index 000000000..a4729a8a5
--- /dev/null
+++ b/lib/plugins/usermanager/lang/sl/intro.txt
@@ -0,0 +1 @@
+====== Upravljanje uporabnikov ======
diff --git a/lib/plugins/usermanager/lang/sl/lang.php b/lib/plugins/usermanager/lang/sl/lang.php
index e31f8ff1a..96acfd0af 100644
--- a/lib/plugins/usermanager/lang/sl/lang.php
+++ b/lib/plugins/usermanager/lang/sl/lang.php
@@ -4,17 +4,47 @@
*
* @author Dejan Levec <webphp@gmail.com>
* @author Boštjan Seničar <senicar@gmail.com>
+ * @author Gregor Skumavc (grega.skumavc@gmail.com)
+ * @author Matej Urbančič (mateju@svn.gnome.org)
*/
+$lang['menu'] = 'Upravljanje uporabnikov';
+$lang['noauth'] = '(overjanje istovetnosti uporabnikov ni na voljo)';
+$lang['nosupport'] = '(upravljanje računov uporabnikov ni podprto)';
+$lang['badauth'] = 'neveljaven način overjanja';
$lang['user_id'] = 'Uporabnik';
$lang['user_pass'] = 'Geslo';
-$lang['user_mail'] = 'Email';
+$lang['user_name'] = 'Pravo ime';
+$lang['user_mail'] = 'Elektronski naslov';
$lang['user_groups'] = 'Skupine';
+$lang['field'] = 'Polje';
+$lang['value'] = 'Vrednost';
$lang['add'] = 'Dodaj';
$lang['delete'] = 'Izbriši';
$lang['delete_selected'] = 'Izbriši izbrano';
$lang['edit'] = 'Uredi';
+$lang['edit_prompt'] = 'Uredi tega uporabnika';
$lang['modify'] = 'Shrani spremembe';
$lang['search'] = 'Iskanje';
-$lang['prev'] = 'Prejšnji';
+$lang['search_prompt'] = 'Poišči';
+$lang['clear'] = 'Počisti filter iskanja';
+$lang['filter'] = 'Filter';
+$lang['summary'] = 'Izpisani so uporabniki %1$d-%2$d od skupno %3$d. Vseh uporabnikov je %4$d.';
+$lang['nonefound'] = 'Ni najdenih uporabnikov. Vseh uporabnikov je %d.';
+$lang['delete_ok'] = '%d uporabnikov je izbrisanih';
+$lang['delete_fail'] = '%d ni bilo mogoče izbrisati';
+$lang['update_ok'] = 'Uporabniški račun je uspešno posodobljen';
+$lang['update_fail'] = 'Posodobitev uporabniškega računa je spodletela';
+$lang['update_exists'] = 'Spreminjanje imena uporabnika je spodletelo. Navedeno uporabniško ime (%s) že obstaja (vse ostale spremembe bodo uveljavljene).';
+$lang['start'] = 'Začetni';
+$lang['prev'] = 'Predhodni';
$lang['next'] = 'Naslednji';
-$lang['last'] = 'Zadnji';
+$lang['last'] = 'Končni';
+$lang['edit_usermissing'] = 'Izbranega uporabnika ni mogoče najti. Navedeno uporabniško ime je morda izbrisano ali spremenjeno.';
+$lang['user_notify'] = 'Obvesti uporabnika';
+$lang['note_notify'] = 'Obvestilna sporočila so poslana le, če uporabnik prejme novo geslo za dostop do strani.';
+$lang['note_group'] = 'Nov uporabnik bo dodan k privzeti skupini (%s), v kolikor ni navedene druge skupine.';
+$lang['note_pass'] = 'Geslo bo ustvarjeno samodejno, v kolikor je polje izpuščeno in je omogočeno obveščanje uporabnika.';
+$lang['add_ok'] = 'Uporabnik je uspešno dodan';
+$lang['add_fail'] = 'Dodajanje uporabnika je spodletelo';
+$lang['notify_ok'] = 'Obvestilno sporočilo je poslano.';
+$lang['notify_fail'] = 'Obvestilnega sporočila ni mogoče poslati.';
diff --git a/lib/plugins/usermanager/lang/tr/lang.php b/lib/plugins/usermanager/lang/tr/lang.php
index 28127d9d0..b9c9cfc52 100644
--- a/lib/plugins/usermanager/lang/tr/lang.php
+++ b/lib/plugins/usermanager/lang/tr/lang.php
@@ -2,11 +2,10 @@
/**
* Turkish language file
*
- * @author Aydın Coşkuner aydinweb@gmail.com
* @author Aydın Coşkuner <aydinweb@gmail.com>
- * @author yavuzselim@gmail.com
- * @author Cihan Kahveci kahvecicihan@gmail.com
+ * @author Cihan Kahveci <kahvecicihan@gmail.com>
* @author Yavuz Selim <yavuzselim@gmail.com>
+ * @author Caleb Maclennan <caleb@alerque.com>
*/
$lang['menu'] = 'Kullanıcı Yönetimi';
$lang['noauth'] = '(kullanıcı onaylaması yoktur)';
diff --git a/lib/plugins/usermanager/lang/zh-tw/intro.txt b/lib/plugins/usermanager/lang/zh-tw/intro.txt
index 9c499d862..8f9488d7d 100644
--- a/lib/plugins/usermanager/lang/zh-tw/intro.txt
+++ b/lib/plugins/usermanager/lang/zh-tw/intro.txt
@@ -1 +1 @@
-====== 帳號管理員(User Manager) ======
+====== 帳號管理員 ======
diff --git a/lib/plugins/usermanager/lang/zh-tw/lang.php b/lib/plugins/usermanager/lang/zh-tw/lang.php
index 26c87205d..5cb20aae8 100644
--- a/lib/plugins/usermanager/lang/zh-tw/lang.php
+++ b/lib/plugins/usermanager/lang/zh-tw/lang.php
@@ -8,8 +8,10 @@
* @author Wayne San <waynesan@zerozone.tw>
* @author Li-Jiun Huang <ljhuang.tw@gmai.com>
* @author Cheng-Wei Chien <e.cwchien@gmail.com>
+ * @author Danny Lin <danny0838@pchome.com.tw>
+ * @author Shuo-Ting Jian <shoting@gmail.com>
*/
-$lang['menu'] = '帳號管理員(User Manager)';
+$lang['menu'] = '帳號管理員';
$lang['noauth'] = '(帳號認證尚未開放)';
$lang['nosupport'] = '(尚不支援帳號管理)';
$lang['badauth'] = '錯誤的認證機制';
@@ -28,25 +30,25 @@ $lang['edit_prompt'] = '修改該帳號';
$lang['modify'] = '儲存變更';
$lang['search'] = '搜尋';
$lang['search_prompt'] = '開始搜尋';
-$lang['clear'] = '重新設定搜尋的條件';
+$lang['clear'] = '重設篩選條件';
$lang['filter'] = '篩選條件(Filter)';
-$lang['summary'] = '顯示帳號 %1$d 至 %2$d 共 %3$d 筆符合. 總共有 %4$d 個帳號';
-$lang['nonefound'] = '找不到該用戶(共 %d 帳號)。';
+$lang['summary'] = '顯示帳號 %1$d-%2$d,共 %3$d 筆符合。共有 %4$d 個帳號。';
+$lang['nonefound'] = '找不到帳號。共有 %d 個帳號。';
$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'] = '下一步';
-$lang['last'] = '最後步驟';
-$lang['edit_usermissing'] = '找不到所選的帳號,該帳號可能已經被刪除或是改為其他名稱喔。';
+$lang['prev'] = '上一頁';
+$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_fail'] = '通知信無法寄出';
diff --git a/lib/plugins/usermanager/lang/zh/lang.php b/lib/plugins/usermanager/lang/zh/lang.php
index 613826329..21bbb710d 100644
--- a/lib/plugins/usermanager/lang/zh/lang.php
+++ b/lib/plugins/usermanager/lang/zh/lang.php
@@ -8,6 +8,9 @@
* @author Simon zhan <simonzhan@21cn.com>
* @author mr.jinyi@gmail.com
* @author ben <ben@livetom.com>
+ * @author lainme <lainme993@gmail.com>
+ * @author caii <zhoucaiqi@gmail.com>
+ * @author Hiphen Lee <jacob.b.leung@gmail.com>
*/
$lang['menu'] = '用户管理器';
$lang['noauth'] = '(用户认证不可用)';
diff --git a/lib/scripts/ajax.js b/lib/scripts/ajax.js
index de009d448..44dcee999 100644
--- a/lib/scripts/ajax.js
+++ b/lib/scripts/ajax.js
@@ -5,44 +5,114 @@
* @author Andreas Gohr <andi@splitbrain.org>
* @author Adrian Lang <lang@cosmocode.de>
*/
-addInitEvent(function () {
+var ajax_quicksearch = {
- var inID = 'qsearch__in';
- var outID = 'qsearch__out';
+ inObj: null,
+ outObj: null,
+ sackObj: null,
+ delay: null,
- var inObj = document.getElementById(inID);
- var outObj = document.getElementById(outID);
+ init: function(inID, outID) {
- // objects found?
- if (inObj === null){ return; }
- if (outObj === null){ return; }
+ this.inObj = $(inID);
+ this.outObj = $(outID);
- function clear_results(){
- outObj.style.display = 'none';
- outObj.innerHTML = '';
- }
+ // objects found?
+ if (this.inObj === null) return;
+ if (this.outObj === null) return;
+
+ // prepare AJAX
+ this.sackObj = new sack(DOKU_BASE + 'lib/exe/ajax.php');
+ this.sackObj.AjaxFailedAlert = '';
+ this.sackObj.encodeURIString = false;
+ this.sackObj.onCompletion = ajax_quicksearch.onCompletion;
+
+ // attach eventhandler to search field
+ this.delay = new Delay(function () {
+ ajax_quicksearch.clear_results();
+ var value = ajax_quicksearch.inObj.value;
+ if(value === ''){ return; }
+ ajax_quicksearch.sackObj.runAJAX('call=qsearch&q=' + encodeURI(value));
+ });
+
+ addEvent(this.inObj, 'keyup', function () {
+ ajax_quicksearch.clear_results();
+ ajax_quicksearch.delay.start();
+ });
- var sack_obj = new sack(DOKU_BASE + 'lib/exe/ajax.php');
- sack_obj.AjaxFailedAlert = '';
- sack_obj.encodeURIString = false;
- sack_obj.onCompletion = function () {
- var data = sack_obj.response;
+ // attach eventhandler to output field
+ addEvent(this.outObj, 'click', function () {
+ ajax_quicksearch.outObj.style.display = 'none';
+ });
+ },
+
+ clear_results: function(){
+ ajax_quicksearch.outObj.style.display = 'none';
+ ajax_quicksearch.outObj.innerHTML = '';
+ },
+
+ onCompletion: function() {
+ var data = this.response; // 'this' is sack context
if (data === '') { return; }
+ var outObj = ajax_quicksearch.outObj;
+
outObj.innerHTML = data;
outObj.style.display = 'block';
- };
+ outObj.style['white-space'] = 'nowrap';
- // attach eventhandler to search field
- var delay = new Delay(function () {
- clear_results();
- var value = inObj.value;
- if(value === ''){ return; }
- sack_obj.runAJAX('call=qsearch&q=' + encodeURI(value));
- });
+ // shorten namespaces if too long
+ var width = outObj.clientWidth;
+ var links = outObj.getElementsByTagName('a');
+ for(var i=0; i<links.length; i++){
+ // maximum allowed width:
+ var max = width - links[i].offsetLeft;
+ var isRTL = (document.documentElement.dir == 'rtl');
- addEvent(inObj, 'keyup', function () {clear_results(); delay.start(); });
+ if(!isRTL && links[i].offsetWidth < max) continue;
+ if(isRTL && links[i].offsetLeft > 0) continue;
- // attach eventhandler to output field
- addEvent(outObj, 'click', function () {outObj.style.display = 'none'; });
+ var nsL = links[i].innerText.indexOf('(');
+ var nsR = links[i].innerText.indexOf(')');
+ var eli = 0;
+ var runaway = 0;
+
+ while( (nsR - nsL > 3) &&
+ (
+ (!isRTL && links[i].offsetWidth > max) ||
+ (isRTL && links[i].offsetLeft < 0)
+ )
+ ){
+ if(runaway++ > 500) return; // just in case something went wrong
+
+ if(eli){
+ // elipsis already inserted
+ if( (eli - nsL) > (nsR - eli) ){
+ // cut left
+ links[i].innerText = links[i].innerText.substring(0,eli-2)+
+ links[i].innerText.substring(eli);
+ }else{
+ // cut right
+ links[i].innerText = links[i].innerText.substring(0,eli+1)+
+ links[i].innerText.substring(eli+2);
+ }
+ }else{
+ // replace middle with ellipsis
+ var mid = Math.floor( nsL + ((nsR-nsL)/2) );
+ links[i].innerText = links[i].innerText.substring(0,mid)+'…'+
+ links[i].innerText.substring(mid+1);
+ }
+ eli = links[i].innerText.indexOf('…');
+ nsL = links[i].innerText.indexOf('(');
+ nsR = links[i].innerText.indexOf(')');
+ }
+ }
+ }
+
+};
+
+
+addInitEvent(function(){
+ ajax_quicksearch.init('qsearch__in','qsearch__out');
});
+
diff --git a/lib/scripts/edit.js b/lib/scripts/edit.js
index 01262bcef..45c1fb111 100644
--- a/lib/scripts/edit.js
+++ b/lib/scripts/edit.js
@@ -268,6 +268,7 @@ var textChanged = false;
*/
function deleteDraft() {
if (is_opera) return;
+ if (window.keepDraft) return;
// remove a possibly saved draft using ajax
var dwform = $('dw__editform');
@@ -318,8 +319,13 @@ addInitEvent(function (){
window.onunload = deleteDraft;
// reset change memory var on submit
- addEvent($('edbtn__save'), 'click', function(){ textChanged = false; });
- addEvent($('edbtn__preview'), 'click', function(){ textChanged = false; });
+ addEvent($('edbtn__save'), 'click', function(){
+ textChanged = false;
+ });
+ addEvent($('edbtn__preview'), 'click', function(){
+ textChanged = false;
+ window.keepDraft = true; // needed to keep draft on page unload
+ });
var summary = $('edit__summary');
addEvent(summary, 'change', summaryCheck);
@@ -341,104 +347,3 @@ function summaryCheck(){
}
}
-
-/**
- * Class managing the timer to display a warning on a expiring lock
- */
-function locktimer_class(){
- this.sack = null;
- this.timeout = 0;
- this.timerID = null;
- this.lasttime = null;
- this.msg = '';
- this.pageid = '';
-};
-var locktimer = new locktimer_class();
- locktimer.init = function(timeout,msg,draft){
- // init values
- locktimer.timeout = timeout*1000;
- locktimer.msg = msg;
- locktimer.draft = draft;
- locktimer.lasttime = new Date();
-
- if(!$('dw__editform')) return;
- locktimer.pageid = $('dw__editform').elements.id.value;
- if(!locktimer.pageid) return;
-
- // init ajax component
- locktimer.sack = new sack(DOKU_BASE + 'lib/exe/ajax.php');
- locktimer.sack.AjaxFailedAlert = '';
- locktimer.sack.encodeURIString = false;
- locktimer.sack.onCompletion = locktimer.refreshed;
-
- // register refresh event
- addEvent($('dw__editform'),'keypress',function(){locktimer.refresh();});
- // start timer
- locktimer.reset();
- };
-
- /**
- * (Re)start the warning timer
- */
- locktimer.reset = function(){
- locktimer.clear();
- locktimer.timerID = window.setTimeout("locktimer.warning()", locktimer.timeout);
- };
-
- /**
- * Display the warning about the expiring lock
- */
- locktimer.warning = function(){
- locktimer.clear();
- alert(locktimer.msg);
- };
-
- /**
- * Remove the current warning timer
- */
- locktimer.clear = function(){
- if(locktimer.timerID !== null){
- window.clearTimeout(locktimer.timerID);
- locktimer.timerID = null;
- }
- };
-
- /**
- * Refresh the lock via AJAX
- *
- * Called on keypresses in the edit area
- */
- locktimer.refresh = function(){
- var now = new Date();
- // refresh every minute only
- if(now.getTime() - locktimer.lasttime.getTime() > 30*1000){ //FIXME decide on time
- var params = 'call=lock&id='+encodeURIComponent(locktimer.pageid);
- var dwform = $('dw__editform');
- if(locktimer.draft && dwform.elements.wikitext){
- params += '&prefix='+encodeURIComponent(dwform.elements.prefix.value);
- params += '&wikitext='+encodeURIComponent(dwform.elements.wikitext.value);
- params += '&suffix='+encodeURIComponent(dwform.elements.suffix.value);
- if(dwform.elements.date){
- params += '&date='+encodeURIComponent(dwform.elements.date.value);
- }
- }
- locktimer.sack.runAJAX(params);
- locktimer.lasttime = now;
- }
- };
-
-
- /**
- * Callback. Resets the warning timer
- */
- locktimer.refreshed = function(){
- var data = this.response;
- var error = data.charAt(0);
- data = data.substring(1);
-
- $('draft__status').innerHTML=data;
- if(error != '1') return; // locking failed
- locktimer.reset();
- };
-// end of locktimer class functions
-
diff --git a/lib/scripts/hotkeys.js b/lib/scripts/hotkeys.js
index ad608b227..bff28530d 100644
--- a/lib/scripts/hotkeys.js
+++ b/lib/scripts/hotkeys.js
@@ -52,7 +52,7 @@ function Hotkeys() {
t.each(anchors, function(a) {
if (a.accessKey != "") {
t.addShortcut(t.modifier + '+' + a.accessKey, function() {
- a.click();
+ location.href = a.href;
});
a.accessKey = '';
}
diff --git a/lib/scripts/linkwiz.js b/lib/scripts/linkwiz.js
index 6130bbf4c..2750d07a8 100644
--- a/lib/scripts/linkwiz.js
+++ b/lib/scripts/linkwiz.js
@@ -10,7 +10,7 @@
var wiz;
var entry;
- var result
+ var result;
var timer;
var textArea;
var selected;
@@ -21,9 +21,11 @@
* and attaching the eventhandlers
*/
var init = function(textAreaElement){
+
// create HTML Structure
wiz = document.createElement('div');
+ wiz.style.position = 'absolute';
wiz.id = 'link__wiz';
wiz.className = 'picker';
wiz.style.top = (findPosY(textAreaElement)+20)+'px';
diff --git a/lib/scripts/locktimer.js b/lib/scripts/locktimer.js
new file mode 100644
index 000000000..f5ba1c60d
--- /dev/null
+++ b/lib/scripts/locktimer.js
@@ -0,0 +1,99 @@
+/**
+ * Class managing the timer to display a warning on a expiring lock
+ */
+var locktimer = {
+ sack: null,
+ timeout: 0,
+ timerID: null,
+ lasttime: null,
+ msg: '',
+ pageid: '',
+
+ init: function(timeout,msg,draft){
+ // init values
+ locktimer.timeout = timeout*1000;
+ locktimer.msg = msg;
+ locktimer.draft = draft;
+ locktimer.lasttime = new Date();
+
+ if(!$('dw__editform')) return;
+ locktimer.pageid = $('dw__editform').elements.id.value;
+ if(!locktimer.pageid) return;
+ if($('wiki__text').readOnly) return;
+
+ // init ajax component
+ locktimer.sack = new sack(DOKU_BASE + 'lib/exe/ajax.php');
+ locktimer.sack.AjaxFailedAlert = '';
+ locktimer.sack.encodeURIString = false;
+ locktimer.sack.onCompletion = locktimer.refreshed;
+
+ // register refresh event
+ addEvent($('dw__editform'),'keypress',function(){locktimer.refresh();});
+ // start timer
+ locktimer.reset();
+ },
+
+ /**
+ * (Re)start the warning timer
+ */
+ reset: function(){
+ locktimer.clear();
+ locktimer.timerID = window.setTimeout("locktimer.warning()", locktimer.timeout);
+ },
+
+ /**
+ * Display the warning about the expiring lock
+ */
+ warning: function(){
+ locktimer.clear();
+ alert(locktimer.msg);
+ },
+
+ /**
+ * Remove the current warning timer
+ */
+ clear: function(){
+ if(locktimer.timerID !== null){
+ window.clearTimeout(locktimer.timerID);
+ locktimer.timerID = null;
+ }
+ },
+
+ /**
+ * Refresh the lock via AJAX
+ *
+ * Called on keypresses in the edit area
+ */
+ refresh: function(){
+ var now = new Date();
+ // refresh every minute only
+ if(now.getTime() - locktimer.lasttime.getTime() > 30*1000){
+ var params = 'call=lock&id='+encodeURIComponent(locktimer.pageid);
+ var dwform = $('dw__editform');
+ if(locktimer.draft && dwform.elements.wikitext){
+ params += '&prefix='+encodeURIComponent(dwform.elements.prefix.value);
+ params += '&wikitext='+encodeURIComponent(dwform.elements.wikitext.value);
+ params += '&suffix='+encodeURIComponent(dwform.elements.suffix.value);
+ if(dwform.elements.date){
+ params += '&date='+encodeURIComponent(dwform.elements.date.value);
+ }
+ }
+ locktimer.sack.runAJAX(params);
+ locktimer.lasttime = now;
+ }
+ },
+
+ /**
+ * Callback. Resets the warning timer
+ */
+ refreshed: function(){
+ var data = this.response;
+ var error = data.charAt(0);
+ data = data.substring(1);
+
+ $('draft__status').innerHTML=data;
+ if(error != '1') return; // locking failed
+ locktimer.reset();
+ }
+};
+
diff --git a/lib/scripts/media.js b/lib/scripts/media.js
index ea8f56af2..c00a71e5f 100644
--- a/lib/scripts/media.js
+++ b/lib/scripts/media.js
@@ -2,9 +2,6 @@
/*global jQuery, window, DOKU_BASE*/
"use strict";
-// TODO
-// * fix the css to have pointers on the +/- images in the tree when JS is enabled
-// * fix the css to have pointers on a.select when JS is enabled
// * refactor once the jQuery port is over ;)
/**
@@ -27,6 +24,9 @@
ext: false,
};
+
+
+
/**
* build the popup window
*
@@ -37,9 +37,10 @@
popup = document.createElement('div');
popup.setAttribute('id','media__popup');
+ popup.style.display = "none";
var root = document.getElementById('media__manager');
- if (root == null) return;
+ if (root === null) return;
root.appendChild(popup);
var headline = document.createElement('h1');
@@ -68,8 +69,7 @@
for (var i = 0 ; i < linkbtns.length ; ++i) {
var linkbtn = document.createElement('button');
linkbtn.className = 'button';
- linkbtn.value = i + 1;
- linkbtn.id = "media__linkbtn" + (i + 1);
+ linkbtn.id = "media__linkbtn" + (i+1);
linkbtn.title = LANG['media' + linkbtns[i]];
linkbtn.style.borderStyle = 'outset';
$(linkbtn).click(function (event) { return setlink(event,this); });
@@ -101,8 +101,7 @@
var alignimg = document.createElement('img');
alignimg.src = DOKU_BASE + 'lib/images/media_align_' + alignbtns[n] + '.png';
- alignbtn.id = "media__alignbtn" + n;
- alignbtn.value = n;
+ alignbtn.id = "media__alignbtn" + (n+1);
alignbtn.title = LANG['media' + alignbtns[n]];
alignbtn.className = 'button';
alignbtn.appendChild(alignimg);
@@ -136,7 +135,6 @@
sizebtn.className = 'button';
sizebtn.appendChild(sizeimg);
- sizebtn.value = size + 1;
sizebtn.id = 'media__sizebtn' + (size + 1);
sizebtn.title = LANG['media' + sizebtns[size]];
sizebtn.style.borderStyle = 'outset';
@@ -191,7 +189,7 @@
optsstart = true;
}
- var s = parseInt(media_manager.size);
+ var s = parseInt(media_manager.size, 10);
if (s && s >= 1) {
opts += (optsstart)?'&':'?';
@@ -212,21 +210,23 @@
}
}
}
- if (media_manager.align == '1') {
+ if (media_manager.align == '2') {
alignleft = '';
alignright = ' ';
}
- if (media_manager.align == '2') {
+ if (media_manager.align == '3') {
alignleft = ' ';
alignright = ' ';
}
- if (media_manager.align == '3') {
+ if (media_manager.align == '4') {
alignleft = ' ';
alignright = '';
}
}
}
- opener.insertTags('wiki__text','{{'+alignleft+id+opts+alignright+'|','}}','');
+ var edid = String.prototype.match.call(document.location, /&edid=([^&]+)/);
+ edid = edid ? edid[1] : 'wiki__text';
+ opener.insertTags(edid,'{{'+alignleft+id+opts+alignright+'|','}}','');
if(!media_manager.keepopen) window.close();
opener.focus();
@@ -285,7 +285,7 @@
DOKU_BASE + 'lib/exe/ajax.php',
link.attr('search').substr(1) + '&call=medians',
function (data) {
- ul.html(data)
+ ul.html(data);
listitem.append(ul);
},
'html'
@@ -491,7 +491,7 @@
* @author Pierre Spring <pierre.spring@caillou.ch>
*/
attachoptions = function(){
- obj = $('#media__opts')[0]
+ obj = $('#media__opts')[0];
if(!obj) return;
// keep open
@@ -548,7 +548,7 @@
obj.appendChild(hdlbl);
obj.appendChild(hdbr);
updatehide();
- },
+ };
/**
* Generalized toggler
@@ -563,7 +563,7 @@
DokuCookie.setValue(variable, '');
media_manager[variable] = false;
}
- }
+ };
initFlashUpload = function () {
var oform, oflash, title;
@@ -618,14 +618,15 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setalign = function(event,cb){
- if(cb.value){
- DokuCookie.setValue('align',cb.value);
- media_manager.align = cb.value;
- outSet("media__alignbtn0");
- outSet("media__alignbtn1");
- outSet("media__alignbtn2");
- outSet("media__alignbtn3");
- inSet("media__alignbtn"+cb.value);
+
+ var id = cb.id.substring(cb.id.length -1);
+ if(id){
+ DokuCookie.setValue('align',id);
+ media_manager.align = id;
+ for (var i = 1; i<=4; i++) {
+ outSet("media__alignbtn" + i);
+ }
+ inSet("media__alignbtn"+id);
}else{
DokuCookie.setValue('align','');
media_manager.align = false;
@@ -638,23 +639,34 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setlink = function(event,cb){
- if(cb.value){
- DokuCookie.setValue('link',cb.value);
- media_manager.link = cb.value;
- outSet("media__linkbtn1");
- outSet("media__linkbtn2");
- outSet("media__linkbtn3");
- outSet("media__linkbtn4");
- inSet("media__linkbtn"+cb.value);
+ var id = cb.id.substring(cb.id.length -1);
+ if(id){
+ DokuCookie.setValue('link',id);
+ for (var i = 1; i<=4; i++) {
+ outSet("media__linkbtn"+i);
+ }
+ inSet("media__linkbtn"+id);
+
var size = $("#media__size");
var align = $("#media__align");
- if (cb.value != '4') {
+ if (id != '4') {
size.show();
align.show();
+ if (media_manager.link == '4') {
+ media_manager.align = '1';
+ DokuCookie.setValue('align', '1');
+ inSet('media__alignbtn1');
+
+ media_manager.size = '2';
+ DokuCookie.setValue('size', '2');
+ inSet('media__sizebtn2');
+ }
+
} else {
size.hide();
align.hide();
}
+ media_manager.link = id;
}else{
DokuCookie.setValue('link','');
media_manager.link = false;
@@ -667,13 +679,14 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setsize = function(event,cb){
- if (cb.value) {
- DokuCookie.setValue('size',cb.value);
- media_manager.size = cb.value;
- for (var i = 1 ; i <= 4 ; ++i) {
+ var id = cb.id.substring(cb.id.length -1);
+ if (id) {
+ DokuCookie.setValue('size',id);
+ media_manager.size = id;
+ for (var i = 1 ; i <=4 ; ++i) {
outSet("media__sizebtn" + i);
}
- inSet("media__sizebtn"+cb.value);
+ inSet("media__sizebtn"+id);
} else {
DokuCookie.setValue('size','');
media_manager.width = false;
diff --git a/lib/scripts/script.js b/lib/scripts/script.js
index 1badf63a5..a99735c99 100644
--- a/lib/scripts/script.js
+++ b/lib/scripts/script.js
@@ -119,6 +119,20 @@ function findPosY(object){
} //end findPosY function
/**
+ * Get the computed style of a node.
+ *
+ * @link https://acidmartin.wordpress.com/2008/08/26/style-get-any-css-property-value-of-an-object/
+ * @link http://svn.dojotoolkit.org/src/dojo/trunk/_base/html.js
+ */
+function gcs(node){
+ if(node.currentStyle){
+ return node.currentStyle;
+ }else{
+ return node.ownerDocument.defaultView.getComputedStyle(node, null);
+ }
+}
+
+/**
* Escape special chars in JavaScript
*
* @author Andreas Gohr <andi@splitbrain.org>
@@ -265,10 +279,32 @@ function insitu_popup(target, popup_id) {
getElementsByClass('dokuwiki', document.body, 'div')[0].appendChild(fndiv);
}
+ var non_static_parent = fndiv.parentNode;
+ while (non_static_parent != document && gcs(non_static_parent)['position'] == 'static') {
+ non_static_parent = non_static_parent.parentNode;
+ }
+
+ var fixed_target_parent = target;
+ while (fixed_target_parent != document && gcs(fixed_target_parent)['position'] != 'fixed') {
+ fixed_target_parent = fixed_target_parent.parentNode;
+ }
+
// position the div and make it visible
- fndiv.style.position = 'absolute';
- fndiv.style.left = findPosX(target)+'px';
- fndiv.style.top = (findPosY(target)+target.offsetHeight * 1.5) + 'px';
+ if (fixed_target_parent != document) {
+ // the target has position fixed, that means the footnote needs to be fixed, too
+ fndiv.style.position = 'fixed';
+ } else {
+ fndiv.style.position = 'absolute';
+ }
+
+ if (fixed_target_parent != document || non_static_parent == document) {
+ fndiv.style.left = findPosX(target)+'px';
+ fndiv.style.top = (findPosY(target)+target.offsetHeight * 1.5) + 'px';
+ } else {
+ fndiv.style.left = (findPosX(target) - findPosX(non_static_parent)) +'px';
+ fndiv.style.top = (findPosY(target)+target.offsetHeight * 1.5 - findPosY(non_static_parent)) + 'px';
+ }
+
fndiv.style.display = '';
return fndiv;
}
@@ -465,19 +501,29 @@ addInitEvent(function(){
});
/**
- * Add the event handler to the actiondropdown
+ * Autosubmit quick select forms
+ *
+ * When a <select> tag has the class "quickselect", this script will
+ * automatically submit its parent form when the select value changes.
+ * It also hides the submit button of the form.
*
* @author Andreas Gohr <andi@splitbrain.org>
*/
addInitEvent(function(){
- var selector = $('action__selector');
- if(!selector) return;
-
- addEvent(selector,'change',function(e){
- this.form.submit();
- });
-
- $('action__selectorbtn').style.display = 'none';
+ var selects = getElementsByClass('quickselect',document,'select');
+ for(var i=0; i<selects.length; i++){
+ // auto submit on change
+ addEvent(selects[i],'change',function(e){
+ this.form.submit();
+ });
+ // hide submit buttons
+ var btns = selects[i].form.getElementsByTagName('input');
+ for(var j=0; j<btns.length; j++){
+ if(btns[j].type == 'submit'){
+ btns[j].style.display = 'none';
+ }
+ }
+ }
});
/**
diff --git a/lib/scripts/toolbar.js b/lib/scripts/toolbar.js
index f969cee64..795e105df 100644
--- a/lib/scripts/toolbar.js
+++ b/lib/scripts/toolbar.js
@@ -153,7 +153,7 @@ function tb_insert(btn, props, edid) {
*/
function tb_mediapopup(btn, props, edid) {
window.open(
- DOKU_BASE+props['url']+encodeURIComponent(NS),
+ DOKU_BASE+props['url']+encodeURIComponent(NS)+'&edid='+encodeURIComponent(edid),
props['name'],
props['options']);
return false;
diff --git a/lib/styles/all.css b/lib/styles/all.css
new file mode 100644
index 000000000..dd9f46462
--- /dev/null
+++ b/lib/styles/all.css
@@ -0,0 +1,48 @@
+/**
+ * Basic styles. These styles are needed for basic DokuWiki functions
+ * regardless of the used template. Templates can override them of course
+ */
+
+div.clearer {
+ clear: both;
+ line-height: 0;
+ height: 0;
+ overflow: hidden;
+}
+
+div.no {
+ display: inline;
+ margin: 0;
+ padding: 0;
+}
+
+.hidden {
+ display: none;
+}
+
+/* image alignment */
+.medialeft {
+ float: left;
+}
+.mediaright {
+ float: right;
+}
+.mediacenter {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+/* table cell alignment */
+.leftalign { text-align: left; }
+.centeralign { text-align: center; }
+.rightalign { text-align: right; }
+
+/* underline */
+em.u {
+ font-style: normal;
+ text-decoration: underline;
+}
+em em.u {
+ font-style: italic;
+}
diff --git a/lib/styles/print.css b/lib/styles/print.css
new file mode 100644
index 000000000..16543473a
--- /dev/null
+++ b/lib/styles/print.css
@@ -0,0 +1,24 @@
+/**
+ * Basic styles. These styles are needed for basic DokuWiki functions
+ * regardless of the used template. Templates can override them of course
+ */
+
+/* messages with msg() */
+div.error,
+div.info,
+div.success,
+div.notify {
+ display: none;
+}
+
+/* section edit button */
+.secedit {
+ display: none;
+}
+
+/* modal windows */
+.JSpopup,
+#link__wiz,
+#media__popup {
+ display: none;
+}
diff --git a/lib/styles/screen.css b/lib/styles/screen.css
new file mode 100644
index 000000000..0a6a4f295
--- /dev/null
+++ b/lib/styles/screen.css
@@ -0,0 +1,80 @@
+/**
+ * Basic styles. These styles are needed for basic DokuWiki functions
+ * regardless of the used template. Templates can override them of course
+ */
+
+/* messages with msg() */
+div.error,
+div.info,
+div.success,
+div.notify {
+ color: #000;
+ background-repeat: no-repeat;
+ background-position: .5em 0;
+ border-bottom: 1px solid;
+ font-size: 90%;
+ margin: 0;
+ padding-left: 3em;
+ overflow: hidden;
+}
+
+div.error {
+ background-color: #fcc;
+ background-image: url(../images/error.png);
+ border-bottom-color: #faa;
+}
+
+div.info {
+ background-color: #ccf;
+ background-image: url(../images/info.png);
+ border-bottom-color: #aaf;
+}
+
+div.success {
+ background-color: #cfc;
+ background-image: url(../images/success.png);
+ border-bottom-color: #afa;
+}
+
+div.notify {
+ background-color: #ffc;
+ background-image: url(../images/notify.png);
+ border-bottom-color: #ffa;
+}
+
+/* modal windows */
+.JSpopup,
+#link__wiz,
+#media__popup {
+ position: absolute;
+ background-color: #fff;
+ color: #000;
+ z-index: 20;
+ overflow: hidden;
+}
+
+
+/* syntax highlighting code */
+.code .br0 { color: #66cc66; }
+.code .co0 { color: #808080; font-style: italic; }
+.code .co1 { color: #808080; font-style: italic; }
+.code .co2 { color: #808080; font-style: italic; }
+.code .co3 { color: #808080; }
+.code .coMULTI { color: #808080; font-style: italic; }
+.code .es0 { color: #000099; font-weight: bold; }
+.code .kw1 { color: #b1b100; }
+.code .kw2 { color: #000000; font-weight: bold; }
+.code .kw3 { color: #000066; }
+.code .kw4 { color: #993333; }
+.code .kw5 { color: #0000ff; }
+.code .me1 { color: #006600; }
+.code .me2 { color: #006600; }
+.code .nu0 { color: #cc66cc; }
+.code .re0 { color: #0000ff; }
+.code .re1 { color: #0000ff; }
+.code .re2 { color: #0000ff; }
+.code .re3 { color: #ff3333; font-weight:bold; }
+.code .re4 { color: #009999; }
+.code .st0 { color: #ff0000; }
+.code .sy0 { color: #66cc66; }
+
diff --git a/lib/styles/style.css b/lib/styles/style.css
deleted file mode 100644
index 814191615..000000000
--- a/lib/styles/style.css
+++ /dev/null
@@ -1,113 +0,0 @@
-/**
- * Basic styles. These styles are needed for basic DokuWiki functions
- * regardless of the used template. Templates can override them of course
- */
-
-div.clearer {
- clear: both;
- line-height: 0;
- height: 0;
- overflow: hidden;
-}
-
-div.no {
- display: inline;
- margin: 0;
- padding: 0;
-}
-
-.hidden {
- display: none;
-}
-
-div.error {
- background: #fcc url(../images/error.png) 0.5em 0px no-repeat;
- color: #000;
- border-bottom: 1px solid #faa;
- font-size: 90%;
- margin: 0;
- padding-left: 3em;
- overflow: hidden;
-}
-
-div.info {
- background: #ccf url(../images/info.png) 0.5em 0px no-repeat;
- color: #000;
- border-bottom: 1px solid #aaf;
- font-size: 90%;
- margin: 0;
- padding-left: 3em;
- overflow: hidden;
-}
-
-div.success {
- background: #cfc url(../images/success.png) 0.5em 0px no-repeat;
- color: #000;
- border-bottom: 1px solid #afa;
- font-size: 90%;
- margin: 0;
- padding-left: 3em;
- overflow: hidden;
-}
-
-div.notify {
- background: #ffc url(../images/notify.png) 0.5em 0px no-repeat;
- color: #000;
- border-bottom: 1px solid #ffa;
- font-size: 90%;
- margin: 0;
- padding-left: 3em;
- overflow: hidden;
-}
-
-
-/* image alignment */
-.medialeft {
- float: left;
-}
-.mediaright {
- float: right;
-}
-.mediacenter {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-
-.leftalign { text-align: left; }
-.centeralign { text-align: center; }
-.rightalign { text-align: right; }
-
-em.u {
- font-style: normal;
- text-decoration: underline;
-}
-em em.u {
- font-style: italic;
-}
-
-
-/* syntax highlighting code */
-.code .br0 { color: #66cc66; }
-.code .co0 { color: #808080; font-style: italic; }
-.code .co1 { color: #808080; font-style: italic; }
-.code .co2 { color: #808080; font-style: italic; }
-.code .co3 { color: #808080; }
-.code .coMULTI { color: #808080; font-style: italic; }
-.code .es0 { color: #000099; font-weight: bold; }
-.code .kw1 { color: #b1b100; }
-.code .kw2 { color: #000000; font-weight: bold; }
-.code .kw3 { color: #000066; }
-.code .kw4 { color: #993333; }
-.code .kw5 { color: #0000ff; }
-.code .me1 { color: #006600; }
-.code .me2 { color: #006600; }
-.code .nu0 { color: #cc66cc; }
-.code .re0 { color: #0000ff; }
-.code .re1 { color: #0000ff; }
-.code .re2 { color: #0000ff; }
-.code .re3 { color: #ff3333; font-weight:bold; }
-.code .re4 { color: #009999; }
-.code .st0 { color: #ff0000; }
-.code .sy0 { color: #66cc66; }
-
diff --git a/lib/tpl/default/_mediaoptions.css b/lib/tpl/default/_mediaoptions.css
index 7ac489929..19e2c4853 100644
--- a/lib/tpl/default/_mediaoptions.css
+++ b/lib/tpl/default/_mediaoptions.css
@@ -5,7 +5,7 @@
display:none;
border: 1px solid __border__;
position: absolute;
- width:270px;
+ width:280px;
}
#media__popup h1 {
diff --git a/lib/tpl/default/design.css b/lib/tpl/default/design.css
index 09a9ecf01..1fdf2bfac 100644
--- a/lib/tpl/default/design.css
+++ b/lib/tpl/default/design.css
@@ -85,8 +85,10 @@ div.dokuwiki fieldset {
}
div.dokuwiki textarea.edit {
- font-family: monospace;
- font-size: 14px;
+ font-family: monospace, serif;
+ /* second generic font fixes problem with font-size, see
+ http://meyerweb.com/eric/thoughts/2010/02/12/fixed-monospace-sizing/ */
+ font-size: 100%;
color: __text__;
background-color: __background__;
border: 1px solid __border__;
@@ -464,9 +466,14 @@ div.dokuwiki blockquote {
padding-left: 3px;
}
+div.dokuwiki pre,
+div.dokuwiki code {
+ font-family: monospace, serif;
+ /* second generic font fixes problem with font-size, see
+ http://meyerweb.com/eric/thoughts/2010/02/12/fixed-monospace-sizing/ */
+ font-size: 100%;
+}
div.dokuwiki pre {
- font-family: monospace;
- font-size: 120%;
padding: 0.5em;
border: 1px dashed __border__;
color: __text__;
@@ -519,11 +526,6 @@ div.dokuwiki dl.file dt {
}
-/* inline code words */
-div.dokuwiki code {
- font-size: 120%;
-}
-
/* inline tables */
div.dokuwiki table.inline {
background-color: __background__;
@@ -652,10 +654,12 @@ div.dokuwiki table.diff td {
font-family: monospace;
font-size: 100%;
}
-div.dokuwiki td.diff-addedline {
+div.dokuwiki td.diff-addedline,
+div.dokuwiki span.diff-addedline {
background-color: #ddffdd;
}
-div.dokuwiki td.diff-deletedline {
+div.dokuwiki td.diff-deletedline,
+div.dokuwiki span.diff-deletedline {
background-color: #ffffbb;
}
div.dokuwiki td.diff-context {
diff --git a/lib/tpl/default/images/UWEB.png b/lib/tpl/default/images/UWEB.png
index ea03aec94..bded2c76f 100644
--- a/lib/tpl/default/images/UWEB.png
+++ b/lib/tpl/default/images/UWEB.png
Binary files differ
diff --git a/lib/tpl/default/images/UWEBshadow.png b/lib/tpl/default/images/UWEBshadow.png
index 212444f0e..8c4e5f829 100644
--- a/lib/tpl/default/images/UWEBshadow.png
+++ b/lib/tpl/default/images/UWEBshadow.png
Binary files differ
diff --git a/lib/tpl/default/images/button-dw.png b/lib/tpl/default/images/button-dw.png
index 39d5f56a9..97272d968 100644
--- a/lib/tpl/default/images/button-dw.png
+++ b/lib/tpl/default/images/button-dw.png
Binary files differ
diff --git a/lib/tpl/default/images/button-rss.png b/lib/tpl/default/images/button-rss.png
index b036f7152..0a55642ef 100644
--- a/lib/tpl/default/images/button-rss.png
+++ b/lib/tpl/default/images/button-rss.png
Binary files differ
diff --git a/lib/tpl/default/images/buttonshadow.png b/lib/tpl/default/images/buttonshadow.png
index f60be309f..b96ebf759 100644
--- a/lib/tpl/default/images/buttonshadow.png
+++ b/lib/tpl/default/images/buttonshadow.png
Binary files differ
diff --git a/lib/tpl/default/images/inputshadow.png b/lib/tpl/default/images/inputshadow.png
index d286beb22..480044986 100644
--- a/lib/tpl/default/images/inputshadow.png
+++ b/lib/tpl/default/images/inputshadow.png
Binary files differ
diff --git a/lib/tpl/default/main.php b/lib/tpl/default/main.php
index d9231678b..754a6e482 100644
--- a/lib/tpl/default/main.php
+++ b/lib/tpl/default/main.php
@@ -29,7 +29,7 @@ if (!defined('DOKU_INC')) die();
<?php tpl_metaheaders()?>
- <link rel="shortcut icon" href="<?php echo DOKU_TPL?>images/favicon.ico" />
+ <link rel="shortcut icon" href="<?php echo tpl_getFavicon() ?>" />
<?php /*old includehook*/ @include(dirname(__FILE__).'/meta.html')?>
</head>
diff --git a/lib/tpl/default/media.css b/lib/tpl/default/media.css
index 2831c984f..d412fd9cf 100644
--- a/lib/tpl/default/media.css
+++ b/lib/tpl/default/media.css
@@ -1,5 +1,5 @@
/**
- * The CSS in here cotrols the appearance of the media manager
+ * The CSS in here controls the appearance of the media manager
*/
#media__manager {
diff --git a/lib/tpl/default/print.css b/lib/tpl/default/print.css
index 60c172585..45b60aad2 100644
--- a/lib/tpl/default/print.css
+++ b/lib/tpl/default/print.css
@@ -33,16 +33,11 @@ div.meta {
text-align: right;
}
-
-div.notify,
-div.info,
-div.success,
-div.error,
-div.breadcrumbs,
-div.secedit {
+div.breadcrumbs {
display: none;
}
+
/* --------------------- Text formating -------------------------------- */
/* external link */
@@ -102,17 +97,16 @@ img.media {
margin: 3px;
}
+/* the styles for media images are already in
+ lib/styles/all.css, these are additional styles */
img.medialeft {
- border: 0;
- float: left;
margin: 0 1.5em 0 0;
}
-
img.mediaright {
- border: 0;
- float: right;
margin: 0 0 0 1.5em;
}
+img.mediacenter {
+}
/* unordered lists */
ul {
@@ -230,17 +224,5 @@ table.inline td {
border: 1px solid #000000;
}
-.leftalign {
- text-align: left;
-}
-
-.centeralign {
- text-align: center;
-}
-
-.rightalign {
- text-align: right;
-}
-
.toc, .footerinc, .header, .bar, .user { display: none; }
diff --git a/lib/tpl/default/rtl.css b/lib/tpl/default/rtl.css
index 6c2d1fbd2..82c85839b 100644
--- a/lib/tpl/default/rtl.css
+++ b/lib/tpl/default/rtl.css
@@ -1,5 +1,5 @@
/**
- * Layout and dedsign corrections for right-to-left languages
+ * Layout and design corrections for right-to-left languages
*
* @author Andreas Gohr <andi@splitbrain.org>
* @author Dotan Kamber <kamberd@yahoo.com>
@@ -55,8 +55,7 @@ div.dokuwiki li ol {
div.dokuwiki a.urlextern,
div.dokuwiki a.interwiki,
div.dokuwiki a.windows,
-div.dokuwiki a.mail,
-div.dokuwiki a.mail.JSnocheck {
+div.dokuwiki a.mail {
/* should work but doesn't - so we just disable icons here*/
/*
background-position: right 1px;
@@ -145,3 +144,11 @@ div.dokuwiki blockquote {
text-align: right;
}
+/* Search corrections */
+div.dokuwiki ul.search_quickhits li {
+ float: right;
+}
+
+div#qsearch__out {
+ text-align: right;
+}
diff --git a/lib/tpl/index.php b/lib/tpl/index.php
index a55081738..20abea20c 100644
--- a/lib/tpl/index.php
+++ b/lib/tpl/index.php
@@ -8,6 +8,9 @@
* @author Andreas Gohr <andi@splitbrain.org>
* @author Anika Henke <anika@selfthinker.org>
*/
+if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../');
+if(!define('NOSESSION')) define('NOSESSION',1);
+require_once(DOKU_INC.'inc/init.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
@@ -41,9 +44,6 @@
</head>
<body>
<?php
-if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../');
-require_once(DOKU_INC.'inc/init.php');
-
$ini = @parse_ini_file($conf['template'].'/style.ini',true);
if ($ini) {
echo '<table>';