From bbf56876ca1564597bd859691ca698a7d2851387 Mon Sep 17 00:00:00 2001 From: Yaco Date: Sat, 19 Mar 2022 15:09:45 +0000 Subject: add plugins blog, pagelist and tag --- platform/www/lib/plugins/blog/COPYING | 340 ++++++++++++++ platform/www/lib/plugins/blog/README | 10 + platform/www/lib/plugins/blog/_template.txt | 6 + platform/www/lib/plugins/blog/action.php | 259 +++++++++++ platform/www/lib/plugins/blog/conf/default.php | 18 + platform/www/lib/plugins/blog/conf/metadata.php | 22 + platform/www/lib/plugins/blog/helper.php | 189 ++++++++ platform/www/lib/plugins/blog/lang/ar/lang.php | 36 ++ platform/www/lib/plugins/blog/lang/ar/settings.php | 35 ++ platform/www/lib/plugins/blog/lang/ckb/lang.php | 30 ++ .../www/lib/plugins/blog/lang/ckb/settings.php | 41 ++ platform/www/lib/plugins/blog/lang/cs/lang.php | 25 + platform/www/lib/plugins/blog/lang/cs/settings.php | 25 + platform/www/lib/plugins/blog/lang/da/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/da/settings.php | 29 ++ .../www/lib/plugins/blog/lang/de-informal/lang.php | 31 ++ .../lib/plugins/blog/lang/de-informal/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/de/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/de/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/en/lang.php | 36 ++ platform/www/lib/plugins/blog/lang/en/settings.php | 38 ++ platform/www/lib/plugins/blog/lang/eo/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/eo/settings.php | 28 ++ platform/www/lib/plugins/blog/lang/es/lang.php | 30 ++ platform/www/lib/plugins/blog/lang/es/settings.php | 23 + platform/www/lib/plugins/blog/lang/fa/lang.php | 30 ++ platform/www/lib/plugins/blog/lang/fa/settings.php | 27 ++ platform/www/lib/plugins/blog/lang/fr/lang.php | 32 ++ platform/www/lib/plugins/blog/lang/fr/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/hu/lang.php | 32 ++ platform/www/lib/plugins/blog/lang/hu/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/it/lang.php | 36 ++ platform/www/lib/plugins/blog/lang/it/settings.php | 12 + platform/www/lib/plugins/blog/lang/ja/lang.php | 30 ++ platform/www/lib/plugins/blog/lang/ja/settings.php | 27 ++ platform/www/lib/plugins/blog/lang/ko/lang.php | 30 ++ platform/www/lib/plugins/blog/lang/ko/settings.php | 27 ++ platform/www/lib/plugins/blog/lang/nl/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/nl/settings.php | 28 ++ platform/www/lib/plugins/blog/lang/pl/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/pl/settings.php | 25 + platform/www/lib/plugins/blog/lang/pt-br/lang.php | 30 ++ .../www/lib/plugins/blog/lang/pt-br/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/pt/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/pt/settings.php | 28 ++ platform/www/lib/plugins/blog/lang/ro/lang.php | 32 ++ platform/www/lib/plugins/blog/lang/ro/settings.php | 30 ++ platform/www/lib/plugins/blog/lang/ru/lang.php | 31 ++ platform/www/lib/plugins/blog/lang/ru/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/sk/lang.php | 34 ++ platform/www/lib/plugins/blog/lang/sk/settings.php | 34 ++ platform/www/lib/plugins/blog/lang/sl/lang.php | 15 + platform/www/lib/plugins/blog/lang/sl/settings.php | 19 + platform/www/lib/plugins/blog/lang/sv/lang.php | 32 ++ platform/www/lib/plugins/blog/lang/sv/settings.php | 29 ++ platform/www/lib/plugins/blog/lang/tr/lang.php | 30 ++ platform/www/lib/plugins/blog/lang/tr/settings.php | 27 ++ platform/www/lib/plugins/blog/lang/zh/lang.php | 36 ++ platform/www/lib/plugins/blog/lang/zh/settings.php | 38 ++ platform/www/lib/plugins/blog/manager.dat | 2 + platform/www/lib/plugins/blog/plugin.info.txt | 8 + platform/www/lib/plugins/blog/print.css | 3 + platform/www/lib/plugins/blog/style.css | 40 ++ platform/www/lib/plugins/blog/syntax/archive.php | 245 ++++++++++ .../www/lib/plugins/blog/syntax/autoarchive.php | 157 +++++++ platform/www/lib/plugins/blog/syntax/blog.php | 213 +++++++++ platform/www/lib/plugins/blog/syntax/draft.php | 33 ++ platform/www/lib/plugins/pagelist/COPYING | 340 ++++++++++++++ platform/www/lib/plugins/pagelist/README | 9 + platform/www/lib/plugins/pagelist/conf/default.php | 19 + .../www/lib/plugins/pagelist/conf/metadata.php | 24 + platform/www/lib/plugins/pagelist/helper.php | 448 ++++++++++++++++++ platform/www/lib/plugins/pagelist/lang/ar/lang.php | 16 + .../www/lib/plugins/pagelist/lang/ar/settings.php | 32 ++ platform/www/lib/plugins/pagelist/lang/bg/lang.php | 14 + .../www/lib/plugins/pagelist/lang/bg/settings.php | 32 ++ .../www/lib/plugins/pagelist/lang/ckb/lang.php | 14 + .../www/lib/plugins/pagelist/lang/ckb/settings.php | 33 ++ platform/www/lib/plugins/pagelist/lang/cs/lang.php | 15 + .../www/lib/plugins/pagelist/lang/cs/settings.php | 36 ++ platform/www/lib/plugins/pagelist/lang/cy/lang.php | 14 + .../www/lib/plugins/pagelist/lang/cy/settings.php | 32 ++ platform/www/lib/plugins/pagelist/lang/da/lang.php | 14 + .../www/lib/plugins/pagelist/lang/da/settings.php | 33 ++ .../lib/plugins/pagelist/lang/de-informal/lang.php | 14 + .../plugins/pagelist/lang/de-informal/settings.php | 33 ++ platform/www/lib/plugins/pagelist/lang/de/lang.php | 16 + .../www/lib/plugins/pagelist/lang/de/settings.php | 35 ++ platform/www/lib/plugins/pagelist/lang/en/lang.php | 17 + .../www/lib/plugins/pagelist/lang/en/settings.php | 38 ++ platform/www/lib/plugins/pagelist/lang/eo/lang.php | 15 + .../www/lib/plugins/pagelist/lang/eo/settings.php | 31 ++ platform/www/lib/plugins/pagelist/lang/es/lang.php | 15 + .../www/lib/plugins/pagelist/lang/es/settings.php | 34 ++ platform/www/lib/plugins/pagelist/lang/fr/lang.php | 15 + .../www/lib/plugins/pagelist/lang/fr/settings.php | 36 ++ platform/www/lib/plugins/pagelist/lang/hu/lang.php | 14 + .../www/lib/plugins/pagelist/lang/hu/settings.php | 32 ++ platform/www/lib/plugins/pagelist/lang/it/lang.php | 17 + .../www/lib/plugins/pagelist/lang/it/settings.php | 36 ++ platform/www/lib/plugins/pagelist/lang/ja/lang.php | 15 + .../www/lib/plugins/pagelist/lang/ja/settings.php | 35 ++ platform/www/lib/plugins/pagelist/lang/ko/lang.php | 16 + .../www/lib/plugins/pagelist/lang/ko/settings.php | 34 ++ platform/www/lib/plugins/pagelist/lang/nl/lang.php | 16 + .../www/lib/plugins/pagelist/lang/nl/settings.php | 36 ++ platform/www/lib/plugins/pagelist/lang/no/lang.php | 14 + .../www/lib/plugins/pagelist/lang/no/settings.php | 32 ++ .../www/lib/plugins/pagelist/lang/pt-br/lang.php | 15 + .../lib/plugins/pagelist/lang/pt-br/settings.php | 31 ++ platform/www/lib/plugins/pagelist/lang/pt/lang.php | 15 + .../www/lib/plugins/pagelist/lang/pt/settings.php | 35 ++ platform/www/lib/plugins/pagelist/lang/ro/lang.php | 12 + .../www/lib/plugins/pagelist/lang/ro/settings.php | 13 + platform/www/lib/plugins/pagelist/lang/ru/lang.php | 14 + .../www/lib/plugins/pagelist/lang/ru/settings.php | 35 ++ platform/www/lib/plugins/pagelist/lang/sv/lang.php | 14 + .../www/lib/plugins/pagelist/lang/sv/settings.php | 33 ++ platform/www/lib/plugins/pagelist/lang/tr/lang.php | 15 + .../www/lib/plugins/pagelist/lang/tr/settings.php | 33 ++ platform/www/lib/plugins/pagelist/lang/uk/lang.php | 14 + .../www/lib/plugins/pagelist/lang/uk/settings.php | 33 ++ .../www/lib/plugins/pagelist/lang/zh-tw/lang.php | 15 + .../lib/plugins/pagelist/lang/zh-tw/settings.php | 35 ++ platform/www/lib/plugins/pagelist/lang/zh/lang.php | 15 + .../www/lib/plugins/pagelist/lang/zh/settings.php | 35 ++ platform/www/lib/plugins/pagelist/manager.dat | 2 + platform/www/lib/plugins/pagelist/plugin.info.txt | 8 + platform/www/lib/plugins/pagelist/style.css | 57 +++ platform/www/lib/plugins/pagelist/syntax.php | 106 +++++ platform/www/lib/plugins/tag/COPYING | 340 ++++++++++++++ platform/www/lib/plugins/tag/README | 10 + .../plugins/tag/_test/topic_and_tagrefine.test.php | 107 +++++ .../www/lib/plugins/tag/_test/topic_sort.test.php | 59 +++ .../www/lib/plugins/tag/_test/topic_tag.test.php | 36 ++ platform/www/lib/plugins/tag/action.php | 138 ++++++ platform/www/lib/plugins/tag/conf/default.php | 13 + platform/www/lib/plugins/tag/conf/metadata.php | 20 + platform/www/lib/plugins/tag/helper.php | 513 +++++++++++++++++++++ .../www/lib/plugins/tag/images/tag-toolbar.png | Bin 0 -> 328 bytes platform/www/lib/plugins/tag/images/tag.gif | Bin 0 -> 111 bytes platform/www/lib/plugins/tag/lang/ar/lang.php | 20 + platform/www/lib/plugins/tag/lang/ar/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/be/lang.php | 18 + platform/www/lib/plugins/tag/lang/be/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/bg/lang.php | 19 + platform/www/lib/plugins/tag/lang/bg/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/ckb/lang.php | 18 + platform/www/lib/plugins/tag/lang/ckb/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/cs/lang.php | 22 + platform/www/lib/plugins/tag/lang/cs/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/cy/lang.php | 20 + platform/www/lib/plugins/tag/lang/cy/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/da/lang.php | 20 + platform/www/lib/plugins/tag/lang/da/settings.php | 30 ++ .../www/lib/plugins/tag/lang/de-informal/lang.php | 20 + .../lib/plugins/tag/lang/de-informal/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/de/lang.php | 22 + platform/www/lib/plugins/tag/lang/de/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/el/lang.php | 18 + platform/www/lib/plugins/tag/lang/el/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/en/lang.php | 23 + platform/www/lib/plugins/tag/lang/en/settings.php | 32 ++ platform/www/lib/plugins/tag/lang/eo/lang.php | 19 + platform/www/lib/plugins/tag/lang/eo/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/es/lang.php | 21 + platform/www/lib/plugins/tag/lang/es/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/fa/lang.php | 19 + platform/www/lib/plugins/tag/lang/fa/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/fi/lang.php | 18 + platform/www/lib/plugins/tag/lang/fi/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/fr/lang.php | 20 + platform/www/lib/plugins/tag/lang/fr/settings.php | 33 ++ platform/www/lib/plugins/tag/lang/he/lang.php | 18 + platform/www/lib/plugins/tag/lang/he/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/hi/lang.php | 18 + platform/www/lib/plugins/tag/lang/hi/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/hr/lang.php | 19 + platform/www/lib/plugins/tag/lang/hr/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/hu/lang.php | 19 + platform/www/lib/plugins/tag/lang/hu/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/id/lang.php | 18 + platform/www/lib/plugins/tag/lang/id/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/it/lang.php | 18 + platform/www/lib/plugins/tag/lang/it/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/ja/lang.php | 20 + platform/www/lib/plugins/tag/lang/ja/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/ko/lang.php | 20 + platform/www/lib/plugins/tag/lang/ko/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/nl/lang.php | 20 + platform/www/lib/plugins/tag/lang/nl/settings.php | 31 ++ platform/www/lib/plugins/tag/lang/pl/lang.php | 18 + platform/www/lib/plugins/tag/lang/pl/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/pt-br/lang.php | 18 + .../www/lib/plugins/tag/lang/pt-br/settings.php | 32 ++ platform/www/lib/plugins/tag/lang/pt/lang.php | 18 + platform/www/lib/plugins/tag/lang/pt/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/ru/lang.php | 20 + platform/www/lib/plugins/tag/lang/ru/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/sv/lang.php | 20 + platform/www/lib/plugins/tag/lang/sv/settings.php | 30 ++ platform/www/lib/plugins/tag/lang/tr/lang.php | 19 + platform/www/lib/plugins/tag/lang/tr/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/uk/lang.php | 18 + platform/www/lib/plugins/tag/lang/uk/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/vi/lang.php | 19 + platform/www/lib/plugins/tag/lang/vi/settings.php | 29 ++ platform/www/lib/plugins/tag/lang/zh-tw/lang.php | 21 + .../www/lib/plugins/tag/lang/zh-tw/settings.php | 32 ++ platform/www/lib/plugins/tag/lang/zh/lang.php | 20 + platform/www/lib/plugins/tag/lang/zh/settings.php | 30 ++ platform/www/lib/plugins/tag/manager.dat | 2 + platform/www/lib/plugins/tag/plugin.info.txt | 7 + platform/www/lib/plugins/tag/script.js | 16 + platform/www/lib/plugins/tag/style.css | 28 ++ platform/www/lib/plugins/tag/syntax/count.php | 124 +++++ platform/www/lib/plugins/tag/syntax/searchtags.php | 281 +++++++++++ platform/www/lib/plugins/tag/syntax/tag.php | 112 +++++ platform/www/lib/plugins/tag/syntax/tagpage.php | 90 ++++ platform/www/lib/plugins/tag/syntax/topic.php | 129 ++++++ 220 files changed, 9150 insertions(+) create mode 100644 platform/www/lib/plugins/blog/COPYING create mode 100644 platform/www/lib/plugins/blog/README create mode 100644 platform/www/lib/plugins/blog/_template.txt create mode 100644 platform/www/lib/plugins/blog/action.php create mode 100644 platform/www/lib/plugins/blog/conf/default.php create mode 100644 platform/www/lib/plugins/blog/conf/metadata.php create mode 100644 platform/www/lib/plugins/blog/helper.php create mode 100644 platform/www/lib/plugins/blog/lang/ar/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ar/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/ckb/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ckb/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/cs/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/cs/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/da/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/da/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/de-informal/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/de-informal/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/de/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/de/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/en/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/en/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/eo/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/eo/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/es/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/es/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/fa/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/fa/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/fr/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/fr/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/hu/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/hu/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/it/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/it/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/ja/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ja/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/ko/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ko/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/nl/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/nl/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/pl/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/pl/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/pt-br/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/pt-br/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/pt/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/pt/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/ro/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ro/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/ru/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/ru/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/sk/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/sk/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/sl/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/sl/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/sv/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/sv/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/tr/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/tr/settings.php create mode 100644 platform/www/lib/plugins/blog/lang/zh/lang.php create mode 100644 platform/www/lib/plugins/blog/lang/zh/settings.php create mode 100644 platform/www/lib/plugins/blog/manager.dat create mode 100644 platform/www/lib/plugins/blog/plugin.info.txt create mode 100644 platform/www/lib/plugins/blog/print.css create mode 100644 platform/www/lib/plugins/blog/style.css create mode 100644 platform/www/lib/plugins/blog/syntax/archive.php create mode 100644 platform/www/lib/plugins/blog/syntax/autoarchive.php create mode 100644 platform/www/lib/plugins/blog/syntax/blog.php create mode 100644 platform/www/lib/plugins/blog/syntax/draft.php create mode 100644 platform/www/lib/plugins/pagelist/COPYING create mode 100644 platform/www/lib/plugins/pagelist/README create mode 100644 platform/www/lib/plugins/pagelist/conf/default.php create mode 100644 platform/www/lib/plugins/pagelist/conf/metadata.php create mode 100644 platform/www/lib/plugins/pagelist/helper.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ar/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ar/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/bg/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/bg/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ckb/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ckb/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/cs/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/cs/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/cy/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/cy/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/da/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/da/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/de-informal/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/de-informal/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/de/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/de/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/en/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/en/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/eo/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/eo/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/es/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/es/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/fr/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/fr/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/hu/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/hu/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/it/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/it/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ja/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ja/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ko/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ko/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/nl/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/nl/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/no/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/no/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/pt-br/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/pt-br/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/pt/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/pt/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ro/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ro/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ru/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/ru/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/sv/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/sv/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/tr/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/tr/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/uk/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/uk/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/zh-tw/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/zh-tw/settings.php create mode 100644 platform/www/lib/plugins/pagelist/lang/zh/lang.php create mode 100644 platform/www/lib/plugins/pagelist/lang/zh/settings.php create mode 100644 platform/www/lib/plugins/pagelist/manager.dat create mode 100644 platform/www/lib/plugins/pagelist/plugin.info.txt create mode 100644 platform/www/lib/plugins/pagelist/style.css create mode 100644 platform/www/lib/plugins/pagelist/syntax.php create mode 100644 platform/www/lib/plugins/tag/COPYING create mode 100644 platform/www/lib/plugins/tag/README create mode 100644 platform/www/lib/plugins/tag/_test/topic_and_tagrefine.test.php create mode 100644 platform/www/lib/plugins/tag/_test/topic_sort.test.php create mode 100644 platform/www/lib/plugins/tag/_test/topic_tag.test.php create mode 100644 platform/www/lib/plugins/tag/action.php create mode 100644 platform/www/lib/plugins/tag/conf/default.php create mode 100644 platform/www/lib/plugins/tag/conf/metadata.php create mode 100644 platform/www/lib/plugins/tag/helper.php create mode 100644 platform/www/lib/plugins/tag/images/tag-toolbar.png create mode 100644 platform/www/lib/plugins/tag/images/tag.gif create mode 100644 platform/www/lib/plugins/tag/lang/ar/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/ar/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/be/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/be/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/bg/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/bg/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/ckb/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/ckb/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/cs/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/cs/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/cy/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/cy/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/da/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/da/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/de-informal/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/de-informal/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/de/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/de/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/el/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/el/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/en/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/en/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/eo/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/eo/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/es/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/es/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/fa/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/fa/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/fi/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/fi/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/fr/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/fr/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/he/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/he/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/hi/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/hi/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/hr/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/hr/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/hu/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/hu/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/id/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/id/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/it/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/it/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/ja/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/ja/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/ko/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/ko/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/nl/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/nl/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/pl/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/pl/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/pt-br/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/pt-br/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/pt/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/pt/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/ru/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/ru/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/sv/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/sv/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/tr/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/tr/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/uk/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/uk/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/vi/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/vi/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/zh-tw/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/zh-tw/settings.php create mode 100644 platform/www/lib/plugins/tag/lang/zh/lang.php create mode 100644 platform/www/lib/plugins/tag/lang/zh/settings.php create mode 100644 platform/www/lib/plugins/tag/manager.dat create mode 100644 platform/www/lib/plugins/tag/plugin.info.txt create mode 100644 platform/www/lib/plugins/tag/script.js create mode 100644 platform/www/lib/plugins/tag/style.css create mode 100644 platform/www/lib/plugins/tag/syntax/count.php create mode 100644 platform/www/lib/plugins/tag/syntax/searchtags.php create mode 100644 platform/www/lib/plugins/tag/syntax/tag.php create mode 100644 platform/www/lib/plugins/tag/syntax/tagpage.php create mode 100644 platform/www/lib/plugins/tag/syntax/topic.php diff --git a/platform/www/lib/plugins/blog/COPYING b/platform/www/lib/plugins/blog/COPYING new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/platform/www/lib/plugins/blog/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/platform/www/lib/plugins/blog/README b/platform/www/lib/plugins/blog/README new file mode 100644 index 0000000..86e31d7 --- /dev/null +++ b/platform/www/lib/plugins/blog/README @@ -0,0 +1,10 @@ +====== Blog Plugin for DokuWiki ====== + +All documentation for the Blog Plugin is available online at: + + * http://dokuwiki.org/plugin:blog + +(c) 2005 - 2007 by Esther Brunner +(c) 2008 - 2009 by Gina Häußge, Michael Klier +(c) 2013 by Michael Hamann +See COPYING for license info. diff --git a/platform/www/lib/plugins/blog/_template.txt b/platform/www/lib/plugins/blog/_template.txt new file mode 100644 index 0000000..01fefa5 --- /dev/null +++ b/platform/www/lib/plugins/blog/_template.txt @@ -0,0 +1,6 @@ +====== @TITLE@ ====== + +@TAG@ + +@LINKBACK@ +@DISCUSSION@ diff --git a/platform/www/lib/plugins/blog/action.php b/platform/www/lib/plugins/blog/action.php new file mode 100644 index 0000000..61ffd9e --- /dev/null +++ b/platform/www/lib/plugins/blog/action.php @@ -0,0 +1,259 @@ + + */ + +class action_plugin_blog extends DokuWiki_Action_Plugin { + + /** + * register the eventhandlers + * @param Doku_Event_Handler $contr + */ + function register(Doku_Event_Handler $contr) { + $contr->register_hook('ACTION_ACT_PREPROCESS', 'BEFORE', $this, 'handle_act_preprocess', array()); + $contr->register_hook('FEED_ITEM_ADD', 'BEFORE', $this, 'handle_feed_item'); + $contr->register_hook('PARSER_CACHE_USE', 'BEFORE', $this, 'handle_cache'); + } + + /** + * Checks if 'newentry' was given as action, if so we + * do handle the event our self and no further checking takes place + * @param Doku_Event $event + * @param $param + */ + function handle_act_preprocess(Doku_Event $event, $param) { + if ($event->data != 'newentry') return; // nothing to do for us + + $event->data = $this->_handle_newEntry($event); + } + + /** + * Removes draft entries from feeds + * + * @param Doku_Event $event + * @param $param + * + * @author Michael Klier + */ + function handle_feed_item(Doku_Event $event, $param) { + global $conf; + + $url = parse_url($event->data['item']->link); + $base_url = getBaseURL(); + + // determine page id by rewrite mode + switch($conf['userewrite']) { + case 0: + preg_match('#id=([^&]*)#', $url['query'], $match); + if($base_url != '/') { + $id = cleanID(str_replace($base_url, '', $match[1])); + } else { + $id = cleanID($match[1]); + } + break; + + case 1: + if($base_url != '/') { + $id = cleanID(str_replace('/',':',str_replace($base_url, '', $url['path']))); + } else { + $id = cleanID(str_replace('/',':', $url['path'])); + } + break; + + case 2: + preg_match('#doku.php/([^&]*)#', $url['path'], $match); + if($base_url != '/') { + $id = cleanID(str_replace($base_url, '', $match[1])); + } else { + $id = cleanID($match[1]); + } + break; + } + + // don't add drafts to the feed + if(p_get_metadata($id, 'type') == 'draft') { + $event->preventDefault(); + return; + } + } + + /** + * Creates a new entry page + * + * @param Doku_Event $event + * @return string + */ + function _handle_newEntry(Doku_Event $event) { + global $ID, $INFO; + + $ns = cleanID($_REQUEST['ns']); + $title = str_replace(':', '', $_REQUEST['title']); + $ID = $this->_newEntryID($ns, $title); + $INFO = pageinfo(); + + // check if we are allowed to create this file + if ($INFO['perm'] >= AUTH_CREATE) { + + // prepare the new thread file with default stuff + if (!@file_exists($INFO['filepath'])) { + + //check if locked by anyone - if not lock for my self + if ($INFO['locked']) return 'locked'; + else lock($ID); + + global $TEXT; + + $TEXT = pageTemplate($ID); + if (!$TEXT) { + // if there is no page template, load our custom one + $TEXT = io_readFile(DOKU_PLUGIN.'blog/_template.txt'); + } + + $data = array('id' => $ID, 'ns' => $ns, 'title' => $_REQUEST['title']); + // Apply replacements regardless if they have already been applied by DokuWiki in order to + // make custom replacements like @TITLE@ available in standard page templates. + $TEXT = $this->_pageTemplate($TEXT, $data); + + return 'preview'; + } else { + return 'edit'; + } + } else { + return 'show'; + } + } + + /** + * Adapted version of pageTemplate() function + * + * @param $text + * @param $data + * @return string|string[] + */ + function _pageTemplate($text, $data) { + global $conf, $INFO; + + $id = $data['id']; + $user = $_SERVER['REMOTE_USER']; + + // standard replacements + $replace = array( + '@ID@' => $id, + '@NS@' => $data['ns'], + '@PAGE@' => strtr(noNS($id),'_',' '), + '@USER@' => $user, + '@NAME@' => $INFO['userinfo']['name'], + '@MAIL@' => $INFO['userinfo']['mail'], + '@DATE@' => strftime($conf['dformat']), + ); + + // additional replacements + $replace['@TITLE@'] = $data['title']; + + // tag if tag plugin is available + if ((@file_exists(DOKU_PLUGIN.'tag/syntax/tag.php')) + && (!plugin_isdisabled('tag'))) { + $replace['@TAG@'] = "\n\n{{tag>}}"; + } else { + $replace['@TAG@'] = ''; + } + + // discussion if discussion plugin is available + if ((@file_exists(DOKU_PLUGIN.'discussion/syntax/comments.php')) + && (!plugin_isdisabled('discussion'))) { + $replace['@DISCUSSION@'] = "~~DISCUSSION~~"; + } else { + $replace['@DISCUSSION@'] = ''; + } + + // linkbacks if linkback plugin is available + if ((@file_exists(DOKU_PLUGIN.'linkback/syntax.php')) + && (!plugin_isdisabled('linkback'))) { + $replace['@LINKBACK@'] = "~~LINKBACK~~"; + } else { + $replace['@LINKBACK@'] = ''; + } + + // do the replace + return str_replace(array_keys($replace), array_values($replace), $text); + } + + /** + * Returns the ID of a new entry based on its namespace, title and the date prefix + * + * @param $ns + * @param $title + * @return mixed|string|string[]|null + * + * @author Michael Arlt + * @author Esther Brunner + */ + function _newEntryID($ns, $title) { + $dateprefix = $this->getConf('dateprefix'); + if (substr($dateprefix, 0, 1) == '<') { + // <9?%y1-%y2:%d.%m._ -> 05-06:31.08._ | 06-07:01.09._ + list($newmonth, $dateprefix) = explode('?', substr($dateprefix, 1)); + if (intval(strftime("%m")) < intval($newmonth)) { + $longyear2 = strftime("%Y"); + $longyear1 = $longyear2 - 1; + } else { + $longyear1 = strftime("%Y"); + $longyear2 = $longyear1 + 1; + } + $shortyear1 = substr($longyear1, 2); + $shortyear2 = substr($longyear2, 2); + $dateprefix = str_replace( + array('%Y1', '%Y2', '%y1', '%y2'), + array($longyear1, $longyear2, $shortyear1, $shortyear2), + $dateprefix + ); + } + $pre = strftime($dateprefix); + return cleanID(($ns ? $ns.':' : '').$pre.$title); + } + + /** + * Expire the renderer cache of archive pages whenever a page is updated or a comment or linkback is added + * + * @param Doku_Event $event + * @param $params + * + * @author Michael Hamann + */ + function handle_cache(Doku_Event $event, $params) { + global $conf; + /** @var cache_parser $cache */ + $cache = $event->data; + if (!in_array($cache->mode, array('xhtml', 'metadata'))) return; + $page = $cache->page; + + // try to extract the page id from the file if possible + if (empty($page)) { + if (strpos($cache->file, $conf['datadir']) === 0) { + $page = pathID(substr($cache->file, strlen($conf['datadir'])+1)); + } else { + return; + } + } + + $meta = p_get_metadata($page, 'plugin_blog'); + if ($meta === null) return; + + if (isset($meta['purgefile_cache'])) { + $cache->depends['files'][] = $conf['cachedir'].'/purgefile'; + $cache->depends['files'][] = $conf['metadir'].'/_comments.changes'; + $cache->depends['files'][] = $conf['metadir'].'/_linkbacks.changes'; + } + + // purge the cache when a page is listed that the current user can't access + if (isset($meta['archive_pages'])) { + foreach ($meta['archive_pages'] as $page) { + if (auth_quickaclcheck($page) < AUTH_READ) { + $cache->depends['purge'] = true; + return; + } + } + } + } +} diff --git a/platform/www/lib/plugins/blog/conf/default.php b/platform/www/lib/plugins/blog/conf/default.php new file mode 100644 index 0000000..80fb610 --- /dev/null +++ b/platform/www/lib/plugins/blog/conf/default.php @@ -0,0 +1,18 @@ + + */ +$meta['namespace'] = array('string'); +$meta['formposition'] = array('multichoice', + '_choices' => array('top', 'bottom', 'none')); +$meta['newentrytitle'] = array('string'); +$meta['dateprefix'] = array('string'); +$meta['sortkey'] = array('multichoice', + '_choices' => array('cdate', 'mdate', 'pagename', 'id', 'title')); +$meta['sortorder'] = array('multichoice', + '_choices' => array('ascending', 'descending')); +$meta['excluded_pages'] = array('string'); + +$meta['showhistogram'] = array('onoff'); +$meta['max_months'] = array('numeric'); +$meta['histogram_height'] = array('numeric'); +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/helper.php b/platform/www/lib/plugins/blog/helper.php new file mode 100644 index 0000000..9dd8b9a --- /dev/null +++ b/platform/www/lib/plugins/blog/helper.php @@ -0,0 +1,189 @@ + + */ + +class helper_plugin_blog extends DokuWiki_Plugin { + + var $sort = ''; // sort key + + /** + * Constructor + */ + function helper_plugin_blog() { + // load sort key from settings + $this->sort = $this->getConf('sortkey'); + } + + function getMethods() { + $result = array(); + $result[] = array( + 'name' => 'getBlog', + 'desc' => 'returns blog entries in reverse chronological order', + 'params' => array( + 'namespace' => 'string', + 'number (optional)' => 'integer'), + 'return' => array('pages' => 'array'), + ); + $result[] = array( + 'name' => 'getFlags', + 'desc' => 'get values for flags, or defaults where not supplied', + 'params' => array('flags' => 'array'), + 'return' => array('flags' => 'array'), + ); + return $result; + } + + /** + * Get blog entries from a given namespace + * + * @param $ns + * @param null $num + * @param null $author + * @return array + */ + function getBlog($ns, $num = NULL, $author = NULL) { + // add pages in given namespace + $result = array(); + global $conf; + + $pages = array(); + $unique_keys_memoize = array(); + + $dir = str_replace(':', '/', $ns); + search($pages, $conf['datadir'], 'search_pagename', array('query' => '.txt'), $dir); + + foreach ($pages as $page) { + $id = $page['id']; + $file = wikiFN($id); + + // do some checks first + if (isHiddenPage($id)) continue; // skip excluded pages + $excluded_pages = $this->getConf('excluded_pages'); + if (strlen($excluded_pages) > 0 && preg_match($excluded_pages, $id)) continue; + if (($ns) && (strpos($id, $ns.':') !== 0)) continue; // filter namespaces + if (!@file_exists($file)) continue; // skip deleted + + $perm = auth_quickaclcheck($id); + if ($perm < AUTH_READ) continue; // check ACL + + // skip drafts unless for users with create priviledge + $meta = p_get_metadata($id, '', false); + $draft = ($meta['type'] == 'draft'); + if ($draft && ($perm < AUTH_CREATE)) continue; + + // filter by author + if ($author && ($meta['user'] != $author)) continue; + + $date = $meta['date']['modified']; + if (!$date) $date = filemtime(wikiFN($id)); + if ($this->sort != 'mdate') { + $cdate = $meta['date']['created']; + if (!$cdate) $cdate = filectime(wikiFN($id)); + // prefer the date further in the past: + $date = min($date, $cdate); + } + + if (isset($meta['title'])) { + $title = $meta['title']; + } else { + $title = $id; + } + + // determine the sort key + if ($this->sort == 'id') $key = $id; + elseif ($this->sort == 'pagename') $key = noNS($id); + elseif ($this->sort == 'title') $key = $title; + else $key = $date; + + // get a unique sortable key + $key = $this->_uniqueKey($key, $unique_keys_memoize); + + $result[$key] = array( + 'id' => $id, + 'title' => $title, + 'date' => $date, + 'user' => $meta['creator'], + 'desc' => $meta['description']['abstract'], + 'exists' => true, + 'perm' => $perm, + 'draft' => $draft, + ); + } + + // finally sort by sort key + if ($this->getConf('sortorder') == 'ascending') ksort($result); + else krsort($result); + + if (is_numeric($num)) $result = array_slice($result, 0, $num); + + return $result; + } + + /** + * Turn a list of user-supplied flags into a complete list of all flags + * required by the Blog plugin (not including those for the Include plugin), + * using global configuration options or plugin defaults where flags have + * not been supplied. + * + * Currently handles 'formpos' and 'newentrytitle'. + * + * @author Sam Wilson + * @param array $setflags Flags that have been set by the user + * @return array All flags required by the Blog plugin (only) + */ + function getFlags($setflags) { + $flags = array(); + + // Form Position + $flags['formpos'] = $this->getConf('formposition'); + if(in_array('topform', $setflags)) { + $flags['formpos'] = 'top'; + }elseif(in_array('bottomform', $setflags)) { + $flags['formpos'] = 'bottom'; + }elseif(in_array('noform', $setflags)) { + $flags['formpos'] = 'none'; + } + + // New Entry Title + $newentrytitle = preg_grep('|newentrytitle=.*|', $setflags); + if (count($newentrytitle) > 0) { + $newentrytitle = array_pop(explode('=', array_pop($newentrytitle), 2)); + if (!empty($newentrytitle)) { + $flags['newentrytitle'] = $newentrytitle; + } + } elseif ($conf_title = $this->getConf('newentrytitle')) { + $flags['newentrytitle'] = $conf_title; + } else { + $flags['newentrytitle'] = $this->getLang('newentry'); + } + + // Paging Controls + $flags['pagingcontrols'] = !in_array('nopagingcontrols', $setflags); + + return $flags; + } + + /** + * Function to create sortable, unique array keys + * + * @param $key + * @param $unique_keys_memoize + * @return string + * + * @author Esther Brunner + * @author Ilya S. Lebedev + * @author Balazs Attila-Mihaly + */ + function _uniqueKey($key, &$unique_keys_memoize){ + //convert numeric keys to string + if (is_numeric($key)) + $key = sprintf('%08x', $key); + if (!array_key_exists($key, $unique_keys_memoize)) + $unique_keys_memoize[$key] = 0; + + return sprintf('%s_%s', $key, $unique_keys_memoize[$key]++); + } + +} diff --git a/platform/www/lib/plugins/blog/lang/ar/lang.php b/platform/www/lib/plugins/blog/lang/ar/lang.php new file mode 100644 index 0000000..68c0ee7 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ar/lang.php @@ -0,0 +1,36 @@ + + */ + +// custom language strings for the plugin +$lang['blog'] = 'مدوّنة'; +$lang['older'] = 'تدوينات قديمة'; +$lang['newer'] = 'تدوينات جديدة'; +$lang['newentry'] = 'إضافة تدوينة جديدة:'; + +$lang['missing_includeplugin'] = 'إضافة "Include" يجب أن تكون منزلّة ومفعّلة لتعمل المدونّة.'; +$lang['missing_pagelistplugin'] = 'إضافة "Pagelist" يجب أن تكون منزلّة ومفعّلة لتعمل قوائم المدوّنات.'; +$lang['missing_tagplugin'] = 'إضافة "Tag" يجب أن تكون منزلّة ومفعّلة لتعمل سحابة الوسوم.'; + +$lang['autoarchive'] = '%d مشاركة لشهر %s %s'; +$lang['month_01'] = 'كانون الثاني'; +$lang['month_02'] = 'شباط'; +$lang['month_03'] = 'آذار'; +$lang['month_04'] = 'نيسان'; +$lang['month_05'] = 'أيار'; +$lang['month_06'] = 'حزيران'; +$lang['month_07'] = 'تموز'; +$lang['month_08'] = 'آب'; +$lang['month_09'] = 'أيلول'; +$lang['month_10'] = 'تشرين الأول'; +$lang['month_11'] = 'تشرين الثاني'; +$lang['month_12'] = 'كانون الأول'; + +$lang['entries'] = 'مُدخلات'; +$lang['entry'] = 'مُدخلة'; +$lang['archive_title'] = 'أرشيف المدوّنة'; +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/ar/settings.php b/platform/www/lib/plugins/blog/lang/ar/settings.php new file mode 100644 index 0000000..65e5aab --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ar/settings.php @@ -0,0 +1,35 @@ + + */ + +// for the configuration manager +$lang['namespace'] = 'فضاء أسماء إفتراضي للمدوّنة'; + +$lang['formposition'] = 'موقع التدوينة الجديدة'; +$lang['formposition_o_top'] = 'أعلى'; +$lang['formposition_o_bottom'] = 'أسفل'; + +$lang['dateprefix'] = 'بادئة التاريخ للتدوينات الجديدة'; + +$lang['sortkey'] = 'ترتيب التدوينات حسب:'; +$lang['sortkey_o_cdate'] = 'تاريخ الإنشاء'; +$lang['sortkey_o_pagename'] = 'إسم الصفحة'; +$lang['sortkey_o_id'] = 'رقم الصفحة'; + +$lang['sortkey_o_mdate'] = 'تاريخ التعديل'; +$lang['sortkey_o_title'] = 'العنوان'; + +$lang['sortorder'] = 'ترتيباً'; +$lang['sortorder_o_ascending'] = 'تصاعدياً'; +$lang['sortorder_o_descending'] = 'تنازلياً'; + +$lang['excluded_pages'] = 'استثناء صفحات معيّنة من قوائم المدوّنات (يتطلّب تعبيراً نمطيّاً RegEx)'; + +$lang['showhistorgram'] = 'عرض الرسم البياني عند عرض الأرشيف'; +$lang['max_months'] = 'العدد الأقصى للأشهر المعروضة في الرسم البياني'; +$lang['histogram_height'] = 'طول الرسم البياني (بكسل)'; +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/ckb/lang.php b/platform/www/lib/plugins/blog/lang/ckb/lang.php new file mode 100644 index 0000000..7521ec6 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ckb/lang.php @@ -0,0 +1,30 @@ + + */ +$lang['blog'] = 'بلۆگ'; +$lang['older'] = 'تێکردنەکانی کۆنتر'; +$lang['newer'] = 'تێکردنەکانی نوێتر'; +$lang['newentry'] = 'چوونەژوورەوەی بلۆگی نوێ:'; +$lang['missing_includeplugin'] = 'پێوەکراو دەگرێتە خۆ دەبێت دابەزێنرابێت بۆ بلۆگ بۆ کارکردن.'; +$lang['missing_pagelistplugin'] = 'پێوەکراو پێویستە بۆ لیستی ئەرشیف دابمەزرێنێت بۆ کارکردن.'; +$lang['missing_tagplugin'] = 'پێوەکراو تاگ دەبێت دابەزێنرێت بۆ بەکارهێنانی پوختەکردنی تاگ.'; +$lang['autoarchive'] = '%1$d پۆست بۆ %2$s %3$s'; +$lang['month_01'] = 'کانوونی دووەم'; +$lang['month_02'] = 'شوبات'; +$lang['month_03'] = 'ئازار'; +$lang['month_04'] = 'نیسان'; +$lang['month_05'] = 'ئایار'; +$lang['month_06'] = 'حوزەیران'; +$lang['month_07'] = 'تەممووز'; +$lang['month_08'] = 'ئاب'; +$lang['month_09'] = 'ئەیلوول'; +$lang['month_10'] = 'تشرینی یەکەم'; +$lang['month_11'] = 'تشرینی دووەم'; +$lang['month_12'] = 'کانوونی یەکەم'; +$lang['entries'] = 'تێکردنەکان'; +$lang['entry'] = 'تێکردن'; +$lang['archive_title'] = 'مێژووی بلۆگ'; diff --git a/platform/www/lib/plugins/blog/lang/ckb/settings.php b/platform/www/lib/plugins/blog/lang/ckb/settings.php new file mode 100644 index 0000000..8a8b1c1 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ckb/settings.php @@ -0,0 +1,41 @@ + + */ +$lang['namespace'] = 'بۆشایی ناوی ئاسایی بۆ بلۆگ'; +$lang['formposition'] = 'شوێنی فۆرمی چوونەناوی نوێ'; +$lang['formposition_o_top'] = 'سەرەوە'; +$lang['formposition_o_bottom'] = 'خوارەوە'; +$lang['formposition_o_none'] = 'هیچ'; +$lang['newentrytitle'] = 'ناونیشانی فۆرمی چوونەژوورەوەی نوێ'; +$lang['dateprefix'] = 'بەرواری پێشگر بۆ ئای دیی تێنووسێکی نوێ'; +$lang['sortkey'] = 'پۆلێنکردنی بڵاگ ەکان بەپێی +'; +$lang['sortkey_o_cdate'] = 'بەرواری دروست کردن +'; +$lang['sortkey_o_mdate'] = 'بەرواری هەموارکردن +'; +$lang['sortkey_o_pagename'] = 'ناوی پەڕە +'; +$lang['sortkey_o_id'] = 'ناسنامەی پەڕە +'; +$lang['sortkey_o_title'] = 'ناونیشان +'; +$lang['sortorder'] = 'ڕیزکردن لە ریزبەند +'; +$lang['sortorder_o_ascending'] = 'بەرەو سەرەوە +'; +$lang['sortorder_o_descending'] = 'descending'; +$lang['excluded_pages'] = 'دەرکردنی هەندێک لاپەڕە لە لیستی بلۆگ (دەربڕینی ئاسایی پێویستە) +'; +$lang['showhistogram'] = 'پیشاندانی هێڵکاری لەسەر نمایشی ئەرشیف +'; +$lang['max_months'] = 'زۆرینەی مانگ بۆ ئەوەی لە هیستوگرامەکە نیشان بدا + +'; +$lang['histogram_height'] = '(بەرزی هیتۆگرام (بە پیکسڵ + +'; diff --git a/platform/www/lib/plugins/blog/lang/cs/lang.php b/platform/www/lib/plugins/blog/lang/cs/lang.php new file mode 100644 index 0000000..07af210 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/cs/lang.php @@ -0,0 +1,25 @@ + + * @author Vojta Olsan + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Starší zápisky'; +$lang['newer'] = 'Novější zápisky'; +$lang['newentry'] = 'Nový zápisek:'; +$lang['month_01'] = 'leden'; +$lang['month_02'] = 'únor'; +$lang['month_03'] = 'březen'; +$lang['month_04'] = 'duben'; +$lang['month_05'] = 'květen'; +$lang['month_06'] = 'červen'; +$lang['month_07'] = 'červenec'; +$lang['month_08'] = 'srpen'; +$lang['month_09'] = 'září'; +$lang['month_10'] = 'říjen'; +$lang['month_11'] = 'listopad'; +$lang['month_12'] = 'prosinec'; +$lang['archive_title'] = 'Historie blogu'; diff --git a/platform/www/lib/plugins/blog/lang/cs/settings.php b/platform/www/lib/plugins/blog/lang/cs/settings.php new file mode 100644 index 0000000..f27b53f --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/cs/settings.php @@ -0,0 +1,25 @@ + + * @author Vojta Olsan + */ +$lang['namespace'] = 'implicitní jmenný prostor pro blog'; +$lang['formposition'] = 'pozice pole pro zadání nového příspěvku'; +$lang['formposition_o_top'] = 'nahoře'; +$lang['formposition_o_bottom'] = 'dole'; +$lang['formposition_o_none'] = 'žádný'; +$lang['dateprefix'] = 'přidat datumový prefix novým příspěvkům'; +$lang['sortkey'] = 'razení zápisků podle'; +$lang['sortkey_o_cdate'] = 'data vytvoření'; +$lang['sortkey_o_mdate'] = 'data modifikace'; +$lang['sortkey_o_pagename'] = 'názvu stránky'; +$lang['sortkey_o_id'] = 'ID stránky'; +$lang['sortkey_o_title'] = 'název'; +$lang['sortorder'] = 'pořadí'; +$lang['sortorder_o_ascending'] = 'vzestupné'; +$lang['sortorder_o_descending'] = 'sestupné'; +$lang['max_months'] = 'Maximální počet měsíců zobrazených v histogramu'; +$lang['histogram_height'] = 'Výška histogramu (v pixelech)'; diff --git a/platform/www/lib/plugins/blog/lang/da/lang.php b/platform/www/lib/plugins/blog/lang/da/lang.php new file mode 100644 index 0000000..c07c90e --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/da/lang.php @@ -0,0 +1,31 @@ + + * @author Soren Birk + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Ældre indlæg'; +$lang['newer'] = 'Nyere indlæg'; +$lang['newentry'] = 'Nyt indlæg:'; +$lang['missing_includeplugin'] = 'Include plugin skal være installeret for at bloggen virker.'; +$lang['missing_pagelistplugin'] = 'Pagelist plugin skal være installeret for at arkivlister virker.'; +$lang['missing_tagplugin'] = 'Tag plugin skal være installeret for at benytte denne funktion.'; +$lang['autoarchive'] = '%1$d indlæg i %2$s %3$s'; +$lang['month_01'] = 'januar'; +$lang['month_02'] = 'februar'; +$lang['month_03'] = 'marts'; +$lang['month_04'] = 'april'; +$lang['month_05'] = 'maj'; +$lang['month_06'] = 'juni'; +$lang['month_07'] = 'juli'; +$lang['month_08'] = 'august'; +$lang['month_09'] = 'september'; +$lang['month_10'] = 'oktober'; +$lang['month_11'] = 'november'; +$lang['month_12'] = 'december'; +$lang['entries'] = 'indlæg'; +$lang['entry'] = 'indlæg'; +$lang['archive_title'] = 'Blog Arkiv'; diff --git a/platform/www/lib/plugins/blog/lang/da/settings.php b/platform/www/lib/plugins/blog/lang/da/settings.php new file mode 100644 index 0000000..035964a --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/da/settings.php @@ -0,0 +1,29 @@ + + * @author Esther Brunner + * @author Soren Birk + */ +$lang['namespace'] = 'standard navnerum til blog'; +$lang['formposition'] = 'position af formular til nyt indlæg'; +$lang['formposition_o_top'] = 'top'; +$lang['formposition_o_bottom'] = 'bund'; +$lang['formposition_o_none'] = 'intet'; +$lang['newentrytitle'] = 'title på den nye indlægs formular'; +$lang['dateprefix'] = 'foruddefineret dato for nye indlæg IDs'; +$lang['sortkey'] = 'sortér blog indlæg efter'; +$lang['sortkey_o_cdate'] = 'dato for oprettelse'; +$lang['sortkey_o_mdate'] = 'dato for seneste ændring'; +$lang['sortkey_o_pagename'] = 'sidenavn'; +$lang['sortkey_o_id'] = 'side id'; +$lang['sortkey_o_title'] = 'titel'; +$lang['sortorder'] = 'sorteringsrækkefølge'; +$lang['sortorder_o_ascending'] = 'stigende'; +$lang['sortorder_o_descending'] = 'faldende'; +$lang['excluded_pages'] = 'Udeluk bestemte sider fra blog listen (kræver regulært udtryk)'; +$lang['showhistogram'] = 'Vis histogram på arkiv rendering'; +$lang['max_months'] = 'Maksimum antal måneder for visning i histogram'; +$lang['histogram_height'] = 'Histogram højde (i pixel)'; diff --git a/platform/www/lib/plugins/blog/lang/de-informal/lang.php b/platform/www/lib/plugins/blog/lang/de-informal/lang.php new file mode 100644 index 0000000..f4602ee --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/de-informal/lang.php @@ -0,0 +1,31 @@ + + * @author Michael Hamann + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Ältere Einträge'; +$lang['newer'] = 'Neuere Einträge'; +$lang['newentry'] = 'Neuer Blogeintrag:'; +$lang['missing_includeplugin'] = 'Ohne das Include Plugin funktioniert das Blog nicht.'; +$lang['missing_pagelistplugin'] = 'Ohne das Pagelist Plugin funktionieren Archivlisten nicht.'; +$lang['missing_tagplugin'] = 'Um Tag-Verfeinerungen zu verwenden, muss das Tag Plugin installiert sein.'; +$lang['autoarchive'] = '%1$d Beiträge für den %2$s %3$s'; +$lang['month_01'] = 'Januar'; +$lang['month_02'] = 'Februar'; +$lang['month_03'] = 'März'; +$lang['month_04'] = 'April'; +$lang['month_05'] = 'Mai'; +$lang['month_06'] = 'Juni'; +$lang['month_07'] = 'Juli'; +$lang['month_08'] = 'August'; +$lang['month_09'] = 'September'; +$lang['month_10'] = 'Oktober'; +$lang['month_11'] = 'November'; +$lang['month_12'] = 'Dezember'; +$lang['entries'] = 'Einträge'; +$lang['entry'] = 'Eintrag'; +$lang['archive_title'] = 'Blog-Archiv'; diff --git a/platform/www/lib/plugins/blog/lang/de-informal/settings.php b/platform/www/lib/plugins/blog/lang/de-informal/settings.php new file mode 100644 index 0000000..c8d396a --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/de-informal/settings.php @@ -0,0 +1,29 @@ + + * @author Michael Hamann + * @author Dominik Eckelmann + */ +$lang['namespace'] = 'Standard-Namensraum für Blog'; +$lang['formposition'] = 'Position des Formulars für neue Blogeinträge'; +$lang['formposition_o_top'] = 'oben'; +$lang['formposition_o_bottom'] = 'unten'; +$lang['formposition_o_none'] = 'Keine'; +$lang['newentrytitle'] = 'Titel des Formulars um neue Einträge anzulegen'; +$lang['dateprefix'] = 'Datum den IDs neuer Seiten voranstellen'; +$lang['sortkey'] = 'Blogeinträge sortieren nach:'; +$lang['sortkey_o_cdate'] = 'Erstellungsdatum'; +$lang['sortkey_o_mdate'] = 'Änderungsdatum'; +$lang['sortkey_o_pagename'] = 'Seitenname'; +$lang['sortkey_o_id'] = 'Seiten-ID'; +$lang['sortkey_o_title'] = 'Titel'; +$lang['sortorder'] = 'Sortierrichtung'; +$lang['sortorder_o_ascending'] = 'aufsteigend'; +$lang['sortorder_o_descending'] = 'absteigend'; +$lang['excluded_pages'] = 'Seiten von den Blog-Auflistungen ausschließen (regulärer Ausdruck)'; +$lang['showhistogram'] = 'Ein Histogramm auf den Archiv-Seiten anzeigen'; +$lang['max_months'] = 'Maximale Anzahl an Monaten die im Histogramm angezeigt werden sollen'; +$lang['histogram_height'] = 'Höhe des Histogramms (in Pixeln)'; diff --git a/platform/www/lib/plugins/blog/lang/de/lang.php b/platform/www/lib/plugins/blog/lang/de/lang.php new file mode 100644 index 0000000..f4602ee --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/de/lang.php @@ -0,0 +1,31 @@ + + * @author Michael Hamann + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Ältere Einträge'; +$lang['newer'] = 'Neuere Einträge'; +$lang['newentry'] = 'Neuer Blogeintrag:'; +$lang['missing_includeplugin'] = 'Ohne das Include Plugin funktioniert das Blog nicht.'; +$lang['missing_pagelistplugin'] = 'Ohne das Pagelist Plugin funktionieren Archivlisten nicht.'; +$lang['missing_tagplugin'] = 'Um Tag-Verfeinerungen zu verwenden, muss das Tag Plugin installiert sein.'; +$lang['autoarchive'] = '%1$d Beiträge für den %2$s %3$s'; +$lang['month_01'] = 'Januar'; +$lang['month_02'] = 'Februar'; +$lang['month_03'] = 'März'; +$lang['month_04'] = 'April'; +$lang['month_05'] = 'Mai'; +$lang['month_06'] = 'Juni'; +$lang['month_07'] = 'Juli'; +$lang['month_08'] = 'August'; +$lang['month_09'] = 'September'; +$lang['month_10'] = 'Oktober'; +$lang['month_11'] = 'November'; +$lang['month_12'] = 'Dezember'; +$lang['entries'] = 'Einträge'; +$lang['entry'] = 'Eintrag'; +$lang['archive_title'] = 'Blog-Archiv'; diff --git a/platform/www/lib/plugins/blog/lang/de/settings.php b/platform/www/lib/plugins/blog/lang/de/settings.php new file mode 100644 index 0000000..c8d396a --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/de/settings.php @@ -0,0 +1,29 @@ + + * @author Michael Hamann + * @author Dominik Eckelmann + */ +$lang['namespace'] = 'Standard-Namensraum für Blog'; +$lang['formposition'] = 'Position des Formulars für neue Blogeinträge'; +$lang['formposition_o_top'] = 'oben'; +$lang['formposition_o_bottom'] = 'unten'; +$lang['formposition_o_none'] = 'Keine'; +$lang['newentrytitle'] = 'Titel des Formulars um neue Einträge anzulegen'; +$lang['dateprefix'] = 'Datum den IDs neuer Seiten voranstellen'; +$lang['sortkey'] = 'Blogeinträge sortieren nach:'; +$lang['sortkey_o_cdate'] = 'Erstellungsdatum'; +$lang['sortkey_o_mdate'] = 'Änderungsdatum'; +$lang['sortkey_o_pagename'] = 'Seitenname'; +$lang['sortkey_o_id'] = 'Seiten-ID'; +$lang['sortkey_o_title'] = 'Titel'; +$lang['sortorder'] = 'Sortierrichtung'; +$lang['sortorder_o_ascending'] = 'aufsteigend'; +$lang['sortorder_o_descending'] = 'absteigend'; +$lang['excluded_pages'] = 'Seiten von den Blog-Auflistungen ausschließen (regulärer Ausdruck)'; +$lang['showhistogram'] = 'Ein Histogramm auf den Archiv-Seiten anzeigen'; +$lang['max_months'] = 'Maximale Anzahl an Monaten die im Histogramm angezeigt werden sollen'; +$lang['histogram_height'] = 'Höhe des Histogramms (in Pixeln)'; diff --git a/platform/www/lib/plugins/blog/lang/en/lang.php b/platform/www/lib/plugins/blog/lang/en/lang.php new file mode 100644 index 0000000..c3f63ee --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/en/lang.php @@ -0,0 +1,36 @@ + + */ + +// custom language strings for the plugin +$lang['blog'] = 'Blog'; +$lang['older'] = 'Older entries'; +$lang['newer'] = 'Newer entries'; +$lang['newentry'] = 'New blog entry:'; + +$lang['missing_includeplugin'] = 'The Include Plugin must be installed for the blog to work.'; +$lang['missing_pagelistplugin'] = 'The Pagelist Plugin must be installed for archive lists to work.'; +$lang['missing_tagplugin'] = 'The Tag Plugin must be installed to use tag refinements.'; + +$lang['autoarchive'] = '%1$d Post(s) for %2$s %3$s'; +$lang['month_01'] = 'January'; +$lang['month_02'] = 'February'; +$lang['month_03'] = 'March'; +$lang['month_04'] = 'April'; +$lang['month_05'] = 'May'; +$lang['month_06'] = 'June'; +$lang['month_07'] = 'July'; +$lang['month_08'] = 'August'; +$lang['month_09'] = 'September'; +$lang['month_10'] = 'October'; +$lang['month_11'] = 'November'; +$lang['month_12'] = 'December'; + +$lang['entries'] = 'entries'; +$lang['entry'] = 'entry'; +$lang['archive_title'] = 'Blog History'; +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/en/settings.php b/platform/www/lib/plugins/blog/lang/en/settings.php new file mode 100644 index 0000000..a112896 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/en/settings.php @@ -0,0 +1,38 @@ + + */ + +// for the configuration manager +$lang['namespace'] = 'default namespace for blog'; + +$lang['formposition'] = 'position of the new entry form'; +$lang['formposition_o_top'] = 'top'; +$lang['formposition_o_bottom'] = 'bottom'; +$lang['formposition_o_none'] = 'none'; + +$lang['newentrytitle'] = 'title of the new entry form'; + +$lang['dateprefix'] = 'prefix date to new entry IDs'; + +$lang['sortkey'] = 'sort blog entries by'; +$lang['sortkey_o_cdate'] = 'creation date'; +$lang['sortkey_o_mdate'] = 'modification date'; +$lang['sortkey_o_pagename'] = 'page name'; +$lang['sortkey_o_id'] = 'page ID'; +$lang['sortkey_o_title'] = 'title'; + +$lang['sortorder'] = 'sort order'; +$lang['sortorder_o_ascending'] = 'ascending'; +$lang['sortorder_o_descending'] = 'descending'; + +$lang['excluded_pages'] = 'exclude certain pages from blog listing (regular expression required)'; + +$lang['showhistogram'] = 'Display histogram on archive rendering'; +$lang['max_months'] = 'Max months to show in the histogram'; +$lang['histogram_height'] = 'Height of the histogram (in pixels)'; + +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/lang/eo/lang.php b/platform/www/lib/plugins/blog/lang/eo/lang.php new file mode 100644 index 0000000..5af3c5d --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/eo/lang.php @@ -0,0 +1,31 @@ + + * @author Robert Bogenschneider + */ +$lang['blog'] = 'Blogo'; +$lang['older'] = 'Pli malnovaj enskriboj'; +$lang['newer'] = 'Pli novaj enskriboj'; +$lang['newentry'] = 'Nova blog-enskribo:'; +$lang['missing_includeplugin'] = 'La "Include"-kromaĵo devas esti instalita por uzi la blogon.'; +$lang['missing_pagelistplugin'] = 'La "Pagelist"-kromaĵo devas esti instalita por uzi arkivlistojn.'; +$lang['missing_tagplugin'] = 'La "Tag"-kromaĵo devas esti instalita por ŝanĝi etikedojn.'; +$lang['autoarchive'] = '%1$d Enskribo(j) por %2$s %3$s'; +$lang['month_01'] = 'Januaro'; +$lang['month_02'] = 'Februaro'; +$lang['month_03'] = 'Marto'; +$lang['month_04'] = 'Aprilo'; +$lang['month_05'] = 'Majo'; +$lang['month_06'] = 'Junio'; +$lang['month_07'] = 'Julio'; +$lang['month_08'] = 'Aŭgusto'; +$lang['month_09'] = 'Septembro'; +$lang['month_10'] = 'Oktobro'; +$lang['month_11'] = 'Novembro'; +$lang['month_12'] = 'Decembro'; +$lang['entries'] = 'enskriboj'; +$lang['entry'] = 'enskribo'; +$lang['archive_title'] = 'Blog-historio'; diff --git a/platform/www/lib/plugins/blog/lang/eo/settings.php b/platform/www/lib/plugins/blog/lang/eo/settings.php new file mode 100644 index 0000000..baee492 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/eo/settings.php @@ -0,0 +1,28 @@ + + * @author Robert Bogenschneider + */ +$lang['namespace'] = 'defaŭlta nomspaco por la blogo'; +$lang['formposition'] = 'pozicio de formularo de nova blog-enskribo'; +$lang['formposition_o_top'] = 'supro'; +$lang['formposition_o_bottom'] = 'malsupro'; +$lang['formposition_o_none'] = 'neniu'; +$lang['newentrytitle'] = 'Titolo de nova enmet-formularo'; +$lang['dateprefix'] = 'prefikso al novaj enskrib-ID-oj'; +$lang['sortkey'] = 'ordigi blog-enskriboj laŭ'; +$lang['sortkey_o_cdate'] = 'kreodato'; +$lang['sortkey_o_mdate'] = 'modifodato'; +$lang['sortkey_o_pagename'] = 'paĝ-nomo'; +$lang['sortkey_o_id'] = 'paĝ-identigilo'; +$lang['sortkey_o_title'] = 'titolo'; +$lang['sortorder'] = 'ordiga ordo'; +$lang['sortorder_o_ascending'] = 'kreskante'; +$lang['sortorder_o_descending'] = 'malkreskante'; +$lang['excluded_pages'] = 'ekskludi certajn paĝojn de bloglistado (per regula esprimo)'; +$lang['showhistogram'] = 'Montri histogramon de arkivado'; +$lang['max_months'] = 'Montri maksimume tiom da monatoj en la histogramo'; +$lang['histogram_height'] = 'Alteco de la histogramo (en pikseloj)'; diff --git a/platform/www/lib/plugins/blog/lang/es/lang.php b/platform/www/lib/plugins/blog/lang/es/lang.php new file mode 100644 index 0000000..68ef65a --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/es/lang.php @@ -0,0 +1,30 @@ + + * @author r0sk + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Entradas anteriores'; +$lang['newer'] = 'Entradas nuevas'; +$lang['newentry'] = 'Nueva entrada en el blog:'; +$lang['missing_includeplugin'] = 'El plugin Include debe estar instalado para que el blog funcione.'; +$lang['missing_pagelistplugin'] = 'El plugin Pagelist debe estar instalado para que funcionen los listados de archivo.'; +$lang['missing_tagplugin'] = 'El plugin Tag debe estar instalado para que funcionen los tags.'; +$lang['month_01'] = 'Enero'; +$lang['month_02'] = 'Febrero'; +$lang['month_03'] = 'Marzo'; +$lang['month_04'] = 'Abril'; +$lang['month_05'] = 'Mayo'; +$lang['month_06'] = 'Junio'; +$lang['month_07'] = 'Julio'; +$lang['month_08'] = 'Agosto'; +$lang['month_09'] = 'Septiembre'; +$lang['month_10'] = 'Octubre'; +$lang['month_11'] = 'Noviembre'; +$lang['month_12'] = 'Diciembre'; +$lang['entries'] = 'entradas'; +$lang['entry'] = 'entrada'; +$lang['archive_title'] = 'Histórico'; diff --git a/platform/www/lib/plugins/blog/lang/es/settings.php b/platform/www/lib/plugins/blog/lang/es/settings.php new file mode 100644 index 0000000..d86f15a --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/es/settings.php @@ -0,0 +1,23 @@ + + * @author r0sk + */ +$lang['namespace'] = 'namespace predeterminado para el blog'; +$lang['formposition'] = 'posición del formulario de nueva entrada'; +$lang['formposition_o_top'] = 'arriba'; +$lang['formposition_o_bottom'] = 'abajo'; +$lang['formposition_o_none'] = 'ninguna'; +$lang['newentrytitle'] = 'título del formulario de nueva entrada'; +$lang['sortkey'] = 'ordenar entradas por'; +$lang['sortkey_o_cdate'] = 'fecha de creación'; +$lang['sortkey_o_mdate'] = 'fecha de modificación'; +$lang['sortkey_o_pagename'] = 'nombre de página'; +$lang['sortkey_o_id'] = 'ID de página'; +$lang['sortkey_o_title'] = 'título'; +$lang['sortorder'] = 'ordenamiento'; +$lang['sortorder_o_ascending'] = 'ascendente'; +$lang['sortorder_o_descending'] = 'descendente'; diff --git a/platform/www/lib/plugins/blog/lang/fa/lang.php b/platform/www/lib/plugins/blog/lang/fa/lang.php new file mode 100644 index 0000000..ca6b600 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/fa/lang.php @@ -0,0 +1,30 @@ + + */ +$lang['blog'] = 'وبلاگ'; +$lang['older'] = 'نوشته‌های قدیمی‌تر'; +$lang['newer'] = 'نوشته‌های جدیدتر'; +$lang['newentry'] = 'ثبت وبلاگ جدید:'; +$lang['missing_includeplugin'] = 'برای کارکردن وبلاگ نیاز به نصب پلاگین است.'; +$lang['missing_pagelistplugin'] = 'پلاگینPagelist باید برای آرشیوبندی نصب شود.'; +$lang['missing_tagplugin'] = 'پلاگین برچسب باید نصب شود تا اصطلاحات آن استفاده شود.'; +$lang['autoarchive'] = '%1$d مطلب (s) برای %2$s %3$s'; +$lang['month_01'] = 'ژانویه'; +$lang['month_02'] = 'فوریه'; +$lang['month_03'] = 'مارس'; +$lang['month_04'] = 'آوریل'; +$lang['month_05'] = 'می'; +$lang['month_06'] = 'ژوئن'; +$lang['month_07'] = 'جولای'; +$lang['month_08'] = 'اوت'; +$lang['month_09'] = 'سپتامبر'; +$lang['month_10'] = 'اکتبر'; +$lang['month_11'] = 'نوامبر'; +$lang['month_12'] = 'دسامبر'; +$lang['entries'] = 'ورودی‌ها'; +$lang['entry'] = 'ورودی'; +$lang['archive_title'] = 'تاریخچه وبلاگ'; diff --git a/platform/www/lib/plugins/blog/lang/fa/settings.php b/platform/www/lib/plugins/blog/lang/fa/settings.php new file mode 100644 index 0000000..4c72e67 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/fa/settings.php @@ -0,0 +1,27 @@ + + */ +$lang['namespace'] = 'فضای نام پیش‌فرض برای وبلاگ'; +$lang['formposition'] = 'موقعیت فرم جدید وارد شده'; +$lang['formposition_o_top'] = 'بالا'; +$lang['formposition_o_bottom'] = 'پایین'; +$lang['formposition_o_none'] = 'هیچ'; +$lang['newentrytitle'] = 'عنوان فرم جدید وارد شده'; +$lang['dateprefix'] = 'تاریخ پیشوند آیدی‌های ورودی‌های جدید'; +$lang['sortkey'] = 'مرتب سازی مطالب وبلاگ براساس'; +$lang['sortkey_o_cdate'] = 'تاریخ ایجاد'; +$lang['sortkey_o_mdate'] = 'تاریخ اصلاح'; +$lang['sortkey_o_pagename'] = 'نام صفحه'; +$lang['sortkey_o_id'] = 'آیدی صفحه'; +$lang['sortkey_o_title'] = 'عنوان'; +$lang['sortorder'] = 'مرتب سازی سفارشی'; +$lang['sortorder_o_ascending'] = 'صعودی'; +$lang['sortorder_o_descending'] = 'نزولی'; +$lang['excluded_pages'] = 'به غیر از صفحه‌های خاص از لیست وبلاگ (عبارت منظم مورد نیاز است)'; +$lang['showhistogram'] = 'نمایش بافت‌نگار در تفسیر آرشیو'; +$lang['max_months'] = 'حداکثر ماه‌ها برای نمایش بافت‌نگار'; +$lang['histogram_height'] = 'ارتفاع بافت‌نگار (به پیکسل)'; diff --git a/platform/www/lib/plugins/blog/lang/fr/lang.php b/platform/www/lib/plugins/blog/lang/fr/lang.php new file mode 100644 index 0000000..c786d5f --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/fr/lang.php @@ -0,0 +1,32 @@ + + * @author Stanislas Reltgen + * @author Florent Chabaud + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Anciens billets'; +$lang['newer'] = 'Billets récents'; +$lang['newentry'] = 'Nouveau billet :'; +$lang['missing_includeplugin'] = 'Le module "include" doit être installé pour que le module "blog" puisse fonctionner.'; +$lang['missing_pagelistplugin'] = 'Le module "pagelist" doit être installé pour que les archives puissent fonctionner.'; +$lang['missing_tagplugin'] = 'Le module "tag" doit être installé pour pouvoir en bénéficier dans le module "blog".'; +$lang['autoarchive'] = '%1$d billet(s) pour %2$s %3$s'; +$lang['month_01'] = 'janvier'; +$lang['month_02'] = 'février'; +$lang['month_03'] = 'mars'; +$lang['month_04'] = 'avril'; +$lang['month_05'] = 'mai'; +$lang['month_06'] = 'juin'; +$lang['month_07'] = 'juillet'; +$lang['month_08'] = 'août'; +$lang['month_09'] = 'septembre'; +$lang['month_10'] = 'octobre'; +$lang['month_11'] = 'novembre'; +$lang['month_12'] = 'décembre'; +$lang['entries'] = 'billets'; +$lang['entry'] = 'billet'; +$lang['archive_title'] = 'Historique du blog'; diff --git a/platform/www/lib/plugins/blog/lang/fr/settings.php b/platform/www/lib/plugins/blog/lang/fr/settings.php new file mode 100644 index 0000000..21902e6 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/fr/settings.php @@ -0,0 +1,29 @@ + + * @author Florent Chabaud + * @author Nicolas Friedli + */ +$lang['namespace'] = 'espace de nom par défaut pour le blog'; +$lang['formposition'] = 'position du formulaire de saisie de nouveau billet'; +$lang['formposition_o_top'] = 'haut'; +$lang['formposition_o_bottom'] = 'bas'; +$lang['formposition_o_none'] = 'aucun'; +$lang['newentrytitle'] = 'titre de la nouvelle entrée de formulaire'; +$lang['dateprefix'] = 'date préfixant les IDs des nouveaux billets'; +$lang['sortkey'] = 'trier les billets du blog par:'; +$lang['sortkey_o_cdate'] = 'date de création'; +$lang['sortkey_o_mdate'] = 'date de modification'; +$lang['sortkey_o_pagename'] = 'nom de la page'; +$lang['sortkey_o_id'] = 'ID de la page'; +$lang['sortkey_o_title'] = 'titre'; +$lang['sortorder'] = 'ordre de tri'; +$lang['sortorder_o_ascending'] = 'croissant'; +$lang['sortorder_o_descending'] = 'décroissant'; +$lang['excluded_pages'] = 'exclure certaines pages des archives du blog (expression régulière requise)'; +$lang['showhistogram'] = 'Afficher l\'histogramme du rendu des archives'; +$lang['max_months'] = 'Nombre maximal de mois à représenter dans l\'histogramme'; +$lang['histogram_height'] = 'Hauteur de l\'histogramme (en pixels)'; diff --git a/platform/www/lib/plugins/blog/lang/hu/lang.php b/platform/www/lib/plugins/blog/lang/hu/lang.php new file mode 100644 index 0000000..85f47c4 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/hu/lang.php @@ -0,0 +1,32 @@ + + * @author Serenity87HUN + * @author Marina Vladi + */ +$lang['blog'] = 'Napló'; +$lang['older'] = 'régi bejegyzések'; +$lang['newer'] = 'új bejegyzések'; +$lang['newentry'] = 'Új bejegyzés:'; +$lang['missing_includeplugin'] = 'Az \'Include Plugin\'-t telepítenünk kell a napló (blog) működéséhez.'; +$lang['missing_pagelistplugin'] = 'A \'Pagelist Plugin\'-t telepítenünk kell az archiválási listák működéséhez.'; +$lang['missing_tagplugin'] = 'A \'Tag Plugin\'-t telepítenünk kell a címkék használatához.'; +$lang['autoarchive'] = '%1$d hozzászólás ehhez: %2$s %3$s'; +$lang['month_01'] = 'Január'; +$lang['month_02'] = 'Február'; +$lang['month_03'] = 'Március'; +$lang['month_04'] = 'Április'; +$lang['month_05'] = 'Május'; +$lang['month_06'] = 'Június'; +$lang['month_07'] = 'Július'; +$lang['month_08'] = 'Augusztus'; +$lang['month_09'] = 'Szeptember'; +$lang['month_10'] = 'Október'; +$lang['month_11'] = 'November'; +$lang['month_12'] = 'December'; +$lang['entries'] = 'bejegyzés'; +$lang['entry'] = 'bejegyzés'; +$lang['archive_title'] = 'Naplótörténet'; diff --git a/platform/www/lib/plugins/blog/lang/hu/settings.php b/platform/www/lib/plugins/blog/lang/hu/settings.php new file mode 100644 index 0000000..01a0aff --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/hu/settings.php @@ -0,0 +1,29 @@ + + * @author Serenity87HUN + * @author Marina Vladi + */ +$lang['namespace'] = 'napló alapértelmezett névtere'; +$lang['formposition'] = 'új bejegyzés űrlapjának helye'; +$lang['formposition_o_top'] = 'felül'; +$lang['formposition_o_bottom'] = 'alul'; +$lang['formposition_o_none'] = 'sehol'; +$lang['newentrytitle'] = 'új bejegyzés űrlapcíme'; +$lang['dateprefix'] = 'Dátumelőtag új bejegyzések ID-jéhez'; +$lang['sortkey'] = 'naplóbejegyzések rendezése eszerint'; +$lang['sortkey_o_cdate'] = 'készítés dátuma'; +$lang['sortkey_o_mdate'] = 'módosítás dátuma'; +$lang['sortkey_o_pagename'] = 'oldalnév'; +$lang['sortkey_o_id'] = 'oldalazonosító'; +$lang['sortkey_o_title'] = 'cím'; +$lang['sortorder'] = 'rendezés iránya'; +$lang['sortorder_o_ascending'] = 'növekvő'; +$lang['sortorder_o_descending'] = 'csökkenő'; +$lang['excluded_pages'] = 'bizonyos oldalak kihagyása a blog listázása esetén (regurális kifejezés használata szükséges)'; +$lang['showhistogram'] = 'Grafikon megjelenítése archiváláskor'; +$lang['max_months'] = 'Grafikonon megjelenítendő hónapok max. száma'; +$lang['histogram_height'] = 'Grafikon magassága (pixelben)'; diff --git a/platform/www/lib/plugins/blog/lang/it/lang.php b/platform/www/lib/plugins/blog/lang/it/lang.php new file mode 100644 index 0000000..874253c --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/it/lang.php @@ -0,0 +1,36 @@ + + */ + +// custom language strings for the plugin +$lang['older'] = 'Articoli meno recenti'; +$lang['newer'] = 'Articoli più recent'; +$lang['newentry'] = 'Nuovo articolo:'; + +$lang['missing_includeplugin'] = 'Questo blog non funziona senza il plugin Include.'; +$lang['missing_pagelistplugin'] = 'Questo blog non funziona senza il plugin Pagelist.'; +$lang['missing_tagplugin'] = 'Per utilizare i tag è ncessario installare il Plugin Tag.'; + +$lang['autoarchive'] = '%1$d Articoli del %2$s %3$s'; +$lang['month_01'] = 'Gennaio'; +$lang['month_02'] = 'Febbraio'; +$lang['month_03'] = 'Marzo'; +$lang['month_04'] = 'Aprile'; +$lang['month_05'] = 'Maggio'; +$lang['month_06'] = 'Giugno'; +$lang['month_07'] = 'Luglio'; +$lang['month_08'] = 'Agosto'; +$lang['month_09'] = 'Settembre'; +$lang['month_10'] = 'Ottobre'; +$lang['month_11'] = 'Novembre'; +$lang['month_12'] = 'Dicembre'; + +$lang['entries'] = 'Voci'; +$lang['entry'] = 'Voce'; +$lang['archive_title'] = 'Archivio Blog'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/it/settings.php b/platform/www/lib/plugins/blog/lang/it/settings.php new file mode 100644 index 0000000..7026236 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/it/settings.php @@ -0,0 +1,12 @@ + + */ + +// for the configuration manager +$lang['namespace'] = 'Namespace predefinito per il blog'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/ja/lang.php b/platform/www/lib/plugins/blog/lang/ja/lang.php new file mode 100644 index 0000000..51ec982 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ja/lang.php @@ -0,0 +1,30 @@ + + */ +$lang['blog'] = 'ブログ'; +$lang['older'] = '古い記事'; +$lang['newer'] = '新しい記事'; +$lang['newentry'] = '新しい記事の投稿:'; +$lang['missing_includeplugin'] = 'blog 構文が動くために Include プラグインが必要'; +$lang['missing_pagelistplugin'] = 'archive 構文が動くために Pagelist プラグインが必要'; +$lang['missing_tagplugin'] = 'タグ機能を使用するために Tag プラグインが必要'; +$lang['autoarchive'] = '%3$s年%2$sの%1$d記事'; +$lang['month_01'] = '01月'; +$lang['month_02'] = '02月'; +$lang['month_03'] = '03月'; +$lang['month_04'] = '04月'; +$lang['month_05'] = '05月'; +$lang['month_06'] = '06月'; +$lang['month_07'] = '07月'; +$lang['month_08'] = '08月'; +$lang['month_09'] = '09月'; +$lang['month_10'] = '10月'; +$lang['month_11'] = '11月'; +$lang['month_12'] = '12月'; +$lang['entries'] = '記事'; +$lang['entry'] = '記事'; +$lang['archive_title'] = 'ブログ履歴'; diff --git a/platform/www/lib/plugins/blog/lang/ja/settings.php b/platform/www/lib/plugins/blog/lang/ja/settings.php new file mode 100644 index 0000000..b848358 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ja/settings.php @@ -0,0 +1,27 @@ + + */ +$lang['namespace'] = 'ブログ用のデフォルト名前空間'; +$lang['formposition'] = '新しい記事投稿用フォームの位置'; +$lang['formposition_o_top'] = '上部'; +$lang['formposition_o_bottom'] = '下部'; +$lang['formposition_o_none'] = '非表示'; +$lang['newentrytitle'] = '新しい記事投稿用フォームの題名'; +$lang['dateprefix'] = '新しい記事のページIDの先頭に付加する日付形式'; +$lang['sortkey'] = '記事のソート項目'; +$lang['sortkey_o_cdate'] = '作成日'; +$lang['sortkey_o_mdate'] = '変更日'; +$lang['sortkey_o_pagename'] = 'ページ名'; +$lang['sortkey_o_id'] = 'ページ ID'; +$lang['sortkey_o_title'] = 'タイトル'; +$lang['sortorder'] = 'ソート順'; +$lang['sortorder_o_ascending'] = '昇順'; +$lang['sortorder_o_descending'] = '降順'; +$lang['excluded_pages'] = '記事一覧から除外するページ(正規表現)'; +$lang['showhistogram'] = '記事一覧にヒストグラムを表示する'; +$lang['max_months'] = 'ヒストグラムに表示する最大月数'; +$lang['histogram_height'] = 'ヒストグラムの高さ(ピクセル)'; diff --git a/platform/www/lib/plugins/blog/lang/ko/lang.php b/platform/www/lib/plugins/blog/lang/ko/lang.php new file mode 100644 index 0000000..a97d074 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ko/lang.php @@ -0,0 +1,30 @@ + + */ +$lang['blog'] = '블로그'; +$lang['older'] = '오래된 항목'; +$lang['newer'] = '새 항목'; +$lang['newentry'] = '새 블로그 항목:'; +$lang['missing_includeplugin'] = 'Include 플러그인은 블로그가 작동하기 위해 설치되어야 합니다.'; +$lang['missing_pagelistplugin'] = 'Pagelist 플러그인은 보존 목록이 작동하기 위해 설치되어야 합니다.'; +$lang['missing_tagplugin'] = 'Tag 플러그인은 태그 분류를 사용하기 위해 설치되어야 합니다.'; +$lang['autoarchive'] = '%3$s년 %2$s의 게시물 %1$d개'; +$lang['month_01'] = '1월'; +$lang['month_02'] = '2월'; +$lang['month_03'] = '3월'; +$lang['month_04'] = '4월'; +$lang['month_05'] = '5월'; +$lang['month_06'] = '6월'; +$lang['month_07'] = '7월'; +$lang['month_08'] = '8월'; +$lang['month_09'] = '9월'; +$lang['month_10'] = '10월'; +$lang['month_11'] = '11월'; +$lang['month_12'] = '12월'; +$lang['entries'] = '항목'; +$lang['entry'] = '항목'; +$lang['archive_title'] = '블로그 역사'; diff --git a/platform/www/lib/plugins/blog/lang/ko/settings.php b/platform/www/lib/plugins/blog/lang/ko/settings.php new file mode 100644 index 0000000..fc20515 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ko/settings.php @@ -0,0 +1,27 @@ + + */ +$lang['namespace'] = '블로그에 대한 기본 이름공간'; +$lang['formposition'] = '새 항목 양식의 위치'; +$lang['formposition_o_top'] = '위'; +$lang['formposition_o_bottom'] = '아래'; +$lang['formposition_o_none'] = '없음'; +$lang['newentrytitle'] = '새 항목 양식의 제목'; +$lang['dateprefix'] = '새 항목 ID에 접두어 날짜'; +$lang['sortkey'] = '블로그 항목 순서로 정렬'; +$lang['sortkey_o_cdate'] = '만든 날짜'; +$lang['sortkey_o_mdate'] = '수정한 날짜'; +$lang['sortkey_o_pagename'] = '문서 이름'; +$lang['sortkey_o_id'] = '문서 ID'; +$lang['sortkey_o_title'] = '제목'; +$lang['sortorder'] = '정렬 순서'; +$lang['sortorder_o_ascending'] = '오름차순'; +$lang['sortorder_o_descending'] = '내림차순'; +$lang['excluded_pages'] = '블로그 목록에서 특정 문서를 제외 (정규 표현식 필요)'; +$lang['showhistogram'] = '보존 렌더링에 히스토그램 표시'; +$lang['max_months'] = '히스토그램에서 보여줄 최대 월'; +$lang['histogram_height'] = '히스토그램의 높이 (픽셀)'; diff --git a/platform/www/lib/plugins/blog/lang/nl/lang.php b/platform/www/lib/plugins/blog/lang/nl/lang.php new file mode 100644 index 0000000..da4a889 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/nl/lang.php @@ -0,0 +1,31 @@ + + * @author Mark Prins + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Oude berichten'; +$lang['newer'] = 'Nieuwe berichten'; +$lang['newentry'] = 'Nieuw bericht:'; +$lang['missing_includeplugin'] = 'De Include Plugin dient geïnstalleerd te zijn om de blog te laten werken.'; +$lang['missing_pagelistplugin'] = 'De Pagelist Plugin dient geïnstalleerd te zijn om archief lijsten te laten werken.'; +$lang['missing_tagplugin'] = 'De Tag Plugin dient geïnstalleerd te zijn om label filters te laten werken.'; +$lang['autoarchive'] = '%1$d artikel(en) voor %2$s %3$s'; +$lang['month_01'] = 'januari'; +$lang['month_02'] = 'februari'; +$lang['month_03'] = 'maart'; +$lang['month_04'] = 'april'; +$lang['month_05'] = 'mei'; +$lang['month_06'] = 'juni'; +$lang['month_07'] = 'juli'; +$lang['month_08'] = 'augustus'; +$lang['month_09'] = 'september'; +$lang['month_10'] = 'october'; +$lang['month_11'] = 'november'; +$lang['month_12'] = 'december'; +$lang['entries'] = 'berichten'; +$lang['entry'] = 'bericht'; +$lang['archive_title'] = 'Blog geschiedenis'; diff --git a/platform/www/lib/plugins/blog/lang/nl/settings.php b/platform/www/lib/plugins/blog/lang/nl/settings.php new file mode 100644 index 0000000..2431948 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/nl/settings.php @@ -0,0 +1,28 @@ + + * @author Mark Prins + */ +$lang['namespace'] = 'default namespace voor blog'; +$lang['formposition'] = 'positie van het nieuwe bericht formulier'; +$lang['formposition_o_top'] = 'boven'; +$lang['formposition_o_bottom'] = 'onder'; +$lang['formposition_o_none'] = 'geen'; +$lang['newentrytitle'] = 'titels van het nieuwe bericht formulier'; +$lang['dateprefix'] = 'datum prefix aan nieuwe bericht IDs toevoegen'; +$lang['sortkey'] = 'Sorteer blog berichten op'; +$lang['sortkey_o_cdate'] = 'aanmaak datum'; +$lang['sortkey_o_mdate'] = 'bewerkingsdatum'; +$lang['sortkey_o_pagename'] = 'pagina naam'; +$lang['sortkey_o_id'] = 'pagina ID'; +$lang['sortkey_o_title'] = 'titel'; +$lang['sortorder'] = 'sorteer volgorde'; +$lang['sortorder_o_ascending'] = 'oplopend'; +$lang['sortorder_o_descending'] = 'aflopend'; +$lang['excluded_pages'] = 'bepaalde pagina\'s uitsluiten van blog lijst (vereist reguliere expressie)'; +$lang['showhistogram'] = 'Histogram tonen in de archief weergave'; +$lang['max_months'] = 'Maximum aantal te tonen maanden in het histogram'; +$lang['histogram_height'] = 'Hoogte van het histogram (in pixels)'; diff --git a/platform/www/lib/plugins/blog/lang/pl/lang.php b/platform/www/lib/plugins/blog/lang/pl/lang.php new file mode 100644 index 0000000..3cdbeaf --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pl/lang.php @@ -0,0 +1,31 @@ + + * @author Radoslaw Gorniak + * @author Tomasz Dworakowski + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Wcześniejsze wpisy'; +$lang['newer'] = 'Nowsze wpisy'; +$lang['newentry'] = 'Nowy wpis'; +$lang['missing_includeplugin'] = 'Wtyczka Include musi być zainstalowana, aby blog mógł działać poprawnie.'; +$lang['missing_pagelistplugin'] = 'Wtyczka Pagelist musi być zainstalowana, aby archiwizacja mógła działać poprawnie.'; +$lang['missing_tagplugin'] = 'Wtyczka Tag Plugin musi być zainstalowana, aby móc używać tagów.'; +$lang['month_01'] = 'Styczeń'; +$lang['month_02'] = 'Luty'; +$lang['month_03'] = 'Marzec'; +$lang['month_04'] = 'Kwiecień'; +$lang['month_05'] = 'Maj'; +$lang['month_06'] = 'Czerwiec'; +$lang['month_07'] = 'Lipiec'; +$lang['month_08'] = 'Sierpień'; +$lang['month_09'] = 'Wrzesień'; +$lang['month_10'] = 'Październik'; +$lang['month_11'] = 'Listopad'; +$lang['month_12'] = 'Grudzień'; +$lang['entries'] = 'wyników'; +$lang['entry'] = 'wynik'; +$lang['archive_title'] = 'Historia bloga'; diff --git a/platform/www/lib/plugins/blog/lang/pl/settings.php b/platform/www/lib/plugins/blog/lang/pl/settings.php new file mode 100644 index 0000000..8890afa --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pl/settings.php @@ -0,0 +1,25 @@ + + * @author Radoslaw Gorniak + * @author Tomasz Dworakowski + */ +$lang['namespace'] = 'Domyślna przestrzeń nazw dla bloga'; +$lang['formposition'] = 'Pozycja formularza nowy wpis'; +$lang['formposition_o_top'] = 'góra'; +$lang['formposition_o_bottom'] = 'dół'; +$lang['formposition_o_none'] = 'brak'; +$lang['dateprefix'] = 'Dołącz datę do ID nowego wpisu (ciąg formatujący datę)'; +$lang['sortkey'] = 'Sortuj wpisy używając'; +$lang['sortkey_o_cdate'] = 'daty stworzenia'; +$lang['sortkey_o_mdate'] = 'daty modifikacji'; +$lang['sortkey_o_pagename'] = 'nazwy strony'; +$lang['sortkey_o_id'] = 'ID strony'; +$lang['sortkey_o_title'] = 'tytułu'; +$lang['sortorder'] = 'Kolejność sortowania'; +$lang['sortorder_o_ascending'] = 'rosnąca'; +$lang['sortorder_o_descending'] = 'malejąca'; +$lang['max_months'] = 'Maksymalna liczba miesięcy do pokazania w histogramie'; diff --git a/platform/www/lib/plugins/blog/lang/pt-br/lang.php b/platform/www/lib/plugins/blog/lang/pt-br/lang.php new file mode 100644 index 0000000..bd219ba --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pt-br/lang.php @@ -0,0 +1,30 @@ + + * @author Samory Pereira Santos + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'registros antigos'; +$lang['newer'] = 'registros mais novos'; +$lang['newentry'] = 'Novo registro do blog:'; +$lang['missing_includeplugin'] = 'O plugin Inlude deve estar instalado para que o blog funcione.'; +$lang['missing_pagelistplugin'] = 'O plugin Pagelist deve estar instalado para que a listagem de arquivo funcione,'; +$lang['missing_tagplugin'] = 'O plugin Tag deve estar instalado para usar refinamentos de etiquetagem.'; +$lang['month_01'] = 'Janeiro'; +$lang['month_02'] = 'Fevereiro'; +$lang['month_03'] = 'Março'; +$lang['month_04'] = 'Abril'; +$lang['month_05'] = 'Maio'; +$lang['month_06'] = 'Junho'; +$lang['month_07'] = 'Julho'; +$lang['month_08'] = 'Agosto'; +$lang['month_09'] = 'Setembro'; +$lang['month_10'] = 'Outubro'; +$lang['month_11'] = 'Novembro'; +$lang['month_12'] = 'Dezembro'; +$lang['entries'] = 'entradas'; +$lang['entry'] = 'entrada'; +$lang['archive_title'] = 'Histórico do Blog'; diff --git a/platform/www/lib/plugins/blog/lang/pt-br/settings.php b/platform/www/lib/plugins/blog/lang/pt-br/settings.php new file mode 100644 index 0000000..1346c22 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pt-br/settings.php @@ -0,0 +1,29 @@ + + * @author Flávio Roberto Santos + * @author Samory Pereira Santos + */ +$lang['namespace'] = 'namespace padrão para o blog'; +$lang['formposition'] = 'posição do novo formulário de inscrição'; +$lang['formposition_o_top'] = 'topo'; +$lang['formposition_o_bottom'] = 'final'; +$lang['formposition_o_none'] = 'nenhum'; +$lang['newentrytitle'] = 'título do novo formulário de inscrição'; +$lang['dateprefix'] = 'prefixo de data para novos IDs de entrada'; +$lang['sortkey'] = 'ordenar as entradas do blog por'; +$lang['sortkey_o_cdate'] = 'data de criação'; +$lang['sortkey_o_mdate'] = 'data de modificação'; +$lang['sortkey_o_pagename'] = 'nome da página'; +$lang['sortkey_o_id'] = 'ID da página'; +$lang['sortkey_o_title'] = 'título'; +$lang['sortorder'] = 'ordenação'; +$lang['sortorder_o_ascending'] = 'ascendente'; +$lang['sortorder_o_descending'] = 'descendente'; +$lang['excluded_pages'] = 'excluir determinadas páginas da listagem do blog (requer expressões regulares)'; +$lang['showhistogram'] = 'Exibir histograma na renderização de archive'; +$lang['max_months'] = 'Máximo de meses para mostrar no histograma'; +$lang['histogram_height'] = 'Altura do histograma (em pixels)'; diff --git a/platform/www/lib/plugins/blog/lang/pt/lang.php b/platform/www/lib/plugins/blog/lang/pt/lang.php new file mode 100644 index 0000000..2816f05 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pt/lang.php @@ -0,0 +1,31 @@ + + * @author Fernando Ribeiro + */ +$lang['blog'] = 'Blog'; +$lang['older'] = 'Entradas mais antigas'; +$lang['newer'] = 'Entradas mais recentes'; +$lang['newentry'] = 'Nova entrada do blog:'; +$lang['missing_includeplugin'] = 'O Plugin Include deve estar instalado para o blog funcionar.'; +$lang['missing_pagelistplugin'] = 'O Plugin Pagelist deve estar instalado para as listas do arquivo funcionarem.'; +$lang['missing_tagplugin'] = 'O Plugin Tag deve estar instalado para as etiquetas funcionarem.'; +$lang['autoarchive'] = '%1$d Artigo(s) para %2$s %3$s'; +$lang['month_01'] = 'Janeiro'; +$lang['month_02'] = 'Fevereiro'; +$lang['month_03'] = 'Março'; +$lang['month_04'] = 'Abril'; +$lang['month_05'] = 'Maio'; +$lang['month_06'] = 'Junho'; +$lang['month_07'] = 'Julho'; +$lang['month_08'] = 'Agosto'; +$lang['month_09'] = 'Setembro'; +$lang['month_10'] = 'Outubro'; +$lang['month_11'] = 'Novembro'; +$lang['month_12'] = 'Dezembro'; +$lang['entries'] = 'entradas'; +$lang['entry'] = 'entrada'; +$lang['archive_title'] = 'Histórico do Blog'; diff --git a/platform/www/lib/plugins/blog/lang/pt/settings.php b/platform/www/lib/plugins/blog/lang/pt/settings.php new file mode 100644 index 0000000..43720ae --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/pt/settings.php @@ -0,0 +1,28 @@ + + * @author Fernando Ribeiro + */ +$lang['namespace'] = 'default namespace for blog'; +$lang['formposition'] = 'posição do formulário de entrada nova'; +$lang['formposition_o_top'] = 'topo'; +$lang['formposition_o_bottom'] = 'fundo'; +$lang['formposition_o_none'] = 'nenhum'; +$lang['newentrytitle'] = 'título do formulário de entrada nova'; +$lang['dateprefix'] = 'prefixo do ID para a nova entrada'; +$lang['sortkey'] = 'ordenar entradas do blog por'; +$lang['sortkey_o_cdate'] = 'data de criação'; +$lang['sortkey_o_mdate'] = 'data de modificação'; +$lang['sortkey_o_pagename'] = 'nome da página'; +$lang['sortkey_o_id'] = 'ID da página'; +$lang['sortkey_o_title'] = 'título'; +$lang['sortorder'] = 'ordenação'; +$lang['sortorder_o_ascending'] = 'ascendente'; +$lang['sortorder_o_descending'] = 'descendente'; +$lang['excluded_pages'] = 'excluir determinadas páginas da listagem do blog (requer expressão regular)'; +$lang['showhistogram'] = 'Mostrar histograma na representação do arquivo'; +$lang['max_months'] = 'Nº máximo de meses para mostrar no histograma'; +$lang['histogram_height'] = 'Altura do histograma (em pixels)'; diff --git a/platform/www/lib/plugins/blog/lang/ro/lang.php b/platform/www/lib/plugins/blog/lang/ro/lang.php new file mode 100644 index 0000000..5a216db --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ro/lang.php @@ -0,0 +1,32 @@ + + * @author Florin Chitiul + */ +// custom language strings for the plugin +$lang['blog'] = 'Blog'; +$lang['older'] = 'Intrări vechi'; +$lang['newer'] = 'Intrări mai noi'; +$lang['newentry'] = 'Postare nouă:'; +$lang['missing_includeplugin'] = 'Plugin-ul Include trebuie să fie instalat pentru ca blogul să fie funcțional.'; +$lang['missing_pagelistplugin'] = 'The Pagelist Plugin must be installed for archive lists to work.'; +$lang['missing_tagplugin'] = 'Plugin-ul Tag trebuie să fie instalat pentru a utiliza convocări subtile tag.'; +$lang['autoarchive'] = '%1$d Post(ări) pentru %2$lea %3$lea'; +$lang['month_01'] = 'Ianuarie'; +$lang['month_02'] = 'Februarie'; +$lang['month_03'] = 'Martie'; +$lang['month_04'] = 'Aprilie'; +$lang['month_05'] = 'Mai'; +$lang['month_06'] = 'Iunie'; +$lang['month_07'] = 'Iulie'; +$lang['month_08'] = 'August'; +$lang['month_09'] = 'Septembrie'; +$lang['month_10'] = 'Octobrie'; +$lang['month_11'] = 'Noiebrie'; +$lang['month_12'] = 'Decembrie'; +$lang['entries'] = 'intrări'; +$lang['entry'] = 'intrare'; +$lang['archive_title'] = 'Istoria blogului'; diff --git a/platform/www/lib/plugins/blog/lang/ro/settings.php b/platform/www/lib/plugins/blog/lang/ro/settings.php new file mode 100644 index 0000000..f5407dd --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ro/settings.php @@ -0,0 +1,30 @@ + + * @author Florin Chitiul + */ + +// for the configuration manager +$lang['namespace'] = 'numele implicit al blogului'; +$lang['formposition'] = 'poziția formularului de inserare nouă'; +$lang['formposition_o_top'] = 'sus'; +$lang['formposition_o_bottom'] = 'jos'; +$lang['formposition_o_none'] = 'niciuna'; +$lang['newentrytitle'] = 'titlul inserării formularului de inserare nouă'; +$lang['dateprefix'] = 'prefixul datei identității noii inserări'; +$lang['sortkey'] = 'sortează intrările blogului după data celei mai noi inserări'; +$lang['sortkey_o_cdate'] = 'data creării'; +$lang['sortkey_o_mdate'] = 'data modificării'; +$lang['sortkey_o_pagename'] = 'numele paginii'; +$lang['sortkey_o_id'] = 'ID-ul paginii'; +$lang['sortkey_o_title'] = 'titlul'; +$lang['sortorder'] = 'ordinea de sortare'; +$lang['sortorder_o_ascending'] = 'crescatoare'; +$lang['sortorder_o_descending'] = 'descrescatoare'; +$lang['excluded_pages'] = 'exclude anumite pagini de la listarea în blog (sunt necesare expresii)'; +$lang['showhistogram'] = 'Afișează histograma în redarea arhivei'; +$lang['max_months'] = 'Maximul nr. de luni afișabile în histogramă'; +$lang['histogram_height'] = 'Înălțimea histogramei (în pixeli)'; diff --git a/platform/www/lib/plugins/blog/lang/ru/lang.php b/platform/www/lib/plugins/blog/lang/ru/lang.php new file mode 100644 index 0000000..13d6fac --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ru/lang.php @@ -0,0 +1,31 @@ + + * @author Aleksandr Selivanov + */ +$lang['blog'] = 'Блог'; +$lang['older'] = 'Предыдущие записи'; +$lang['newer'] = 'Новые записи'; +$lang['newentry'] = 'Новая запись:'; +$lang['missing_includeplugin'] = 'Для работы блога необходимо установить плагин Include.'; +$lang['missing_pagelistplugin'] = 'Для создания архивного списка должен быть установлен плагин Pagelist.'; +$lang['missing_tagplugin'] = 'Для использования меток должен быть установлен плагин Tag.'; +$lang['autoarchive'] = '%1$d сообщ. за %2$s %3$s'; +$lang['month_01'] = 'январь'; +$lang['month_02'] = 'февраль'; +$lang['month_03'] = 'март'; +$lang['month_04'] = 'апрель'; +$lang['month_05'] = 'май'; +$lang['month_06'] = 'июнь'; +$lang['month_07'] = 'июль'; +$lang['month_08'] = 'август'; +$lang['month_09'] = 'сентябрь'; +$lang['month_10'] = 'октябрь'; +$lang['month_11'] = 'ноябрь'; +$lang['month_12'] = 'декабрь'; +$lang['entries'] = 'записи'; +$lang['entry'] = 'запись'; +$lang['archive_title'] = 'Статистика'; diff --git a/platform/www/lib/plugins/blog/lang/ru/settings.php b/platform/www/lib/plugins/blog/lang/ru/settings.php new file mode 100644 index 0000000..3e2c1bd --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/ru/settings.php @@ -0,0 +1,29 @@ + + * @author Aleksandr Selivanov + * @author Aleksandr Selivanov + */ +$lang['namespace'] = 'Пространство имён по умолчанию для блога'; +$lang['formposition'] = 'Расположить форму для новой записи:'; +$lang['formposition_o_top'] = 'вверху страницы'; +$lang['formposition_o_bottom'] = 'внизу страницы'; +$lang['formposition_o_none'] = 'скрыть'; +$lang['newentrytitle'] = 'Заголовок формы для новой записи'; +$lang['dateprefix'] = 'Префикс даты для ID новой записи'; +$lang['sortkey'] = 'Сортировать записи по:'; +$lang['sortkey_o_cdate'] = 'дате написания'; +$lang['sortkey_o_mdate'] = 'дате редактирования'; +$lang['sortkey_o_pagename'] = 'имени страницы'; +$lang['sortkey_o_id'] = 'ID страницы'; +$lang['sortkey_o_title'] = 'заголовку'; +$lang['sortorder'] = 'Направление сортировки:'; +$lang['sortorder_o_ascending'] = 'по возрастанию'; +$lang['sortorder_o_descending'] = 'по убыванию'; +$lang['excluded_pages'] = 'Исключить определённые страницы из перечня блога (задаётся регулярным выражением)'; +$lang['showhistogram'] = 'Отображать гистограмму в режиме архива'; +$lang['max_months'] = 'Максимальное количество месяцев для отображения на гистограмме'; +$lang['histogram_height'] = 'Высота гистограммы (в пикселях)'; diff --git a/platform/www/lib/plugins/blog/lang/sk/lang.php b/platform/www/lib/plugins/blog/lang/sk/lang.php new file mode 100644 index 0000000..b1b0dcf --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sk/lang.php @@ -0,0 +1,34 @@ + + */ + +$lang['blog'] = 'Blog'; +$lang['older'] = 'Staršie články'; +$lang['newer'] = 'Novšie články'; +$lang['newentry'] = 'Nový článok:'; + +$lang['missing_includeplugin'] = 'Pre fungovanie pluginu je potrebné nainštalovať Include Plugin.'; +$lang['missing_pagelistplugin'] = 'Pre fungovanie archívu je potrebné nainštalovať Pagelist Plugin.'; +$lang['missing_tagplugin'] = 'Pre správne fungovanie tagov je potrebné nainštalovať Tag Plugin.'; + +$lang['autoarchive'] = '%1$d Článok(ov) pre %2$s %3$s'; +$lang['month_01'] = 'január'; +$lang['month_02'] = 'február'; +$lang['month_03'] = 'marec'; +$lang['month_04'] = 'april'; +$lang['month_05'] = 'máj'; +$lang['month_06'] = 'jún'; +$lang['month_07'] = 'júl'; +$lang['month_08'] = 'august'; +$lang['month_09'] = 'septemeber'; +$lang['month_10'] = 'október'; +$lang['month_11'] = 'november'; +$lang['month_12'] = 'december'; + +$lang['entries'] = 'položiek'; +$lang['entry'] = 'položka'; +$lang['archive_title'] = 'História blogu'; diff --git a/platform/www/lib/plugins/blog/lang/sk/settings.php b/platform/www/lib/plugins/blog/lang/sk/settings.php new file mode 100644 index 0000000..bd44367 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sk/settings.php @@ -0,0 +1,34 @@ + + */ +$lang['namespace'] = 'implicitný menný priestor pre blog'; + +$lang['formposition'] = 'pozícia poľa pre zadávanie nového príspevku'; +$lang['formposition_o_top'] = 'na vrchu'; +$lang['formposition_o_bottom'] = 'dole'; +$lang['formposition_o_none'] = 'žiadny'; + +$lang['newentrytitle'] = 'Titulka na stránke pre nový článok'; + +$lang['dateprefix'] = 'pridať datumový prefix novým príspevkom'; + +$lang['sortkey'] = 'radenie článkov podľa'; +$lang['sortkey_o_cdate'] = 'dátumu vytvorenia'; +$lang['sortkey_o_mdate'] = 'dátumu úpravy'; +$lang['sortkey_o_pagename'] = 'názvu stránky'; +$lang['sortkey_o_id'] = 'ID stránky'; +$lang['sortkey_o_title'] = 'názov'; + +$lang['sortorder'] = 'poradie'; +$lang['sortorder_o_ascending'] = 'vzostupné'; +$lang['sortorder_o_descending'] = 'zostupné'; + +$lang['excluded_pages'] = 'vyčleniť určité stránky zo zobrazovanie v blogu (vyžaduje sa RegEx)'; + +$lang['showhistogram'] = 'Zobraziť histogram na stránke archívu'; +$lang['max_months'] = 'Maximálny počet mesiacov zobrazených v histogramu'; +$lang['histogram_height'] = 'Výška histogramu (v pixeloch)'; diff --git a/platform/www/lib/plugins/blog/lang/sl/lang.php b/platform/www/lib/plugins/blog/lang/sl/lang.php new file mode 100644 index 0000000..a197646 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sl/lang.php @@ -0,0 +1,15 @@ + + */ + +// custom language strings for the plugin +$lang['blog'] = 'Blog'; +$lang['older'] = 'Starejši vnosi'; +$lang['newer'] = 'Novejši vnosi'; +$lang['newentry'] = 'Nov blog vnos:'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : \ No newline at end of file diff --git a/platform/www/lib/plugins/blog/lang/sl/settings.php b/platform/www/lib/plugins/blog/lang/sl/settings.php new file mode 100644 index 0000000..d4c4ffe --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sl/settings.php @@ -0,0 +1,19 @@ + + */ + +// for the configuration manager +$lang['namespace'] = 'privzeti namespace za blog'; + +$lang['sortkey'] = 'sortiraj blog vnose po:'; +$lang['sortkey_o_cdate'] = 'ustvarjeno dne'; +$lang['sortkey_o_pagename'] = 'ime strani'; +$lang['sortkey_o_id'] = 'ID strani'; + +$lang['dateprefix'] = 'pripeti datum pred IDje novih vnosov'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : \ No newline at end of file diff --git a/platform/www/lib/plugins/blog/lang/sv/lang.php b/platform/www/lib/plugins/blog/lang/sv/lang.php new file mode 100644 index 0000000..b6a4046 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sv/lang.php @@ -0,0 +1,32 @@ + + * @author Tor Härnqvist + * @author Tor Härnqvist + */ +$lang['blog'] = 'Blogg'; +$lang['older'] = 'Äldre inlägg'; +$lang['newer'] = 'Nyare inlägg'; +$lang['newentry'] = 'Nytt inlägg:'; +$lang['missing_includeplugin'] = 'Include-pluginet måste vara installerat för att bloggen ska fungera.'; +$lang['missing_pagelistplugin'] = 'Pagelist-pluginet måste vara installerat för att arkivlistningar ska fungera.'; +$lang['missing_tagplugin'] = 'Tagg-pluginet måste vara installerat för att använda tagg-funktionen.'; +$lang['autoarchive'] = '%1$d inlägg i %2$s %3$s'; +$lang['month_01'] = 'januari'; +$lang['month_02'] = 'februari'; +$lang['month_03'] = 'mars'; +$lang['month_04'] = 'april'; +$lang['month_05'] = 'maj'; +$lang['month_06'] = 'juni'; +$lang['month_07'] = 'juli'; +$lang['month_08'] = 'augusti'; +$lang['month_09'] = 'september'; +$lang['month_10'] = 'oktober'; +$lang['month_11'] = 'november'; +$lang['month_12'] = 'december'; +$lang['entries'] = 'Inlägg'; +$lang['entry'] = 'Inlägg'; +$lang['archive_title'] = 'Blogghistorik'; diff --git a/platform/www/lib/plugins/blog/lang/sv/settings.php b/platform/www/lib/plugins/blog/lang/sv/settings.php new file mode 100644 index 0000000..34e82cc --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/sv/settings.php @@ -0,0 +1,29 @@ + + * @author Tor Härnqvist + * @author hib + */ +$lang['namespace'] = 'standard vy för blogg'; +$lang['formposition'] = 'nya formulärets position '; +$lang['formposition_o_top'] = 'längst upp'; +$lang['formposition_o_bottom'] = 'längst ned'; +$lang['formposition_o_none'] = 'inget'; +$lang['newentrytitle'] = 'rubrik för nytt inläggsformulär'; +$lang['dateprefix'] = 'sätt datum före nytt inläggs-ID'; +$lang['sortkey'] = 'sortera inlägg efter:'; +$lang['sortkey_o_cdate'] = 'skapat datum'; +$lang['sortkey_o_mdate'] = 'ändringsdatum'; +$lang['sortkey_o_pagename'] = 'sidnamn'; +$lang['sortkey_o_id'] = 'sid-ID'; +$lang['sortkey_o_title'] = 'rubrik'; +$lang['sortorder'] = 'sorteringsordning'; +$lang['sortorder_o_ascending'] = 'stigande'; +$lang['sortorder_o_descending'] = 'fallande'; +$lang['excluded_pages'] = 'uteslut vissa sidor från blogglistan (regular expresstion krävs)'; +$lang['showhistogram'] = 'Visa histogram när arkivet skapas'; +$lang['max_months'] = 'Maximalt antal månader att visa i histogramet'; +$lang['histogram_height'] = 'Histogramets höjd (i pixlar)'; diff --git a/platform/www/lib/plugins/blog/lang/tr/lang.php b/platform/www/lib/plugins/blog/lang/tr/lang.php new file mode 100644 index 0000000..592c6aa --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/tr/lang.php @@ -0,0 +1,30 @@ + + */ +$lang['blog'] = 'Günce'; +$lang['older'] = 'Daha eski girdiler'; +$lang['newer'] = 'Daha yeni girdiler'; +$lang['newentry'] = 'Yeni günce oluştur:'; +$lang['missing_includeplugin'] = 'Güncenin (blog) çalışması için Include eklentisi yüklü olmalıdır.'; +$lang['missing_pagelistplugin'] = 'Arşiv listelerinin çalışması için Pagelist eklentisi yüklü olmalıdır.'; +$lang['missing_tagplugin'] = 'Etiket tanımlayabilmek için Tag eklentisi yüklü olmalıdır.'; +$lang['autoarchive'] = 'Her %2$s %3$s için %1$d Gönderi(ler)'; +$lang['month_01'] = 'Ocak'; +$lang['month_02'] = 'Şubat'; +$lang['month_03'] = 'Mart'; +$lang['month_04'] = 'Nisan'; +$lang['month_05'] = 'Mayıs'; +$lang['month_06'] = 'Haziran'; +$lang['month_07'] = 'Temmuz'; +$lang['month_08'] = 'Ağustos'; +$lang['month_09'] = 'Eylül'; +$lang['month_10'] = 'Ekim'; +$lang['month_11'] = 'Kasım'; +$lang['month_12'] = 'Aralık'; +$lang['entries'] = 'girdiler'; +$lang['entry'] = 'girdi'; +$lang['archive_title'] = 'Günce tarihçesi'; diff --git a/platform/www/lib/plugins/blog/lang/tr/settings.php b/platform/www/lib/plugins/blog/lang/tr/settings.php new file mode 100644 index 0000000..d549800 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/tr/settings.php @@ -0,0 +1,27 @@ + + */ +$lang['namespace'] = 'günce için varsayılan isimalanı'; +$lang['formposition'] = 'yeni girdi formunun konumu'; +$lang['formposition_o_top'] = 'üst'; +$lang['formposition_o_bottom'] = 'alt'; +$lang['formposition_o_none'] = 'yok'; +$lang['newentrytitle'] = 'yeni girdi formunun başlığı'; +$lang['dateprefix'] = 'yeni girdi kimliklerinde ön ek olarak kullanılacak tarih'; +$lang['sortkey'] = 'günce girdilerinin sıralanma şekli'; +$lang['sortkey_o_cdate'] = 'oluşturma tarihi'; +$lang['sortkey_o_mdate'] = 'değiştirilme tarihi'; +$lang['sortkey_o_pagename'] = 'sayfa adı'; +$lang['sortkey_o_id'] = 'sayfa kimliği'; +$lang['sortkey_o_title'] = 'başlık'; +$lang['sortorder'] = 'sıralama şekli'; +$lang['sortorder_o_ascending'] = 'artan'; +$lang['sortorder_o_descending'] = 'azalan'; +$lang['excluded_pages'] = 'bazı sayfaları günce listesinin dışında tut (kurallı tanımlama gereklidir)'; +$lang['showhistogram'] = 'Arşivi sunarken grafik göster'; +$lang['max_months'] = 'Grafikte gösterilecek en fazla ay sayısı'; +$lang['histogram_height'] = 'Grafiğin yüksekliği (piksel olarak)'; diff --git a/platform/www/lib/plugins/blog/lang/zh/lang.php b/platform/www/lib/plugins/blog/lang/zh/lang.php new file mode 100644 index 0000000..3bbcd50 --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/zh/lang.php @@ -0,0 +1,36 @@ + + */ + +// custom language strings for the plugin +$lang['blog'] = '博客'; +$lang['older'] = '更早的文章'; +$lang['newer'] = '更新的文章'; +$lang['newentry'] = '新建文章:'; + +$lang['missing_includeplugin'] = '要使用博客功能必须安装 Include 插件。'; +$lang['missing_pagelistplugin'] = '要使用存档列表功能必须安装 Pagelist 插件。'; +$lang['missing_tagplugin'] = '要使用标签 refinements 必须安装 Tag 插件。'; + +$lang['autoarchive'] = '%3$s年%2$s有%1$d篇文章'; +$lang['month_01'] = '一月'; +$lang['month_02'] = '二月'; +$lang['month_03'] = '三月'; +$lang['month_04'] = '四月'; +$lang['month_05'] = '五月'; +$lang['month_06'] = '六月'; +$lang['month_07'] = '七月'; +$lang['month_08'] = '八月'; +$lang['month_09'] = '九月'; +$lang['month_10'] = '十月'; +$lang['month_11'] = '十一月'; +$lang['month_12'] = '十二月'; + +$lang['entries'] = '文章'; +$lang['entry'] = '文章'; +$lang['archive_title'] = '文章历史'; +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/blog/lang/zh/settings.php b/platform/www/lib/plugins/blog/lang/zh/settings.php new file mode 100644 index 0000000..6ec12bb --- /dev/null +++ b/platform/www/lib/plugins/blog/lang/zh/settings.php @@ -0,0 +1,38 @@ + + */ + +// for the configuration manager +$lang['namespace'] = '博客默认命名空间'; + +$lang['formposition'] = '新文章的表单位置'; +$lang['formposition_o_top'] = '顶上'; +$lang['formposition_o_bottom'] = '底下'; +$lang['formposition_o_none'] = '不显示'; + +$lang['newentrytitle'] = '新文章表单的标题'; + +$lang['dateprefix'] = '为新文章 ID 添加日期前缀'; + +$lang['sortkey'] = '文章排序按'; +$lang['sortkey_o_cdate'] = '创建时间'; +$lang['sortkey_o_mdate'] = '修改时间'; +$lang['sortkey_o_pagename'] = '页面名称'; +$lang['sortkey_o_id'] = '页面 ID'; +$lang['sortkey_o_title'] = '标题'; + +$lang['sortorder'] = '排序顺序'; +$lang['sortorder_o_ascending'] = '升序'; +$lang['sortorder_o_descending'] = '降序'; + +$lang['excluded_pages'] = '从博客列表中排除特定的页面 (要求是正则表达式)'; + +$lang['showhistogram'] = '在存档页面上显示直方图'; +$lang['max_months'] = '在直方图上最多显示月份数'; +$lang['histogram_height'] = '直方图的高度 (单位像素)'; + +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/manager.dat b/platform/www/lib/plugins/blog/manager.dat new file mode 100644 index 0000000..1eadc20 --- /dev/null +++ b/platform/www/lib/plugins/blog/manager.dat @@ -0,0 +1,2 @@ +downloadurl=https://github.com/dokufreaks/plugin-blog/archive/master.zip +installed=Sat, 19 Mar 2022 15:05:39 +0000 diff --git a/platform/www/lib/plugins/blog/plugin.info.txt b/platform/www/lib/plugins/blog/plugin.info.txt new file mode 100644 index 0000000..73bd83c --- /dev/null +++ b/platform/www/lib/plugins/blog/plugin.info.txt @@ -0,0 +1,8 @@ +# General Plugin Info +base blog +author Michael Hamann, Michael Klier, Gina Haeussge +email michael@content-space.de +date 2022-02-20 +name Blog +desc Use DokuWiki as blogging tool. (previous authors: Esther Brunner) +url https://www.dokuwiki.org/plugin:blog diff --git a/platform/www/lib/plugins/blog/print.css b/platform/www/lib/plugins/blog/print.css new file mode 100644 index 0000000..d912867 --- /dev/null +++ b/platform/www/lib/plugins/blog/print.css @@ -0,0 +1,3 @@ +#blog__newentry_form { + display:none; +} \ No newline at end of file diff --git a/platform/www/lib/plugins/blog/style.css b/platform/www/lib/plugins/blog/style.css new file mode 100644 index 0000000..08c0a99 --- /dev/null +++ b/platform/www/lib/plugins/blog/style.css @@ -0,0 +1,40 @@ +div.dokuwiki div.newentry_form { + text-align: center; + margin-bottom: 1em; +} + +div.dokuwiki #blog__newentry_form input.edit { + width: 95%; +} + +div.dokuwiki tr.draft, +div.dokuwiki div.draft { + opacity: 0.5; +} + +div.dokuwiki div.autoarchive_selector ul { + list-style-type: none; + clear: left; + margin: 0 0.5em 0 0; +} + +div.dokuwiki div.autoarchive_selector ul div.li { + float: left; + margin: 0 1em 0 0; +} + +div.dokuwiki div.autoarchive_selector ul ul { + float: left; + clear: none; +} + +div.dokuwiki div.autoarchive_selector ul ul div.li { + margin: 0; +} + +img.blog_archive_bar { + background-color: __border__; + width: 5px; + border: 0 none; + vertical-align: bottom; +} diff --git a/platform/www/lib/plugins/blog/syntax/archive.php b/platform/www/lib/plugins/blog/syntax/archive.php new file mode 100644 index 0000000..751a4a6 --- /dev/null +++ b/platform/www/lib/plugins/blog/syntax/archive.php @@ -0,0 +1,245 @@ + + */ + +/** + * All DokuWiki plugins to extend the parser/rendering mechanism + * need to inherit from this class + */ +class syntax_plugin_blog_archive extends DokuWiki_Syntax_Plugin { + + function getType() { return 'substition'; } + function getPType() { return 'block'; } + function getSort() { return 309; } + + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{archive>.*?\}\}', $mode, 'plugin_blog_archive'); + } + + function handle($match, $state, $pos, Doku_Handler $handler) { + global $ID; + + $match = substr($match, 10, -2); // strip {{archive> from start and }} from end + list($match, $flags) = explode('&', $match, 2); + $flags = explode('&', $flags); + list($match, $refine) = explode(' ', $match, 2); + list($ns, $rest) = explode('?', $match, 2); + + $author = NULL; + foreach($flags as $i=>$flag) { + if(preg_match('/(\w+)\s*=(.+)/', $flag, $temp) == 1) { + if ($temp[1] == 'author') { + $author = trim($temp[2]); + unset($flags[$i]); + } + } + } + + if (!$rest) { + $rest = $ns; + $ns = ''; + } + + if ($ns == '') $ns = cleanID($this->getConf('namespace')); + elseif (($ns == '*') || ($ns == ':')) $ns = ''; + elseif ($ns == '.') $ns = getNS($ID); + else $ns = cleanID($ns); + + // daily archive + if (preg_match("/\d{4}-\d{2}-\d{2}/", $rest)) { + list($year, $month, $day) = explode('-', $rest, 3); + + $start = mktime(0, 0, 0, $month, $day, $year); + $end = $start + 24*60*60; + + // monthly archive + } elseif (preg_match("/\d{4}-\d{2}/", $rest)) { + list($year, $month) = explode('-', $rest, 2); + + // calculate start and end times + $nextmonth = $month + 1; + $year2 = $year; + if ($nextmonth > 12) { + $nextmonth = 1; + $year2 = $year + 1; + } + + $start = mktime(0, 0, 0, $month, 1, $year); + $end = mktime(0, 0, 0, $nextmonth, 1, $year2); + + // a whole year + } elseif (preg_match("/\d{4}/", $rest)) { + $start = mktime(0, 0, 0, 1, 1, $rest); + $end = mktime(0, 0, 0, 1, 1, $rest + 1); + + // all entries from that namespace up to now + } elseif ($rest == '*') { + $start = 0; + $end = PHP_INT_MAX; + + // unknown format + } else { + return false; + } + + return array($ns, $start, $end, $flags, $refine, $author); + } + + function render($mode, Doku_Renderer $renderer, $data) { + list($ns, $start, $end, $flags, $refine, $author) = $data; + + // get the blog entries for our namespace + /** @var helper_plugin_blog $my */ + if ($my = plugin_load('helper', 'blog')) $entries = $my->getBlog($ns, NULL, $author); + else return false; + + // use tag refinements? + if ($refine) { + /** @var helper_plugin_tag $tag */ + if (plugin_isdisabled('tag') || (!$tag = plugin_load('helper', 'tag'))) { + msg($this->getLang('missing_tagplugin'), -1); + } else { + $entries = $tag->tagRefine($entries, $refine); + } + } + + if (!$entries) return true; // nothing to display + + if ($mode == 'xhtml') { + if ($this->getConf('showhistogram')) { + $alt_list = $this->_build_alternative_list($start, $end, $entries); + + // Add histogram and posts list + $renderer->doc .= '
'; + $renderer->doc .= '

' . $this->getLang('archive_title') . '

'; + $renderer->doc .= $alt_list; + $renderer->doc .= '
' . DOKU_LF; + } else { + // let Pagelist Plugin do the work for us + if (plugin_isdisabled('pagelist') + || (!$pagelist = plugin_load('helper', 'pagelist'))) { + msg($this->getLang('missing_pagelistplugin'), -1); + return false; + } + /** @var helper_plugin_pagelist $pagelist */ + $pagelist->setFlags($flags); + $pagelist->startList(); + foreach ($entries as $entry) { + + // entry in the right date range? + if (($start > $entry['date']) || ($entry['date'] >= $end)) continue; + + $pagelist->addPage($entry); + } + $renderer->doc .= $pagelist->finishList(); + } + return true; + + // for metadata renderer + } elseif ($mode == 'metadata') { + /** @var Doku_Renderer_metadata $renderer */ + // use the blog plugin cache handler in order to ensure that the cache is expired whenever a page, comment + // or linkback is added + if (time() < $end) $renderer->meta['plugin_blog']['purgefile_cache'] = true; + + foreach ($entries as $entry) { + + // entry in the right date range? + if (($start > $entry['date']) || ($entry['date'] >= $end)) continue; + + $renderer->meta['relation']['references'][$entry['id']] = true; + $renderer->meta['plugin_blog']['archive_pages'][] = $entry['id']; + } + + return true; + } + return false; + } + + // Generate alternative posts list + function _build_alternative_list($start, $end, $entries) { + $current_year =''; + $current_month =''; + $ul_open = false; + + $histogram_count = array(); + $histogram_higher = 0; + + $list = ''; + foreach ($entries as $entry) { + // entry in the right date range? + if (($start > $entry['date']) || ($entry['date'] >= $end)) continue; + + if ($current_year != date('o',$entry['date'])) { + if ($ul_open) { + $list .= '' . DOKU_LF; + $ul_open = false; + } + $current_year = date('o',$entry['date']); + $list .= '

' . $current_year . '

' . DOKU_LF; + $current_month = ''; + } + if ($current_month != date('m',$entry['date'])) { + if ($ul_open) { + $list .= '' . DOKU_LF; + } + $current_month = date('m',$entry['date']); + $list .= '

' . $this->getLang('month_' . $current_month) . '

    ' . DOKU_LF; + $ul_open = true; + } + $histogram_count[date('o-m',$entry['date'])] += 1; + if ($histogram_higher < $histogram_count[date('o-m',$entry['date'])]) { + $histogram_higher = $histogram_count[date('o-m',$entry['date'])]; + } + $list .= '
  • ' . date('d',$entry['date']) . ' - ' . $entry['title'] . '
  • ' . DOKU_LF; + } + $list .= '
' . DOKU_LF; + + $histogram = $this->_build_histogram($histogram_count, $histogram_higher); + + return $histogram . $list; + } + + // Generate histogram + function _build_histogram($histogram_count, $histogram_higher) { + if (empty($histogram_count)) return ''; + + $histogram = '

'; + $max_months = $this->getConf('max_months'); + $histogram_height = $this->getConf('histogram_height'); + $histogram_count = array_reverse($histogram_count); + $month_count = 0; + foreach ($histogram_count as $key => $month_reference) { + // Check the max_months parameter + if ($month_count >= $max_months) { + break; + } + if ($month_reference > 0) { + // Height in "px" + $current_height = $histogram_height / $histogram_higher * $month_reference; + } else { + // Height in "px" + $current_height = 1; + } + // Generate the alt attribute + $alt = $key.': '.$month_reference.' '; + if ($month_reference > 1) { + $alt .= $this->getLang('entries'); + } else { + $alt .= $this->getLang('entry'); + } + $histogram .= ''; + $histogram .= '' . $alt . '' . DOKU_LF; + $month_count += 1; + } + $histogram .= '

'; + + return $histogram; + } + +} +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/syntax/autoarchive.php b/platform/www/lib/plugins/blog/syntax/autoarchive.php new file mode 100644 index 0000000..34cb240 --- /dev/null +++ b/platform/www/lib/plugins/blog/syntax/autoarchive.php @@ -0,0 +1,157 @@ + + */ + +/** + * All DokuWiki plugins to extend the parser/rendering mechanism + * need to inherit from this class + */ +class syntax_plugin_blog_autoarchive extends DokuWiki_Syntax_Plugin { + + function getType() { return 'substition'; } + function getPType() { return 'block'; } + function getSort() { return 309; } + + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{autoarchive>.*?\}\}', $mode, 'plugin_blog_autoarchive'); + } + + function handle($match, $state, $pos, Doku_Handler $handler) { + global $ID; + + $match = substr($match, 14, -2); // strip {{autoarchive> from start and }} from end + list($match, $flags) = explode('?', $match, 2); + $flags = explode('&', $flags); + list($ns, $refine) = explode(' ', $match, 2); + + if ($ns == '') $ns = cleanID($this->getConf('namespace')); + elseif (($ns == '*') || ($ns == ':')) $ns = ''; + elseif ($ns == '.') $ns = getNS($ID); + else $ns = cleanID($ns); + + return array($ns, $flags, $refine, $pos); + } + + function render($mode, Doku_Renderer $renderer, $data) { + list($ns, $flags, $refine, $pos) = $data; + if ($mode != 'xhtml') return false; + + // no caching for dynamic content + $renderer->nocache(); + + // get the blog entries for our namespace + if ($my = plugin_load('helper', 'blog')) $entries = $my->getBlog($ns); + + // use tag refinements? + if ($refine) { + if (plugin_isdisabled('tag') || (!$tag = plugin_load('helper', 'tag'))) { + msg($this->getLang('missing_tagplugin'), -1); + } else { + $entries = $tag->tagRefine($entries, $refine); + } + } + + if (!$entries) return true; // nothing to display + + // what to display + if(preg_match('/^\d\d\d\d-\d\d$/',$_REQUEST['blogarchive'])){ + $now = $_REQUEST['blogarchive']; + }else{ + $now = strftime('%Y-%m'); // current month + } + list($y,$m) = explode('-',$now); + + // display the archive overview + $cnt = $this->_buildTimeChooser($renderer, $entries, $now); + + $renderer->header($this->_posts($cnt,$m,$y),2,$pos); + $renderer->section_open(2); + + // let Pagelist Plugin do the work for us + if (plugin_isdisabled('pagelist') + || (!$pagelist = plugin_load('helper', 'pagelist'))) { + msg($this->getLang('missing_pagelistplugin'), -1); + return false; + } + $pagelist->setFlags($flags); + $pagelist->startList(); + foreach ($entries as $entry) { + $date = strftime('%Y-%m',$entry['date']); + // entry in the right date range? + if($date < $now || $date > $now) continue; + $pagelist->addPage($entry); + } + $renderer->doc .= $pagelist->finishList(); + + $renderer->section_close(); + return true; + + } + + /** + * Creates a list of monthly archive links + * + * @param object reference $R - the XHTML renderer + * @param array reference $entries - all entries metadata + * @param string $now - currently selected month ('YYYY-MM') + * @return int - number of posts for selected month + */ + function _buildTimeChooser(&$R, &$entries, $now){ + global $ID; + + // get the months where posts exist + $months = array(); + foreach($entries as $entry){ + $y = date('Y',$entry['date']); + $m = date('m',$entry['date']); + if(isset($months[$y][$m])) { + $months[$y][$m]++; + }else{ + $months[$y][$m] = 1; + } + } + + $ret = 0; + // output + $R->doc .= '
'; + foreach($months as $y => $mdata){ + $R->listu_open(); + $R->listitem_open(1); + $R->listcontent_open(); + $R->doc .= $y.':'; + $R->listcontent_close(); + ksort($mdata); + foreach($mdata as $m => $cnt){ + $R->listu_open(); + $R->listitem_open(2); + $R->listcontent_open(); + if("$y-$m" == $now) $R->doc .= ''; + $R->doc .= ''; + $R->doc .= $this->getLang('month_'.$m); + $R->doc .= ''; + if("$y-$m" == $now){ + $R->doc .= ''; + $ret = $cnt; + } + $R->listcontent_close(); + $R->listitem_close(); + $R->listu_close(); + } + $R->listitem_close(); + $R->listu_close(); + } + $R->doc .='
'; + return $ret; + } + + function _posts($num,$month,$year){ + return sprintf($this->getLang('autoarchive'), + $num, $this->getLang("month_$month"), + $year); + } +} +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/syntax/blog.php b/platform/www/lib/plugins/blog/syntax/blog.php new file mode 100644 index 0000000..2ca56d8 --- /dev/null +++ b/platform/www/lib/plugins/blog/syntax/blog.php @@ -0,0 +1,213 @@ + + * @author Robert Rackl + */ + +class syntax_plugin_blog_blog extends DokuWiki_Syntax_Plugin { + private $included_pages = array(); + + function getType() { return 'substition'; } + function getPType() { return 'block'; } + function getSort() { return 307; } + + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{blog>.*?\}\}',$mode,'plugin_blog_blog'); + } + + function handle($match, $state, $pos, Doku_Handler $handler) { + global $ID; + + $match = substr($match, 7, -2); // strip {{blog> from start and }} from end + list($match, $flags) = explode('&', $match, 2); + $flags = explode('&', $flags); + array_unshift($flags, 'link'); // always make the first header of a blog entry a permalink (unless nolink is set) + list($match, $refine) = explode(' ', $match, 2); + list($ns, $num) = explode('?', $match, 2); + + if (!is_numeric($num)) { + if (is_numeric($ns)) { + $num = $ns; + $ns = ''; + } else { + $num = 5; + } + } + + if ($ns == '') $ns = cleanID($this->getConf('namespace')); + elseif (($ns == '*') || ($ns == ':')) $ns = ''; + elseif ($ns == '.') $ns = getNS($ID); + else $ns = cleanID($ns); + + return array($ns, $num, $flags, $refine); + } + + function render($mode, Doku_Renderer $renderer, $data) { + list($ns, $num, $flags, $refine) = $data; + + $first = $_REQUEST['first']; + if (!is_numeric($first)) $first = 0; + + // get the blog entries for our namespace + /** @var helper_plugin_blog $my */ + if ($my = plugin_load('helper', 'blog')) $entries = $my->getBlog($ns); + else return false; + + // use tag refinements? + if ($refine) { + /** @var helper_plugin_tag $tag */ + if (plugin_isdisabled('tag') || (!$tag = plugin_load('helper', 'tag'))) { + msg($this->getLang('missing_tagplugin'), -1); + } else { + $entries = $tag->tagRefine($entries, $refine); + } + } + + // Normalise flags + $blog_flags = $my->getFlags($flags); + $formpos = $blog_flags['formpos']; + $newentrytitle = $blog_flags['newentrytitle']; + $pagingcontrols = $blog_flags['pagingcontrols']; + + if ($mode == 'xhtml') { + // prevent caching to ensure the included pages are always fresh + $renderer->nocache(); + } + + if (!$entries) { + if ((auth_quickaclcheck($ns.':*') >= AUTH_CREATE) && ($mode == 'xhtml')) { + if($formpos != 'none') $renderer->doc .= $this->_newEntryForm($ns, $newentrytitle); + } + return true; // nothing to display + } + + // slice the needed chunk of pages + $isMore = count($entries) > ($first + $num); + $entries = array_slice($entries, $first, $num); + + // load the include helper plugin + /** @var helper_plugin_include $include */ + if (plugin_isdisabled('include') || (!$include = plugin_load('helper', 'include'))) { + msg($this->getLang('missing_includeplugin'), -1); + return false; + } + + // current section level + $clevel = 0; + + $perm_create = (auth_quickaclcheck($ns.':*') >= AUTH_CREATE); + $include_flags = $include->get_flags($flags); + + if ($mode == 'xhtml') { + // show new entry form + if ($perm_create && $formpos == 'top') { + $renderer->doc .= $this->_newEntryForm($ns, $newentrytitle); + } + + // get current section level + preg_match_all('|
|i', $renderer->doc, $matches, PREG_SET_ORDER); + $n = count($matches)-1; + if ($n > -1) $clevel = $matches[$n][1]; + + // close current section + if ($clevel && !$include_flags['inline']) $renderer->doc .= '
'.DOKU_LF; + $renderer->doc .= '
'.DOKU_LF; + } + + + // now include the blog entries + foreach ($entries as $entry) { + if ($mode == 'xhtml' || $mode == 'code') { + if(auth_quickaclcheck($entry['id']) >= AUTH_READ) { + // prevent blog include loops + if(!$this->included_pages[$entry['id']]) { + $this->included_pages[$entry['id']] = true; + $renderer->nest($include->_get_instructions($entry['id'], '', 'page', $clevel, $include_flags)); + $this->included_pages[$entry['id']] = false; + } + } + } elseif ($mode == 'metadata') { + /** @var Doku_Renderer_metadata $renderer */ + $renderer->meta['relation']['haspart'][$entry['id']] = true; + } + } + + if ($mode == 'xhtml') { + // resume the section + $renderer->doc .= '
'.DOKU_LF; + if ($clevel && !$include_flags['inline']) $renderer->doc .= '
'.DOKU_LF; + + // show older / newer entries links + if ($pagingcontrols) $renderer->doc .= $this->_browseEntriesLinks($isMore, $first, $num); + + // show new entry form + if ($perm_create && $formpos == 'bottom') { + $renderer->doc .= $this->_newEntryForm($ns, $newentrytitle); + } + } + + return in_array($mode, array('xhtml', 'metadata', 'code')); + } + + /* ---------- (X)HTML Output Functions ---------- */ + + /** + * Displays links to older newer entries of the blog namespace + * + * @param $more + * @param $first + * @param $num + * @return string + */ + function _browseEntriesLinks($more, $first, $num) { + global $ID; + + $ret = ''; + $last = $first+$num; + if ($first > 0) { + $first -= $num; + if ($first < 0) $first = 0; + $ret .= '

'.DOKU_LF.'<< '.$this->getLang('newer').''; + if ($more) $ret .= ' | '; + else $ret .= '

'; + } else if ($more) { + $ret .= '

'.DOKU_LF; + } + if ($more) { + $ret .= ''. + $this->getLang('older').' >>'.DOKU_LF.'

'.DOKU_LF; + } + return $ret; + } + + /** + * Displays a form to enter the title of a new entry in the blog namespace + * and then open that page in the edit mode + * + * @param $ns + * @param $newentrytitle + * @return string + */ + function _newEntryForm($ns, $newentrytitle) { + global $lang; + global $ID; + + return '
'.DOKU_LF. + '
'.DOKU_LF. + DOKU_TAB.'
'.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.hsc($newentrytitle).''.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.DOKU_LF. + DOKU_TAB.DOKU_TAB.''.DOKU_LF. + DOKU_TAB.'
'.DOKU_LF. + '
'.DOKU_LF. + '
'.DOKU_LF; + } +} +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/syntax/draft.php b/platform/www/lib/plugins/blog/syntax/draft.php new file mode 100644 index 0000000..239f0c2 --- /dev/null +++ b/platform/www/lib/plugins/blog/syntax/draft.php @@ -0,0 +1,33 @@ + + */ + +class syntax_plugin_blog_draft extends DokuWiki_Syntax_Plugin { + + function getType() { return 'substition'; } + function getSort() { return 99; } + + function connectTo($mode) { + $this->Lexer->addSpecialPattern('~~DRAFT~~', $mode, 'plugin_blog_draft'); + } + + function handle($match, $state, $pos, Doku_Handler $handler) { + return true; + } + + /** + * The only thing this plugin component does is to set the metadata 'type' to 'draft' + */ + function render($mode, Doku_Renderer $renderer, $data) { + if ($mode == 'xthml') { + return true; // don't output anything + } elseif ($mode == 'metadata') { + $renderer->meta['type'] = 'draft'; + } + } +} +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/pagelist/COPYING b/platform/www/lib/plugins/pagelist/COPYING new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/platform/www/lib/plugins/pagelist/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/platform/www/lib/plugins/pagelist/README b/platform/www/lib/plugins/pagelist/README new file mode 100644 index 0000000..ad864dc --- /dev/null +++ b/platform/www/lib/plugins/pagelist/README @@ -0,0 +1,9 @@ +====== Pagelist Plugin for DokuWiki ====== + +All documentation for the Pagelist Plugin is available online at: + + * http://dokuwiki.org/plugin:pagelist + +(c) 2005 - 2007 by Esther Brunner +(c) 2008 - 2010 by Gina Häußge, Michael Klier +See COPYING for license info. diff --git a/platform/www/lib/plugins/pagelist/conf/default.php b/platform/www/lib/plugins/pagelist/conf/default.php new file mode 100644 index 0000000..ba1468b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/conf/default.php @@ -0,0 +1,19 @@ + + */ + +$meta['style'] = array('multichoice', + '_choices' => array('default', 'table', 'list', 'simplelist')); +$meta['showheader'] = array('onoff'); +$meta['showdate'] = array('multichoice', '_choices' => array('0', '1', '2')); +$meta['showuser'] = array('multichoice', '_choices' => array('0', '1', '2')); +$meta['showdesc'] = array('multichoice', '_choices' => array('0', '160', '500')); +$meta['showcomments'] = array('onoff'); +$meta['showlinkbacks']= array('onoff'); +$meta['showtags'] = array('onoff'); +$meta['showfirsthl'] = array('onoff'); +$meta['showimage'] = array('onoff'); +$meta['showdiff'] = array('onoff'); +$meta['sort'] = array('onoff'); +$meta['rsort'] = array('onoff'); + +//Setup VIM: ex: et ts=2 : diff --git a/platform/www/lib/plugins/pagelist/helper.php b/platform/www/lib/plugins/pagelist/helper.php new file mode 100644 index 0000000..4ed425b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/helper.php @@ -0,0 +1,448 @@ + + * @author Gina Häußge + */ + +class helper_plugin_pagelist extends DokuWiki_Plugin { + + /* public */ + + var $page = NULL; // associative array for page to list + // must contain a value to key 'id' + // can contain: 'title', 'date', 'user', 'desc', 'comments', + // 'tags', 'status' and 'priority' + + var $style = ''; // table style: 'default', 'table', 'list' + var $showheader = false; // show a heading line + var $column = array(); // which columns to show + var $header = array(); // language strings for table headers + var $sort = false; // alphabetical sort of pages by pagename + var $rsort = false; // reverse alphabetical sort of pages by pagename + + var $plugins = array(); // array of plugins to extend the pagelist + var $discussion = NULL; // discussion class object + var $tag = NULL; // tag class object + + var $doc = ''; // the final output XHTML string + + /* private */ + + var $_meta = NULL; // metadata array for page + + /** + * Constructor gets default preferences + * + * These can be overriden by plugins using this class + */ + function __construct() { + $this->style = $this->getConf('style'); + $this->showheader = $this->getConf('showheader'); + $this->showfirsthl = $this->getConf('showfirsthl'); + $this->sort = $this->getConf('sort'); + $this->rsort = $this->getConf('rsort'); + + $this->column = array( + 'page' => true, + 'date' => $this->getConf('showdate'), + 'user' => $this->getConf('showuser'), + 'desc' => $this->getConf('showdesc'), + 'comments' => $this->getConf('showcomments'), + 'linkbacks'=> $this->getConf('showlinkbacks'), + 'tags' => $this->getConf('showtags'), + 'image' => $this->getConf('showimage'), + 'diff' => $this->getConf('showdiff'), + ); + + $this->plugins = array( + 'discussion' => 'comments', + 'linkback' => 'linkbacks', + 'tag' => 'tags', + 'pageimage' => 'image', + ); + } + + function getMethods() { + $result = array(); + $result[] = array( + 'name' => 'addColumn', + 'desc' => 'adds an extra column for plugin data', + 'params' => array( + 'plugin name' => 'string', + 'column key' => 'string'), + ); + $result[] = array( + 'name' => 'setFlags', + 'desc' => 'overrides standard values for showfooter and firstseconly settings', + 'params' => array('flags' => 'array'), + 'return' => array('success' => 'boolean'), + ); + $result[] = array( + 'name' => 'startList', + 'desc' => 'prepares the table header for the page list', + ); + $result[] = array( + 'name' => 'addPage', + 'desc' => 'adds a page to the list', + 'params' => array("page attributes, 'id' required, others optional" => 'array'), + ); + $result[] = array( + 'name' => 'finishList', + 'desc' => 'returns the XHTML output', + 'return' => array('xhtml' => 'string'), + ); + return $result; + } + + /** + * Adds an extra column for plugins + */ + function addColumn($plugin, $col) { + $this->plugins[$plugin] = $col; + $this->column[$col] = true; + } + + /** + * Overrides standard values for style, showheader and show(column) settings + */ + function setFlags($flags) { + if (!is_array($flags)) return false; + + $columns = array('date', 'user', 'desc', 'comments', 'linkbacks', 'tags', 'image', 'diff'); + foreach ($flags as $flag) { + switch ($flag) { + case 'default': + $this->style = 'default'; + break; + case 'table': + $this->style = 'table'; + break; + case 'list': + $this->style = 'list'; + break; + case 'simplelist': + $this->style = 'simplelist'; // Displays pagenames only, no other information + break; + case 'header': + $this->showheader = true; + break; + case 'noheader': + $this->showheader = false; + break; + case 'firsthl': + $this->showfirsthl = true; + break; + case 'nofirsthl': + $this->showfirsthl = false; + break; + case 'sort': + $this->sort = true; + $this->rsort = false; + break; + case 'rsort': + $this->sort = false; + $this->rsort = true; + break; + case 'nosort': + $this->sort = false; + $this->rsort = false; + break; + case 'showdiff': + $flag = 'diff'; + break; + } + + if (substr($flag, 0, 2) == 'no') { + $value = false; + $flag = substr($flag, 2); + } else { + $value = true; + } + + if (in_array($flag, $columns)) $this->column[$flag] = $value; + } + return true; + } + + /** + * Sets the list header + */ + function startList($callerClass=NULL) { + + // table style + switch ($this->style) { + case 'table': + $class = 'inline'; + break; + case 'list': + $class = 'ul'; + break; + case 'simplelist': + $class = false; + break; + default: + $class = 'pagelist'; + } + + if($class) { + if ($callerClass) { + $class .= ' '.$callerClass; + } + $this->doc = '
'.DOKU_LF.''.DOKU_LF; + } else { + // Simplelist is enabled; Skip header and firsthl + $this->showheader = false; + $this->showfirsthl = false; + //$this->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; + $this->doc = '
    '; + } + + $this->page = NULL; + + // check if some plugins are available - if yes, load them! + foreach ($this->plugins as $plug => $col) { + if (!$this->column[$col]) continue; + if (plugin_isdisabled($plug) || (!$this->$plug = plugin_load('helper', $plug))) + $this->column[$col] = false; + } + + // header row + if ($this->showheader) { + $this->doc .= DOKU_TAB.'
'.DOKU_LF.DOKU_TAB.DOKU_TAB; + $columns = array('page', 'date', 'user', 'desc', 'diff'); + if ($this->column['image']) { + if (!$this->header['image']) $this->header['image'] = hsc($this->pageimage->th()); + $this->doc .= ''; + } + foreach ($columns as $col) { + if ($this->column[$col]) { + if (!$this->header[$col]) $this->header[$col] = hsc($this->getLang($col)); + $this->doc .= ''; + } + } + foreach ($this->plugins as $plug => $col) { + if ($this->column[$col] && $col != 'image') { + if (!$this->header[$col]) $this->header[$col] = hsc($this->$plug->th()); + $this->doc .= ''; + } + } + $this->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; + } + return true; + } + + /** + * Sets a list row + */ + function addPage($page) { + + $id = $page['id']; + if (!$id) return false; + $this->page = $page; + $this->_meta = NULL; + + if($this->style != 'simplelist') { + // priority and draft + if (!isset($this->page['draft'])) { + $this->page['draft'] = ($this->_getMeta('type') == 'draft'); + } + $class = ''; + if (isset($this->page['priority'])) $class .= 'priority'.$this->page['priority']. ' '; + if ($this->page['draft']) $class .= 'draft '; + if ($this->page['class']) $class .= $this->page['class']; + if(!empty($class)) $class = ' class="' . $class . '"'; + + $this->doc .= DOKU_TAB.''.DOKU_LF; + if ($this->column['image']) $this->_pluginCell('pageimage','image',$id); + $this->_pageCell($id); + if ($this->column['date']) $this->_dateCell(); + if ($this->column['user']) $this->_userCell(); + if ($this->column['desc']) $this->_descCell(); + if ($this->column['diff']) $this->_diffCell($id); + foreach ($this->plugins as $plug => $col) { + if ($this->column[$col] && $col != 'image') $this->_pluginCell($plug, $col, $id); + } + + $this->doc .= DOKU_TAB.''.DOKU_LF; + } else { + $class = ''; + // simplelist is enabled; just output pagename + $this->doc .= DOKU_TAB . '
  • ' . DOKU_LF; + if(page_exists($id)) $class = 'wikilink1'; + else $class = 'wikilink2'; + + if (!$this->page['title']) $this->page['title'] = str_replace('_', ' ', noNS($id)); + $title = hsc($this->page['title']); + + $content = ''.$title.''; + $this->doc .= $content; + $this->doc .= DOKU_TAB . '
  • ' . DOKU_LF; + } + + return true; + } + + /** + * Sets the list footer + */ + function finishList() { + if($this->style != 'simplelist') { + if (!isset($this->page)) $this->doc = ''; + else $this->doc .= '
    '.$this->header['image'].''.$this->header[$col].''.$this->header[$col].'
    '.DOKU_LF.'
    '.DOKU_LF; + } else { + $this->doc .= '' . DOKU_LF; + } + + // reset defaults + $this->__construct(); + + return $this->doc; + } + + /* ---------- Private Methods ---------- */ + + /** + * Page title / link to page + */ + function _pageCell($id) { + + // check for page existence + if (!isset($this->page['exists'])) { + if (!isset($this->page['file'])) $this->page['file'] = wikiFN($id); + $this->page['exists'] = @file_exists($this->page['file']); + } + if ($this->page['exists']) $class = 'wikilink1'; + else $class = 'wikilink2'; + + // handle image and text titles + if ($this->page['titleimage']) { + $title = 'page['title']) $title .= ' title="'.hsc($this->page['title']).'"'. + ' alt="'.hsc($this->page['title']).'"'; + $title .= ' />'; + } else { + if($this->showfirsthl) { + $this->page['title'] = $this->_getMeta('title'); + } else { + $this->page['title'] = $id; + } + + if (!$this->page['title']) $this->page['title'] = str_replace('_', ' ', noNS($id)); + $title = hsc($this->page['title']); + } + + // produce output + $content = ''.$title.''; + if ($this->style == 'list') $content = '
    • '.$content.'
    '; + return $this->_printCell('page', $content); + } + + /** + * Date - creation or last modification date if not set otherwise + */ + function _dateCell() { + global $conf; + + if($this->column['date'] == 2) { + $this->page['date'] = $this->_getMeta(array('date', 'modified')); + } elseif(!$this->page['date'] && $this->page['exists']) { + $this->page['date'] = $this->_getMeta(array('date', 'created')); + } + + if ((!$this->page['date']) || (!$this->page['exists'])) { + return $this->_printCell('date', ''); + } else { + return $this->_printCell('date', dformat($this->page['date'], $conf['dformat'])); + } + } + + /** + * User - page creator or contributors if not set otherwise + */ + function _userCell() { + if (!array_key_exists('user', $this->page)) { + if ($this->column['user'] == 2) { + $users = $this->_getMeta('contributor'); + if (is_array($users)) $this->page['user'] = join(', ', $users); + } else { + $this->page['user'] = $this->_getMeta('creator'); + } + } + return $this->_printCell('user', hsc($this->page['user'])); + } + + /** + * Description - (truncated) auto abstract if not set otherwise + */ + function _descCell() { + if (array_key_exists('desc', $this->page)) { + $desc = $this->page['desc']; + } elseif (strlen($this->page['description']) > 0) { + // This condition will become true, when a page-description is given + // inside the syntax-block + $desc = $this->page['description']; + } else { + $desc = $this->_getMeta(array('description', 'abstract')); + } + + $max = $this->column['desc']; + if (($max > 1) && (utf8_strlen($desc) > $max)) $desc = utf8_substr($desc, 0, $max).'…'; + return $this->_printCell('desc', hsc($desc)); + } + + /** + * Diff icon / link to diff page + */ + function _diffCell($id) { + // check for page existence + if (!isset($this->page['exists'])) { + if (!isset($this->page['file'])) $this->page['file'] = wikiFN($id); + $this->page['exists'] = @file_exists($this->page['file']); + } + + // produce output + $url_params = array(); + $url_params ['do'] = 'diff'; + $content = ' +'.hsc($this->getLang('diff_alt')).' +'; + return $this->_printCell('page', $content); + } + + /** + * Plugins - respective plugins must be installed! + */ + function _pluginCell($plug, $col, $id) { + if (!isset($this->page[$col])) $this->page[$col] = $this->$plug->td($id); + return $this->_printCell($col, $this->page[$col]); + } + + /** + * Produce XHTML cell output + */ + function _printCell($class, $content) { + if (!$content) { + $content = ' '; + $empty = true; + } else { + $empty = false; + } + $this->doc .= DOKU_TAB.DOKU_TAB.''.$content.''.DOKU_LF; + return (!$empty); + } + + + /** + * Get default value for an unset element + */ + function _getMeta($key) { + if (!$this->page['exists']) return false; + if (!isset($this->_meta)) $this->_meta = p_get_metadata($this->page['id'], '', METADATA_RENDER_USING_CACHE); + if (is_array($key)) return $this->_meta[$key[0]][$key[1]]; + else return $this->_meta[$key]; + } + +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/pagelist/lang/ar/lang.php b/platform/www/lib/plugins/pagelist/lang/ar/lang.php new file mode 100644 index 0000000..6a77ad9 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ar/lang.php @@ -0,0 +1,16 @@ + +* http://www.hali-sy.com +*/ + +// custom language strings for the plugin +$lang['page'] = 'الصفحة'; +$lang['date'] = 'التاريخ'; +$lang['user'] = 'المستخدم'; +$lang['desc'] = 'الوصف'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/ar/settings.php b/platform/www/lib/plugins/pagelist/lang/ar/settings.php new file mode 100644 index 0000000..b209277 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ar/settings.php @@ -0,0 +1,32 @@ + +* http://www.hali-sy.com +*/ + +// for the configuration manager +$lang['style'] = 'شكل جدول قائمة الصفحات'; +$lang['style_o_default'] = 'إفتراضي'; +$lang['style_o_table'] = 'جدول'; +$lang['style_o_list'] = 'قائمة'; + +$lang['showheader'] = 'عرض شريط الترويسة'; +$lang['showdate'] = 'عرض عمود التاريخ'; +$lang['showdate_o_0'] = 'إخفاء'; +$lang['showdate_o_1'] = 'تاريخ الإنشاء'; +$lang['showdate_o_2'] = 'تاريخ التعديل'; +$lang['showuser'] = 'عرض عمود المستخدم'; +$lang['showuser_o_0'] = 'إخفاء'; +$lang['showuser_o_1'] = 'المنشئ'; +$lang['showuser_o_2'] = 'المساهمون'; +$lang['showdesc'] = 'عرض عمود الوصف'; +$lang['showdesc_o_0'] = 'إخفاء'; +$lang['showdesc_o_160'] = 'أكثر عدد 160 محرف'; +$lang['showdesc_o_500'] = 'أكثر عدد 500 محرف'; +$lang['showcomments'] = 'عرض عمود التعليقات'; +$lang['showtags'] = 'عرض عمود الأقسامn'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/bg/lang.php b/platform/www/lib/plugins/pagelist/lang/bg/lang.php new file mode 100644 index 0000000..05881d1 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/bg/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Страница'; +$lang['date'] = 'Дата'; +$lang['user'] = 'Потребител'; +$lang['desc'] = 'Описание'; +$lang['diff'] = 'Разлики'; +$lang['diff_title'] = 'Покажи разликите с текущата версия'; +$lang['diff_alt'] = 'Покажи разликите с текущата версия'; diff --git a/platform/www/lib/plugins/pagelist/lang/bg/settings.php b/platform/www/lib/plugins/pagelist/lang/bg/settings.php new file mode 100644 index 0000000..22f8787 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/bg/settings.php @@ -0,0 +1,32 @@ + + */ +$lang['style'] = 'Стил'; +$lang['style_o_default'] = 'стандартен'; +$lang['style_o_table'] = 'табличен'; +$lang['style_o_list'] = 'таблица/списък'; +$lang['style_o_simple'] = 'списък'; +$lang['showheader'] = 'Показване на заглавния ред'; +$lang['showdate'] = 'Показване на колона за дата'; +$lang['showdate_o_0'] = 'скрий'; +$lang['showdate_o_1'] = 'дата на създаване'; +$lang['showdate_o_2'] = 'дата на редактиране'; +$lang['showuser'] = 'Показване на колона за потребител'; +$lang['showuser_o_0'] = 'скрий'; +$lang['showuser_o_1'] = 'създател'; +$lang['showuser_o_2'] = 'допринесли'; +$lang['showdesc'] = 'Показване на колона за описание'; +$lang['showdesc_o_0'] = 'скрий'; +$lang['showdesc_o_160'] = 'максимум 160 символа'; +$lang['showdesc_o_500'] = 'максимум 500 символа'; +$lang['showcomments'] = 'Показвай колона за коментари (изисква приставката Discussion)'; +$lang['showlinkbacks'] = 'Показвай колона за linkbacks (изисква приставката Linkback )'; +$lang['showtags'] = 'Показвай колона за етикети (изисква приставката Tag)'; +$lang['showfirsthl'] = 'Показвай първото заглавие вместо името на страницата'; +$lang['showdiff'] = 'Показвай линк към страница с разликите'; +$lang['sort'] = 'Сортиране на страниците по име на страница'; +$lang['rsort'] = 'Обратен ред на сортиране по име на страница'; diff --git a/platform/www/lib/plugins/pagelist/lang/ckb/lang.php b/platform/www/lib/plugins/pagelist/lang/ckb/lang.php new file mode 100644 index 0000000..bc62a67 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ckb/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'پەڕە'; +$lang['date'] = 'بەروار'; +$lang['user'] = 'بەکارهێنەر'; +$lang['desc'] = 'وەسف'; +$lang['diff'] = 'جیاوازیەکان'; +$lang['diff_title'] = 'جیاوازیەکان نیشان بدە بۆ پێداچوونەوەکانی ئێستا'; +$lang['diff_alt'] = 'جیاوازیەکان نیشان بدە بۆ پێداچوونەوەکانی ئێستا'; diff --git a/platform/www/lib/plugins/pagelist/lang/ckb/settings.php b/platform/www/lib/plugins/pagelist/lang/ckb/settings.php new file mode 100644 index 0000000..54ebf7e --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ckb/settings.php @@ -0,0 +1,33 @@ + + */ +$lang['style'] = 'شێوازی لیستی لاپەڕە'; +$lang['style_o_default'] = 'بنەڕەت'; +$lang['style_o_table'] = 'خشتە'; +$lang['style_o_list'] = 'خشتە/لیست'; +$lang['style_o_simple'] = 'لیستی سادە'; +$lang['showheader'] = 'پیشاندانی هێڵی ناونیشان'; +$lang['showdate'] = 'ستوونی بەروار پیشان بدە'; +$lang['showdate_o_0'] = 'بشارەوە'; +$lang['showdate_o_1'] = 'بەرواری دروست کردن'; +$lang['showdate_o_2'] = 'بەرواری هەموارکردن'; +$lang['showuser'] = 'ستوونی بەکارهێنەر نیشان بدە'; +$lang['showuser_o_0'] = 'بشارەوە'; +$lang['showuser_o_1'] = 'دروستکەر'; +$lang['showuser_o_2'] = 'بەشداران'; +$lang['showdesc'] = 'پیشاندانی ستوونی وەسف'; +$lang['showdesc_o_0'] = 'بشارەوە'; +$lang['showdesc_o_160'] = 'زۆرینە. 160 نووسە'; +$lang['showdesc_o_500'] = 'زۆرینە. 500 نووسە'; +$lang['showcomments'] = 'ستوونی سەرنجەکان نیشان بدە (پێوەکراوی گفتوگۆ پێویستە)'; +$lang['showlinkbacks'] = 'ستوونی linkback نیشان بدە (پێوەکراوی Linkback پێویستە)'; +$lang['showtags'] = 'نیشاندانی ستوونی تاگەکان (تاگی پێوەکراو پێویستە)'; +$lang['showfirsthl'] = 'یەکەم سەردێڕ نیشان بدە لەجیاتی ناوی لاپەڕەکە'; +$lang['showimage'] = 'پیشاندانی ستوونی وێنە (پێوەکراوی Pageimage پێویستە)'; +$lang['showdiff'] = 'نیشاندانی لینک بۆ لاپەڕەی جیاکراوە'; +$lang['sort'] = 'پۆلێنکردنی پەڕەکان بەپێی ناوی لاپەڕە'; +$lang['rsort'] = 'پێچەوانەکردنی لاپەڕەکان بەپێی ناوی لاپەڕە'; diff --git a/platform/www/lib/plugins/pagelist/lang/cs/lang.php b/platform/www/lib/plugins/pagelist/lang/cs/lang.php new file mode 100644 index 0000000..1873bc3 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/cs/lang.php @@ -0,0 +1,15 @@ + + * @author Roman Svoboda + */ +$lang['page'] = 'Stránka'; +$lang['date'] = 'Datum'; +$lang['user'] = 'Uživatel'; +$lang['desc'] = 'Popis'; +$lang['diff'] = 'Rozdíly'; +$lang['diff_title'] = 'Zobrazit rozdíly vůči aktuální verzi'; +$lang['diff_alt'] = 'Zobrazit rozdíly vůči aktuální verzi'; diff --git a/platform/www/lib/plugins/pagelist/lang/cs/settings.php b/platform/www/lib/plugins/pagelist/lang/cs/settings.php new file mode 100644 index 0000000..b605cdc --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/cs/settings.php @@ -0,0 +1,36 @@ + + * @author Lukas Zapletal + * @author Jaroslav Lichtblau + * @author Roman Svoboda + */ +$lang['style'] = 'Styl seznamu stránek'; +$lang['style_o_default'] = 'implicitní'; +$lang['style_o_table'] = 'tabulka'; +$lang['style_o_list'] = 'seznam'; +$lang['style_o_simple'] = 'jednoduchý seznam'; +$lang['showheader'] = 'zobrazovat čáru pod nadpisem'; +$lang['showdate'] = 'zobrazovat sloupec s datem'; +$lang['showdate_o_0'] = 'nezobrazovat'; +$lang['showdate_o_1'] = 'datum vytvoření'; +$lang['showdate_o_2'] = 'datum poslední změny'; +$lang['showuser'] = 'zobrazovat sloupec s uživatelem'; +$lang['showuser_o_0'] = 'nezobrazovat'; +$lang['showuser_o_1'] = 'autor'; +$lang['showuser_o_2'] = 'přispěvovatelé'; +$lang['showdesc'] = 'zobrazovat sloupec s popisem'; +$lang['showdesc_o_0'] = 'nezobrazovat'; +$lang['showdesc_o_160'] = 'max. 160 znaků'; +$lang['showdesc_o_500'] = 'max. 500 znaků'; +$lang['showcomments'] = 'zobrazovat sloupec s komentáři (vyžadován Discussion plugin)'; +$lang['showlinkbacks'] = 'zobrazit linkback sloupec (vyžaduje modul Linkback)'; +$lang['showtags'] = 'zobrazovat sloupec s tagy (vyžadován Tag plugin)'; +$lang['showfirsthl'] = 'zobrazit první nadpis místo jména stránky'; +$lang['showimage'] = 'zobrazovat sloupec s obrázkem (nutný plugin Pageimage)'; +$lang['showdiff'] = 'zobrazit odkaz na stránku diff'; +$lang['sort'] = 'řadit stránky dle jejich jména'; +$lang['rsort'] = 'řadit stránky zpětně dle jejich jména'; diff --git a/platform/www/lib/plugins/pagelist/lang/cy/lang.php b/platform/www/lib/plugins/pagelist/lang/cy/lang.php new file mode 100644 index 0000000..576af32 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/cy/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Tudalen'; +$lang['date'] = 'Dyddiad'; +$lang['user'] = 'Defnyddiwr'; +$lang['desc'] = 'Disgrifiad'; +$lang['diff'] = 'Gwahaniaethau'; +$lang['diff_title'] = 'Dangos gwahaniaethau i adolygiadau cyfredol'; +$lang['diff_alt'] = 'Dangos gwahaniaethau i adolygiadau cyfredol'; diff --git a/platform/www/lib/plugins/pagelist/lang/cy/settings.php b/platform/www/lib/plugins/pagelist/lang/cy/settings.php new file mode 100644 index 0000000..2846321 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/cy/settings.php @@ -0,0 +1,32 @@ + + */ +$lang['style'] = 'Arddull y rhestr tudalennau'; +$lang['style_o_default'] = 'diofyn'; +$lang['style_o_table'] = 'tabl'; +$lang['style_o_list'] = 'tabl/rhestr'; +$lang['style_o_simple'] = 'rhestr syml'; +$lang['showheader'] = 'dangos llinell pennawd'; +$lang['showdate'] = 'dangos colofn dyddiad'; +$lang['showdate_o_0'] = 'cyddio'; +$lang['showdate_o_1'] = 'dyddiad creu'; +$lang['showdate_o_2'] = 'dyddiad newid'; +$lang['showuser'] = 'dangos colofn defnyddiwr'; +$lang['showuser_o_0'] = 'cuddio'; +$lang['showuser_o_1'] = 'crëwr'; +$lang['showuser_o_2'] = 'cyfranwyr'; +$lang['showdesc'] = 'dangos colofn disgrifiad'; +$lang['showdesc_o_0'] = 'cuddio'; +$lang['showdesc_o_160'] = 'uchaf. 160 nod'; +$lang['showdesc_o_500'] = 'uchaf. 500 nod'; +$lang['showcomments'] = 'dangos colofn sylwadau (angen Ategyn \'Discussion\')'; +$lang['showlinkbacks'] = 'dangos colofn olgysylltiadau (angen Ategyn \'Linkback\')'; +$lang['showtags'] = 'dangos colofn tagiau (angen Ategyn \'Tag\')'; +$lang['showfirsthl'] = 'dangos y pennawd cyntaf yn hytrach nag enw\'r dudalen'; +$lang['showdiff'] = 'dangos y ddolen i\'r dudalen gwahaniaethau'; +$lang['sort'] = 'trefnu tudalennau gan enw tudalen'; +$lang['rsort'] = 'cildroi trefnu tudalennau gan enw tudalen'; diff --git a/platform/www/lib/plugins/pagelist/lang/da/lang.php b/platform/www/lib/plugins/pagelist/lang/da/lang.php new file mode 100644 index 0000000..2e37a4a --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/da/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Side'; +$lang['date'] = 'Dato'; +$lang['user'] = 'Bruger'; +$lang['desc'] = 'Beskrivelse'; +$lang['diff'] = 'Forskelle'; +$lang['diff_title'] = 'Vis forskelle fra nuværende revisioner'; +$lang['diff_alt'] = 'Vis forskelle fra nuværende revisioner'; diff --git a/platform/www/lib/plugins/pagelist/lang/da/settings.php b/platform/www/lib/plugins/pagelist/lang/da/settings.php new file mode 100644 index 0000000..2f9bd7a --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/da/settings.php @@ -0,0 +1,33 @@ + + */ +$lang['style'] = 'Stil til sideliste'; +$lang['style_o_default'] = 'standard'; +$lang['style_o_table'] = 'tabel'; +$lang['style_o_list'] = 'tabel/liste'; +$lang['style_o_simple'] = 'simpel liste'; +$lang['showheader'] = 'vis overskriftslinje'; +$lang['showdate'] = 'vis datokolonne'; +$lang['showdate_o_0'] = 'skjul'; +$lang['showdate_o_1'] = 'oprettelsesdato'; +$lang['showdate_o_2'] = 'ændringsdato'; +$lang['showuser'] = 'vis brugerkolonne'; +$lang['showuser_o_0'] = 'skjul'; +$lang['showuser_o_1'] = 'forfatter'; +$lang['showuser_o_2'] = 'bidragsydere'; +$lang['showdesc'] = 'vis beskrivelseskolonne'; +$lang['showdesc_o_0'] = 'skjul'; +$lang['showdesc_o_160'] = 'maksimalt 160 tegn'; +$lang['showdesc_o_500'] = 'maksimalt 500 tegn'; +$lang['showcomments'] = 'vis kommentarkolonne (Diskussion udvidelse påkrævet)'; +$lang['showlinkbacks'] = 'vis linkback kolonne (Linkback udvidelse påkrævet)'; +$lang['showtags'] = 'vis tagkolonne (Tag udvidelse påkrævet)'; +$lang['showfirsthl'] = 'vis første overskrift i stedet for sidenavn'; +$lang['showimage'] = 'vis billedkolonne (Pageimage plugin påkrævet)'; +$lang['showdiff'] = 'vis link til difference siden'; +$lang['sort'] = 'sorter sider efter sidenavn'; +$lang['rsort'] = 'sorter sider omvendt efter sidenavn'; diff --git a/platform/www/lib/plugins/pagelist/lang/de-informal/lang.php b/platform/www/lib/plugins/pagelist/lang/de-informal/lang.php new file mode 100644 index 0000000..adcba6b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/de-informal/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Seite'; +$lang['date'] = 'Datum'; +$lang['user'] = 'Benutzer'; +$lang['desc'] = 'Beschreibung'; +$lang['diff'] = 'Unterschiede'; +$lang['diff_title'] = 'Zeige Unterschiede zur aktuellen Version'; +$lang['diff_alt'] = 'Zeige Unterschiede zur aktuellen Version'; diff --git a/platform/www/lib/plugins/pagelist/lang/de-informal/settings.php b/platform/www/lib/plugins/pagelist/lang/de-informal/settings.php new file mode 100644 index 0000000..eb73719 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/de-informal/settings.php @@ -0,0 +1,33 @@ + + */ +$lang['style'] = 'Stil der Seitenlisten'; +$lang['style_o_default'] = 'Standard'; +$lang['style_o_table'] = 'Tabelle'; +$lang['style_o_list'] = 'Tabelle/Liste'; +$lang['style_o_simple'] = 'Einfache Liste'; +$lang['showheader'] = 'Tabellenkopf anzeigen'; +$lang['showdate'] = 'Datum anzeigen'; +$lang['showdate_o_0'] = 'ausblenden'; +$lang['showdate_o_1'] = 'Erstellungsdatum'; +$lang['showdate_o_2'] = 'Änderungsdatum'; +$lang['showuser'] = 'Benutzer anzeigen'; +$lang['showuser_o_0'] = 'ausblenden'; +$lang['showuser_o_1'] = 'Ersteller'; +$lang['showuser_o_2'] = 'Beitragende'; +$lang['showdesc'] = 'Beschreibung anzeigen'; +$lang['showdesc_o_0'] = 'ausblenden'; +$lang['showdesc_o_160'] = 'max. 160 Zeichen'; +$lang['showdesc_o_500'] = 'max. 500 Zeichen'; +$lang['showcomments'] = 'Kommentare anzeigen (Discussion Plugin wird benötigt)'; +$lang['showlinkbacks'] = 'Linkbacks anzeigen (Linkback Plugin wird benötigt)'; +$lang['showtags'] = 'Tags anzeigen (Tag Plugin wird benötigt)'; +$lang['showfirsthl'] = 'Erste Überschrift anstatt des Seitennamens anzeigen'; +$lang['showimage'] = 'Bild anzeigen (Pageimage Plugin wird benötigt)'; +$lang['showdiff'] = 'Link auf Diff-Seite anzeigen'; +$lang['sort'] = 'Seiten alphabetisch nach Namen sortieren'; +$lang['rsort'] = 'Seiten in umgekehrter alphabetischer Reihenfolge nach Namen sortieren'; diff --git a/platform/www/lib/plugins/pagelist/lang/de/lang.php b/platform/www/lib/plugins/pagelist/lang/de/lang.php new file mode 100644 index 0000000..74c3660 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/de/lang.php @@ -0,0 +1,16 @@ + + * @author Dominik Eckelmann + * @author e-dschungel + */ +$lang['page'] = 'Seite'; +$lang['date'] = 'Datum'; +$lang['user'] = 'Benutzer'; +$lang['desc'] = 'Beschreibung'; +$lang['diff'] = 'Unterschiede'; +$lang['diff_title'] = 'Zeige Unterschiede zur aktuellen Version'; +$lang['diff_alt'] = 'Zeige Unterschiede zur aktuellen Version'; diff --git a/platform/www/lib/plugins/pagelist/lang/de/settings.php b/platform/www/lib/plugins/pagelist/lang/de/settings.php new file mode 100644 index 0000000..7805f74 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/de/settings.php @@ -0,0 +1,35 @@ + + * @author Dominik Eckelmann + * @author e-dschungel + */ +$lang['style'] = 'Stil der Seitenlisten'; +$lang['style_o_default'] = 'Standard'; +$lang['style_o_table'] = 'Tabelle'; +$lang['style_o_list'] = 'Tabelle/Liste'; +$lang['style_o_simple'] = 'Einfache Liste'; +$lang['showheader'] = 'Tabellenkopf anzeigen'; +$lang['showdate'] = 'Datum anzeigen'; +$lang['showdate_o_0'] = 'ausblenden'; +$lang['showdate_o_1'] = 'Erstellungsdatum'; +$lang['showdate_o_2'] = 'Änderungsdatum'; +$lang['showuser'] = 'Benutzer anzeigen'; +$lang['showuser_o_0'] = 'ausblenden'; +$lang['showuser_o_1'] = 'Ersteller'; +$lang['showuser_o_2'] = 'Beitragende'; +$lang['showdesc'] = 'Beschreibung anzeigen'; +$lang['showdesc_o_0'] = 'ausblenden'; +$lang['showdesc_o_160'] = 'max. 160 Zeichen'; +$lang['showdesc_o_500'] = 'max. 500 Zeichen'; +$lang['showcomments'] = 'Kommentare anzeigen (Discussion Plugin wird benötigt)'; +$lang['showlinkbacks'] = 'Linkbacks anzeigen (Linkback Plugin wird benötigt)'; +$lang['showtags'] = 'Tags anzeigen (Tag Plugin wird benötigt)'; +$lang['showfirsthl'] = 'Erste Überschrift anstatt des Seitennamens anzeigen'; +$lang['showimage'] = 'Bild anzeigen (Pageimage Plugin wird benötigt)'; +$lang['showdiff'] = 'Link auf Diff-Seite anzeigen'; +$lang['sort'] = 'Seiten alphabetisch nach Namen sortieren'; +$lang['rsort'] = 'Seiten in umgekehrter alphabetischer Reihenfolge nach Namen sortieren'; diff --git a/platform/www/lib/plugins/pagelist/lang/en/lang.php b/platform/www/lib/plugins/pagelist/lang/en/lang.php new file mode 100644 index 0000000..241b285 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/en/lang.php @@ -0,0 +1,17 @@ + + */ + +// custom language strings for the plugin +$lang['page'] = 'Page'; +$lang['date'] = 'Date'; +$lang['user'] = 'User'; +$lang['desc'] = 'Description'; +$lang['diff'] = 'Differences'; +$lang['diff_title'] = 'Show differences to current revisions'; +$lang['diff_alt'] = 'Show differences to current revisions'; +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/en/settings.php b/platform/www/lib/plugins/pagelist/lang/en/settings.php new file mode 100644 index 0000000..87ee834 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/en/settings.php @@ -0,0 +1,38 @@ + + */ + +// for the configuration manager +$lang['style'] = 'Style of pagelist'; +$lang['style_o_default'] = 'default'; +$lang['style_o_table'] = 'table'; +$lang['style_o_list'] = 'table/list'; +$lang['style_o_simple'] = 'simple list'; + +$lang['showheader'] = 'show heading line'; +$lang['showdate'] = 'show date column'; +$lang['showdate_o_0'] = 'hide'; +$lang['showdate_o_1'] = 'creation date'; +$lang['showdate_o_2'] = 'modification date'; +$lang['showuser'] = 'show user column'; +$lang['showuser_o_0'] = 'hide'; +$lang['showuser_o_1'] = 'creator'; +$lang['showuser_o_2'] = 'contributors'; +$lang['showdesc'] = 'show description column'; +$lang['showdesc_o_0'] = 'hide'; +$lang['showdesc_o_160'] = 'max. 160 chars'; +$lang['showdesc_o_500'] = 'max. 500 chars'; +$lang['showcomments'] = 'show comments column (Discussion Plugin needed)'; +$lang['showlinkbacks'] = 'show linkbacks column (Linkback Plugin needed)'; +$lang['showtags'] = 'show tags column (Tag Plugin needed)'; +$lang['showfirsthl'] = 'show the first headline instead of the page name'; +$lang['showimage'] = 'show image column (Pageimage Plugin needed)'; +$lang['showdiff'] = 'show link to the diff page'; +$lang['sort'] = 'sort pages by pagename'; +$lang['rsort'] = 'reverse sort pages by pagename'; + +//Setup VIM: ex: et ts=2 : diff --git a/platform/www/lib/plugins/pagelist/lang/eo/lang.php b/platform/www/lib/plugins/pagelist/lang/eo/lang.php new file mode 100644 index 0000000..a1e6ee4 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/eo/lang.php @@ -0,0 +1,15 @@ + + */ + +// persona lingvo-cxenoj por la ilero (plugin) +$lang['page'] = 'Paĝo'; +$lang['date'] = 'Dato'; +$lang['user'] = 'Uzulo'; +$lang['desc'] = 'Priskribo'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/eo/settings.php b/platform/www/lib/plugins/pagelist/lang/eo/settings.php new file mode 100644 index 0000000..7a9ffb7 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/eo/settings.php @@ -0,0 +1,31 @@ + + */ + +// por la agordo-administrilo +$lang['style'] = 'Estilo de la tabelo por la paĝlistoj'; +$lang['style_o_default'] = 'aprioro'; +$lang['style_o_table'] = 'tabelo'; +$lang['style_o_list'] = 'listo'; + +$lang['showheader'] = 'montri kaplinion'; +$lang['showdate'] = 'montri kolumnon pri dato'; +$lang['showdate_o_0'] = 'kaŝi'; +$lang['showdate_o_1'] = 'dato de kreo'; +$lang['showdate_o_2'] = 'dato de modifo'; +$lang['showuser'] = 'montri kolumnon pri uzulo'; +$lang['showuser_o_0'] = 'kaŝi'; +$lang['showuser_o_1'] = 'kreinto'; +$lang['showuser_o_2'] = 'kontribuantoj'; +$lang['showdesc'] = 'montri kolumnon por priskribo'; +$lang['showdesc_o_0'] = 'kaŝi'; +$lang['showdesc_o_160'] = 'maks. 160 signaĵoj'; +$lang['showdesc_o_500'] = 'maks. 500 signaĵoj'; +$lang['showcomments'] = 'montri kolumnon pri komentoj ("Discussion Plugin" bezonatas)'; +$lang['showtags'] = 'montri kolumnon pri etikedoj ("Tag Plugin" bezonatas)'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/es/lang.php b/platform/www/lib/plugins/pagelist/lang/es/lang.php new file mode 100644 index 0000000..98824cb --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/es/lang.php @@ -0,0 +1,15 @@ + + * @author Domingo Redal + */ +$lang['page'] = 'Página'; +$lang['date'] = 'Fecha'; +$lang['user'] = 'Usuario'; +$lang['desc'] = 'Descripción'; +$lang['diff'] = 'Diferencias'; +$lang['diff_title'] = 'Mostrar diferencias con la revisión actual'; +$lang['diff_alt'] = 'Mostrar diferencias con la revisión actual'; diff --git a/platform/www/lib/plugins/pagelist/lang/es/settings.php b/platform/www/lib/plugins/pagelist/lang/es/settings.php new file mode 100644 index 0000000..62cafa6 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/es/settings.php @@ -0,0 +1,34 @@ + + * @author Domingo Redal + */ +$lang['style'] = 'estilo de las tablas pagelist'; +$lang['style_o_default'] = 'por defecto'; +$lang['style_o_table'] = 'tabla'; +$lang['style_o_list'] = 'lista'; +$lang['style_o_simple'] = 'lista simple'; +$lang['showheader'] = 'mostrar línea de encabezado'; +$lang['showdate'] = 'mostrar columna de fecha'; +$lang['showdate_o_0'] = 'ocultar'; +$lang['showdate_o_1'] = 'fecha de creación'; +$lang['showdate_o_2'] = 'fecha de modificación'; +$lang['showuser'] = 'mostrar columna de usuario'; +$lang['showuser_o_0'] = 'ocultar'; +$lang['showuser_o_1'] = 'creador'; +$lang['showuser_o_2'] = 'contributors'; +$lang['showdesc'] = 'mostrar columna de descripción'; +$lang['showdesc_o_0'] = 'ocultar'; +$lang['showdesc_o_160'] = 'max. 160 caracteres'; +$lang['showdesc_o_500'] = 'max. 500 caracteres'; +$lang['showcomments'] = 'mostrar columna de comentarios (Se requiere el plugin Discussion)'; +$lang['showlinkbacks'] = 'mostrar columna LinkBacks (Se requiere el plugin Linkback)'; +$lang['showtags'] = 'mostrar columna de etiquetas (Se requiere el plugin Tag)'; +$lang['showfirsthl'] = 'mostrar el primer título en lugar del nombre de la página'; +$lang['showimage'] = 'mostrar la columna de la imagen (plugin Pageimage necesario)'; +$lang['showdiff'] = 'muestra el enlace a la página de diferencias'; +$lang['sort'] = 'ordenar páginas por nombre de la página'; +$lang['rsort'] = 'orden descendente de páginas por nombre de la página'; diff --git a/platform/www/lib/plugins/pagelist/lang/fr/lang.php b/platform/www/lib/plugins/pagelist/lang/fr/lang.php new file mode 100644 index 0000000..9ddb894 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/fr/lang.php @@ -0,0 +1,15 @@ + + * @author Laynee + */ +$lang['page'] = 'Page'; +$lang['date'] = 'Date'; +$lang['user'] = 'Utilisateur'; +$lang['desc'] = 'Description'; +$lang['diff'] = 'Différences'; +$lang['diff_title'] = 'Différences avec la version précédente'; +$lang['diff_alt'] = 'Différences avec la version précédente'; diff --git a/platform/www/lib/plugins/pagelist/lang/fr/settings.php b/platform/www/lib/plugins/pagelist/lang/fr/settings.php new file mode 100644 index 0000000..31a7e0d --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/fr/settings.php @@ -0,0 +1,36 @@ + + * @author Nicolas Friedli + * @author Laynee + * @author Schplurtz le Déboulonné + */ +$lang['style'] = 'Type de présentation'; +$lang['style_o_default'] = 'par défault'; +$lang['style_o_table'] = 'tableau'; +$lang['style_o_list'] = 'liste'; +$lang['style_o_simple'] = 'liste simple'; +$lang['showheader'] = 'Afficher l\'entête'; +$lang['showdate'] = 'Afficher la colonne "date"'; +$lang['showdate_o_0'] = 'ne pas montrer'; +$lang['showdate_o_1'] = 'date de création'; +$lang['showdate_o_2'] = 'date de modification'; +$lang['showuser'] = 'Afficher la colonne "utilisateur"'; +$lang['showuser_o_0'] = 'ne pas montrer'; +$lang['showuser_o_1'] = 'créateur'; +$lang['showuser_o_2'] = 'contributeurs'; +$lang['showdesc'] = 'Afficher la colonne "description"'; +$lang['showdesc_o_0'] = 'ne pas montrer'; +$lang['showdesc_o_160'] = '160 caractères maximum'; +$lang['showdesc_o_500'] = '500 caractères maximum'; +$lang['showcomments'] = 'Afficher la colonne "commentaires" (plugin Discussion requis)'; +$lang['showlinkbacks'] = 'Afficher la colonne "liens de retour" (plugin Linkback requis)'; +$lang['showtags'] = 'Afficher la colonne "tags" (plugin Tag requis)'; +$lang['showfirsthl'] = 'Afficher le titre de premier niveau plutôt que le nom de page ("pagename")'; +$lang['showimage'] = 'Afficher la colonne image (greffon Pageimage nécessaire)'; +$lang['showdiff'] = 'Afficher un lien vers les anciennes révisions'; +$lang['sort'] = 'Trier selon le nom de page ("pagename")'; +$lang['rsort'] = 'Inverser le tri selon le nom des pages'; diff --git a/platform/www/lib/plugins/pagelist/lang/hu/lang.php b/platform/www/lib/plugins/pagelist/lang/hu/lang.php new file mode 100644 index 0000000..94eceaf --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/hu/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Oldal'; +$lang['date'] = 'Dátum'; +$lang['user'] = 'Felhasználó'; +$lang['desc'] = 'Leírás'; +$lang['diff'] = 'Eltérések'; +$lang['diff_title'] = 'Aktuális revizíóhoz képesti eltérések kijelzése'; +$lang['diff_alt'] = 'Aktuális revizíóhoz képesti eltérések kijelzése'; diff --git a/platform/www/lib/plugins/pagelist/lang/hu/settings.php b/platform/www/lib/plugins/pagelist/lang/hu/settings.php new file mode 100644 index 0000000..7f585a1 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/hu/settings.php @@ -0,0 +1,32 @@ + + */ +$lang['style'] = 'Oldallista stílusa'; +$lang['style_o_default'] = 'Alapértelmezett'; +$lang['style_o_table'] = 'Táblázat'; +$lang['style_o_list'] = 'Táblázat/lista'; +$lang['style_o_simple'] = 'Egyszerű lista'; +$lang['showheader'] = 'Címsor megjelenítése'; +$lang['showdate'] = 'Dátum oszlopának megjelenítése'; +$lang['showdate_o_0'] = 'Elrejtés'; +$lang['showdate_o_1'] = 'Készítés dátuma'; +$lang['showdate_o_2'] = 'Módosítás dátuma'; +$lang['showuser'] = 'Felhasználó oszlopának megjelenítése'; +$lang['showuser_o_0'] = 'Elrejtés'; +$lang['showuser_o_1'] = 'Készítette'; +$lang['showuser_o_2'] = 'Hozzájárulók'; +$lang['showdesc'] = 'Leírás oszlopának megjelenítése'; +$lang['showdesc_o_0'] = 'Elrejtés'; +$lang['showdesc_o_160'] = 'max. 160 karakter'; +$lang['showdesc_o_500'] = 'max. 500 karakter'; +$lang['showcomments'] = 'Hozzászólás oszlopának megjelenítése (Discussion bővítmény kell hozzá)'; +$lang['showlinkbacks'] = 'Visszamutató hivatkozások oszlopának megjelenítése (Linkback bővítmény kell hozzá)'; +$lang['showtags'] = 'Címke oszlopának megjelenítése (Tag bővítmény kell hozzá)'; +$lang['showfirsthl'] = 'Első címsor megjelenítése az oldal neve helyett'; +$lang['showdiff'] = 'Hivatkozás megjelenítése a korábbi változatok oldalára'; +$lang['sort'] = 'Sorrend az oldalak neve szerint'; +$lang['rsort'] = 'Fordított sorrend az oldalak neve szerint'; diff --git a/platform/www/lib/plugins/pagelist/lang/it/lang.php b/platform/www/lib/plugins/pagelist/lang/it/lang.php new file mode 100644 index 0000000..24eca96 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/it/lang.php @@ -0,0 +1,17 @@ + + * @author Willy + * @author OlatusRooc + * @author Marco Fenoglio + */ +$lang['page'] = 'Pagina'; +$lang['date'] = 'Data'; +$lang['user'] = 'Utente'; +$lang['desc'] = 'Descrizione'; +$lang['diff'] = 'Differenze'; +$lang['diff_title'] = 'Mostra le differenze alle revisioni correnti'; +$lang['diff_alt'] = 'Mostra le differenze alle revisioni correnti'; diff --git a/platform/www/lib/plugins/pagelist/lang/it/settings.php b/platform/www/lib/plugins/pagelist/lang/it/settings.php new file mode 100644 index 0000000..9550231 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/it/settings.php @@ -0,0 +1,36 @@ + + * @author Willy + * @author OlatusRooc + * @author Marco Fenoglio + */ +$lang['style'] = 'Stile delle tabelle di pagelist'; +$lang['style_o_default'] = 'default'; +$lang['style_o_table'] = 'tabella'; +$lang['style_o_list'] = 'tabella/elenco'; +$lang['style_o_simple'] = 'elenco semplice'; +$lang['showheader'] = 'mostra la riga delle intestazioni'; +$lang['showdate'] = 'mostra la colonna della data'; +$lang['showdate_o_0'] = 'nascondi'; +$lang['showdate_o_1'] = 'data di creazione'; +$lang['showdate_o_2'] = 'data di modifica'; +$lang['showuser'] = 'mostra la colonna user'; +$lang['showuser_o_0'] = 'nascondi'; +$lang['showuser_o_1'] = 'creatore'; +$lang['showuser_o_2'] = 'contributi'; +$lang['showdesc'] = 'mostra la colonna con la descrizione'; +$lang['showdesc_o_0'] = 'nascondi'; +$lang['showdesc_o_160'] = 'max. 160 caratteri'; +$lang['showdesc_o_500'] = 'max. 500 caratteri'; +$lang['showcomments'] = 'mostra la colonna dei commenti (devi avere installato il Plugin Discussion)'; +$lang['showlinkbacks'] = 'mostra la colonna dei linkback (devi avere installato il Plugin Linkback)'; +$lang['showtags'] = 'mostra la colonna dei tag (devi avere installato il Plugin Tag)'; +$lang['showfirsthl'] = 'mostrare la prima riga di intestazione anziché il nome della pagina'; +$lang['showimage'] = 'mostra la colonna immagine (è richiesto il plugin Pageimage)'; +$lang['showdiff'] = 'mostra link alla pagina delle differenze'; +$lang['sort'] = 'ordina le pagine per nome di pagina'; +$lang['rsort'] = 'ordina le pagine al contrario per nome di pagina'; diff --git a/platform/www/lib/plugins/pagelist/lang/ja/lang.php b/platform/www/lib/plugins/pagelist/lang/ja/lang.php new file mode 100644 index 0000000..34e1882 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ja/lang.php @@ -0,0 +1,15 @@ + + * @author Hideaki SAWADA + */ +$lang['page'] = 'ページ'; +$lang['date'] = '日付'; +$lang['user'] = 'ユーザー'; +$lang['desc'] = '内容'; +$lang['diff'] = '差分'; +$lang['diff_title'] = '現在のリビジョンとの差分を表示'; +$lang['diff_alt'] = '現在のリビジョンとの差分を表示'; diff --git a/platform/www/lib/plugins/pagelist/lang/ja/settings.php b/platform/www/lib/plugins/pagelist/lang/ja/settings.php new file mode 100644 index 0000000..21610e5 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ja/settings.php @@ -0,0 +1,35 @@ + + * @author Ikuo Obataya + * @author Hideaki SAWADA + */ +$lang['style'] = 'ページ一覧の表示形式'; +$lang['style_o_default'] = '横罫線のみのテーブル(デフォルト)'; +$lang['style_o_table'] = 'テーブル'; +$lang['style_o_list'] = 'リスト'; +$lang['style_o_simple'] = 'シンプルな一覧'; +$lang['showheader'] = 'ヘッダ行を表示する'; +$lang['showdate'] = '日付を表示する'; +$lang['showdate_o_0'] = '非表示'; +$lang['showdate_o_1'] = '作成日'; +$lang['showdate_o_2'] = '変更日'; +$lang['showuser'] = 'ユーザーを表示する'; +$lang['showuser_o_0'] = '非表示'; +$lang['showuser_o_1'] = '作成者'; +$lang['showuser_o_2'] = '編集者'; +$lang['showdesc'] = '内容を表示する'; +$lang['showdesc_o_0'] = '非表示'; +$lang['showdesc_o_160'] = '最大 160 文字'; +$lang['showdesc_o_500'] = '最大 500 文字'; +$lang['showcomments'] = 'コメントを表示する(Discussionプラグインが必要)'; +$lang['showlinkbacks'] = 'リンクバックを表示する(Linkbackプラグインが必要)'; +$lang['showtags'] = 'タグを表示する(Tagプラグインが必要)'; +$lang['showfirsthl'] = '最初の見出しをページ名とする'; +$lang['showimage'] = '画像カラムを表示(Pageimageプラグインが必要)'; +$lang['showdiff'] = '差分ページヘのリンクを表示'; +$lang['sort'] = 'ページ名でソート'; +$lang['rsort'] = 'ページ名で逆ソート'; diff --git a/platform/www/lib/plugins/pagelist/lang/ko/lang.php b/platform/www/lib/plugins/pagelist/lang/ko/lang.php new file mode 100644 index 0000000..1a9a432 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ko/lang.php @@ -0,0 +1,16 @@ + + * @author Myeongjin + * @author Erial + */ +$lang['page'] = '문서'; +$lang['date'] = '날짜'; +$lang['user'] = '사용자'; +$lang['desc'] = '설명'; +$lang['diff'] = '차이'; +$lang['diff_title'] = '현재 판과의 차이 보기'; +$lang['diff_alt'] = '현재 판과의 차이 보기'; diff --git a/platform/www/lib/plugins/pagelist/lang/ko/settings.php b/platform/www/lib/plugins/pagelist/lang/ko/settings.php new file mode 100644 index 0000000..e08495d --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ko/settings.php @@ -0,0 +1,34 @@ + + * @author Myeongjin + * @author Erial + */ +$lang['style'] = 'Pagelist의 스타일'; +$lang['style_o_default'] = '기본값'; +$lang['style_o_table'] = '표'; +$lang['style_o_list'] = '표/목록'; +$lang['style_o_simple'] = '간단한 목록'; +$lang['showheader'] = '제목 줄 보이기'; +$lang['showdate'] = '날짜 열 보이기'; +$lang['showdate_o_0'] = '숨기기'; +$lang['showdate_o_1'] = '만든 날짜'; +$lang['showdate_o_2'] = '수정한 날짜'; +$lang['showuser'] = '사용자 열 보이기'; +$lang['showuser_o_0'] = '숨기기'; +$lang['showuser_o_1'] = '만든이'; +$lang['showuser_o_2'] = '기여자'; +$lang['showdesc'] = '설명 열 보이기'; +$lang['showdesc_o_0'] = '숨기기'; +$lang['showdesc_o_160'] = '최대 160 문자'; +$lang['showdesc_o_500'] = '최대 500 문자'; +$lang['showcomments'] = '댓글 열 보이기 (Discussion 플러그인 필요)'; +$lang['showlinkbacks'] = '링크백 열 보이기 (Linkback 플러그인 필요)'; +$lang['showtags'] = '태그 열 보이기 (Tag 플러그인 필요)'; +$lang['showfirsthl'] = '문서 이름 대신 첫 제목줄 보이기'; +$lang['showdiff'] = '문서 차이 보기 링크 보이기'; +$lang['sort'] = '문서 이름 순으로 정렬'; +$lang['rsort'] = '문서 이름 역순으로 정렬'; diff --git a/platform/www/lib/plugins/pagelist/lang/nl/lang.php b/platform/www/lib/plugins/pagelist/lang/nl/lang.php new file mode 100644 index 0000000..ac707ba --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/nl/lang.php @@ -0,0 +1,16 @@ + + * @author Mark C. Prins + * @author Hugo Smet + */ +$lang['page'] = 'Pagina'; +$lang['date'] = 'Datum'; +$lang['user'] = 'Gebruiker'; +$lang['desc'] = 'Beschrijving'; +$lang['diff'] = 'Verschillen'; +$lang['diff_title'] = 'Toon verschillen met de huidige revisies'; +$lang['diff_alt'] = 'Toon verschillen met de huidige revisies'; diff --git a/platform/www/lib/plugins/pagelist/lang/nl/settings.php b/platform/www/lib/plugins/pagelist/lang/nl/settings.php new file mode 100644 index 0000000..5cf1e7b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/nl/settings.php @@ -0,0 +1,36 @@ + + * @author Mark C. Prins + * @author Hugo Smet + * @author mark prins + */ +$lang['style'] = 'Stijl van de pagelist tabellen'; +$lang['style_o_default'] = 'default'; +$lang['style_o_table'] = 'tabel'; +$lang['style_o_list'] = 'lijst'; +$lang['style_o_simple'] = 'Eenvoudige lijst'; +$lang['showheader'] = 'toon kopregel'; +$lang['showdate'] = 'toon datum kolom'; +$lang['showdate_o_0'] = 'verberg'; +$lang['showdate_o_1'] = 'aanmaakdatum'; +$lang['showdate_o_2'] = 'bewerkingsdatum'; +$lang['showuser'] = 'toon gebruikers kolom'; +$lang['showuser_o_0'] = 'verberg'; +$lang['showuser_o_1'] = 'maker'; +$lang['showuser_o_2'] = 'bijdragers'; +$lang['showdesc'] = 'toon beschrijvingskolom'; +$lang['showdesc_o_0'] = 'verberg'; +$lang['showdesc_o_160'] = 'max. 160 chars.'; +$lang['showdesc_o_500'] = 'max. 500 chars.'; +$lang['showcomments'] = 'toon commentaar kolom (Discussion Plugin benodigd)'; +$lang['showlinkbacks'] = 'toon linkbacks kolom (Linkback Plugin benodigd)'; +$lang['showtags'] = 'toon tags kolom (Tag Plugin benodigd)'; +$lang['showfirsthl'] = 'toon de eerste kopregel in plaats van de pagina naam'; +$lang['showimage'] = 'toon afbeeldingskolom (Pageimage Plugin nodig)'; +$lang['showdiff'] = 'toon link naar verschil pagina'; +$lang['sort'] = 'sorteer paginas op pagina naam'; +$lang['rsort'] = 'sorteer paginas omgekeerd op pagina naam'; diff --git a/platform/www/lib/plugins/pagelist/lang/no/lang.php b/platform/www/lib/plugins/pagelist/lang/no/lang.php new file mode 100644 index 0000000..5700a47 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/no/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Side'; +$lang['date'] = 'Dato'; +$lang['user'] = 'Bruker'; +$lang['desc'] = 'Beskrivelse'; +$lang['diff'] = 'Forskjeller'; +$lang['diff_title'] = 'Vis forskjeller til nåværende versjoner'; +$lang['diff_alt'] = 'Vis forskjeller til nåværende versjoner'; diff --git a/platform/www/lib/plugins/pagelist/lang/no/settings.php b/platform/www/lib/plugins/pagelist/lang/no/settings.php new file mode 100644 index 0000000..446e03f --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/no/settings.php @@ -0,0 +1,32 @@ + + */ +$lang['style'] = 'Pagelist-stil'; +$lang['style_o_default'] = 'standard'; +$lang['style_o_table'] = 'tabell'; +$lang['style_o_list'] = 'tabell/liste'; +$lang['style_o_simple'] = 'enkel liste'; +$lang['showheader'] = 'Vis tabellhoder'; +$lang['showdate'] = 'Vis kolonne for dato'; +$lang['showdate_o_0'] = 'skjul'; +$lang['showdate_o_1'] = 'opprettelses dato'; +$lang['showdate_o_2'] = 'dato for endring'; +$lang['showuser'] = 'Vis kolonne for bruker'; +$lang['showuser_o_0'] = 'skjul'; +$lang['showuser_o_1'] = 'opprettet av'; +$lang['showuser_o_2'] = 'bidragsytere'; +$lang['showdesc'] = 'vis kolonne for beskrivelse'; +$lang['showdesc_o_0'] = 'skjul'; +$lang['showdesc_o_160'] = 'maks. 160 tegn'; +$lang['showdesc_o_500'] = 'maks. 500 tegn'; +$lang['showcomments'] = 'Vis kolonne for kommenta (avhengig av Discussion-utvidelse)'; +$lang['showlinkbacks'] = 'Vis kolonne for tilbakelenker (avhengig av Linkback-utvidelse)'; +$lang['showtags'] = 'Vis kolonne for emneknagg (avhengig av Tag-utvidelse)'; +$lang['showfirsthl'] = 'Vis første overskrift istedetfor sidenavn'; +$lang['showdiff'] = 'Vis lenke til siden som viser forskjeller mellom versjoner av siden'; +$lang['sort'] = 'Sorter etter sidenavn'; +$lang['rsort'] = 'Sorter etter sidenavn i omvendt rekkefølge'; diff --git a/platform/www/lib/plugins/pagelist/lang/pt-br/lang.php b/platform/www/lib/plugins/pagelist/lang/pt-br/lang.php new file mode 100644 index 0000000..9c40d21 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/pt-br/lang.php @@ -0,0 +1,15 @@ + + */ + +// cadeias customizadas da língua para o plugin +$lang['page'] = 'Página'; +$lang['date'] = 'Data'; +$lang['user'] = 'Usuário'; +$lang['desc'] = 'Descrição'; + +//Setup Notepad++ enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/pt-br/settings.php b/platform/www/lib/plugins/pagelist/lang/pt-br/settings.php new file mode 100644 index 0000000..fac69a0 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/pt-br/settings.php @@ -0,0 +1,31 @@ + + */ + +// para o gerenciador de configurações +$lang['style'] = 'Estilo da tabela para a lista de páginas'; +$lang['style_o_default'] = 'original'; +$lang['style_o_table'] = 'tabela'; +$lang['style_o_list'] = 'lista'; + +$lang['showheader'] = 'mostrar cabeçalho'; +$lang['showdate'] = 'mostrar coluna de data'; +$lang['showdate_o_0'] = 'esconder'; +$lang['showdate_o_1'] = 'data de criação'; +$lang['showdate_o_2'] = 'data de modificação'; +$lang['showuser'] = 'mostrar coluna de usuário'; +$lang['showuser_o_0'] = 'esconder'; +$lang['showuser_o_1'] = 'criador'; +$lang['showuser_o_2'] = 'contribuidores'; +$lang['showdesc'] = 'mostrar coluna de descrição'; +$lang['showdesc_o_0'] = 'esconder'; +$lang['showdesc_o_160'] = 'max. 160 caracteres'; +$lang['showdesc_o_500'] = 'max. 500 caracteres'; +$lang['showcomments'] = 'mostrar coluna de comentários (precisa do "Discussion Plugin")'; +$lang['showtags'] = 'mostrar coluna de etiquetas (precisa do "Tag Plugin")'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/pt/lang.php b/platform/www/lib/plugins/pagelist/lang/pt/lang.php new file mode 100644 index 0000000..653dbce --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/pt/lang.php @@ -0,0 +1,15 @@ + + */ + +// custom language strings for the plugin +$lang['page'] = 'Página'; +$lang['date'] = 'Data'; +$lang['user'] = 'Utilizador'; +$lang['desc'] = 'Descrição'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : \ No newline at end of file diff --git a/platform/www/lib/plugins/pagelist/lang/pt/settings.php b/platform/www/lib/plugins/pagelist/lang/pt/settings.php new file mode 100644 index 0000000..6d1e1ae --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/pt/settings.php @@ -0,0 +1,35 @@ + + */ + +// for the configuration manager +$lang['style'] = 'Estilo da tabela para a lista de páginas'; +$lang['style_o_default'] = 'original'; +$lang['style_o_table'] = 'tabela'; +$lang['style_o_list'] = 'lista'; + +$lang['showheader'] = 'mostrar cabeçalho'; +$lang['showdate'] = 'mostrar coluna de data'; +$lang['showdate_o_0'] = 'esconder'; +$lang['showdate_o_1'] = 'data de criação'; +$lang['showdate_o_2'] = 'data de modificação'; +$lang['showuser'] = 'mostrar coluna de utilizador'; +$lang['showuser_o_0'] = 'esconder'; +$lang['showuser_o_1'] = 'criador'; +$lang['showuser_o_2'] = 'contribuidores'; +$lang['showdesc'] = 'mostrar coluna de descrição'; +$lang['showdesc_o_0'] = 'esconder'; +$lang['showdesc_o_160'] = 'max. 160 caracteres'; +$lang['showdesc_o_500'] = 'max. 500 caracteres'; +$lang['showcomments'] = 'mostrar coluna de comentários (precisa do "Discussion Plugin")'; +$lang['showlinkbacks'] = 'mostrar coluna de linkbacks (Linkback Plugin needed)'; +$lang['showtags'] = 'mostrar coluna de etiquetas (precisa do "Tag Plugin")'; +$lang['showfirsthl'] = 'mostrar o primeiro cabeçalho en veaz do nome da página'; +$lang['sort'] = 'ordenar páginas pelo nome'; +$lang['rsort'] = 'ordenar páginas inversamente pelo nome'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/ro/lang.php b/platform/www/lib/plugins/pagelist/lang/ro/lang.php new file mode 100644 index 0000000..233aa09 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ro/lang.php @@ -0,0 +1,12 @@ + + */ +$lang['page'] = 'Pagina'; +$lang['date'] = 'Data'; +$lang['user'] = 'Utilizator'; +$lang['desc'] = 'Descriere'; +$lang['diff'] = 'Diferente'; diff --git a/platform/www/lib/plugins/pagelist/lang/ro/settings.php b/platform/www/lib/plugins/pagelist/lang/ro/settings.php new file mode 100644 index 0000000..4533108 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ro/settings.php @@ -0,0 +1,13 @@ + + */ +$lang['style_o_default'] = 'implicit'; +$lang['style_o_table'] = 'tabel'; +$lang['style_o_list'] = 'tabel/lista'; +$lang['style_o_simple'] = 'lista simpla'; +$lang['showdate_o_0'] = 'ascunde'; +$lang['showuser_o_0'] = 'ascunde'; diff --git a/platform/www/lib/plugins/pagelist/lang/ru/lang.php b/platform/www/lib/plugins/pagelist/lang/ru/lang.php new file mode 100644 index 0000000..0653b5b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ru/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Страница'; +$lang['date'] = 'Дата'; +$lang['user'] = 'Участник'; +$lang['desc'] = 'Описание'; +$lang['diff'] = 'Отличия'; +$lang['diff_title'] = 'Показать отличия от текущей версии'; +$lang['diff_alt'] = 'Показать отличия от текущей версии'; diff --git a/platform/www/lib/plugins/pagelist/lang/ru/settings.php b/platform/www/lib/plugins/pagelist/lang/ru/settings.php new file mode 100644 index 0000000..9c5af24 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/ru/settings.php @@ -0,0 +1,35 @@ + + * @author Aleksandr Selivanov + * @author RainbowSpike <1@2.ru> + */ +$lang['style'] = 'Стиль списка страниц'; +$lang['style_o_default'] = 'по умолчанию'; +$lang['style_o_table'] = 'таблицей'; +$lang['style_o_list'] = 'списком в таблице'; +$lang['style_o_simple'] = 'простым списком'; +$lang['showheader'] = 'Отображать заголовок таблицы/списка'; +$lang['showdate'] = 'Столбец дат'; +$lang['showdate_o_0'] = 'скрыть'; +$lang['showdate_o_1'] = 'дата написания'; +$lang['showdate_o_2'] = 'дата редактирования'; +$lang['showuser'] = 'Столбец имён пользователей'; +$lang['showuser_o_0'] = 'скрыть'; +$lang['showuser_o_1'] = 'автор'; +$lang['showuser_o_2'] = 'соавторы'; +$lang['showdesc'] = 'Столбец описания'; +$lang['showdesc_o_0'] = 'скрыть'; +$lang['showdesc_o_160'] = 'Макс. 160 символов'; +$lang['showdesc_o_500'] = 'Макс. 500 символов'; +$lang['showcomments'] = 'Отображать столбец с комментариями (требуется плагин Discussion)'; +$lang['showlinkbacks'] = 'Отображать столбец с обратными ссылками (требуется плагин Linkback)'; +$lang['showtags'] = 'Отображать столбец с тегами (требуется плагин Tag)'; +$lang['showfirsthl'] = 'Отображать заголовок вместо имени страницы'; +$lang['showimage'] = 'показать столбец изображений (требуется плагин Pageimage)'; +$lang['showdiff'] = 'Отображать ссылку на страницу отличий'; +$lang['sort'] = 'Сортировка страниц по имени'; +$lang['rsort'] = 'Обратная сортировка страниц по имени'; diff --git a/platform/www/lib/plugins/pagelist/lang/sv/lang.php b/platform/www/lib/plugins/pagelist/lang/sv/lang.php new file mode 100644 index 0000000..44515c8 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/sv/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Sida'; +$lang['date'] = 'Datum'; +$lang['user'] = 'Användare'; +$lang['desc'] = 'Beskrivning'; +$lang['diff'] = 'Skillnader'; +$lang['diff_title'] = 'Visa skillnader mot nuvarande version'; +$lang['diff_alt'] = 'Visa skillnader mot nuvarande version'; diff --git a/platform/www/lib/plugins/pagelist/lang/sv/settings.php b/platform/www/lib/plugins/pagelist/lang/sv/settings.php new file mode 100644 index 0000000..a778e00 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/sv/settings.php @@ -0,0 +1,33 @@ + + */ +$lang['style'] = 'Stil på sidlistning'; +$lang['style_o_default'] = 'standard'; +$lang['style_o_table'] = 'tabell'; +$lang['style_o_list'] = 'tabell/lista'; +$lang['style_o_simple'] = 'enkel lista'; +$lang['showheader'] = 'visa rubrikrad'; +$lang['showdate'] = 'visa datumkolumn'; +$lang['showdate_o_0'] = 'göm'; +$lang['showdate_o_1'] = 'skapandedatum'; +$lang['showdate_o_2'] = 'ändringsdatum'; +$lang['showuser'] = 'visa användarkolumn'; +$lang['showuser_o_0'] = 'göm'; +$lang['showuser_o_1'] = 'skapat av'; +$lang['showuser_o_2'] = 'bidragslämnare'; +$lang['showdesc'] = 'visa kolumn för beskrivning'; +$lang['showdesc_o_0'] = 'göm'; +$lang['showdesc_o_160'] = 'max 160 tecken'; +$lang['showdesc_o_500'] = 'max 500 tecken'; +$lang['showcomments'] = 'visa kolumn för kommentarer (kräver Discussion-plugin)'; +$lang['showlinkbacks'] = 'visa kolumn tillbakalänkingar (kräver Linkback-plugin)'; +$lang['showtags'] = 'visa kolumn för taggar (kräver tagg-plugin)'; +$lang['showfirsthl'] = 'visa den första rubriken istället för sidnamn'; +$lang['showimage'] = 'visa bildkolumn (Pageimage-pluginet krävs)'; +$lang['showdiff'] = 'visa länk till sidan som visar skillnader mellan versioner'; +$lang['sort'] = 'sortera sidor efter sidnamn'; +$lang['rsort'] = 'sortera i omvänd ordning efter sidnamn'; diff --git a/platform/www/lib/plugins/pagelist/lang/tr/lang.php b/platform/www/lib/plugins/pagelist/lang/tr/lang.php new file mode 100644 index 0000000..ed49103 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/tr/lang.php @@ -0,0 +1,15 @@ + + * @author İlker R. Kapaç + */ +$lang['page'] = 'Sayfa'; +$lang['date'] = 'Tarih'; +$lang['user'] = 'Kullanıcı'; +$lang['desc'] = 'Açıklama'; +$lang['diff'] = 'Farklar'; +$lang['diff_title'] = 'Güncel sürümler ile aradaki farkları göster'; +$lang['diff_alt'] = 'Güncel sürümler ile aradaki farkları göster'; diff --git a/platform/www/lib/plugins/pagelist/lang/tr/settings.php b/platform/www/lib/plugins/pagelist/lang/tr/settings.php new file mode 100644 index 0000000..d3a9425 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/tr/settings.php @@ -0,0 +1,33 @@ + + * @author İlker R. Kapaç + */ +$lang['style'] = 'Pagelist tablolarının biçimi'; +$lang['style_o_default'] = 'varsayılan'; +$lang['style_o_table'] = 'tablo'; +$lang['style_o_list'] = 'liste'; +$lang['style_o_simple'] = 'basit liste'; +$lang['showheader'] = 'Başlık satırını göster'; +$lang['showdate'] = 'Tarih sütununu göster'; +$lang['showdate_o_0'] = 'gizle'; +$lang['showdate_o_1'] = 'oluşturma tarihi'; +$lang['showdate_o_2'] = 'düzenleme tarihi'; +$lang['showuser'] = 'Kullanıcı sütununu göster'; +$lang['showuser_o_0'] = 'gizle'; +$lang['showuser_o_1'] = 'oluşturan'; +$lang['showuser_o_2'] = 'katkıda bulunanlar'; +$lang['showdesc'] = 'Açıklama sütununu göster'; +$lang['showdesc_o_0'] = 'gizle'; +$lang['showdesc_o_160'] = 'en fazla 160 harf'; +$lang['showdesc_o_500'] = 'en fazla 500 harf'; +$lang['showcomments'] = 'Yorumlar sütununu göster (Discussion eklentisi yüklü olmalıdır)'; +$lang['showlinkbacks'] = 'Geri bağlantılar sütununu göster (Linkback eklentisi yüklü olmalıdır)'; +$lang['showtags'] = 'Etiketler sütununu göster (Tag eklentisi yüklü olmalıdır)'; +$lang['showfirsthl'] = 'Sayfa adı yerine ilk başlığı göster'; +$lang['showdiff'] = 'fark sayfası için bağlantı göster'; +$lang['sort'] = 'Sayfaları, adlarına göre sırala'; +$lang['rsort'] = 'Sayfaları, adlarının tersine göre sırala'; diff --git a/platform/www/lib/plugins/pagelist/lang/uk/lang.php b/platform/www/lib/plugins/pagelist/lang/uk/lang.php new file mode 100644 index 0000000..9224cdf --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/uk/lang.php @@ -0,0 +1,14 @@ + + */ +$lang['page'] = 'Сторінка'; +$lang['date'] = 'Дата'; +$lang['user'] = 'Користувач'; +$lang['desc'] = 'Опис'; +$lang['diff'] = 'Відмінності'; +$lang['diff_title'] = 'Показати відмінності від поточних змін'; +$lang['diff_alt'] = 'Показати відмінності від поточних змін'; diff --git a/platform/www/lib/plugins/pagelist/lang/uk/settings.php b/platform/www/lib/plugins/pagelist/lang/uk/settings.php new file mode 100644 index 0000000..888e5c2 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/uk/settings.php @@ -0,0 +1,33 @@ + + */ +$lang['style'] = 'Стиль переліку сторінок'; +$lang['style_o_default'] = 'за замовчення'; +$lang['style_o_table'] = 'таблиця'; +$lang['style_o_list'] = 'таблиця/перелік'; +$lang['style_o_simple'] = 'простий перелік'; +$lang['showheader'] = 'показати заголовок'; +$lang['showdate'] = 'показати колонку з датою'; +$lang['showdate_o_0'] = 'сховати'; +$lang['showdate_o_1'] = 'дата створення'; +$lang['showdate_o_2'] = 'дата редагування'; +$lang['showuser'] = 'показати колонку користувача'; +$lang['showuser_o_0'] = 'сховати'; +$lang['showuser_o_1'] = 'автор'; +$lang['showuser_o_2'] = 'помічники'; +$lang['showdesc'] = 'показати колонку з описом'; +$lang['showdesc_o_0'] = 'сховати'; +$lang['showdesc_o_160'] = 'до 160 символів'; +$lang['showdesc_o_500'] = 'до 500 символів'; +$lang['showcomments'] = 'показати колонку з коментарями (має бути встановлений додаток Discussion)'; +$lang['showlinkbacks'] = 'показати колонку з переліком сторінок, що посилаються на цю сторінку (має бути встановлений додаток Linkback)'; +$lang['showtags'] = 'показати колонку з тегами (має бути встановлений додаток Tag)'; +$lang['showfirsthl'] = 'показувати перший заголовок замість назви сторінки'; +$lang['showimage'] = 'показати колонку із зображенням (має бути встановлений додаток Pageimage)'; +$lang['showdiff'] = 'показати посилання на сторінку відмінностей'; +$lang['sort'] = 'сортувати сторінки за назвою'; +$lang['rsort'] = 'сортувати за назвою в зворотному порядку '; diff --git a/platform/www/lib/plugins/pagelist/lang/zh-tw/lang.php b/platform/www/lib/plugins/pagelist/lang/zh-tw/lang.php new file mode 100644 index 0000000..d1c477c --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/zh-tw/lang.php @@ -0,0 +1,15 @@ + + */ + +// custom language strings for the plugin +$lang['page'] = '頁面'; +$lang['date'] = '日期'; +$lang['user'] = '使用者'; +$lang['desc'] = '描述'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : \ No newline at end of file diff --git a/platform/www/lib/plugins/pagelist/lang/zh-tw/settings.php b/platform/www/lib/plugins/pagelist/lang/zh-tw/settings.php new file mode 100644 index 0000000..50c0b08 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/zh-tw/settings.php @@ -0,0 +1,35 @@ + + */ + +// for the configuration manager +$lang['style'] = '頁面列表的格式'; +$lang['style_o_default'] = '預設'; +$lang['style_o_table'] = '表格'; +$lang['style_o_list'] = '列表'; + +$lang['showheader'] = '顯示標題列'; +$lang['showdate'] = '顯示日期欄'; +$lang['showdate_o_0'] = '隱藏'; +$lang['showdate_o_1'] = '建立日期'; +$lang['showdate_o_2'] = '修改日期'; +$lang['showuser'] = '顯示使用者欄'; +$lang['showuser_o_0'] = '隱藏'; +$lang['showuser_o_1'] = '建立者'; +$lang['showuser_o_2'] = '貢獻者'; +$lang['showdesc'] = '顯示描述欄'; +$lang['showdesc_o_0'] = '隱藏'; +$lang['showdesc_o_160'] = '最多 160 字元'; +$lang['showdesc_o_500'] = '最多 500 字元'; +$lang['showcomments'] = '顯示意見欄 (需要 Discussion 插件)'; +$lang['showlinkbacks'] = '顯示反向連結欄 (需要 Linkback 插件)'; +$lang['showtags'] = '顯示標籤欄 (需要 Tag 插件)'; +$lang['showfirsthl'] = '顯示第一標題而非頁面名稱'; +$lang['sort'] = '按頁面名稱排序'; +$lang['rsort'] = '按頁面名稱反向排序'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : \ No newline at end of file diff --git a/platform/www/lib/plugins/pagelist/lang/zh/lang.php b/platform/www/lib/plugins/pagelist/lang/zh/lang.php new file mode 100644 index 0000000..ddcce5c --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/zh/lang.php @@ -0,0 +1,15 @@ + + */ + +// custom language strings for the plugin +$lang['page'] = '页面'; +$lang['date'] = '日期'; +$lang['user'] = '用户'; +$lang['desc'] = '描述'; + +//Setup VIM: ex: et ts=2 enc=utf-8 : diff --git a/platform/www/lib/plugins/pagelist/lang/zh/settings.php b/platform/www/lib/plugins/pagelist/lang/zh/settings.php new file mode 100644 index 0000000..9a4a21b --- /dev/null +++ b/platform/www/lib/plugins/pagelist/lang/zh/settings.php @@ -0,0 +1,35 @@ + + */ + +// for the configuration manager +$lang['style'] = '页面列表的样式'; +$lang['style_o_default'] = '默认'; +$lang['style_o_table'] = '表格'; +$lang['style_o_list'] = '列表'; + +$lang['showheader'] = '显示标题行'; +$lang['showdate'] = '显示日期列'; +$lang['showdate_o_0'] = '隐藏'; +$lang['showdate_o_1'] = '创建日期'; +$lang['showdate_o_2'] = '修改日期'; +$lang['showuser'] = '显示用户列'; +$lang['showuser_o_0'] = '隐藏'; +$lang['showuser_o_1'] = '创建者'; +$lang['showuser_o_2'] = '贡献者'; +$lang['showdesc'] = '显示描述列'; +$lang['showdesc_o_0'] = '隐藏'; +$lang['showdesc_o_160'] = '最多 160 个字符'; +$lang['showdesc_o_500'] = '最多 500 个字符'; +$lang['showcomments'] = '显示评论列 (需要 Discussion 插件)'; +$lang['showlinkbacks'] = '显示反向链接列 (需要 Linkback 插件)'; +$lang['showtags'] = '显示标签列 (需要 Tag 插件)'; +$lang['showfirsthl'] = '显示第一个标题而非页面名称'; +$lang['sort'] = '按页面名称排序'; +$lang['rsort'] = '按页面名称逆序排序'; + +//Setup VIM: ex: et ts=2 : diff --git a/platform/www/lib/plugins/pagelist/manager.dat b/platform/www/lib/plugins/pagelist/manager.dat new file mode 100644 index 0000000..8560890 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/manager.dat @@ -0,0 +1,2 @@ +downloadurl=https://github.com/dokufreaks/plugin-pagelist/archive/master.zip +installed=Thu, 17 Mar 2022 13:03:49 +0000 diff --git a/platform/www/lib/plugins/pagelist/plugin.info.txt b/platform/www/lib/plugins/pagelist/plugin.info.txt new file mode 100644 index 0000000..340001c --- /dev/null +++ b/platform/www/lib/plugins/pagelist/plugin.info.txt @@ -0,0 +1,8 @@ +# General Plugin Info do not edit +base pagelist +author Matthias Schulte, Michael Hamann, Michael Klier, Gina Haeussge +email michael@content-space.de +date 2020-09-27 +name Pagelist Plugin +desc Lists pages in a nice formatted way +url http://www.dokuwiki.org/plugin:pagelist diff --git a/platform/www/lib/plugins/pagelist/style.css b/platform/www/lib/plugins/pagelist/style.css new file mode 100644 index 0000000..71961d8 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/style.css @@ -0,0 +1,57 @@ +div.dokuwiki table.pagelist, +div.dokuwiki table.ul { + border: 0; + padding: 0; + border-spacing: 0; + margin-bottom: 1em; + border-collapse: collapse; +} + +div.dokuwiki table.pagelist tr { + border-top: 1px solid __border__; + border-bottom: 1px solid __border__; +} + +div.dokuwiki table.pagelist th, +div.dokuwiki table.pagelist td { + padding: 1px 1em 1px 0; + border: 0; +} + +div.dokuwiki table.ul th, +div.dokuwiki table.ul td { + padding: 0 1em 0 0; + border: 0; +} + +div.dokuwiki table.ul ul { + margin: 0 0 0 1.5em; +} + +div.dokuwiki table.pagelist th, +div.dokuwiki table.ul th { + background-color: __background_alt__; +} + +div.dokuwiki th.page, +div.dokuwiki th.date, +div.dokuwiki th.user, +div.dokuwiki th.desc, +div.dokuwiki th.comments, +div.dokuwiki th.linkbacks, +div.dokuwiki th.tags, +div.dokuwiki th.diff, +div.dokuwiki td.date, +div.dokuwiki td.user, +div.dokuwiki td.desc, +div.dokuwiki td.comments, +div.dokuwiki td.linkbacks, +div.dokuwiki td.tags, +div.dokuwiki td.diff { + color: __text_neu__; + font-size: 80%; +} + +div.dokuwiki td.date { + text-align: left; +} diff --git a/platform/www/lib/plugins/pagelist/syntax.php b/platform/www/lib/plugins/pagelist/syntax.php new file mode 100644 index 0000000..a3ea0b2 --- /dev/null +++ b/platform/www/lib/plugins/pagelist/syntax.php @@ -0,0 +1,106 @@ + + */ + +class syntax_plugin_pagelist extends DokuWiki_Syntax_Plugin { + + function getType() { return 'substition';} + function getPType() { return 'block';} + function getSort() { return 168; } + + /** + * Connect pattern to lexer + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('', $mode, 'plugin_pagelist'); + } + + /** + * Handle the match + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + global $ID; + + $match = substr($match, 9, -11); // strip markup + list($flags, $match) = explode('>', $match, 2); + $flags = explode('&', substr($flags, 1)); + $items = explode('*', $match); + + $pages = array(); + $c = count($items); + for ($i = 0; $i < $c; $i++) { + if (!preg_match('/\[\[(.+?)\]\]/', $items[$i], $match)) continue; + list($id, $title, $description) = explode('|', $match[1], 3); + list($id, $section) = explode('#', $id, 2); + if (!$id) $id = $ID; + resolve_pageid(getNS($ID), $id, $exists); + + // page has an image title + if (($title) && (preg_match('/\{\{(.+?)\}\}/', $title, $match))) { + list($image, $title) = explode('|', $match[1], 2); + list($ext, $mime) = mimetype($image); + if (!substr($mime, 0, 5) == 'image') $image = ''; + $pages[] = array( + 'id' => $id, + 'section' => cleanID($section), + 'title' => trim($title), + 'titleimage' => trim($image), + 'description' => trim($description), // Holds the added parameter for own descriptions + 'exists' => $exists, + ); + + // text title (if any) + } else { + $pages[] = array( + 'id' => $id, + 'section' => cleanID($section), + 'title' => trim($title), + 'description' => trim($description), // Holds the added parameter for own descriptions + 'exists' => $exists, + ); + } + } + return array($flags, $pages); + } + + /** + * Create output + */ + function render($mode, Doku_Renderer $renderer, $data) { + list($flags, $pages) = $data; + + // for XHTML output + if ($mode == 'xhtml') { + if (!$my =& plugin_load('helper', 'pagelist')) return false; + $my->setFlags($flags); + $my->startList(); + + if($my->sort || $my->rsort) { // pages should be sorted by pagename + $keys = array(); + $fnc = create_function('$a, $b', 'return strcmp(noNS($a["id"]), noNS($b["id"])); '); + usort($pages, $fnc); + // rsort is true - revserse sort the pages + if($my->rsort) krsort($pages); + } + + foreach($pages as $page) { + $my->addPage($page); + } + $renderer->doc .= $my->finishList(); + return true; + + // for metadata renderer + } elseif ($mode == 'metadata') { + foreach ($pages as $page) { + $renderer->meta['relation']['references'][$page['id']] = $page['exists']; + } + return true; + } + return false; + } +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/COPYING b/platform/www/lib/plugins/tag/COPYING new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/platform/www/lib/plugins/tag/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/platform/www/lib/plugins/tag/README b/platform/www/lib/plugins/tag/README new file mode 100644 index 0000000..8b25647 --- /dev/null +++ b/platform/www/lib/plugins/tag/README @@ -0,0 +1,10 @@ +====== Tag Plugin for DokuWiki ====== + +All documentation for the Tag Plugin is available online at: + + * http://dokuwiki.org/plugin:tag + +(c) 2005 - 2007 by Esther Brunner +(c) 2008 - 2009 by Gina Häußge, Michael Klier +(c) 2012 - 2013 by Michael Hamann and the tag plugin team +See COPYING for license info. diff --git a/platform/www/lib/plugins/tag/_test/topic_and_tagrefine.test.php b/platform/www/lib/plugins/tag/_test/topic_and_tagrefine.test.php new file mode 100644 index 0000000..b466eb3 --- /dev/null +++ b/platform/www/lib/plugins/tag/_test/topic_and_tagrefine.test.php @@ -0,0 +1,107 @@ + array('id' => 'tagged_page'), + 'negative_page' => array('id' => 'negative_page'), + 'third_page' => array('id' => 'third_page') + ); + public function setUp() { + $this->pluginsEnabled[] = 'tag'; + parent::setUp(); + + saveWikiText( + 'tagged_page', + '{{tag>mytag test2tag}}', 'Test' + ); + saveWikiText( + 'negative_page', + '{{tag>negative_tag mytag}}', + 'Test setup' + ); + saveWikiText( + 'third_page', + '{{tag>third_tag}}', + 'Test setup' + ); + idx_addPage('tagged_page'); + idx_addPage('negative_page'); + idx_addPage('third_page'); + } + + public function testEmptyTag() { + $this->assertTopicRefine(array('tagged_page', 'negative_page', 'third_page'), ''); + } + + public function testOnlyNegative() { + $this->assertTopicRefine(array('tagged_page', 'third_page'), '-negative_tag'); + } + + public function testMixed() { + $this->assertTopicRefine(array('tagged_page'), 'mytag -negative_tag'); + + } + + public function testAnd() { + $this->assertTopicRefine(array('tagged_page'), '+mytag +test2tag'); + } + + public function testAndOr() { + $this->assertTopicRefine(array('tagged_page', 'third_page'), '+test2tag third_tag'); + } + + public function testOrAnd() { + $this->assertTopicRefine(array('tagged_page'), 'mytag +test2tag'); + } + + public function testRefineDoesntAdd() { + /** @var helper_plugin_tag $helper */ + $helper = plugin_load('helper', 'tag'); + $pages = $helper->tagRefine(array(), 'mytag'); + $this->hasPages(array(), $pages, 'Refine with empty input array and "mytag" query: '); + } + + /** + * Test if the getTopic and the tagRefine function with all pages as input both return the expected pages + * + * @param array $expected expected page ids + * @param string $query the query for the tagRefine/getTopic-functions + */ + private function assertTopicRefine($expected, $query) { + /** @var helper_plugin_tag $helper */ + $helper = plugin_load('helper', 'tag'); + $pages = $helper->tagRefine($this->all_pages, $query); + $this->hasPages($expected, $pages, 'Refine: '.$query.': '); + $pages = $helper->getTopic('', '', $query); + $this->hasPages($expected, $pages, 'Topic: '.$query.': '); + } + + /** + * Makes sure that all pages were found and not more + * + * @param array $expected List of page ids + * @param array $actual Result list from getTopic/tagRefine + * @param string $msg_prefix A prefix that is prepended to all messages + */ + private function hasPages($expected, $actual, $msg_prefix = '') { + foreach ($expected as $id) { + $found = false; + foreach ($actual as $page) { + if ($page['id'] === $id) { + $found = true; + break; + } + } + $this->assertTrue($found, $msg_prefix.'Page '.$id.' expected but not found in the result'); + } + + foreach ($actual as $page) { + $this->assertTrue(in_array($page['id'], $expected), $msg_prefix.'Page '.$page['id'].' is in the result but wasn\'t expected'); + } + } +} diff --git a/platform/www/lib/plugins/tag/_test/topic_sort.test.php b/platform/www/lib/plugins/tag/_test/topic_sort.test.php new file mode 100644 index 0000000..aca59f4 --- /dev/null +++ b/platform/www/lib/plugins/tag/_test/topic_sort.test.php @@ -0,0 +1,59 @@ +pluginsEnabled[] = 'tag'; + parent::setUp(); + + $conf['plugin']['tag']['sortkey'] = 'ns'; + + $this->helper = plugin_load('helper', 'tag'); + + + foreach ($this->pages as $page) { + saveWikiText( + $page, + '{{tag>mytag}}', 'Test' + ); + idx_addPage($page); + } + } + + public function test_ns_sort() { + $this->assertEquals($this->pages, $this->extract_ids($this->helper->getTopic('', null, 'mytag'))); + } + + + /** + * Extract the id attribute of the supplied pages + * + * @param array $pages The pages that shall be used + * @return array The ids of the pages + */ + private function extract_ids($pages) { + $result = array(); + foreach ($pages as $page) { + $result[] = $page['id']; + } + return $result; + } + +} diff --git a/platform/www/lib/plugins/tag/_test/topic_tag.test.php b/platform/www/lib/plugins/tag/_test/topic_tag.test.php new file mode 100644 index 0000000..63908aa --- /dev/null +++ b/platform/www/lib/plugins/tag/_test/topic_tag.test.php @@ -0,0 +1,36 @@ +pluginsEnabled[] = 'tag'; + $this->pluginsEnabled[] = 'pagelist'; + parent::setup(); + } + + function test_topic_tag() { + saveWikiText( + 'tagged_page', + '{{tag>mytag test2tag}}', 'Test' + ); + saveWikiText( + 'topic_page', + '{{topic>mytag}}'.DOKU_LF.DOKU_LF.'{{tag>topictag mytag}}'.DOKU_LF, 'Test' + ); + idx_addPage('topic_page'); + idx_addPage('tagged_page'); + $this->assertContains('tag:topictag', p_wiki_xhtml('topic_page'), 'Page with tag syntax doesn\'t contain tag output'); + $this->assertNotContains('tag:test2tag', p_wiki_xhtml('topic_page'), 'Page with tag and topic syntax tag which is listed in a page that is listed in the topic syntax but not on the page itself'); + $this->assertContains('topic_page', p_wiki_xhtml('topic_page'), 'Page with topic and tag syntax doesn\'t list itself in the topic syntax'); + $this->assertContains('tagged_page', p_wiki_xhtml('topic_page'), 'Page with topic syntax doesn\'t list matching page'); + $this->assertContains('tag:mytag', p_wiki_xhtml('tagged_page'), 'Page with tag syntax doesn\'t contain tag output'); + $this->assertContains('tag:test2tag', p_wiki_xhtml('tagged_page'), 'Page with tag syntax doesn\'t contain tag output'); + $this->assertNotContains('tag:topictag', p_wiki_xhtml('tagged_page'), 'Page with tag syntax contains tag from a page in which it is listed in the topic syntax'); + saveWikiText('tagged_page', '{{tag>test2tag}}', 'Deleted mytag'); + $this->assertNotContains('tagged_page', p_wiki_xhtml('topic_page'), 'Page that no longer contains the tag is still listed in the topic syntax (caching problems?)'); + $this->assertNotContains('tag:mytag', p_wiki_xhtml('tagged_page'), 'Removed tag is still listed in XHTML output'); + + } +} diff --git a/platform/www/lib/plugins/tag/action.php b/platform/www/lib/plugins/tag/action.php new file mode 100644 index 0000000..d008628 --- /dev/null +++ b/platform/www/lib/plugins/tag/action.php @@ -0,0 +1,138 @@ + + */ + +/** + * Action part of the tag plugin, handles tag display and index updates + */ +class action_plugin_tag extends DokuWiki_Action_Plugin { + + /** + * register the eventhandlers + * + * @param Doku_Event_Handler $contr + */ + function register(Doku_Event_Handler $contr) { + $contr->register_hook('ACTION_ACT_PREPROCESS', 'BEFORE', $this, '_handle_act', array()); + $contr->register_hook('TPL_ACT_UNKNOWN', 'BEFORE', $this, '_handle_tpl_act', array()); + $contr->register_hook('TPL_METAHEADER_OUTPUT', 'BEFORE', $this, '_handle_keywords', array()); + if($this->getConf('toolbar_icon')) $contr->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'insert_toolbar_button', array ()); + $contr->register_hook('INDEXER_VERSION_GET', 'BEFORE', $this, '_indexer_version', array()); + $contr->register_hook('INDEXER_PAGE_ADD', 'BEFORE', $this, '_indexer_index_tags', array()); + } + + /** + * Add a version string to the index so it is rebuilt + * whenever the stored data format changes. + */ + function _indexer_version(Doku_Event $event, $param) { + global $conf; + $event->data['plugin_tag'] = '0.2.deaccent='.$conf['deaccent']; + } + + /** + * Add all data of the subject metadata to the metadata index. + */ + function _indexer_index_tags(Doku_Event $event, $param) { + /* @var helper_plugin_tag $helper */ + if ($helper = $this->loadHelper('tag')) { + // make sure the tags are cleaned and no duplicate tags are added to the index + $tags = p_get_metadata($event->data['page'], 'subject'); + if (!is_array($tags)) { + $event->data['metadata']['subject'] = array(); + } else { + $event->data['metadata']['subject'] = $helper->_cleanTagList($tags); + } + } + } + + /** + * catch tag action + * + * @author Michael Klier + */ + function _handle_act(Doku_Event $event, $param) { + if($event->data != 'showtag') return; + $event->preventDefault(); + } + + /** + * Display the tag page + * + * @param Doku_Event $event The TPL_ACT_UNKNOWN event + * @param array $param optional parameters (unused) + */ + function _handle_tpl_act(Doku_Event $event, $param) { + global $lang; + + if($event->data != 'showtag') return; + $event->preventDefault(); + + $tagns = $this->getConf('namespace'); + $flags = explode(',', str_replace(" ", "", $this->getConf('pagelist_flags'))); + + $tag = trim(str_replace($this->getConf('namespace').':', '', $_REQUEST['tag'])); + $ns = trim($_REQUEST['ns']); + + /* @var helper_plugin_tag $helper */ + if ($helper = $this->loadHelper('tag')) $pages = $helper->getTopic($ns, '', $tag); + + if(!empty($pages)) { + + // let Pagelist Plugin do the work for us + if ((!$pagelist = $this->loadHelper('pagelist'))) { + return false; + } + + /* @var helper_plugin_pagelist $pagelist */ + $pagelist->setFlags($flags); + $pagelist->startList(); + foreach ($pages as $page) { + $pagelist->addPage($page); + } + + print '

    TAG: ' . hsc(str_replace('_', ' ', $_REQUEST['tag'])) . '

    ' . DOKU_LF; + print '
    ' . DOKU_LF; + print $pagelist->finishList(); + print '
    ' . DOKU_LF; + + } else { + print '

    ' . $lang['nothingfound'] . '

    '; + } + } + + /** + * Inserts the tag toolbar button + */ + function insert_toolbar_button(Doku_Event $event, $param) { + $event->data[] = array( + 'type' => 'format', + 'title' => $this->getLang('toolbar_icon'), + 'icon' => '../../plugins/tag/images/tag-toolbar.png', + 'open' => '{{tag>', + 'close' => '}}' + ); + } + + /** + * Prevent displaying underscores instead of blanks inside the page keywords + */ + function _handle_keywords(Doku_Event $event) { + global $ID; + + // Fetch tags for the page; stop proceeding when no tags specified + $tags = p_get_metadata($ID, 'subject', METADATA_DONT_RENDER); + if(is_null($tags)) true; + + // Replace underscores with blanks + foreach($event->data['meta'] as &$meta) { + if($meta['name'] == 'keywords') { + $meta['content'] = str_replace('_', ' ', $meta['content']); + } + } + } +} + +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/conf/default.php b/platform/www/lib/plugins/tag/conf/default.php new file mode 100644 index 0000000..9f0b314 --- /dev/null +++ b/platform/www/lib/plugins/tag/conf/default.php @@ -0,0 +1,13 @@ + + */ + +$meta['namespace'] = array('string'); +$meta['sortkey'] = array('multichoice', + '_choices' => array('cdate', 'mdate', 'pagename', 'id', 'ns', 'title')); +$meta['sortorder'] = array('multichoice', + '_choices' => array('ascending', 'descending')); +$meta['pagelist_flags'] = array('string'); +$meta['toolbar_icon'] = array('onoff'); +$meta['list_tags_of_subns'] = array('onoff'); +$meta['tags_list_css'] = array('multichoice', + '_choices' => array('tags', 'tagstop')); + +//Setup VIM: ex: et ts=2 : diff --git a/platform/www/lib/plugins/tag/helper.php b/platform/www/lib/plugins/tag/helper.php new file mode 100644 index 0000000..666c5e2 --- /dev/null +++ b/platform/www/lib/plugins/tag/helper.php @@ -0,0 +1,513 @@ + + */ + +/** + * Helper part of the tag plugin, allows to query and print tags + */ +class helper_plugin_tag extends DokuWiki_Plugin { + + var $namespace = ''; // namespace tag links point to + + var $sort = ''; // sort key + var $topic_idx = array(); + + /** + * Constructor gets default preferences and language strings + */ + function __construct() { + global $ID; + + $this->namespace = $this->getConf('namespace'); + if (!$this->namespace) $this->namespace = getNS($ID); + $this->sort = $this->getConf('sortkey'); + } + + /** + * Returns some documentation of the methods provided by this helper part + * + * @return array Method description + */ + function getMethods() { + $result = array(); + $result[] = array( + 'name' => 'th', + 'desc' => 'returns the header for the tags column for pagelist', + 'return' => array('header' => 'string'), + ); + $result[] = array( + 'name' => 'td', + 'desc' => 'returns the tag links of a given page', + 'params' => array('id' => 'string'), + 'return' => array('links' => 'string'), + ); + $result[] = array( + 'name' => 'tagLinks', + 'desc' => 'generates tag links for given words', + 'params' => array('tags' => 'array'), + 'return' => array('links' => 'string'), + ); + $result[] = array( + 'name' => 'getTopic', + 'desc' => 'returns a list of pages tagged with the given keyword', + 'params' => array( + 'namespace (optional)' => 'string', + 'number (not used)' => 'integer', + 'tag (required)' => 'string'), + 'return' => array('pages' => 'array'), + ); + $result[] = array( + 'name' => 'tagRefine', + 'desc' => 'refines an array of pages with tags', + 'params' => array( + 'pages to refine' => 'array', + 'refinement tags' => 'string'), + 'return' => array('pages' => 'array'), + ); + $result[] = array( + 'name' => 'tagOccurrences', + 'desc' => 'returns a list of tags with their number of occurrences', + 'params' => array( + 'list of tags to get the occurrences for' => 'array', + 'namespaces to which the search shall be restricted' => 'array', + 'if all tags shall be returned (then the first parameter is ignored)' => 'boolean', + 'if the namespaces shall be searched recursively' => 'boolean'), + 'return' => array('tags' => 'array'), + ); + return $result; + } + + /** + * Returns the column header for th Pagelist Plugin + */ + function th() { + return $this->getLang('tags'); + } + + /** + * Returns the cell data for the Pagelist Plugin + */ + function td($id) { + $subject = $this->_getSubjectMetadata($id); + return $this->tagLinks($subject); + } + + /** + * Returns the links for given tags + * + * @param array $tags an array of tags + * @return string HTML link tags + */ + function tagLinks($tags) { + if (empty($tags) || ($tags[0] == '')) return ''; + + $links = array(); + foreach ($tags as $tag) { + $links[] = $this->tagLink($tag); + } + return implode(','.DOKU_LF.DOKU_TAB, $links); + } + + /** + * Returns the link for one given tag + * + * @param string $tag the tag the link shall point to + * @param string $title the title of the link (optional) + * @param bool $dynamic if the link class shall be changed if no pages with the specified tag exist + * @return string The HTML code of the link + */ + function tagLink($tag, $title = '', $dynamic = false) { + global $conf; + $svtag = $tag; + $tag_title = str_replace('_', ' ', noNS($tag)); + resolve_pageid($this->namespace, $tag, $exists); // resolve shortcuts + if ($exists) { + $class = 'wikilink1'; + $url = wl($tag); + if ($conf['useheading']) { + // important: set sendond param to false to prevent recursion! + $heading = p_get_first_heading($tag, false); + if ($heading) $tag_title = $heading; + } + } else { + if ($dynamic) { + $pages = $this->getTopic('', 1, $svtag); + if (empty($pages)) { + $class = 'wikilink2'; + } else { + $class = 'wikilink1'; + } + } else { + $class = 'wikilink1'; + } + $url = wl($tag, array('do'=>'showtag', 'tag'=>$svtag)); + } + if (!$title) $title = $tag_title; + $link = array( + 'href' => $url, + 'class' => $class, + 'tooltip' => hsc($tag), + 'title' => hsc($title) + ); + trigger_event('PLUGIN_TAG_LINK', $link); + $link = ''; + return $link; + } + + /** + * Returns a list of pages with a certain tag; very similar to ft_backlinks() + * + * @param string $ns A namespace to which all pages need to belong, "." for only the root namespace + * @param int $num The maximum number of pages that shall be returned + * @param string $tag The tag that shall be searched + * @return array The list of pages + * + * @author Esther Brunner + */ + function getTopic($ns = '', $num = NULL, $tag = '') { + if (!$tag) $tag = $_REQUEST['tag']; + $tag = $this->_parseTagList($tag, true); + $result = array(); + + // find the pages using topic.idx + $pages = $this->_tagIndexLookup($tag); + if (!count($pages)) return $result; + + foreach ($pages as $page) { + // exclude pages depending on ACL and namespace + if($this->_notVisible($page, $ns)) continue; + $tags = $this->_getSubjectMetadata($page); + // don't trust index + if (!$this->_checkPageTags($tags, $tag)) continue; + + // get metadata + $meta = p_get_metadata($page); + + $perm = auth_quickaclcheck($page); + + // skip drafts unless for users with create privilege + $draft = ($meta['type'] == 'draft'); + if ($draft && ($perm < AUTH_CREATE)) continue; + + $title = $meta['title']; + $date = ($this->sort == 'mdate' ? $meta['date']['modified'] : $meta['date']['created'] ); + $taglinks = $this->tagLinks($tags); + + // determine the sort key + if ($this->sort == 'id') $key = $page; + elseif ($this->sort == 'ns') { + $pos = strrpos($page, ':'); + if ($pos === false) $key = "\0".$page; + else $key = substr_replace($page, "\0\0", $pos, 1); + $key = str_replace(':', "\0", $key); + } elseif ($this->sort == 'pagename') $key = noNS($page); + elseif ($this->sort == 'title') { + $key = utf8_strtolower($title); + if (empty($key)) $key = str_replace('_', ' ', noNS($page)); + } else $key = $date; + // make sure that the key is unique + $key = $this->_uniqueKey($key, $result); + + $result[$key] = array( + 'id' => $page, + 'title' => $title, + 'date' => $date, + 'user' => $meta['creator'], + 'desc' => $meta['description']['abstract'], + 'cat' => $tags[0], + 'tags' => $taglinks, + 'perm' => $perm, + 'exists' => true, + 'draft' => $draft, ); + + if ($num && count($result) >= $num) break; + } + + // finally sort by sort key + if ($this->getConf('sortorder') == 'ascending') ksort($result); + else krsort($result); + + return $result; + } + + /** + * Refine found pages with tags (+tag: AND, -tag: (AND) NOT) + * + * @param array $pages The pages that shall be filtered, each page needs to be an array with a key "id" + * @param string $refine The list of tags in the form "tag +tag2 -tag3". The tags will be cleaned. + * @return array The filtered list of pages + */ + function tagRefine($pages, $refine) { + if (!is_array($pages)) return $pages; // wrong data type + $tags = $this->_parseTagList($refine, true); + $all_pages = $this->_tagIndexLookup($tags); + + foreach ($pages as $key => $page) { + if (!in_array($page['id'], $all_pages)) unset($pages[$key]); + } + + return $pages; + } + + /** + * Get count of occurrences for a list of tags + * + * @param array $tags array of tags + * @param array $namespaces array of namespaces where to count the tags + * @param boolean $allTags boolean if all available tags should be counted + * @param boolean $recursive boolean if pages in subnamespaces are allowed + * @return array + */ + function tagOccurrences($tags, $namespaces = NULL, $allTags = false, $recursive = NULL) { + // map with trim here in order to remove newlines from tags + if($allTags) $tags = array_map('trim', idx_getIndex('subject', '_w')); + $tags = $this->_cleanTagList($tags); + $otags = array(); //occurrences + if(!$namespaces || $namespaces[0] == '' || !is_array($namespaces)) $namespaces = NULL; // $namespaces not specified + + $indexer = idx_get_indexer(); + $indexer_pages = $indexer->lookupKey('subject', $tags, array($this, '_tagCompare')); + + $root_allowed = ($namespaces == NULL ? false : in_array('.', $namespaces)); + if ($recursive === NULL) + $recursive = $this->getConf('list_tags_of_subns'); + + foreach ($tags as $tag) { + if (!isset($indexer_pages[$tag])) continue; + + // just to be sure remove duplicate pages from the list of pages + $pages = array_unique($indexer_pages[$tag]); + + // don't count hidden pages or pages the user can't access + // for performance reasons this doesn't take drafts into account + $pages = array_filter($pages, array($this, '_isVisible')); + + if (empty($pages)) continue; + + if ($namespaces == NULL || ($root_allowed && $recursive)) { + // count all pages + $otags[$tag] = count($pages); + } else if (!$recursive) { + // filter by exact namespace + $otags[$tag] = 0; + foreach ($pages as $page) { + $ns = getNS($page); + if (($ns == false && $root_allowed) || in_array($ns, $namespaces)) $otags[$tag]++; + } + } else { // recursive, no root + $otags[$tag] = 0; + foreach ($pages as $page) { + foreach ($namespaces as $ns) { + if(strpos($page, $ns.':') === 0 ) { + $otags[$tag]++ ; + break; + } + } + } + } + // don't return tags without pages + if ($otags[$tag] == 0) unset($otags[$tag]); + } + return $otags; + } + + /** + * Get the subject metadata cleaning the result + * + * @param string $id the page id + * @return array + */ + function _getSubjectMetadata($id){ + $tags = p_get_metadata($id, 'subject'); + if (!is_array($tags)) $tags = explode(' ', $tags); + return array_unique($tags); + } + + /** + * Tag index lookup + * + * @param array $tags the tags to filter + * @return array the matching page ids + */ + function _tagIndexLookup($tags) { + $result = array(); // array of page ids + + $clean_tags = array(); + foreach ($tags as $i => $tag) { + if (($tag[0] == '+') || ($tag[0] == '-')) + $clean_tags[$i] = substr($tag, 1); + else + $clean_tags[$i] = $tag; + } + + $indexer = idx_get_indexer(); + $pages = $indexer->lookupKey('subject', $clean_tags, array($this, '_tagCompare')); + // use all pages as basis if the first tag isn't an "or"-tag or if there are no tags given + if (empty($tags) || $clean_tags[0] != $tags[0]) $result = $indexer->getPages(); + + foreach ($tags as $i => $tag) { + $t = $clean_tags[$i]; + if (!is_array($pages[$t])) $pages[$t] = array(); + + if ($tag[0] == '+') { // AND: add only if in both arrays + $result = array_intersect($result, $pages[$t]); + } elseif ($tag[0] == '-') { // NOT: remove array from docs + $result = array_diff($result, $pages[$t]); + } else { // OR: add array to docs + $result = array_unique(array_merge($result, $pages[$t])); + } + } + + return $result; + } + + + /** + * Splits a string into an array of tags + */ + function _parseTagList($tags, $clean = false) { + + // support for "quoted phrase tags" + if (preg_match_all('#".*?"#', $tags, $matches)) { + foreach ($matches[0] as $match) { + $replace = str_replace(' ', '_', substr($match, 1, -1)); + $tags = str_replace($match, $replace, $tags); + } + } + + $tags = preg_split('/ /', $tags, -1, PREG_SPLIT_NO_EMPTY); + + if ($clean) { + return $this->_cleanTagList($tags); + } else { + return $tags; + } + } + + /** + * Clean a list (array) of tags using _cleanTag + */ + function _cleanTagList($tags) { + return array_unique(array_map(array($this, '_cleanTag'), $tags)); + } + + /** + * Cleans a tag using cleanID while preserving a possible prefix of + or - + */ + function _cleanTag($tag) { + $prefix = substr($tag, 0, 1); + $tag = $this->_applyMacro($tag); + if ($prefix === '-' || $prefix === '+') { + return $prefix.cleanID($tag); + } else { + return cleanID($tag); + } + } + + /** + * Makes user or date dependent topic lists possible + */ + function _applyMacro($id) { + /** @var DokuWiki_Auth_Plugin $auth */ + global $INFO, $auth; + + $user = $_SERVER['REMOTE_USER']; + $group = ''; + // .htaccess auth doesn't provide the auth object + if($auth) { + $userdata = $auth->getUserData($user); + $group = $userdata['grps'][0]; + } + + $replace = array( + '@USER@' => cleanID($user), + '@NAME@' => cleanID($INFO['userinfo']['name']), + '@GROUP@' => cleanID($group), + '@YEAR@' => date('Y'), + '@MONTH@' => date('m'), + '@DAY@' => date('d'), + ); + return str_replace(array_keys($replace), array_values($replace), $id); + } + + /** + * Non-recursive function to check whether an array key is unique + * + * @author Esther Brunner + * @author Ilya S. Lebedev + */ + function _uniqueKey($key, &$result) { + + // increase numeric keys by one + if (is_numeric($key)) { + while (array_key_exists($key, $result)) $key++; + return $key; + + // append a number to literal keys + } else { + $num = 0; + $testkey = $key; + while (array_key_exists($testkey, $result)) { + $testkey = $key.$num; + $num++; + } + return $testkey; + } + } + + /** + * Opposite of _notVisible + */ + function _isVisible($id, $ns='') { + return !$this->_notVisible($id, $ns); + } + /** + * Check visibility of the page + * + * @param string $id the page id + * @param string $ns the namespace authorized + * @return bool if the page is hidden + */ + function _notVisible($id, $ns="") { + if (isHiddenPage($id)) return true; // discard hidden pages + // discard if user can't read + if (auth_quickaclcheck($id) < AUTH_READ) return true; + // filter by namespace, root namespace is identified with a dot + if($ns == '.') { + // root namespace is specified, discard all pages who lay outside the root namespace + if(getNS($id) != false) return true; + } else { + // ("!==0" namespace found at position 0) + if ($ns && (strpos(':'.getNS($id).':', ':'.$ns.':') !== 0)) return true; + } + return !page_exists($id, '', false); + } + + /** + * Helper function for the indexer in order to avoid interpreting wildcards + */ + function _tagCompare($tag1, $tag2) { + return $tag1 === $tag2; + } + + /** + * Check if the page is a real candidate for the result of the getTopic + * + * @param array $pagetags tags on the metadata of the page + * @param array $tags tags we are looking + * @return bool + */ + function _checkPageTags($pagetags, $tags) { + $result = false; + foreach($tags as $tag) { + if ($tag[0] == "+" and !in_array(substr($tag, 1), $pagetags)) $result = false; + if ($tag[0] == "-" and in_array(substr($tag, 1), $pagetags)) $result = false; + if (in_array($tag, $pagetags)) $result = true; + } + return $result; + } + +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/images/tag-toolbar.png b/platform/www/lib/plugins/tag/images/tag-toolbar.png new file mode 100644 index 0000000..4b274d2 Binary files /dev/null and b/platform/www/lib/plugins/tag/images/tag-toolbar.png differ diff --git a/platform/www/lib/plugins/tag/images/tag.gif b/platform/www/lib/plugins/tag/images/tag.gif new file mode 100644 index 0000000..ac445bf Binary files /dev/null and b/platform/www/lib/plugins/tag/images/tag.gif differ diff --git a/platform/www/lib/plugins/tag/lang/ar/lang.php b/platform/www/lib/plugins/tag/lang/ar/lang.php new file mode 100644 index 0000000..d755e37 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ar/lang.php @@ -0,0 +1,20 @@ + + * @author alhajr + * @author Rainbow-Spike + */ + +$lang['tag'] = 'العلامة'; +$lang['tags'] = 'العلامات'; +$lang['topic'] = 'الموضوع'; +$lang['count'] = 'العد'; +$lang['toolbar_icon'] = 'إدراج علامة-بناء الجملة'; +$lang['empty_output'] = 'الإخراج فارغة'; + +$lang['include'] = 'تضمين'; +$lang['exclude'] = 'استبعاد'; +$lang['use_and'] = 'استخدام منطق AND'; +$lang['no_tags'] = 'لم يتم العثور على العلامات '; diff --git a/platform/www/lib/plugins/tag/lang/ar/settings.php b/platform/www/lib/plugins/tag/lang/ar/settings.php new file mode 100644 index 0000000..3573cd0 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ar/settings.php @@ -0,0 +1,31 @@ + + * @author alhajr + * @author Rainbow-Spike + */ + +$lang['namespace'] = 'فضاء الأسماء الإفتراضي للأقسام'; +$lang['toolbar_icon'] = 'تظهر أيقونة شريط الأدوات (مسح ذاكرة التخزين المؤقت للبيانات//* وذاكرة التخزين المؤقت للمستعرض إذا لم يتم عرض)'; + +$lang['sortkey'] = 'ترتيب التدوينات حسب:'; +$lang['sortkey_o_cdate'] = 'تاريخ الإنشاء'; +$lang['sortkey_o_mdate'] = 'تاريخ التعديل'; +$lang['sortkey_o_pagename'] = 'إسم الصفحة'; +$lang['sortkey_o_id'] = 'رقم الصفحة'; +$lang['sortkey_o_ns'] = 'نيم سبيس (مساحة الاسم)'; +$lang['sortkey_o_title'] = 'العنوان'; + +$lang['sortorder'] = 'ترتيب الفرز'; +$lang['sortorder_o_ascending'] = 'ترتيب تصاعدي'; +$lang['sortorder_o_descending'] = 'تنازلي'; + +$lang['pagelist_flags'] = 'تنسيق إعلام ل taglist (مفصولة بفاصلة، لإعلام المتوفرة راجع وثائق البرنامج المساعد pagelist )'; + +$lang['list_tags_of_subns'] = 'قائمة أيضا العلامات في مساحات الأسماء الفرعية لمساحة الاسم المحدد (بناء الجملة عدد مرات)'; + +$lang['tags_list_css'] = 'اختر النمط المطبق على قائمة علامات الصفحات'; +$lang['tags_list_css_o_tags'] = 'أسلوب إفتراضي'; +$lang['tags_list_css_o_tagstop'] = 'الأمثل لقائمة العلامات في أعلى الصفحة'; diff --git a/platform/www/lib/plugins/tag/lang/be/lang.php b/platform/www/lib/plugins/tag/lang/be/lang.php new file mode 100644 index 0000000..cf61c9e --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/be/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Тэг'; +$lang['tags'] = 'Тэгі'; +$lang['topic'] = 'Тэмы'; +$lang['count'] = 'Колькасць'; +$lang['toolbar_icon'] = 'Уставіць тэг-сінтаксіс'; +$lang['empty_output'] = 'Пусты вывад'; + +$lang['include'] = 'Включаць'; +$lang['exclude'] = 'Выключаць'; +$lang['use_and'] = 'Выкарыстоўваць лагічнае AND'; +$lang['no_tags'] = 'Тэгі не знойдзены'; diff --git a/platform/www/lib/plugins/tag/lang/be/settings.php b/platform/www/lib/plugins/tag/lang/be/settings.php new file mode 100644 index 0000000..4e236dc --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/be/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Прастора імёнаў па змаўчанні для тэгаў'; +$lang['toolbar_icon'] = 'Паказваць кнопку на панэлі інструментаў (калі значок не адлюстроўваецца, ачысціце data/cache/* і кэш браўзэра)'; + +$lang['sortkey'] = 'Сартаваць спіс старонак па:'; +$lang['sortkey_o_cdate'] = 'даце стварэння'; +$lang['sortkey_o_mdate'] = 'даце рэдагавання'; +$lang['sortkey_o_pagename'] = 'імя старонкі'; +$lang['sortkey_o_id'] = 'ID старонкі'; +$lang['sortkey_o_ns'] = 'прасторы назваў'; +$lang['sortkey_o_title'] = 'загалоўку'; + +$lang['sortorder'] = 'Парадак сартавання'; +$lang['sortorder_o_ascending'] = 'па ўзрастанні'; +$lang['sortorder_o_descending'] = 'па змяншэнні'; + +$lang['pagelist_flags'] = 'Прыкметы (flags) фарматавання для спісу тэгаў (коскамі; спіс даступных прыкмет (flags) апісаны ў дакументацыі плагіна Pagelist)'; + +$lang['list_tags_of_subns'] = 'Таксама паказваць тэгі ў подпространство імёнаў адзначаных прастор імёнаў (сінтаксіс падліку (count))'; + +$lang['tags_list_css'] = 'Вылучыць стыль для спісу тэгаў на старонках'; +$lang['tags_list_css_o_tags'] = 'стыль па змаўчанні'; +$lang['tags_list_css_o_tagstop'] = 'аптымізацыя для размяшчэння наверсе старонкі'; diff --git a/platform/www/lib/plugins/tag/lang/bg/lang.php b/platform/www/lib/plugins/tag/lang/bg/lang.php new file mode 100644 index 0000000..89f5be1 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/bg/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Етикет'; +$lang['tags'] = 'Етикети'; +$lang['topic'] = 'Тема'; +$lang['count'] = 'Брой'; +$lang['toolbar_icon'] = 'Вмъкване на синтаксис за етикет'; +$lang['empty_output'] = 'Празен изход'; + +$lang['include'] = 'Включи'; +$lang['exclude'] = 'Изключи'; +$lang['use_and'] = 'Ползван логика AND'; +$lang['no_tags'] = 'Не са открити етикети'; diff --git a/platform/www/lib/plugins/tag/lang/bg/settings.php b/platform/www/lib/plugins/tag/lang/bg/settings.php new file mode 100644 index 0000000..aba7eb8 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/bg/settings.php @@ -0,0 +1,30 @@ + + * @author Rainbow-Spike + */ + +$lang['namespace'] = 'Стандартно именно пространство за етикетите'; +$lang['toolbar_icon'] = 'Показване на икона в лентата с инструменти (ако не виждате бутона изчистете съдържанието на data/cache/* и кеша на браузера '; + +$lang['sortkey'] = 'Сортиране на списъците с теми по'; +$lang['sortkey_o_cdate'] = 'дата на създаване'; +$lang['sortkey_o_mdate'] = 'дата на редактиране'; +$lang['sortkey_o_pagename'] = 'име на страница'; +$lang['sortkey_o_id'] = 'ID на страница'; +$lang['sortkey_o_ns'] = 'именно пространство'; +$lang['sortkey_o_title'] = 'заглавие'; + +$lang['sortorder'] = 'Сортиране'; +$lang['sortorder_o_ascending'] = 'възходящо'; +$lang['sortorder_o_descending'] = 'низходящо'; + +$lang['pagelist_flags'] = 'Форматиране на флагове за списъка с тагове (разделени със запетая, за наличните флагове вижте документацията на приставката Pagelist)'; + +$lang['list_tags_of_subns'] = 'Показване и на етикети от подименните пространства (count syntax)'; + +$lang['tags_list_css'] = 'Изберете стил, който да се прилага към списъка с етикети на страниците'; +$lang['tags_list_css_o_tags'] = 'стандартния'; +$lang['tags_list_css_o_tagstop'] = 'оптимален за списък от етикети над страницата'; diff --git a/platform/www/lib/plugins/tag/lang/ckb/lang.php b/platform/www/lib/plugins/tag/lang/ckb/lang.php new file mode 100644 index 0000000..0b7f022 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ckb/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'تاگ'; +$lang['tags'] = 'تاگەکان'; +$lang['topic'] = 'بابەت'; +$lang['count'] = '#'; +$lang['toolbar_icon'] = 'دانانی تاگ-ڕستە'; +$lang['empty_output'] = 'دەرچوی بەتاڵ'; + +$lang['include'] = 'لەخۆدەگرێت'; +$lang['exclude'] = 'دەرکردن'; +$lang['use_and'] = 'بەکارهێنان و'; +$lang['no_tags'] = 'هیچ تاگێک نەدۆزرایەوە'; diff --git a/platform/www/lib/plugins/tag/lang/ckb/settings.php b/platform/www/lib/plugins/tag/lang/ckb/settings.php new file mode 100644 index 0000000..95c7985 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ckb/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'بۆشایی ناوی ئاسایی بۆ تاگەکان'; +$lang['toolbar_icon'] = 'پیشاندانی وێنۆکی شریتی ئامڕاز (زانیاری/حەشارگە/* و حەشارگەی وێبگەڕ ئەگەر پیشان نەدرا)'; + +$lang['sortkey'] = 'پۆلێنکردنی لیستەکانی بابەت بەپێی'; +$lang['sortkey_o_cdate'] = 'بەرواری دروست کردن'; +$lang['sortkey_o_mdate'] = 'دەستکاری بەروار'; +$lang['sortkey_o_pagename'] = 'ناوی پەڕە'; +$lang['sortkey_o_id'] = 'ناسنامەی پەڕە'; +$lang['sortkey_o_ns'] = 'بۆشایی ناو'; +$lang['sortkey_o_title'] = 'ناونیشان'; + +$lang['sortorder'] = 'ڕیزکردن لە ریزبەند'; +$lang['sortorder_o_ascending'] = 'بەرەو سەرەوە'; +$lang['sortorder_o_descending'] = 'بەرەو خوار'; + +$lang['pagelist_flags'] = 'فۆرماتکردنی ئاڵاکان بۆ لیستی تاگ (کۆما-جیاکراوە, بۆ ئاڵای بەردەست ببینە دۆکیومێنتەکان لە پیتەلیست پێوەکراو)'; + +$lang['list_tags_of_subns'] = 'هەروەها پێرستی تاگەکان لە ژێربۆشایی ناوەکانی بۆشایی ناوێکی تایبەت دیاریکراو (ڕستەسازی ژماردن)'; + +$lang['tags_list_css'] = 'هەڵبژاردنی شێوازی کارپێکراو بۆ لیستی تاگی لاپەڕەکان'; +$lang['tags_list_css_o_tags'] = 'شێوازی بنەڕەت'; +$lang['tags_list_css_o_tagstop'] = 'باشترکراوە بۆ لیستی تاگەکان لە سەرەوەی لاپەڕەکە'; diff --git a/platform/www/lib/plugins/tag/lang/cs/lang.php b/platform/www/lib/plugins/tag/lang/cs/lang.php new file mode 100644 index 0000000..7aa7353 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/cs/lang.php @@ -0,0 +1,22 @@ + + * @author Robert Surý + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tagy'; +$lang['topic'] = 'Téma'; +$lang['count'] = 'Počet'; +$lang['toolbar_icon'] = 'Vlož Tag-Syntax'; +$lang['empty_output'] = 'Prázdný výstup'; + +$lang['include'] = 'Include'; +$lang['exclude'] = 'Exclude'; +$lang['use_and'] = 'Použít logické AND'; +$lang['no_tags'] = 'Nenalezeny žádné tagy'; diff --git a/platform/www/lib/plugins/tag/lang/cs/settings.php b/platform/www/lib/plugins/tag/lang/cs/settings.php new file mode 100644 index 0000000..4edc9a7 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/cs/settings.php @@ -0,0 +1,31 @@ + + */ + +$lang['namespace'] = 'Výchozí jmenný prostor pro tagy'; +$lang['toolbar_icon'] = 'Zobrazit toolbar ikonku (pokud se nezobrazuje, smažte data/cache/* a cache prohlížeče)'; + +$lang['sortkey'] = 'razení zápisků podle'; +$lang['sortkey_o_cdate'] = 'data vytvoření'; +$lang['sortkey_o_mdate'] = 'data modifikace'; +$lang['sortkey_o_pagename'] = 'názvu stránky'; +$lang['sortkey_o_id'] = 'ID stránky'; +$lang['sortkey_o_ns'] = 'jmenný prostor'; +$lang['sortkey_o_title'] = 'nadpis'; + +$lang['sortorder'] = 'pořadí'; +$lang['sortorder_o_ascending'] = 'vzestupné'; +$lang['sortorder_o_descending'] = 'sestupné'; + +$lang['pagelist_flags'] = 'Formátovací flags pro list tagů (comma-separated, viz dostupné flags v dokumentaci pluginu pagelist)'; + +$lang['list_tags_of_subns'] = 'List také tags in podjmenných prostorů daného jmenného prostoru'; + +$lang['tags_list_css'] = 'Vyber styl aplikovaný na stránku seznam tagů '; +$lang['tags_list_css_o_tags'] = 'výchozí styl'; +$lang['tags_list_css_o_tagstop'] = 'optimalizováno pro zobrazení seznamu tagů v horní části stránky'; diff --git a/platform/www/lib/plugins/tag/lang/cy/lang.php b/platform/www/lib/plugins/tag/lang/cy/lang.php new file mode 100644 index 0000000..bf8587d --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/cy/lang.php @@ -0,0 +1,20 @@ + + * @author diafol + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tagiau'; +$lang['topic'] = 'Testun'; +$lang['count'] = 'Meintiau'; +$lang['toolbar_icon'] = 'Mewnosod Cystrawen-Tag'; +$lang['empty_output'] = 'Allbwn Gwag'; + +$lang['include'] = 'Cynnwys'; +$lang['exclude'] = 'Eithrio'; +$lang['use_and'] = 'Defnyddiwch resymeg AND'; +$lang['no_tags'] = 'Dim tagiau wedi\'u darganfod'; diff --git a/platform/www/lib/plugins/tag/lang/cy/settings.php b/platform/www/lib/plugins/tag/lang/cy/settings.php new file mode 100644 index 0000000..a9b2640 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/cy/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Namespace diofyn ar gyfer tagiau'; +$lang['toolbar_icon'] = 'Dangos eicon y bar offer (cliriwch data/cache/* a storfa eich porwr os \'dyw e ddim yn ymddangos)'; + +$lang['sortkey'] = 'trefnu rhestr testunau gan'; +$lang['sortkey_o_cdate'] = 'dyddiad creu'; +$lang['sortkey_o_mdate'] = 'dyddiad newid'; +$lang['sortkey_o_pagename'] = 'enw\'r dudalen'; +$lang['sortkey_o_id'] = 'ID tudalen'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'teitl'; + +$lang['sortorder'] = 'trefn'; +$lang['sortorder_o_ascending'] = 'esgyn'; +$lang['sortorder_o_descending'] = 'disgyn'; + +$lang['pagelist_flags'] = 'Fflagiau fformatio ar gyfer y rhestr tagiau (gwahanu gan goma; ar gyfer fflagiau posib, gwelwch ddogfennaeth yr ategyn \'Pagelist\')'; + +$lang['list_tags_of_subns'] = 'Rhestrwch dagiau hefyd yn y subnamespaces o\'r namespace penodol (cystrawen cyfri) '; + +$lang['tags_list_css'] = 'Dewis arddull i osod ar restr dagiau tudalennau'; +$lang['tags_list_css_o_tags'] = 'arddull ddiofyn'; +$lang['tags_list_css_o_tagstop'] = 'optimeiddiwyd am restr dagiau ar ben y dudalen'; diff --git a/platform/www/lib/plugins/tag/lang/da/lang.php b/platform/www/lib/plugins/tag/lang/da/lang.php new file mode 100644 index 0000000..add2cb3 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/da/lang.php @@ -0,0 +1,20 @@ + + * @author Jacob Palm + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Emne'; +$lang['count'] = 'Mængde'; +$lang['toolbar_icon'] = 'Indsæt Tag-Syntaks'; +$lang['empty_output'] = 'Tomt Output'; + +$lang['include'] = 'Inkludér'; +$lang['exclude'] = 'Ekskludér'; +$lang['use_and'] = 'Brug logik AND'; +$lang['no_tags'] = 'Ingen tags fundet'; diff --git a/platform/www/lib/plugins/tag/lang/da/settings.php b/platform/www/lib/plugins/tag/lang/da/settings.php new file mode 100644 index 0000000..05f475d --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/da/settings.php @@ -0,0 +1,30 @@ + + * @author Jacob Palm + */ + +$lang['namespace'] = 'Standard navnerum for tags'; +$lang['toolbar_icon'] = 'Vis ikon for værktøjslinje (ryd data/cache/* og browser-cache, hvis den ikke vises)'; + +$lang['sortkey'] = 'sortér emneliste efter'; +$lang['sortkey_o_cdate'] = 'oprettelsesdato'; +$lang['sortkey_o_mdate'] = 'redigeringsdato'; +$lang['sortkey_o_pagename'] = 'sidenavn'; +$lang['sortkey_o_id'] = 'side-ID'; +$lang['sortkey_o_ns'] = 'navnerum'; +$lang['sortkey_o_title'] = 'titel'; + +$lang['sortorder'] = 'sorteringsorden'; +$lang['sortorder_o_ascending'] = 'stigende'; +$lang['sortorder_o_descending'] = 'faldende'; + +$lang['pagelist_flags'] = 'Formateringsflag for tag-listen (kommasepareret - se dokumentationen for pagelist plugin, for tilgængelige flag)'; + +$lang['list_tags_of_subns'] = 'List også tags i under-navnerum for et specificeret navnerum (tæl syntaks)'; + +$lang['tags_list_css'] = 'Vælg stil der skal anvendes til tag-listen på sider'; +$lang['tags_list_css_o_tags'] = 'standard stil'; +$lang['tags_list_css_o_tagstop'] = 'optimeret til visning af tag-liste øverst på side'; diff --git a/platform/www/lib/plugins/tag/lang/de-informal/lang.php b/platform/www/lib/plugins/tag/lang/de-informal/lang.php new file mode 100644 index 0000000..eac3886 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/de-informal/lang.php @@ -0,0 +1,20 @@ + + * @author rnck + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Thema'; +$lang['count'] = 'Menge'; +$lang['toolbar_icon'] = 'Tag-Syntax einfügen'; +$lang['empty_output'] = 'Leere Ausgabe'; + +$lang['include'] = 'Einschließen'; +$lang['exclude'] = 'Ausschließen'; +$lang['use_and'] = 'Logisches AND verwenden'; +$lang['no_tags'] = 'Keine Tags gefunden'; diff --git a/platform/www/lib/plugins/tag/lang/de-informal/settings.php b/platform/www/lib/plugins/tag/lang/de-informal/settings.php new file mode 100644 index 0000000..7b91485 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/de-informal/settings.php @@ -0,0 +1,30 @@ + + * @author rnck + */ + +$lang['namespace'] = 'Standard-Namensraum für Tags'; +$lang['toolbar_icon'] = 'Toolbar-Symbol anzeigen (data/cache/* und den Browser-Cache löschen, wenn das Symbol nicht angezeigt wird)'; + +$lang['sortkey'] = 'Themenlisten sortieren nach:'; +$lang['sortkey_o_cdate'] = 'Erstellungsdatum'; +$lang['sortkey_o_mdate'] = 'Änderungsdatum'; +$lang['sortkey_o_pagename'] = 'Seitenname'; +$lang['sortkey_o_id'] = 'Seiten-ID'; +$lang['sortkey_o_ns'] = 'Namensraum'; +$lang['sortkey_o_title'] = 'Titel'; + +$lang['sortorder'] = 'Sortierrichtung'; +$lang['sortorder_o_ascending'] = 'aufsteigend'; +$lang['sortorder_o_descending'] = 'absteigend'; + +$lang['pagelist_flags'] = 'Formatieroptionen für die Tagliste (kommasepariert, für eine Liste der verfügbaren Optionen siehe die Dokumentation des Pagelist Plugins)'; + +$lang['list_tags_of_subns'] = 'Tags anzeigen, die in Subnamespaces von angegebeben Namespaces liegen (count syntax)'; + +$lang['tags_list_css'] = 'Wähle ein Aussehen für die Tag-Liste auf der Seite'; +$lang['tags_list_css_o_tags'] = 'Standardaussehen'; +$lang['tags_list_css_o_tagstop'] = 'Optimierte Tag-Liste für Seitenkopf'; diff --git a/platform/www/lib/plugins/tag/lang/de/lang.php b/platform/www/lib/plugins/tag/lang/de/lang.php new file mode 100644 index 0000000..284e013 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/de/lang.php @@ -0,0 +1,22 @@ + + * @author Dominik Eckelmann + * @author Dennis Plöger + * @author Dana + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Thema'; +$lang['count'] = 'Menge'; +$lang['toolbar_icon'] = 'Tag-Syntax einfügen'; +$lang['empty_output'] = 'Leere Ausgabe'; + +$lang['include'] = 'Einschließen'; +$lang['exclude'] = 'Ausschließen'; +$lang['use_and'] = 'Logisches AND verwenden'; +$lang['no_tags'] = 'Keine Tags gefunden'; diff --git a/platform/www/lib/plugins/tag/lang/de/settings.php b/platform/www/lib/plugins/tag/lang/de/settings.php new file mode 100644 index 0000000..8b5b079 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/de/settings.php @@ -0,0 +1,31 @@ + + * @author Padhie + * @author rnck + */ + +$lang['namespace'] = 'Standard-Namensraum für Tags'; +$lang['toolbar_icon'] = 'Toolbar-Symbol anzeigen (data/cache/* und den Browser-Cache löschen, wenn das Symbol nicht angezeigt wird)'; + +$lang['sortkey'] = 'Themenlisten sortieren nach:'; +$lang['sortkey_o_cdate'] = 'Erstellungsdatum'; +$lang['sortkey_o_mdate'] = 'Änderungsdatum'; +$lang['sortkey_o_pagename'] = 'Seitenname'; +$lang['sortkey_o_id'] = 'Seiten-ID'; +$lang['sortkey_o_ns'] = 'Namensraum'; +$lang['sortkey_o_title'] = 'Titel'; + +$lang['sortorder'] = 'Sortierrichtung'; +$lang['sortorder_o_ascending'] = 'aufsteigend'; +$lang['sortorder_o_descending'] = 'absteigend'; + +$lang['pagelist_flags'] = 'Formatieroptionen für die Tagliste (kommasepariert, für eine Liste der verfügbaren Optionen siehe die Dokumentation des Pagelist Plugins)'; + +$lang['list_tags_of_subns'] = 'Tags anzeigen, die in Subnamespaces von angegebeben Namespaces liegen (count syntax)'; + +$lang['tags_list_css'] = 'Wähle ein Aussehen für die Tag-Liste auf der Seite'; +$lang['tags_list_css_o_tags'] = 'Standardaussehen'; +$lang['tags_list_css_o_tagstop'] = 'Optimierte Tag-Liste für Seitenkopf'; diff --git a/platform/www/lib/plugins/tag/lang/el/lang.php b/platform/www/lib/plugins/tag/lang/el/lang.php new file mode 100644 index 0000000..8a9637a --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/el/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Ετικέτα'; +$lang['tags'] = 'Ετικέτες'; +$lang['topic'] = 'Θέμα'; +$lang['count'] = 'Ποσότητα'; +$lang['toolbar_icon'] = 'Εισαγωγή ετικέτας-σύνταξης'; +$lang['empty_output'] = 'Άδεια εξόδου'; + +$lang['include'] = 'Συμπερίληψη'; +$lang['exclude'] = 'Εξαίρεση'; +$lang['use_and'] = 'Χρήση λογικής AND'; +$lang['no_tags'] = 'Δεν βρέθηκαν ετικέτες'; diff --git a/platform/www/lib/plugins/tag/lang/el/settings.php b/platform/www/lib/plugins/tag/lang/el/settings.php new file mode 100644 index 0000000..90103f1 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/el/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Προεπιλεγμένος χώρος ονομάτων για ετικέτες'; +$lang['toolbar_icon'] = 'Εμφάνιση εικονιδίου γραμμής εργαλείων (εκκαθάριση "data/cache/*" και προσωρινή μνήμη του προγράμματος περιήγησης εάν δεν εμφανίζεται)'; + +$lang['sortkey'] = 'ταξινόμηση λιστών θεμάτων κατά'; +$lang['sortkey_o_cdate'] = 'ημερομηνία δημιουργίας'; +$lang['sortkey_o_mdate'] = 'ημερομηνία τροποποίησης'; +$lang['sortkey_o_pagename'] = 'όνομα σελίδας'; +$lang['sortkey_o_id'] = 'αναγνωριστικό σελίδας'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'τίτλος'; + +$lang['sortorder'] = 'ταξινόμηση ταξινόμησης'; +$lang['sortorder_o_ascending'] = 'αύξουσα'; +$lang['sortorder_o_descending'] = 'φθίνουσα'; + +$lang['pagelist_flags'] = 'Μορφοποίηση σημαιών για τη λίστα ετικετών (διαχωρισμένα με κόμμα, για τις διαθέσιμες σημαίες δείτε την τεκμηρίωση της προσθήκης Pagelist)'; + +$lang['list_tags_of_subns'] = 'Λίστα επίσης ετικετών σε δευτερεύοντες χώρους ενός καθορισμένου χώρου ονομάτων (σύνταξη μέτρησης)'; + +$lang['tags_list_css'] = 'Επιλέξτε στυλ που εφαρμόζεται στη σελίδα\' λίστα ετικετών'; +$lang['tags_list_css_o_tags'] = 'προεπιλεγμένο στυλ'; +$lang['tags_list_css_o_tagstop'] = 'βελτιστοποιημένη για λίστα ετικετών στο επάνω μέρος της σελίδας'; diff --git a/platform/www/lib/plugins/tag/lang/en/lang.php b/platform/www/lib/plugins/tag/lang/en/lang.php new file mode 100644 index 0000000..1764d5b --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/en/lang.php @@ -0,0 +1,23 @@ + + * @author Rainbow-Spike + */ + +// custom language strings for the plugin +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Topic'; +$lang['count'] = 'Quantity'; +$lang['toolbar_icon'] = 'Insert Tag-Syntax'; +$lang['empty_output'] = 'Empty Output'; + +// search form of tagsearch syntax +$lang['include'] = 'Include'; +$lang['exclude'] = 'Exclude'; +$lang['use_and'] = 'Use logic AND'; +$lang['no_tags'] = 'No tags found'; diff --git a/platform/www/lib/plugins/tag/lang/en/settings.php b/platform/www/lib/plugins/tag/lang/en/settings.php new file mode 100644 index 0000000..e7d22f2 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/en/settings.php @@ -0,0 +1,32 @@ + + */ + +// for the configuration manager +$lang['namespace'] = 'Default namespace for tags'; +$lang['toolbar_icon'] = 'Show toolbar icon (clear data/cache/* and browser cache if it\'s not displayed)'; + +$lang['sortkey'] = 'sort topic lists by'; +$lang['sortkey_o_cdate'] = 'creation date'; +$lang['sortkey_o_mdate'] = 'modification date'; +$lang['sortkey_o_pagename'] = 'page name'; +$lang['sortkey_o_id'] = 'page ID'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'title'; + +$lang['sortorder'] = 'sort order'; +$lang['sortorder_o_ascending'] = 'ascending'; +$lang['sortorder_o_descending'] = 'descending'; + +$lang['pagelist_flags'] = 'Formatting flags for the taglist (comma-separated, for available flags see the documentation of the Pagelist Plugin)'; + +$lang['list_tags_of_subns'] = 'List also tags in subnamespaces of a specified namespace (count syntax)'; + +$lang['tags_list_css'] = 'Choose style applied to pages\' tags list'; +$lang['tags_list_css_o_tags'] = 'default style'; +$lang['tags_list_css_o_tagstop'] = 'optimized for tags list at top of page'; diff --git a/platform/www/lib/plugins/tag/lang/eo/lang.php b/platform/www/lib/plugins/tag/lang/eo/lang.php new file mode 100644 index 0000000..d9a4eeb --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/eo/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Marko'; +$lang['tags'] = 'Markoj'; +$lang['topic'] = 'Temo'; +$lang['count'] = 'Kvanto'; +$lang['toolbar_icon'] = 'Enmeti Marko-sintakson'; +$lang['empty_output'] = 'Malplenigi Eligon'; + +$lang['include'] = 'Inkluzivi'; +$lang['exclude'] = 'Ekskluzivi'; +$lang['use_and'] = 'Uzi logikon AND'; +$lang['no_tags'] = 'Neniuj markoj trovitaj'; diff --git a/platform/www/lib/plugins/tag/lang/eo/settings.php b/platform/www/lib/plugins/tag/lang/eo/settings.php new file mode 100644 index 0000000..4d011fc --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/eo/settings.php @@ -0,0 +1,30 @@ + + * @author Rainbow-Spike + */ + +$lang['namespace'] = 'Kutima nomospaco por markoj'; +$lang['toolbar_icon'] = 'Vidigi ilaran ikonon (nuligu data/cache/* kaj foliumilan kasxmemoron se gxi ne aperis)'; + +$lang['sortkey'] = 'ordigi tem-liston laux'; +$lang['sortkey_o_cdate'] = 'dato de kreo'; +$lang['sortkey_o_mdate'] = 'dato de modifo'; +$lang['sortkey_o_pagename'] = 'nomo de pagxo'; +$lang['sortkey_o_id'] = 'pagxa ID'; +$lang['sortkey_o_ns'] = 'nomospaco'; +$lang['sortkey_o_title'] = 'temo'; + +$lang['sortorder'] = 'ordigo'; +$lang['sortorder_o_ascending'] = 'kreskanta'; +$lang['sortorder_o_descending'] = 'malkreskanta'; + +$lang['pagelist_flags'] = 'Formatigaj flagoj por marko-listo (perkome disigita, uzataj flagoj vidu en priskribo de kromprogramo "Pagelist")'; + +$lang['list_tags_of_subns'] = 'Listigi ankaux markoj en subnomospacoj de indikita nomospaco ("count" sintakso)'; + +$lang['tags_list_css'] = 'Elektu stilon aplikitan al la listo de etikedoj de paĝoj'; +$lang['tags_list_css_o_tags'] = 'defaŭlta stilo'; +$lang['tags_list_css_o_tagstop'] = 'optimumigita por listo de etikedoj supre de paĝo'; diff --git a/platform/www/lib/plugins/tag/lang/es/lang.php b/platform/www/lib/plugins/tag/lang/es/lang.php new file mode 100644 index 0000000..0aab6dd --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/es/lang.php @@ -0,0 +1,21 @@ + + * @author Digna González Otero + * @author Camilo Sampedro + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Etiqueta'; +$lang['tags'] = 'Etiquetas'; +$lang['topic'] = 'Tema'; +$lang['count'] = 'Cantidad'; +$lang['toolbar_icon'] = 'Insertar sintaxis de etiqueta'; +$lang['empty_output'] = 'Salida vacía'; + +$lang['include'] = 'Incluir'; +$lang['exclude'] = 'Excluir'; +$lang['use_and'] = 'Use lógica AND'; +$lang['no_tags'] = 'Ninguna etiqueta encontrada'; diff --git a/platform/www/lib/plugins/tag/lang/es/settings.php b/platform/www/lib/plugins/tag/lang/es/settings.php new file mode 100644 index 0000000..10a012f --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/es/settings.php @@ -0,0 +1,31 @@ + + * @author Camilo Sampedro + * @author Domingo Redal + */ + +$lang['namespace'] = 'Espacio de nombres por defecto para las etiquetas'; +$lang['toolbar_icon'] = 'Mostrar el ícono en la barra (borra data/cache/ y el caché del navegador si no es visible)'; + +$lang['sortkey'] = 'ordenar las listas de temas por'; +$lang['sortkey_o_cdate'] = 'fecha de creación'; +$lang['sortkey_o_mdate'] = 'fecha de modificación'; +$lang['sortkey_o_pagename'] = 'nombre de la página'; +$lang['sortkey_o_id'] = 'ID de la página'; +$lang['sortkey_o_ns'] = 'nombre de espacio'; +$lang['sortkey_o_title'] = 'título'; + +$lang['sortorder'] = 'tipo de ordenación'; +$lang['sortorder_o_ascending'] = 'ascendente'; +$lang['sortorder_o_descending'] = 'descendente'; + +$lang['pagelist_flags'] = 'Dándole formato para la lista de etiquetas (separadas por coma, para ver los banderas (flags) consultar la documentación del plugin)'; + +$lang['list_tags_of_subns'] = 'Listar también etiquetas en subespacios de nombre en un espacio de nombre específico (recuento de sintaxis)'; + +$lang['tags_list_css'] = 'Elija el estilo aplicado a la página de lista de etiquetas'; +$lang['tags_list_css_o_tags'] = 'estilo por defecto'; +$lang['tags_list_css_o_tagstop'] = 'optimizado para la lista de etiquetas en la parte superior de la página'; diff --git a/platform/www/lib/plugins/tag/lang/fa/lang.php b/platform/www/lib/plugins/tag/lang/fa/lang.php new file mode 100644 index 0000000..30086c3 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fa/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'برچسب'; +$lang['tags'] = 'برچسب‌ها'; +$lang['topic'] = 'موضوع'; +$lang['count'] = 'مقدار'; +$lang['toolbar_icon'] = 'درج نحوهٔ ترکیب برچسب'; +$lang['empty_output'] = 'خروجی خالی'; + +$lang['include'] = 'عبارتند از'; +$lang['exclude'] = 'محروم کردن'; +$lang['use_and'] = 'از منطق AND استفاده کنید'; +$lang['no_tags'] = 'برچسبی یافت نشد'; diff --git a/platform/www/lib/plugins/tag/lang/fa/settings.php b/platform/www/lib/plugins/tag/lang/fa/settings.php new file mode 100644 index 0000000..50578e8 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fa/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'فضای نام پیشفرض برای برچسب‌ها'; +$lang['toolbar_icon'] = 'آیکون نمایش نوار ابزار (پاک کردن اطلاعات/کش/ * و کش مرورگر اگر چیزی نمایش داده نمی‌شود)'; + +$lang['sortkey'] = 'مرتب‌ سازی لیست موضوع توسط'; +$lang['sortkey_o_cdate'] = 'تاریخ ایجاد'; +$lang['sortkey_o_mdate'] = 'تاریخ اصلاح'; +$lang['sortkey_o_pagename'] = 'نام صفحه'; +$lang['sortkey_o_id'] = 'آیدی صفحه'; +$lang['sortkey_o_ns'] = 'فضای نام'; +$lang['sortkey_o_title'] = 'عنوان'; + +$lang['sortorder'] = 'مرتب سازی سفارشی'; +$lang['sortorder_o_ascending'] = 'صعودی'; +$lang['sortorder_o_descending'] = 'نزولی'; + +$lang['pagelist_flags'] = 'پرچم قالب بندی برای لیست برچسب‌ها (جداکردن با کاما، برای پرچم‌های موجود اسناد لیست صفحه‌ای پلاگین را ببینید)'; + +$lang['list_tags_of_subns'] = 'لیست برچسب‌ها در فضاهای فرعی از یک فضای نام خاص (تعداد نحوهٔ ترکیب)'; + +$lang['tags_list_css'] = 'انتخاب سبک اعمال شده‌ی صفحات \' لیست برچسب‌ها'; +$lang['tags_list_css_o_tags'] = 'سبک پیش‌فرض'; +$lang['tags_list_css_o_tagstop'] = 'بهینه سازی شده برای لیست برچسب‌ها در بالای صفحه'; diff --git a/platform/www/lib/plugins/tag/lang/fi/lang.php b/platform/www/lib/plugins/tag/lang/fi/lang.php new file mode 100644 index 0000000..6aa382f --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fi/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tunniste'; +$lang['tags'] = 'Tunnisteet'; +$lang['topic'] = 'Aihe'; +$lang['count'] = 'Määrä'; +$lang['toolbar_icon'] = 'Lisää tunniste-syntakse'; +$lang['empty_output'] = 'Tyhjä tulos'; + +$lang['include'] = 'Sisällytä'; +$lang['exclude'] = 'Sulje pois'; +$lang['use_and'] = 'Käytä logiikkaa JA'; +$lang['no_tags'] = 'Tunnisteita ei löytynyt'; diff --git a/platform/www/lib/plugins/tag/lang/fi/settings.php b/platform/www/lib/plugins/tag/lang/fi/settings.php new file mode 100644 index 0000000..ba8c9bf --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fi/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Tunnisteiden oletusnimitila'; +$lang['toolbar_icon'] = 'Näytä työkalurivin kuvake (tyhjennä data/cache/* ja selaimen välimuisti, jos sitä ei näy)'; + +$lang['sortkey'] = 'lajittele aiheluettelot'; +$lang['sortkey_o_cdate'] = 'luomispäivä'; +$lang['sortkey_o_mdate'] = 'muokkauspäivä'; +$lang['sortkey_o_pagename'] = 'sivun nimi'; +$lang['sortkey_o_id'] = 'sivun tunnus'; +$lang['sortkey_o_ns'] = 'nimitila'; +$lang['sortkey_o_title'] = 'otsikko'; + +$lang['sortorder'] = 'lajittelujärjestys'; +$lang['sortorder_o_ascending'] = 'nouseva'; +$lang['sortorder_o_descending'] = 'laskeva'; + +$lang['pagelist_flags'] = 'Tagilistan lippujen muotoilu (pilkuilla erotettu, saatavilla olevat liput katso sivulista-laajennuksen ohjeista)'; + +$lang['list_tags_of_subns'] = 'Luettele myös tunnisteet määritetyn nimiavaruuden alitunnustiloissa (laskesyntaksi)'; + +$lang['tags_list_css'] = 'Valitse sivujen tunnisteiden luetteloon käytetty tyyli'; +$lang['tags_list_css_o_tags'] = 'oletustyyli'; +$lang['tags_list_css_o_tagstop'] = 'optimoitu tunnisteiden luetteloon sivun yläosassa'; diff --git a/platform/www/lib/plugins/tag/lang/fr/lang.php b/platform/www/lib/plugins/tag/lang/fr/lang.php new file mode 100644 index 0000000..553ead4 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fr/lang.php @@ -0,0 +1,20 @@ + + * @author Schplurtz le Déboulonné + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Étiquette'; +$lang['tags'] = 'Étiquettes'; +$lang['topic'] = 'Sujet'; +$lang['count'] = 'Quantité'; +$lang['toolbar_icon'] = 'Insérer des étiquettes'; +$lang['empty_output'] = 'Pas de résultat'; + +$lang['include'] = 'Inclure'; +$lang['exclude'] = 'Exclure'; +$lang['use_and'] = 'Utiliser la logique AND'; +$lang['no_tags'] = 'Aucune étiquette trouvée'; diff --git a/platform/www/lib/plugins/tag/lang/fr/settings.php b/platform/www/lib/plugins/tag/lang/fr/settings.php new file mode 100644 index 0000000..4163860 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/fr/settings.php @@ -0,0 +1,33 @@ + + * @author Stanislas Reltgen + * @author NicolasFriedli + * @author Olivier Humbert + * @author Schplurtz le Déboulonné + */ + +$lang['namespace'] = 'Dossier par défaut pour les étiquettes'; +$lang['toolbar_icon'] = 'Afficher l\'icône dans la barre d\'outils (purger data/cache/* et le cache du navigateur si il n\'apparait pas)'; + +$lang['sortkey'] = 'trier par :'; +$lang['sortkey_o_cdate'] = 'date de création'; +$lang['sortkey_o_mdate'] = 'date de modification'; +$lang['sortkey_o_pagename'] = 'nom de la page'; +$lang['sortkey_o_id'] = 'ID de la page'; +$lang['sortkey_o_ns'] = 'catégorie'; +$lang['sortkey_o_title'] = 'titre'; + +$lang['sortorder'] = 'ordre'; +$lang['sortorder_o_ascending'] = 'croissant'; +$lang['sortorder_o_descending'] = 'décroissant'; + +$lang['pagelist_flags'] = 'Paramètres d\'affichage pour lister les pages (séparés par des virgules, pour la liste des paramètres voir la documentation du greffon pagelist)'; + +$lang['list_tags_of_subns'] = 'Lister les étiquettes présentes aussi dans les sous-dossiers (syntaxe count)'; + +$lang['tags_list_css'] = 'Style appliqué à la liste de étiquettes des pages'; +$lang['tags_list_css_o_tags'] = 'style par défaut'; +$lang['tags_list_css_o_tagstop'] = 'optimisé pour les listes d\'étiquettes en haut de page'; diff --git a/platform/www/lib/plugins/tag/lang/he/lang.php b/platform/www/lib/plugins/tag/lang/he/lang.php new file mode 100644 index 0000000..d7f5a06 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/he/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'תייג'; +$lang['tags'] = 'תגים'; +$lang['topic'] = 'נושא'; +$lang['count'] = 'כַּמוּת'; +$lang['toolbar_icon'] = 'הוסף תחביר תג'; +$lang['empty_output'] = 'פלט ריק'; + +$lang['include'] = 'לִכלוֹל'; +$lang['exclude'] = 'אל תכלול'; +$lang['use_and'] = 'השתמש בהיגיון AND'; +$lang['no_tags'] = 'לא נמצאו תגים'; diff --git a/platform/www/lib/plugins/tag/lang/he/settings.php b/platform/www/lib/plugins/tag/lang/he/settings.php new file mode 100644 index 0000000..f1613ec --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/he/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'מרחב שמות ברירת מחדל לתגים'; +$lang['toolbar_icon'] = 'הצג את סמל סרגל הכלים (נקה "data/cache/*" ומטמון הדפדפן אם הוא לא מוצג)'; + +$lang['sortkey'] = 'מיין רשימות נושאים לפי'; +$lang['sortkey_o_cdate'] = 'תאריך יצירה'; +$lang['sortkey_o_mdate'] = 'תאריך שינוי'; +$lang['sortkey_o_pagename'] = 'שם העמוד'; +$lang['sortkey_o_id'] = 'מזהה דף'; +$lang['sortkey_o_ns'] = 'מרחב שמות'; +$lang['sortkey_o_title'] = 'כותרת'; + +$lang['sortorder'] = 'סדר מיון'; +$lang['sortorder_o_ascending'] = 'עולה'; +$lang['sortorder_o_descending'] = 'יורד'; + +$lang['pagelist_flags'] = 'עיצוב דגלים עבור רשימת התגים (מופרדים בפסיקים, לקבלת דגלים זמינים עיין בתיעוד של תוסף ה- Pagelist)'; + +$lang['list_tags_of_subns'] = 'רשום גם תגים במרחבי משנה של מרחב שמות מוגדר (תחביר ספירה)'; + +$lang['tags_list_css'] = 'בחר סגנון שהוחל על רשימת התגים של הדפים'; +$lang['tags_list_css_o_tags'] = 'סגנון ברירת מחדל'; +$lang['tags_list_css_o_tagstop'] = 'מותאם לרשימת התגים בראש העמוד'; diff --git a/platform/www/lib/plugins/tag/lang/hi/lang.php b/platform/www/lib/plugins/tag/lang/hi/lang.php new file mode 100644 index 0000000..e05a061 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hi/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'टैग'; +$lang['tags'] = 'टैग'; +$lang['topic'] = 'विषय'; +$lang['count'] = 'मात्रा'; +$lang['toolbar_icon'] = 'टैग-सिंटैक्स डालें'; +$lang['empty_output'] = 'खाली आउटपुट'; + +$lang['include'] = 'शामिल'; +$lang['exclude'] = 'निकालना'; +$lang['use_and'] = 'तर्क का उपयोग करें AND'; +$lang['no_tags'] = 'कोई टैग नहीं मिला'; diff --git a/platform/www/lib/plugins/tag/lang/hi/settings.php b/platform/www/lib/plugins/tag/lang/hi/settings.php new file mode 100644 index 0000000..f987b42 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hi/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'टैग्स के लिए डिफॉल्ट नेमस्पेस'; +$lang['toolbar_icon'] = 'टूलबार आइकन दिखाएं (स्पष्ट data/cache/* और ब्राउज़र कैश यदि यह प्रदर्शित नहीं है)'; + +$lang['sortkey'] = 'सॉर्ट टॉपिक लिस्ट बाय'; +$lang['sortkey_o_cdate'] = 'निर्माण तिथि'; +$lang['sortkey_o_mdate'] = 'संशोधन तिथि'; +$lang['sortkey_o_pagename'] = 'पेज नाम'; +$lang['sortkey_o_id'] = 'पेज ID'; +$lang['sortkey_o_ns'] = 'नेमस्पेस'; +$lang['sortkey_o_title'] = 'शीर्षक'; + +$lang['sortorder'] = 'सॉर्ट ऑर्डर'; +$lang['sortorder_o_ascending'] = 'आरोही'; +$lang['sortorder_o_descending'] = 'अवरोही'; + +$lang['pagelist_flags'] = 'टैगलिस्ट के लिए झंडे का प्रारूपण (अल्पविराम से अलग किए गए, उपलब्ध झंडे के लिए Pagelist Plugin) का प्रलेखन देखें '; + +$lang['list_tags_of_subns'] = 'एक निर्दिष्ट नामस्थान (गिनती सिंटैक्स) के उप-नामों में भी टैग'; + +$lang['tags_list_css'] = 'पृष्ठों की टैग सूची में लागू शैली चुनें'; +$lang['tags_list_css_o_tags'] = 'डिफ़ॉल्ट शैली'; +$lang['tags_list_css_o_tagstop'] = 'पृष्ठ के शीर्ष पर टैग सूची के लिए अनुकूलित'; diff --git a/platform/www/lib/plugins/tag/lang/hr/lang.php b/platform/www/lib/plugins/tag/lang/hr/lang.php new file mode 100644 index 0000000..a12f485 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hr/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Oznaka'; +$lang['tags'] = 'Oznake'; +$lang['topic'] = 'Teme'; +$lang['count'] = 'Količina'; +$lang['toolbar_icon'] = 'Ubaci sintaksu oznake'; +$lang['empty_output'] = 'Prazan izlaz'; + +$lang['include'] = 'Uključi'; +$lang['exclude'] = 'Izuzmi'; +$lang['use_and'] = 'Koristi logiku AND'; +$lang['no_tags'] = 'Nema oznaka'; diff --git a/platform/www/lib/plugins/tag/lang/hr/settings.php b/platform/www/lib/plugins/tag/lang/hr/settings.php new file mode 100644 index 0000000..03abd93 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hr/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Podrazumijevani imenski prostor za oznake'; +$lang['toolbar_icon'] = 'Prikaži ikonu na alatnoj traci (očisti data/cache/* i priručnu pohranu preglednika ako se ne prikazuje)'; + +$lang['sortkey'] = 'poredaj listu tema po'; +$lang['sortkey_o_cdate'] = 'datum kreiranja'; +$lang['sortkey_o_mdate'] = 'datum promjene'; +$lang['sortkey_o_pagename'] = 'ime stranice'; +$lang['sortkey_o_id'] = 'oznaka stranice'; +$lang['sortkey_o_ns'] = 'imenski prostor'; +$lang['sortkey_o_title'] = 'naslov'; + +$lang['sortorder'] = 'poredak'; +$lang['sortorder_o_ascending'] = 'rastući'; +$lang['sortorder_o_descending'] = 'padajući'; + +$lang['pagelist_flags'] = 'zastavice oblikovanja za listu oznaka (zarezom odvojene, za listu dostupnih zastavica vidi dokumentaciju dodatka pagelist)'; + +$lang['list_tags_of_subns'] = 'Prikaži također oznake iz pod-imeničkih prostora specificiranog imeničkog prostora'; + +$lang['tags_list_css'] = 'Odaberi stil primijenjen na liste oznaka'; +$lang['tags_list_css_o_tags'] = 'podrazumijevani stil'; +$lang['tags_list_css_o_tagstop'] = 'optimirano za listu oznaka na vrhu stranice'; diff --git a/platform/www/lib/plugins/tag/lang/hu/lang.php b/platform/www/lib/plugins/tag/lang/hu/lang.php new file mode 100644 index 0000000..f6f3518 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hu/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Címké'; +$lang['tags'] = 'Címkék'; +$lang['topic'] = 'Téma'; +$lang['count'] = 'Mennyiség'; +$lang['toolbar_icon'] = 'Címkeszintaxis beillesztése'; +$lang['empty_output'] = 'Üres kimenet'; + +$lang['include'] = 'Beleértve'; +$lang['exclude'] = 'Kivéve'; +$lang['use_and'] = 'Használja a logikát AND'; +$lang['no_tags'] = 'Nincsenek címkék'; diff --git a/platform/www/lib/plugins/tag/lang/hu/settings.php b/platform/www/lib/plugins/tag/lang/hu/settings.php new file mode 100644 index 0000000..86886e6 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/hu/settings.php @@ -0,0 +1,31 @@ + + * @author Marina Vladi + * @author Rainbow-Spike + */ + +$lang['namespace'] = 'Címkék alapértelmezett névtere'; +$lang['toolbar_icon'] = 'Ikon megjelenítése eszközsoron (töröljük az adat-* és böngésző gyorsítótárat, ha nem jelenne meg)'; + +$lang['sortkey'] = 'Témalista rendezési módja'; +$lang['sortkey_o_cdate'] = 'készítés dátuma'; +$lang['sortkey_o_mdate'] = 'módosítás dátuma'; +$lang['sortkey_o_pagename'] = 'oldalnév'; +$lang['sortkey_o_id'] = 'oldalazonosító (ID)'; +$lang['sortkey_o_ns'] = 'névtér'; +$lang['sortkey_o_title'] = 'cím'; + +$lang['sortorder'] = 'Rendezés iránya'; +$lang['sortorder_o_ascending'] = 'növekvő'; +$lang['sortorder_o_descending'] = 'csökkenő'; + +$lang['pagelist_flags'] = 'Formátumozó beállítások a címkelistához (vesszővel elválasztva, az elérhető beállításokat nézzük meg a pagelist bővítmény dokumentációjában)'; + +$lang['list_tags_of_subns'] = 'Adott névtér alnévtereiben szereplő címkék listázása (számláló szintaxis)'; + +$lang['tags_list_css'] = 'Válassza ki az oldalak címkék listájára alkalmazott stílust'; +$lang['tags_list_css_o_tags'] = 'alapértelmezett stílus'; +$lang['tags_list_css_o_tagstop'] = 'címkékhez optimalizált oldal tetején'; diff --git a/platform/www/lib/plugins/tag/lang/id/lang.php b/platform/www/lib/plugins/tag/lang/id/lang.php new file mode 100644 index 0000000..363f801 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/id/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tag'; +$lang['topic'] = 'Topik'; +$lang['count'] = 'Kuantitas'; +$lang['toolbar_icon'] = 'Sisipkan Sintaksis Tag'; +$lang['empty_output'] = 'Output Kosong'; + +$lang['include'] = 'Sertakan'; +$lang['exclude'] = 'Mengecualikan'; +$lang['use_and'] = 'Gunakan logika AND'; +$lang['no_tags'] = 'Tidak ditemukan tag'; diff --git a/platform/www/lib/plugins/tag/lang/id/settings.php b/platform/www/lib/plugins/tag/lang/id/settings.php new file mode 100644 index 0000000..5052955 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/id/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Ruang nama default untuk tag'; +$lang['toolbar_icon'] = 'Tampilkan ikon toolbar (hapus data/cache/* dan cache browser jika tidak ditampilkan)'; + +$lang['sortkey'] = 'urutkan daftar topik berdasarkan'; +$lang['sortkey_o_cdate'] = 'tanggal pembuatan'; +$lang['sortkey_o_mdate'] = 'tanggal modifikasi'; +$lang['sortkey_o_pagename'] = 'nama halaman'; +$lang['sortkey_o_id'] = 'ID halaman'; +$lang['sortkey_o_ns'] = 'ruang nama'; +$lang['sortkey_o_title'] = 'judul'; + +$lang['sortorder'] = 'tata urutan'; +$lang['sortorder_o_ascending'] = 'naik'; +$lang['sortorder_o_descending'] = 'turun'; + +$lang['pagelist_flags'] = 'Memformat flag untuk daftar tag (dipisahkan koma, untuk flag yang tersedia lihat dokumentasi dari Plugin Pagelist)'; + +$lang['list_tags_of_subns'] = 'Daftar juga tag dalam ruang subnama dari ruang nama tertentu (sintaks hitung)'; + +$lang['tags_list_css'] = 'Pilih gaya yang diterapkan ke halaman\' daftar tag'; +$lang['tags_list_css_o_tags'] = 'gaya standar'; +$lang['tags_list_css_o_tagstop'] = 'dioptimalkan untuk daftar tag di bagian atas halaman'; diff --git a/platform/www/lib/plugins/tag/lang/it/lang.php b/platform/www/lib/plugins/tag/lang/it/lang.php new file mode 100644 index 0000000..5f4b0a1 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/it/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tag'; +$lang['topic'] = 'Argomento'; +$lang['count'] = 'Quantità'; +$lang['toolbar_icon'] = 'Inserisci la sintassi tag'; +$lang['empty_output'] = 'Output vuoto'; + +$lang['include'] = 'Includi'; +$lang['exclude'] = 'Escludi'; +$lang['use_and'] = 'Usa logica AND'; +$lang['no_tags'] = 'Nessun tag trovato'; diff --git a/platform/www/lib/plugins/tag/lang/it/settings.php b/platform/www/lib/plugins/tag/lang/it/settings.php new file mode 100644 index 0000000..a05c296 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/it/settings.php @@ -0,0 +1,29 @@ + + */ +$lang['namespace'] = 'Namespace predefinito per i tag'; +$lang['toolbar_icon'] = 'Mostra l\'icona della barra degli strumenti (cancella dati/cache/* e la cache del browser se non viene visualizzata)'; + +$lang['sortkey'] = 'ordina gli elenchi di argomenti per'; +$lang['sortkey_o_cdate'] = 'data di creazione'; +$lang['sortkey_o_mdate'] = 'data di modifica'; +$lang['sortkey_o_pagename'] = 'nome della pagina'; +$lang['sortkey_o_id'] = 'ID della pagina'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'titolo'; + +$lang['sortorder'] = 'ordinamento'; +$lang['sortorder_o_ascending'] = 'crescente'; +$lang['sortorder_o_descending'] = 'decrescente'; + +$lang['pagelist_flags'] = 'Formattazione dei flag per l\'elenco di tag (separati da virgola, per i flag disponibili vedere la documentazione del plug-in Pagelist)'; + +$lang['list_tags_of_subns'] = 'Elenca anche i tag nei sottomenu di uno spazio dei nomi specificato (sintassi conteggio)'; + +$lang['tags_list_css'] = 'Scegli lo stile applicato all\'elenco dei tag delle pagine'; +$lang['tags_list_css_o_tags'] = 'stile predefinito'; +$lang['tags_list_css_o_tagstop'] = 'ottimizzato per l\'elenco di tag nella parte superiore della pagina'; diff --git a/platform/www/lib/plugins/tag/lang/ja/lang.php b/platform/www/lib/plugins/tag/lang/ja/lang.php new file mode 100644 index 0000000..ac2b615 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ja/lang.php @@ -0,0 +1,20 @@ + + * @author Hideaki SAWADA + * @author Rainbow-Spike + */ + +$lang['tag'] = 'タグ'; +$lang['tags'] = 'タグ'; +$lang['topic'] = 'トピック'; +$lang['count'] = '数量'; +$lang['toolbar_icon'] = 'タグ構文の挿入'; +$lang['empty_output'] = '空の出力'; + +$lang['include'] = '含む'; +$lang['exclude'] = '除外する'; +$lang['use_and'] = 'ロジック AND 検索'; +$lang['no_tags'] = 'タグがありません'; diff --git a/platform/www/lib/plugins/tag/lang/ja/settings.php b/platform/www/lib/plugins/tag/lang/ja/settings.php new file mode 100644 index 0000000..16851b6 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ja/settings.php @@ -0,0 +1,30 @@ + + * @author Hideaki SAWADA + */ + +$lang['namespace'] = 'タグのデフォルト名前空間'; +$lang['toolbar_icon'] = 'ツールバーボタンを表示(表示されない場合、data/cache/* とブラウザキャッシュを削除)'; + +$lang['sortkey'] = 'topic 一覧のソート基準'; +$lang['sortkey_o_cdate'] = '作成日'; +$lang['sortkey_o_mdate'] = '更新日'; +$lang['sortkey_o_pagename'] = 'ページ名'; +$lang['sortkey_o_id'] = 'ページ ID'; +$lang['sortkey_o_ns'] = '名前空間'; +$lang['sortkey_o_title'] = 'タイトル'; + +$lang['sortorder'] = 'ソート順'; +$lang['sortorder_o_ascending'] = '昇順'; +$lang['sortorder_o_descending'] = '降順'; + +$lang['pagelist_flags'] = 'タグリストの表示フラグ(カンマ区切り。使用可能フラグは pagelist プラグインを参照)'; + +$lang['list_tags_of_subns'] = '指定名前空間の下位の名前空間のタグも一覧に含む(count 構文)'; + +$lang['tags_list_css'] = 'ページタグ一覧に適用されるスタイルを選択してください。'; +$lang['tags_list_css_o_tags'] = 'デフォルトスタイル'; +$lang['tags_list_css_o_tagstop'] = 'ページ上部配置に最適化'; diff --git a/platform/www/lib/plugins/tag/lang/ko/lang.php b/platform/www/lib/plugins/tag/lang/ko/lang.php new file mode 100644 index 0000000..9a98a4c --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ko/lang.php @@ -0,0 +1,20 @@ + + * @author dryoo + * @author Rainbow-Spike + */ + +$lang['tag'] = '태그'; +$lang['tags'] = '태그'; +$lang['topic'] = '주제'; +$lang['count'] = '수량'; +$lang['toolbar_icon'] = '태그 문법 넣기'; +$lang['empty_output'] = '빈 출력'; + +$lang['include'] = '포함'; +$lang['exclude'] = '제외'; +$lang['use_and'] = '논리 AND 사용'; +$lang['no_tags'] = '찾은 태그 없음'; diff --git a/platform/www/lib/plugins/tag/lang/ko/settings.php b/platform/www/lib/plugins/tag/lang/ko/settings.php new file mode 100644 index 0000000..8deed83 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ko/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = '태그에 대한 기본 이름공간'; +$lang['toolbar_icon'] = '도구 모음 아이콘 보이기 (표시되지 않으면 data/cache/* 와 브라우저 캐시를 지우세요)'; + +$lang['sortkey'] = '주제 목록 정렬 기준'; +$lang['sortkey_o_cdate'] = '만든 날짜'; +$lang['sortkey_o_mdate'] = '수정한 날짜'; +$lang['sortkey_o_pagename'] = '문서 이름'; +$lang['sortkey_o_id'] = '문서 ID'; +$lang['sortkey_o_ns'] = '이름공간'; +$lang['sortkey_o_title'] = '제목'; + +$lang['sortorder'] = '정렬 순서'; +$lang['sortorder_o_ascending'] = '오름차순'; +$lang['sortorder_o_descending'] = '내림차순'; + +$lang['pagelist_flags'] = '태그 목록에 대한 서식 플래그 (쉼표로 구분, 사용할 수 있는 플래그에 대해서는 Pagelist 플러그인의 설명문서를 보세요)'; + +$lang['list_tags_of_subns'] = '지정된 이름공간의 하위 이름공간에 있는 태그도 나열 (개수 문법)'; + +$lang['tags_list_css'] = '문서의 태그 목록에 적용할 스타일 선택'; +$lang['tags_list_css_o_tags'] = '기본 스타일'; +$lang['tags_list_css_o_tagstop'] = '문서 위에 있는 태그 목록에 최적화'; diff --git a/platform/www/lib/plugins/tag/lang/nl/lang.php b/platform/www/lib/plugins/tag/lang/nl/lang.php new file mode 100644 index 0000000..510829b --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/nl/lang.php @@ -0,0 +1,20 @@ + + * @author Joachim David + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Onderwerp'; +$lang['count'] = 'Hoeveelheid'; +$lang['toolbar_icon'] = 'Tag-syntax invoegen'; +$lang['empty_output'] = 'Uitvoer leegmaken'; + +$lang['include'] = 'Inclusief'; +$lang['exclude'] = 'Exclusief'; +$lang['use_and'] = 'Gebruik logica AND'; +$lang['no_tags'] = 'Geen tags gevonden'; diff --git a/platform/www/lib/plugins/tag/lang/nl/settings.php b/platform/www/lib/plugins/tag/lang/nl/settings.php new file mode 100644 index 0000000..25db10d --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/nl/settings.php @@ -0,0 +1,31 @@ + + * @author Peter van Diest + * @author Joachim David + */ + +$lang['namespace'] = 'Standaard namespace voor tags'; +$lang['toolbar_icon'] = 'Toon knop in de werkbalk (leeg data/cache/* en browser cache als hij niet wordt getoond)'; + +$lang['sortkey'] = 'sorteer onderwerpenlijsten op'; +$lang['sortkey_o_cdate'] = 'aanmaakdatum'; +$lang['sortkey_o_mdate'] = 'bewerkdatum'; +$lang['sortkey_o_pagename'] = 'paginanaam'; +$lang['sortkey_o_id'] = 'pagina-id'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'titel'; + +$lang['sortorder'] = 'sorteervolgorde'; +$lang['sortorder_o_ascending'] = 'oplopend'; +$lang['sortorder_o_descending'] = 'aflopend'; + +$lang['pagelist_flags'] = 'Opmaakvlaggen voor de taglijst (gescheiden door komma\'s, voor beschikbare vlaggen zie documentatie van de Pagelist plugin)'; + +$lang['list_tags_of_subns'] = 'Als er op een specifieke namespace wordt gezocht, geef dan in de lijst ook tags uit subnamespaces van deze specifieke namespace (count syntax)'; + +$lang['tags_list_css'] = 'Kies een stijl voor de lijst van tags voor de pagina'; +$lang['tags_list_css_o_tags'] = 'standaardstijl'; +$lang['tags_list_css_o_tagstop'] = 'geoptimaliseerd voor een lijst van tags bovenaan de pagina'; diff --git a/platform/www/lib/plugins/tag/lang/pl/lang.php b/platform/www/lib/plugins/tag/lang/pl/lang.php new file mode 100644 index 0000000..5708280 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pl/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tagi'; +$lang['topic'] = 'Temat'; +$lang['count'] = 'Ilość'; +$lang['toolbar_icon'] = 'Wstaw składnię tagu'; +$lang['empty_output'] = 'Puste wyjście'; + +$lang['include'] = 'Uwzględnić'; +$lang['exclude'] = 'Wykluczyć'; +$lang['use_and'] = 'Użyj logiki AND'; +$lang['no_tags'] = 'Nie znaleziono tagów'; diff --git a/platform/www/lib/plugins/tag/lang/pl/settings.php b/platform/www/lib/plugins/tag/lang/pl/settings.php new file mode 100644 index 0000000..6700c5e --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pl/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Domyślna przestrzeń nazw dla tagów'; +$lang['toolbar_icon'] = 'Pokaż ikonę paska narzędzi (wyczyść dane / pamięć podręczną / * i pamięć podręczną przeglądarki, jeśli nie są wyświetlane)'; + +$lang['sortkey'] = 'sortuj listy tematów według'; +$lang['sortkey_o_cdate'] = 'data utworzenia'; +$lang['sortkey_o_mdate'] = 'data modyfikacji'; +$lang['sortkey_o_pagename'] = 'nazwa strony'; +$lang['sortkey_o_id'] = 'ID strony'; +$lang['sortkey_o_ns'] = 'przestrzeń nazw'; +$lang['sortkey_o_title'] = 'tytuł'; + +$lang['sortorder'] = 'porządek sortowania'; +$lang['sortorder_o_ascending'] = 'rosnąco'; +$lang['sortorder_o_descending'] = 'malejąco'; + +$lang['pagelist_flags'] = 'Formatowanie flag dla taglist (oddzielone przecinkami, dostępne flagi znajdują się w dokumentacji wtyczki Pagelist)'; + +$lang['list_tags_of_subns'] = 'Wyświetl także tagi w podprzestrzeniach określonej przestrzeni nazw (składnia licznika)'; + +$lang['tags_list_css'] = 'Wybierz styl zastosowany do stron \' lista tagów'; +$lang['tags_list_css_o_tags'] = 'domyślny styl'; +$lang['tags_list_css_o_tagstop'] = 'zoptymalizowany pod kątem listy tagów u góry strony'; diff --git a/platform/www/lib/plugins/tag/lang/pt-br/lang.php b/platform/www/lib/plugins/tag/lang/pt-br/lang.php new file mode 100644 index 0000000..c5313c7 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pt-br/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Tópico'; +$lang['count'] = 'Quantidade'; +$lang['toolbar_icon'] = 'Inserir tag-sintaxe'; +$lang['empty_output'] = 'Saída vazia'; + +$lang['include'] = 'Incluir'; +$lang['exclude'] = 'Excluir'; +$lang['use_and'] = 'Usar lógica AND'; +$lang['no_tags'] = 'Sem tags encontradas'; diff --git a/platform/www/lib/plugins/tag/lang/pt-br/settings.php b/platform/www/lib/plugins/tag/lang/pt-br/settings.php new file mode 100644 index 0000000..32c59cb --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pt-br/settings.php @@ -0,0 +1,32 @@ + + * @author Rainbow-Spike + */ + +$lang['namespace'] = 'Namespace padrão para as tags'; +$lang['toolbar_icon'] = 'Mostrar ícone de barra de ferramentas (limpar dados/cache/* e cache do navegador se não for exibido)'; + +$lang['sortkey'] = 'classificar listas de tópicos por'; +$lang['sortkey_o_cdate'] = 'data de criação'; +$lang['sortkey_o_mdate'] = 'data de modificação'; +$lang['sortkey_o_pagename'] = 'nome da página'; +$lang['sortkey_o_id'] = 'ID da página'; +$lang['sortkey_o_ns'] = 'namespace'; +$lang['sortkey_o_title'] = 'título'; + +$lang['sortorder'] = 'ordem de classificação'; +$lang['sortorder_o_ascending'] = 'crescente'; +$lang['sortorder_o_descending'] = 'descendente'; + +$lang['pagelist_flags'] = 'Formatação de bandeiras para o taglist (separado por círia, para bandeiras disponíveis, consulte a documentação do Plugin Pagelist)'; + +$lang['list_tags_of_subns'] = 'Lista também tags em subnamespaces de um namespace especificado (conta sintaxe)'; + +$lang['tags_list_css'] = 'Escolha o estilo aplicado à lista de tags das páginas'; +$lang['tags_list_css_o_tags'] = 'estilo padrão'; +$lang['tags_list_css_o_tagstop'] = 'otimizado para lista de tags no topo da página'; diff --git a/platform/www/lib/plugins/tag/lang/pt/lang.php b/platform/www/lib/plugins/tag/lang/pt/lang.php new file mode 100644 index 0000000..3b6d954 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pt/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Tag'; +$lang['tags'] = 'Tags'; +$lang['topic'] = 'Tópico'; +$lang['count'] = 'Quantidade'; +$lang['toolbar_icon'] = 'Inserir sintaxe de tag'; +$lang['empty_output'] = 'Saída vazia'; + +$lang['include'] = 'Incluir'; +$lang['exclude'] = 'Excluir'; +$lang['use_and'] = 'Use lógica AND'; +$lang['no_tags'] = 'Nenhuma tag encontrada'; diff --git a/platform/www/lib/plugins/tag/lang/pt/settings.php b/platform/www/lib/plugins/tag/lang/pt/settings.php new file mode 100644 index 0000000..7bd1461 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/pt/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Espaço de nome padrão para tags'; +$lang['toolbar_icon'] = 'Mostrar ícone da barra de ferramentas (limpar data/cache/* e o cache do navegador se não estiver exibido)'; + +$lang['sortkey'] = 'classificar listas de tópicos por'; +$lang['sortkey_o_cdate'] = 'data de criação'; +$lang['sortkey_o_mdate'] = 'data de modificação'; +$lang['sortkey_o_pagename'] = 'nome da página'; +$lang['sortkey_o_id'] = 'ID da página'; +$lang['sortkey_o_ns'] = 'espaço de nome'; +$lang['sortkey_o_title'] = 'título'; + +$lang['sortorder'] = 'ordem de classificação'; +$lang['sortorder_o_ascending'] = 'ascendente'; +$lang['sortorder_o_descending'] = 'decrescente'; + +$lang['pagelist_flags'] = 'Sinalizadores de formatação para a lista de tags (separados por vírgulas; para sinalizadores disponíveis, consulte a documentação do plugin Pagelist)'; + +$lang['list_tags_of_subns'] = 'Listar também tags em subnamespaces de um namespace especificado (sintaxe de contagem)'; + +$lang['tags_list_css'] = 'Escolha o estilo aplicado à lista de tags das páginas'; +$lang['tags_list_css_o_tags'] = 'estilo padrão'; +$lang['tags_list_css_o_tagstop'] = 'otimizado para lista de tags no topo da página'; diff --git a/platform/www/lib/plugins/tag/lang/ru/lang.php b/platform/www/lib/plugins/tag/lang/ru/lang.php new file mode 100644 index 0000000..37178e6 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ru/lang.php @@ -0,0 +1,20 @@ + + * @author Vasilyy Balyasnyy + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Тег'; +$lang['tags'] = 'Теги'; +$lang['topic'] = 'Темы'; +$lang['count'] = 'Количество'; +$lang['toolbar_icon'] = 'Вставить тег-синтаксис'; +$lang['empty_output'] = 'Пустой вывод'; + +$lang['include'] = 'Включать'; +$lang['exclude'] = 'Исключать'; +$lang['use_and'] = 'Использовать логическое AND'; +$lang['no_tags'] = 'Теги не найдены'; diff --git a/platform/www/lib/plugins/tag/lang/ru/settings.php b/platform/www/lib/plugins/tag/lang/ru/settings.php new file mode 100644 index 0000000..b2d38b0 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/ru/settings.php @@ -0,0 +1,30 @@ + + * @author Vasilyy Balyasnyy + */ + +$lang['namespace'] = 'Пространство имён по умолчанию для тегов'; +$lang['toolbar_icon'] = 'Показывать кнопку на панели инструментов (если значок не отображается, очистите data/cache/* и кэш браузера)'; + +$lang['sortkey'] = 'Сортировать список страниц по:'; +$lang['sortkey_o_cdate'] = 'дате создания'; +$lang['sortkey_o_mdate'] = 'дате редактирования'; +$lang['sortkey_o_pagename'] = 'имени страницы'; +$lang['sortkey_o_id'] = 'ID страницы'; +$lang['sortkey_o_ns'] = 'пространству имён'; +$lang['sortkey_o_title'] = 'заголовку'; + +$lang['sortorder'] = 'Порядок сортировки'; +$lang['sortorder_o_ascending'] = 'по возрастанию'; +$lang['sortorder_o_descending'] = 'по убыванию'; + +$lang['pagelist_flags'] = 'Признаки (flags) форматирования для списка тегов (разделяйте запятыми; список доступных признаков (flags) описан в документации плагина Pagelist)'; + +$lang['list_tags_of_subns'] = 'Также показывать теги в подпространствах имён отмеченных пространств имён (синтаксис подсчёта (count))'; + +$lang['tags_list_css'] = 'Выбрать стиль для списка тегов на страницах'; +$lang['tags_list_css_o_tags'] = 'стиль по умолчанию'; +$lang['tags_list_css_o_tagstop'] = 'оптимизация для размещения наверху страницы'; diff --git a/platform/www/lib/plugins/tag/lang/sv/lang.php b/platform/www/lib/plugins/tag/lang/sv/lang.php new file mode 100644 index 0000000..ecdc545 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/sv/lang.php @@ -0,0 +1,20 @@ + + * @author Tor Härnqvist + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Tagg'; +$lang['tags'] = 'Taggar'; +$lang['topic'] = 'Ämne'; +$lang['count'] = 'Antal'; +$lang['toolbar_icon'] = 'Skriv tagg-syntax'; +$lang['empty_output'] = 'Tom utdata'; + +$lang['include'] = 'Inkludera'; +$lang['exclude'] = 'Exkludera'; +$lang['use_and'] = 'Använd logik AND'; +$lang['no_tags'] = 'Det finns inga taggar'; diff --git a/platform/www/lib/plugins/tag/lang/sv/settings.php b/platform/www/lib/plugins/tag/lang/sv/settings.php new file mode 100644 index 0000000..b2e15b8 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/sv/settings.php @@ -0,0 +1,30 @@ + + * @author Tor Härnqvist + */ + +$lang['namespace'] = 'Standard namespace för taggar'; +$lang['toolbar_icon'] = 'Via verktygsmenyn (tom data/cache/* och webbläsarens cache om den inte visas)'; + +$lang['sortkey'] = 'sortera ämnen på'; +$lang['sortkey_o_cdate'] = 'skapandedatum'; +$lang['sortkey_o_mdate'] = 'ändringsdatum'; +$lang['sortkey_o_pagename'] = 'sidnamn'; +$lang['sortkey_o_id'] = 'sid-ID'; +$lang['sortkey_o_ns'] = 'namnrymd'; +$lang['sortkey_o_title'] = 'rubrik'; + +$lang['sortorder'] = 'sorteringsordning'; +$lang['sortorder_o_ascending'] = 'stigande'; +$lang['sortorder_o_descending'] = 'fallande'; + +$lang['pagelist_flags'] = 'Formatera flaggor för tagglistan (kommaseparerad, för tillgängliga flaggor, se dokumentationen för pagelist plugin) '; + +$lang['list_tags_of_subns'] = 'Lista också taggar i sub-namnrymder inom specificerad namnrymd (count syntax)'; + +$lang['tags_list_css'] = 'Välj stil att applicera sidornas tagglista'; +$lang['tags_list_css_o_tags'] = 'Standardstil'; +$lang['tags_list_css_o_tagstop'] = 'optimerad för tagglista överst på sidan'; diff --git a/platform/www/lib/plugins/tag/lang/tr/lang.php b/platform/www/lib/plugins/tag/lang/tr/lang.php new file mode 100644 index 0000000..2abcdaf --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/tr/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Etiket'; +$lang['tags'] = 'Etiketler'; +$lang['topic'] = 'Başlık'; +$lang['count'] = 'Miktar'; +$lang['toolbar_icon'] = 'Etiket ekle'; +$lang['empty_output'] = 'Çıktıyı temizle'; + +$lang['include'] = 'Dahil et'; +$lang['exclude'] = 'Hariç tut'; +$lang['use_and'] = 'Mantık kullan AND'; +$lang['no_tags'] = 'Hiç etiket bulunamadı'; diff --git a/platform/www/lib/plugins/tag/lang/tr/settings.php b/platform/www/lib/plugins/tag/lang/tr/settings.php new file mode 100644 index 0000000..f2b5914 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/tr/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Etiketler için varsayılan isim alanı (namespace)'; +$lang['toolbar_icon'] = 'Araç çubuğu simgesini göster (Eğer görünmezse data/cache/ klasörünü ve internet gezgini ara belleğini silin)'; + +$lang['sortkey'] = 'konu listesinin sıralanış şekli'; +$lang['sortkey_o_cdate'] = 'oluşturulma tarihi'; +$lang['sortkey_o_mdate'] = 'değiştirilme tarihi'; +$lang['sortkey_o_pagename'] = 'sayfa adı'; +$lang['sortkey_o_id'] = 'sayfa kimliği (ID)'; +$lang['sortkey_o_ns'] = 'isim alanı (namespace)'; +$lang['sortkey_o_title'] = 'başlık'; + +$lang['sortorder'] = 'sıralama şekli'; +$lang['sortorder_o_ascending'] = 'artan'; +$lang['sortorder_o_descending'] = 'azalan'; + +$lang['pagelist_flags'] = 'Etiket listesi için biçimlendirme bayrakları (flags) (Virgül ile ayrılmış olarak yazın. Kullanılabilir bayrak listesi için pagelist eklentisinin belgelerine bakın)'; + +$lang['list_tags_of_subns'] = 'Tanımlanan isim alanının altındaki isim alanlarını da listele (sözdizimini say)'; + +$lang['tags_list_css'] = 'Sayfalardaki etiket listesine uygulanacak biçimlendirmeyi seçin'; +$lang['tags_list_css_o_tags'] = 'Varsayılan biçim'; +$lang['tags_list_css_o_tagstop'] = 'Sayfanın üst tarafında etiket listesi göstermek için uygun'; diff --git a/platform/www/lib/plugins/tag/lang/uk/lang.php b/platform/www/lib/plugins/tag/lang/uk/lang.php new file mode 100644 index 0000000..9b4680a --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/uk/lang.php @@ -0,0 +1,18 @@ + + */ + +$lang['tag'] = 'Тег'; +$lang['tags'] = 'Теги'; +$lang['topic'] = 'Тема'; +$lang['count'] = 'Кількість'; +$lang['toolbar_icon'] = 'Вставити синтаксис тегів'; +$lang['empty_output'] = 'Порожній вихід'; + +$lang['include'] = 'Включити'; +$lang['exclude'] = 'Виключити'; +$lang['use_and'] = 'Використовувати логіку І'; +$lang['no_tags'] = 'Тегів не знайдено'; diff --git a/platform/www/lib/plugins/tag/lang/uk/settings.php b/platform/www/lib/plugins/tag/lang/uk/settings.php new file mode 100644 index 0000000..2b7c7ab --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/uk/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Простір імен за замовчуванням для тегів'; +$lang['toolbar_icon'] = 'Показувати кнопку на панелі інструментів (якщо значок не відображається, очистіть data/cache/* і кеш браузера)'; + +$lang['sortkey'] = 'Сортувати список сторінок по:'; +$lang['sortkey_o_cdate'] = 'датою створення'; +$lang['sortkey_o_mdate'] = 'датою редагування'; +$lang['sortkey_o_pagename'] = 'імені сторінки'; +$lang['sortkey_o_id'] = 'ID сторінки'; +$lang['sortkey_o_ns'] = 'простору імен'; +$lang['sortkey_o_title'] = 'заголовку'; + +$lang['sortorder'] = 'Порядок сортування'; +$lang['sortorder_o_ascending'] = 'по зростанню'; +$lang['sortorder_o_descending'] = 'по спаданню'; + +$lang['pagelist_flags'] = 'Ознаки (flags) форматування для списку тегів (розділяйте комами; список доступних ознак (flags) описаний в документації плагіна Pagelist)'; + +$lang['list_tags_of_subns'] = 'Також показувати теги в підпросторах імен зазначених просторів імен (синтаксис підрахунку (count))'; + +$lang['tags_list_css'] = 'Вибрати стиль для списку тегів на сторінках'; +$lang['tags_list_css_o_tags'] = 'стиль за замовчуванням'; +$lang['tags_list_css_o_tagstop'] = 'оптимізація для розміщення нагорі сторінки'; diff --git a/platform/www/lib/plugins/tag/lang/vi/lang.php b/platform/www/lib/plugins/tag/lang/vi/lang.php new file mode 100644 index 0000000..e038593 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/vi/lang.php @@ -0,0 +1,19 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = 'Thẻ'; +$lang['tags'] = 'Thẻ'; +$lang['topic'] = 'Đề tài'; +$lang['count'] = 'Định lượng'; +$lang['toolbar_icon'] = 'Chèn cú pháp thẻ'; +$lang['empty_output'] = 'Đầu ra trống'; + +$lang['include'] = 'Bao gồm'; +$lang['exclude'] = 'Loại trừ'; +$lang['use_and'] = 'Dụng logic AND'; +$lang['no_tags'] = 'Không tìm thấy thẻ'; diff --git a/platform/www/lib/plugins/tag/lang/vi/settings.php b/platform/www/lib/plugins/tag/lang/vi/settings.php new file mode 100644 index 0000000..11d22c2 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/vi/settings.php @@ -0,0 +1,29 @@ + + */ + +$lang['namespace'] = 'Không gian tên mặc định cho thẻ'; +$lang['toolbar_icon'] = 'Hiện biểu tượng thanh công cụ (xóa data/cache/* và bộ đệm của trình duyệt nếu nó không hiện)'; + +$lang['sortkey'] = 'sắp xếp danh sách đề tài theo'; +$lang['sortkey_o_cdate'] = 'ngày tạo'; +$lang['sortkey_o_mdate'] = 'ngày sửa đổi'; +$lang['sortkey_o_pagename'] = 'tên trang'; +$lang['sortkey_o_id'] = 'ID trang'; +$lang['sortkey_o_ns'] = 'không gian tên'; +$lang['sortkey_o_title'] = 'tiêu đề'; + +$lang['sortorder'] = 'thứ tự sắp xếp'; +$lang['sortorder_o_ascending'] = 'tăng dần'; +$lang['sortorder_o_descending'] = 'giảm dần'; + +$lang['pagelist_flags'] = 'Định dạng cờ cho danh sách thẻ (được phân tách bằng dấu phẩy, để biết các cờ có sẵn, hãy xem tài liệu của Plugin Pagelist)'; + +$lang['list_tags_of_subns'] = 'Liệt kê thẻ trong các không gian tên con của một không gian tên cụ thể (cú pháp đếm)'; + +$lang['tags_list_css'] = 'Chọn kiểu áp dụng cho danh sách thẻ của trang'; +$lang['tags_list_css_o_tags'] = 'kiểu mặc định'; +$lang['tags_list_css_o_tagstop'] = 'tối ưu hóa cho danh sách thẻ ở đầu trang'; diff --git a/platform/www/lib/plugins/tag/lang/zh-tw/lang.php b/platform/www/lib/plugins/tag/lang/zh-tw/lang.php new file mode 100644 index 0000000..7a3db31 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/zh-tw/lang.php @@ -0,0 +1,21 @@ + + * @author Rainbow-Spike + */ + +$lang['tag'] = '標籤'; +$lang['tags'] = '標籤'; +$lang['topic'] = '主題'; +$lang['count'] = '數量'; +$lang['toolbar_icon'] = '插入標籤語法'; +$lang['empty_output'] = '清空輸出'; + +$lang['include'] = '包含'; +$lang['exclude'] = '不含'; +$lang['use_and'] = '使用邏輯AND'; +$lang['no_tags'] = '沒有找到標籤'; diff --git a/platform/www/lib/plugins/tag/lang/zh-tw/settings.php b/platform/www/lib/plugins/tag/lang/zh-tw/settings.php new file mode 100644 index 0000000..0dedae2 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/zh-tw/settings.php @@ -0,0 +1,32 @@ + + * @author Rainbow-Spike + */ + +$lang['namespace'] = '標籤預設的命名空間'; +$lang['toolbar_icon'] = '顯示工具列圖示 (如未出現請清除 data/cache/* 及瀏覽器快取)'; + +$lang['sortkey'] = '主題排序方式'; +$lang['sortkey_o_cdate'] = '建立日期'; +$lang['sortkey_o_mdate'] = '修改日期'; +$lang['sortkey_o_pagename'] = '頁面名稱'; +$lang['sortkey_o_id'] = '頁面全名'; +$lang['sortkey_o_ns'] = '命名空間'; +$lang['sortkey_o_title'] = '頁面標題'; + +$lang['sortorder'] = '排序方式'; +$lang['sortorder_o_ascending'] = '升序'; +$lang['sortorder_o_descending'] = '降序'; + +$lang['pagelist_flags'] = '標籤列表的格式化參數 (逗號分隔,可用參數詳見 pagelist 附加元件的說明文件)'; + +$lang['list_tags_of_subns'] = '也將指定命名空間之下子命名空間中的標籤列出 (count 語法)'; + +$lang['tags_list_css'] = '選擇應用於頁面標籤列表的樣式'; +$lang['tags_list_css_o_tags'] = '默認樣式'; +$lang['tags_list_css_o_tagstop'] = '針對頁面頂部的標籤列表進行了優化'; diff --git a/platform/www/lib/plugins/tag/lang/zh/lang.php b/platform/www/lib/plugins/tag/lang/zh/lang.php new file mode 100644 index 0000000..85b29a1 --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/zh/lang.php @@ -0,0 +1,20 @@ + + * @author Maie + * @author Rainbow-Spike + */ + +$lang['tag'] = '标签'; +$lang['tags'] = '标签'; +$lang['topic'] = '主题'; +$lang['count'] = '数量'; +$lang['toolbar_icon'] = '插入标签'; +$lang['empty_output'] = '输出为空'; + +$lang['include'] = '包括'; +$lang['exclude'] = '排除'; +$lang['use_and'] = '使用逻辑AND'; +$lang['no_tags'] = '没有找到标签'; diff --git a/platform/www/lib/plugins/tag/lang/zh/settings.php b/platform/www/lib/plugins/tag/lang/zh/settings.php new file mode 100644 index 0000000..1d2e9cf --- /dev/null +++ b/platform/www/lib/plugins/tag/lang/zh/settings.php @@ -0,0 +1,30 @@ + + * @author Maie + */ + +$lang['namespace'] = '标签的默认命名空间'; +$lang['toolbar_icon'] = '显示工具栏图标 (如果没有显示,请清除 data/cache/* 及浏览器缓存)'; + +$lang['sortkey'] = '按何键值排序'; +$lang['sortkey_o_cdate'] = '创建日期'; +$lang['sortkey_o_mdate'] = '修改日期'; +$lang['sortkey_o_pagename'] = '页面名称'; +$lang['sortkey_o_id'] = '页面 ID'; +$lang['sortkey_o_ns'] = '命名空间'; +$lang['sortkey_o_title'] = '页面标题'; + +$lang['sortorder'] = '排序方式'; +$lang['sortorder_o_ascending'] = '升序'; +$lang['sortorder_o_descending'] = '降序'; + +$lang['pagelist_flags'] = '标签列表的格式化标志 (逗号分隔,支持标志参考 Pagelist 插件的文档)'; + +$lang['list_tags_of_subns'] = '列出指定命名空间的子命名空间的标签 (count 语法)'; + +$lang['tags_list_css'] = '选择用于网页的标签列表样式'; +$lang['tags_list_css_o_tags'] = '默认样式'; +$lang['tags_list_css_o_tagstop'] = '优化在页面顶部显示的标签列表'; diff --git a/platform/www/lib/plugins/tag/manager.dat b/platform/www/lib/plugins/tag/manager.dat new file mode 100644 index 0000000..1c0d878 --- /dev/null +++ b/platform/www/lib/plugins/tag/manager.dat @@ -0,0 +1,2 @@ +downloadurl=https://github.com/dokufreaks/plugin-tag/tarball/master +installed=Wed, 16 Mar 2022 22:24:26 +0000 diff --git a/platform/www/lib/plugins/tag/plugin.info.txt b/platform/www/lib/plugins/tag/plugin.info.txt new file mode 100644 index 0000000..4dd666c --- /dev/null +++ b/platform/www/lib/plugins/tag/plugin.info.txt @@ -0,0 +1,7 @@ +base tag +author Michael Hamann, Gina Häussge, Christopher Smith, Michael Klier, Esther Brunner +email michael@content-space.de +date 2020-12-02 +name Tag Plugin +desc tag wiki pages +url https://www.dokuwiki.org/plugin:tag diff --git a/platform/www/lib/plugins/tag/script.js b/platform/www/lib/plugins/tag/script.js new file mode 100644 index 0000000..ffa1d45 --- /dev/null +++ b/platform/www/lib/plugins/tag/script.js @@ -0,0 +1,16 @@ +/** + * For the searchtags syntax: make the checkboxes behave like radio buttons + * so the user can't both include and exclude a tag + */ +jQuery(function() { + jQuery('form.plugin__tag_search table input').change(function() { + if (jQuery(this).attr('checked')) { // was this input checked? + if (jQuery(this).parent().hasClass('minus')) { + // find the other input in the same tr and uncheck it + jQuery(this).closest('tr').find('.plus input').attr('checked', false); + } else { + jQuery(this).closest('tr').find('.minus input').attr('checked', false); + } + } + }) +}); diff --git a/platform/www/lib/plugins/tag/style.css b/platform/www/lib/plugins/tag/style.css new file mode 100644 index 0000000..39b7f1a --- /dev/null +++ b/platform/www/lib/plugins/tag/style.css @@ -0,0 +1,28 @@ +div.dokuwiki div.tags, +div.dokuwiki div.tagstop { + font-size: 95%; + text-align: right; +} + +div.dokuwiki div.tags { + border-top: 2px dotted __border__; + clear: both; + margin-bottom: 1.4em; +} + +div.dokuwiki div.tagstop { + border-bottom: 2px dotted __border__; + margin-top: -1.3em; + margin-bottom: .4em; +} + +div.dokuwiki div.tags span, +div.dokuwiki div.tagstop span { + background: transparent url(images/tag.gif) 0px 2px no-repeat; + padding: 1px 0px 1px 17px; +} + +/* make it easier to select the +/- checkboxes in the tagsearch table by making them block elements */ +div.dokuwiki form.plugin__tag_search label.plus, div.dokuwiki form.plugin__tag_search label.minus { + display: block; +} diff --git a/platform/www/lib/plugins/tag/syntax/count.php b/platform/www/lib/plugins/tag/syntax/count.php new file mode 100644 index 0000000..f19d342 --- /dev/null +++ b/platform/www/lib/plugins/tag/syntax/count.php @@ -0,0 +1,124 @@ +category tags space separated}} + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Matthias Schulte + */ + +/** Count syntax, allows to list tag counts */ +class syntax_plugin_tag_count extends DokuWiki_Syntax_Plugin { + + /** + * @return string Syntax type + */ + function getType() { return 'substition'; } + /** + * @return int Sort order + */ + function getSort() { return 305; } + /** + * @return string Paragraph type + */ + function getPType() { return 'block';} + + /** + * @param string $mode Parser mode + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{count>.*?\}\}', $mode, 'plugin_tag_count'); + } + + /** + * Handle matches of the count syntax + * + * @param string $match The match of the syntax + * @param int $state The state of the handler + * @param int $pos The position in the document + * @param Doku_Handler $handler The handler + * @return array Data for the renderer + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + + $dump = trim(substr($match, 8, -2)); // get given tags + $dump = explode('&', $dump); // split to tags and allowed namespaces + $tags = $dump[0]; + $allowedNamespaces = explode(' ', $dump[1]); // split given namespaces into an array + + if($allowedNamespaces && $allowedNamespaces[0] == '') { + unset($allowedNamespaces[0]); // When exists, remove leading space after the delimiter + $allowedNamespaces = array_values($allowedNamespaces); + } + + if (empty($allowedNamespaces)) $allowedNamespaces = null; + + if (!$tags) $tags = '+'; + + /** @var helper_plugin_tag $my */ + if(!($my = $this->loadHelper('tag'))) return false; + + return array($my->_parseTagList($tags), $allowedNamespaces); + } + + /** + * Render xhtml output or metadata + * + * @param string $mode Renderer mode (supported modes: xhtml and metadata) + * @param Doku_Renderer $renderer The renderer + * @param array $data The data from the handler function + * @return bool If rendering was successful. + */ + function render($mode, Doku_Renderer $renderer, $data) { + if ($data == false) return false; + + list($tags, $allowedNamespaces) = $data; + + // deactivate (renderer) cache as long as there is no proper cache handling + // implemented for the count syntax + $renderer->nocache(); + + if($mode == "xhtml") { + /** @var helper_plugin_tag $my */ + if(!($my = $this->loadHelper('tag'))) return false; + + // get tags and their occurrences + if($tags[0] == '+') { + // no tags given, list all tags for allowed namespaces + $occurrences = $my->tagOccurrences($tags, $allowedNamespaces, true); + } else { + $occurrences = $my->tagOccurrences($tags, $allowedNamespaces); + } + + $class = "inline"; // valid: inline, ul, pagelist + $col = "page"; + + $renderer->doc .= ''.DOKU_LF; + $renderer->doc .= DOKU_TAB.''.DOKU_LF.DOKU_TAB.DOKU_TAB; + $renderer->doc .= ''; + $renderer->doc .= ''; + $renderer->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; + + if(empty($occurrences)) { + // Skip output + $renderer->doc .= DOKU_TAB.''.DOKU_LF.DOKU_TAB.DOKU_TAB; + $renderer->doc .= DOKU_TAB.DOKU_TAB.''.DOKU_LF; + $renderer->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; + } else { + foreach($occurrences as $tagname => $count) { + if($count <= 0) continue; // don't display tags with zero occurrences + $renderer->doc .= DOKU_TAB.''.DOKU_LF.DOKU_TAB.DOKU_TAB; + $renderer->doc .= DOKU_TAB.DOKU_TAB.''.DOKU_LF; + $renderer->doc .= DOKU_TAB.DOKU_TAB.''.DOKU_LF; + $renderer->doc .= DOKU_LF.DOKU_TAB.''.DOKU_LF; + } + } + $renderer->doc .= '
    '.$this->getLang('tag').''.$this->getLang('count').'
    '.$this->getLang('empty_output').'
    '.$my->tagLink($tagname).''.$count.'
    '.DOKU_LF; + } + return true; + } +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/syntax/searchtags.php b/platform/www/lib/plugins/tag/syntax/searchtags.php new file mode 100644 index 0000000..67d62b3 --- /dev/null +++ b/platform/www/lib/plugins/tag/syntax/searchtags.php @@ -0,0 +1,281 @@ + + */ + +/** + * Tagsearch syntax, displays a tag search form with results similar to the topic syntax + */ +class syntax_plugin_tag_searchtags extends DokuWiki_Syntax_Plugin { + /** + * @return string Syntax type + */ + function getType() { return 'substition'; } + + /** + * @return string Paragraph type + */ + function getPType() { return 'block'; } + + /** + * @return int Sort order + */ + function getSort() { return 295; } + + /** + * @param string $mode Parser mode + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{searchtags\}\}',$mode,'plugin_tag_searchtags'); + // make sure that flags really start with & and media files starting with "searchtags" still work + $this->Lexer->addSpecialPattern('\{\{searchtags&.*?\}\}',$mode,'plugin_tag_searchtags'); + } + + /** + * Handle matches of the searchtags syntax + * + * @param string $match The match of the syntax + * @param int $state The state of the handler + * @param int $pos The position in the document + * @param Doku_Handler $handler The handler + * @return array Data for the renderer + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + $flags = substr($match, 10, -2); // strip {{searchtags from start and }} from end + // remove empty flags by using array_filter (removes elements == false) + $flags = array_filter(explode('&', $flags)); + + return $flags; + } + + /** + * Render xhtml output or metadata + * + * @param string $mode Renderer mode (supported modes: xhtml and metadata) + * @param Doku_Renderer $renderer The renderer + * @param array $data The data from the handler function + * @return bool If rendering was successful. + */ + function render($mode, Doku_Renderer $renderer, $data) { + global $lang; + $flags = $data; + + if ($mode == 'xhtml') { + /* @var Doku_Renderer_xhtml $renderer */ + + // prevent caching to ensure content is always fresh + $renderer->nocache(); + + /* @var helper_plugin_pagelist $pagelist */ + // let Pagelist Plugin do the work for us + if ((!$pagelist = $this->loadHelper('pagelist'))) { + return false; + } + + // Prepare the flags for the pagelist plugin + $configflags = explode(',', str_replace(" ", "", $this->getConf('pagelist_flags'))); + $flags = array_merge($configflags, $flags); + foreach($flags as $key => $flag) { + if($flag == "") unset($flags[$key]); + } + + // print the search form + $nonsform = in_array('nonsform', $flags); + $renderer->doc .= $this->getForm($nonsform); + + // get the tag input data + $tags = $this->getTagSearchString(); + + if ($tags != NULL) { + /* @var helper_plugin_tag $my */ + if ($my = $this->loadHelper('tag')) $pages = $my->getTopic($this->getNS(), '', $tags); + + // Display a message when no pages were found + if (!isset($pages) || !$pages) { + $renderer->p_open(); + $renderer->cdata($lang['nothingfound']); + $renderer->p_close(); + } else { + + // display the actual search results + $pagelist->setFlags($flags); + $pagelist->startList(); + foreach ($pages as $page) { + $pagelist->addPage($page); + } + $renderer->doc .= $pagelist->finishList(); + } + } + + return true; + } + return false; + } + + /** + * Return the search form for the namespace and the tag selection + * + * @return string the HTML code of the search form + */ + private function getForm($nonsform=false) { + global $conf, $lang; + + if (!$nonsform) { + // Get the list of all namespaces for the dropdown + $namespaces = array(); + search($namespaces,$conf['datadir'],'search_namespaces',array()); + + // build the list in the form value => label from the namespace search result + $ns_select = array('' => ''); + foreach ($namespaces as $ns) { + // only display namespaces the user can access when sneaky index is on + if ($ns['perm'] > 0 || $conf['sneaky_index'] == 0) { + $ns_select[$ns['id']] = $ns['id']; + } + } + } + + $form = new Doku_Form(array('action' => '', 'method' => 'post', 'class' => 'plugin__tag_search')); + + // add a paragraph around the inputs in order to get some margin around the form elements + $form->addElement(form_makeOpenTag('p')); + // namespace select + if (!$nonsform) { + $form->addElement(form_makeMenuField('plugin__tag_search_namespace', $ns_select, $this->getNS(), $lang['namespaces'])); + } + + // checkbox for AND + $attr = array(); + if ($this->useAnd()) $attr['checked'] = 'checked'; + $form->addElement(form_makeCheckboxField('plugin__tag_search_and', 1, $this->getLang('use_and'), '', '', $attr)); + $form->addElement(form_makeCloseTag('p')); + + // load the tag list - only tags that actually have pages assigned that the current user can access are listed + /* @var helper_plugin_tag $my */ + if ($my = $this->loadHelper('tag')) $tags = $my->tagOccurrences(array(), NULL, true); + // sort tags by name ($tags is in the form $tag => $count) + ksort($tags); + + // display error message when no tags were found + if (!isset($tags) || $tags == NULL) { + $form->addElement(form_makeOpenTag('p')); + $form->addElement($this->getLang('no_tags')); + $form->addElement(form_makeCloseTag('p')); + } else { + // the tags table + $form->addElement(form_makeOpenTag('div', array('class' => 'table'))); + $form->addElement(form_makeOpenTag('table', array('class' => 'inline'))); + // print table header + $form->addElement(form_makeOpenTag('tr')); + $form->addElement(form_makeOpenTag('th')); + $form->addElement($this->getLang('include')); + $form->addElement(form_makeCloseTag('th')); + $form->addElement(form_makeOpenTag('th')); + $form->addElement($this->getLang('exclude')); + $form->addElement(form_makeCloseTag('th')); + $form->addElement(form_makeOpenTag('th')); + $form->addElement($this->getLang('tags')); + $form->addElement(form_makeCloseTag('th')); + $form->addElement(form_makeCloseTag('tr')); + + // print tag checkboxes + foreach ($tags as $tag => $count) { + $form->addElement(form_makeOpenTag('tr')); + $form->addElement(form_makeOpenTag('td')); + $attr = array(); + if ($this->isSelected($tag)) $attr['checked'] = 'checked'; + $form->addElement(form_makeCheckboxField('plugin__tag_search_tags[]', $tag, '+', '', 'plus', $attr)); + $form->addElement(form_makeCloseTag('td')); + $form->addElement(form_makeOpenTag('td')); + $attr = array(); + if ($this->isSelected('-'.$tag)) $attr['checked'] = 'checked'; + $form->addElement(form_makeCheckboxField('plugin__tag_search_tags[]', '-'.$tag, '-', '', 'minus', $attr)); + $form->addElement(form_makeCloseTag('td')); + $form->addElement(form_makeOpenTag('td')); + $form->addElement(hsc($tag).' ['.$count.']'); + $form->addElement(form_makeCloseTag('td')); + $form->addElement(form_makeCloseTag('tr')); + } + + $form->addElement(form_makeCloseTag('table')); + $form->addElement(form_makeCloseTag('div')); + + // submit button (doesn't use the button form element because it always submits an action which is not + // recognized for $preact in inc/actions.php and thus always causes a redirect) + $form->addElement(form_makeOpenTag('p')); + $form->addElement(form_makeTag('input', array('type' => 'submit', 'value' => $lang['btn_search']))); + $form->addElement(form_makeCloseTag('p')); + } + + return $form->getForm(); + } + + /** + * Returns the currently selected namespace + * @return string the cleaned namespace id + */ + private function getNS() { + if (isset($_POST['plugin__tag_search_namespace'])) { + return cleanID($_POST['plugin__tag_search_namespace']); + } else { + return ''; + } + } + + /** + * Returns the tag search string from the selected tags + * @return string|NULL the tag search or NULL when no tags were selected + */ + private function getTagSearchString() { + if (isset($_POST['plugin__tag_search_tags']) && is_array($_POST['plugin__tag_search_tags'])) { + $tags = $_POST['plugin__tag_search_tags']; + // wWhen and is set, prepend "+" to each tag + $plus = (isset($_POST['plugin__tag_search_and']) ? '+' : ''); + $positive_tags = ''; + $negative_tags = ''; + foreach ($tags as $tag) { + $tag = (string)$tag; + if ($tag[0] == '-') { + $negative_tags .= $tag.' '; + } else { + if ($positive_tags === '') { + $positive_tags = $tag.' '; + } else { + $positive_tags .= $plus.$tag.' '; + } + } + } + return $positive_tags.$negative_tags; + } else { + return NULL; // return NULL when no tags were selected so no results will be displayed + } + } + + /** + * Check if a tag was selected for search + * + * @param string $tag The tag to check + * @return bool if the tag was checked + */ + private function isSelected($tag) { + if (isset($_POST['plugin__tag_search_tags']) && is_array($_POST['plugin__tag_search_tags'])) { + return in_array($tag, $_POST['plugin__tag_search_tags'], true); + } else { + return false; // no tags in the post data - no tag selected + } + } + + /** + * Check if the tag query should use AND (instead of OR) + * + * @return bool if the query should use AND + */ + private function useAnd() { + return isset($_POST['plugin__tag_search_and']); + } +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/syntax/tag.php b/platform/www/lib/plugins/tag/syntax/tag.php new file mode 100644 index 0000000..dc8bce5 --- /dev/null +++ b/platform/www/lib/plugins/tag/syntax/tag.php @@ -0,0 +1,112 @@ +category tags space separated}} + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner + */ + +/** + * Tag syntax plugin, allows to specify tags in a page + */ +class syntax_plugin_tag_tag extends DokuWiki_Syntax_Plugin { + + /** + * @return string Syntax type + */ + function getType() { return 'substition'; } + /** + * @return int Sort order + */ + function getSort() { return 305; } + /** + * @return string Paragraph type + */ + function getPType() { return 'block';} + + /** + * @param string $mode Parser mode + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{tag>.*?\}\}', $mode, 'plugin_tag_tag'); + } + + /** + * Handle matches of the tag syntax + * + * @param string $match The match of the syntax + * @param int $state The state of the handler + * @param int $pos The position in the document + * @param Doku_Handler $handler The handler + * @return array Data for the renderer + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + $tags = trim(substr($match, 6, -2)); // strip markup & whitespace + $tags = preg_replace(array('/[[:blank:]]+/', '/\s+/'), " ", $tags); // replace linebreaks and multiple spaces with one space character + + if (!$tags) return false; + + // load the helper_plugin_tag + /** @var helper_plugin_tag $my */ + if (!$my = $this->loadHelper('tag')) return false; + + // split tags and returns for renderer + return $my->_parseTagList($tags); + } + + /** + * Render xhtml output or metadata + * + * @param string $mode Renderer mode (supported modes: xhtml and metadata) + * @param Doku_Renderer $renderer The renderer + * @param array $data The data from the handler function + * @return bool If rendering was successful. + */ + function render($mode, Doku_Renderer $renderer, $data) { + if ($data === false) return false; + /** @var helper_plugin_tag $my */ + if (!$my = $this->loadHelper('tag')) return false; + + // XHTML output + if ($mode == 'xhtml') { + $tags = $my->tagLinks($data); + if (!$tags) return true; + $renderer->doc .= '
    '.DOKU_LF. + DOKU_TAB.$tags.DOKU_LF. + '
    '.DOKU_LF; + return true; + + // for metadata renderer + } elseif ($mode == 'metadata') { + /** @var Doku_Renderer_metadata $renderer */ + // erase tags on persistent metadata no more used + if (isset($renderer->persistent['subject'])) { + unset($renderer->persistent['subject']); + $renderer->meta['subject'] = array(); + } + + if (!isset($renderer->meta['subject'])) $renderer->meta['subject'] = array(); + + // each registered tags in metadata and index should be valid IDs + $data = array_map('cleanID', $data); + // merge with previous tags and make the values unique + $renderer->meta['subject'] = array_unique(array_merge($renderer->meta['subject'], $data)); + + if ($renderer->capture) $renderer->doc .= DOKU_LF.implode(' ', $data).DOKU_LF; + + // add references if tag page exists + foreach ($data as $tag) { + resolve_pageid($my->namespace, $tag, $exists); // resolve shortcuts + $renderer->meta['relation']['references'][$tag] = $exists; + } + + return true; + } + return false; + } +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/syntax/tagpage.php b/platform/www/lib/plugins/tag/syntax/tagpage.php new file mode 100644 index 0000000..bec2e70 --- /dev/null +++ b/platform/www/lib/plugins/tag/syntax/tagpage.php @@ -0,0 +1,90 @@ +mytag[&dynamic][|title]}} + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Matthias Schulte + */ + +/** Tagpage syntax, allows to link to a given tag */ +class syntax_plugin_tag_tagpage extends DokuWiki_Syntax_Plugin { + + /** + * @return string Syntax type + */ + function getType() { + return 'substition'; + } + + /** + * @return int Sort order + */ + function getSort() { + return 305; + } + + /** + * @return string Paragraph type + */ + function getPType() { + return 'normal'; + } + + /** + * @param string $mode Parser mode + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{tagpage>.*?\}\}', $mode, 'plugin_tag_tagpage'); + } + + /** + * Handle matches of the count syntax + * + * @param string $match The match of the syntax + * @param int $state The state of the handler + * @param int $pos The position in the document + * @param Doku_Handler $handler The handler + * @return array Data for the renderer + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + $params = array(); + $dump = trim(substr($match, 10, -2)); // get given tag + $dump = explode('|', $dump, 2); // split to tags, link name and options + $params['title'] = $dump[1]; + $dump = explode('&', $dump[0]); + $params['dynamic'] = ($dump[1] == 'dynamic'); + $params['tag'] = trim($dump[0]); + + return $params; + } + + /** + * Render xhtml output + * + * @param string $mode Renderer mode (supported modes: xhtml) + * @param Doku_Renderer $renderer The renderer + * @param array $data The data from the handler function + * @return bool If rendering was successful. + */ + function render($mode, Doku_Renderer $renderer, $data) { + if($data == false) return false; + + if($mode == "xhtml") { + if($data['dynamic']) { + // deactivate (renderer) cache as long as there is no proper cache handling + // implemented for the count syntax + $renderer->nocache(); + } + + /** @var helper_plugin_tag $my */ + if(!($my = $this->loadHelper('tag'))) return false; + + $renderer->doc .= $my->tagLink($data['tag'], $data['title'], $data['dynamic']); + return true; + } + return false; + } +} +// vim:ts=4:sw=4:et: diff --git a/platform/www/lib/plugins/tag/syntax/topic.php b/platform/www/lib/plugins/tag/syntax/topic.php new file mode 100644 index 0000000..a065a94 --- /dev/null +++ b/platform/www/lib/plugins/tag/syntax/topic.php @@ -0,0 +1,129 @@ + + */ + +/** + * Topic syntax, displays links to all wiki pages with a certain tag + */ +class syntax_plugin_tag_topic extends DokuWiki_Syntax_Plugin { + + /** + * @return string Syntax type + */ + function getType() { return 'substition'; } + + /** + * @return string Paragraph type + */ + function getPType() { return 'block'; } + + /** + * @return int Sort order + */ + function getSort() { return 295; } + + /** + * @param string $mode Parser mode + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern('\{\{topic>.+?\}\}',$mode,'plugin_tag_topic'); + } + + /** + * Handle matches of the topic syntax + * + * @param string $match The match of the syntax + * @param int $state The state of the handler + * @param int $pos The position in the document + * @param Doku_Handler $handler The handler + * @return array Data for the renderer + */ + function handle($match, $state, $pos, Doku_Handler $handler) { + global $ID; + + $match = substr($match, 8, -2); // strip {{topic> from start and }} from end + list($match, $flags) = explode('&', $match, 2); + $flags = explode('&', $flags); + list($ns, $tag) = explode('?', $match); + + if (!$tag) { + $tag = $ns; + $ns = ''; + } + + if (($ns == '*') || ($ns == ':')) $ns = ''; + elseif ($ns == '.') $ns = getNS($ID); + else $ns = cleanID($ns); + + return array($ns, trim($tag), $flags); + } + + /** + * Render xhtml output or metadata + * + * @param string $mode Renderer mode (supported modes: xhtml and metadata) + * @param Doku_Renderer $renderer The renderer + * @param array $data The data from the handler function + * @return bool If rendering was successful. + */ + function render($mode, Doku_Renderer $renderer, $data) { + list($ns, $tag, $flags) = $data; + + /* @var helper_plugin_tag $my */ + if ($my = $this->loadHelper('tag')) $pages = $my->getTopic($ns, '', $tag); + if (!isset($pages) || !$pages) return true; // nothing to display + + if ($mode == 'xhtml') { + /* @var Doku_Renderer_xhtml $renderer */ + + // prevent caching to ensure content is always fresh + $renderer->nocache(); + + /* @var helper_plugin_pagelist $pagelist */ + // let Pagelist Plugin do the work for us + if ((!$pagelist = $this->loadHelper('pagelist'))) { + return false; + } + $pagelist->sort = false; + $pagelist->rsort = false; + + $configflags = explode(',', str_replace(" ", "", $this->getConf('pagelist_flags'))); + $flags = array_merge($configflags, $flags); + foreach($flags as $key => $flag) { + if($flag == "") unset($flags[$key]); + } + + $pagelist->setFlags($flags); + $pagelist->startList(); + + // Sort pages by pagename if required by flags + if($pagelist->sort || $pagelist->rsort) { + $keys = array(); + $fnc = create_function('$a, $b', 'return strcmp(noNS($a["id"]), noNS($b["id"])); '); + usort($pages, $fnc); + // rsort is true - revserse sort the pages + if($pagelist->rsort) krsort($pages); + } + + foreach ($pages as $page) { + $pagelist->addPage($page); + } + $renderer->doc .= $pagelist->finishList(); + return true; + + // for metadata renderer +/* } elseif ($mode == 'metadata') { + foreach ($pages as $page) { + $renderer->meta['relation']['references'][$page['id']] = true; + } + + return true;*/ // causes issues with backlinks + } + return false; + } +} +// vim:ts=4:sw=4:et: -- cgit v1.2.1