diff options
Diffstat (limited to 'platform/www/lib/plugins/blog')
67 files changed, 3093 insertions, 0 deletions
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. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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. + + <signature of Ty Coon>, 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 <wikidesign@gmail.com> +(c) 2008 - 2009 by Gina Häußge, Michael Klier <dokuwiki@chimeric.de> +(c) 2013 by Michael Hamann <michael@content-space.de> +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 @@ +<?php +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +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 <chi@chimeric.de> + */ + 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 <michael.arlt@sk-chwanstetten.de> + * @author Esther Brunner <wikidesign@gmail.com> + */ + 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 <michael@content-space.de> + */ + 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 @@ +<?php +/** + * Options for the Blog Plugin + */ +$conf['namespace'] = 'blog'; // default location for blog entries +$conf['formposition'] = 'bottom'; // position of new entry form +$conf['newentrytitle'] = ''; // Title text for the 'new entry' form +$conf['dateprefix'] = ''; // prefix date to new entry IDs +$conf['sortkey'] = 'cdate'; // sort key for blog entries +$conf['sortorder'] = 'descending'; // ascending or descending + +$conf['showhistogram'] = 1; // show histogramm in archive +$conf['max_months'] = 100; // max months to show in the histogram +$conf['histogram_height'] = 50; // height of the histogram in pixels + +$conf['excluded_pages'] = '!^blog:\d{4}(:\d{2})?$!'; // regex for pages to exclude from bloglisting + +// vim:ts=4:sw=4:et:enc=utf-8: diff --git a/platform/www/lib/plugins/blog/conf/metadata.php b/platform/www/lib/plugins/blog/conf/metadata.php new file mode 100644 index 0000000..822d3c4 --- /dev/null +++ b/platform/www/lib/plugins/blog/conf/metadata.php @@ -0,0 +1,22 @@ +<?php +/** + * Metadata for configuration manager plugin + * Additions for the blog plugin + * + * @author Esther Brunner <wikidesign@gmail.com> + */ +$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 @@ +<?php +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +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 <sam@samwilson.id.au> + * @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 <wikidesign@gmail.com> + * @author Ilya S. Lebedev <ilya@lebedev.net> + * @author Balazs Attila-Mihaly <x_at_y_or_z@yahoo.com> + */ + 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 @@ +<?php +/** + * Arabic language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author M. Bashir Al-Noimi <bashir.storm@gmail.com> + */ + +// 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 @@ +<?php +/** + * Arabic language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author M. Bashir Al-Noimi <bashir.storm@gmail.com> + */ + +// 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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author qezwan <qezwan@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author qezwan <qezwan@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Lukas Zapletal <lukas.zapletal at gmail dot com> + * @author Vojta Olsan <olsh0@seznam.cz> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Lukas Zapletal <lukas.zapletal at gmail dot com> + * @author Vojta Olsan <olsh0@seznam.cz> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Soren Birk <soer9648@eucl.dk> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Kalle Sommer Nielsen <kalle@php.net> + * @author Esther Brunner <wikidesign@gmail.com> + * @author Soren Birk <soer9648@eucl.dk> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Michael Hamann <michael@content-space.de> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Michael Hamann <michael@content-space.de> + * @author Dominik Eckelmann <deckelmann@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Michael Hamann <michael@content-space.de> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Michael Hamann <michael@content-space.de> + * @author Dominik Eckelmann <deckelmann@gmail.com> + */ +$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 @@ +<?php +/** + * English language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +// 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 @@ +<?php +/** + * English language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +// 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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Piotr Hołda <holda.piotr@gmail.com> + * @author Robert Bogenschneider <bogi@uea.org> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Piotr Hołda <holda.piotr@gmail.com> + * @author Robert Bogenschneider <bogi@uea.org> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Herman Fabián Sandoval Manrique <hfsandovalm@emzac.com> + * @author r0sk <r0sk10@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Herman Fabián Sandoval Manrique <hfsandovalm@emzac.com> + * @author r0sk <r0sk10@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Sam01 <m.sajad079@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Sam01 <m.sajad079@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Damien Raude-Morvan <drazzib@drazzib.com> + * @author Stanislas Reltgen <stanislas@reltgen.net> + * @author Florent Chabaud <fchabaud@free.fr> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Stanislas Reltgen <stanislas@reltgen.net> + * @author Florent Chabaud <fchabaud@free.fr> + * @author Nicolas Friedli <nicolas@theologique.ch> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Norbert Csík <norbert.csik@gmail.com> + * @author Serenity87HUN <anikototh87@gmail.com> + * @author Marina Vladi <deldadam@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Norbert Csík <norbert.csik@gmail.com> + * @author Serenity87HUN <anikototh87@gmail.com> + * @author Marina Vladi <deldadam@gmail.com> + */ +$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 @@ +<?php +/** + * Italian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Niccolo Rigacci <niccolo@rigacci.org> + */ + +// 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 @@ +<?php +/** + * Italian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Niccolo Rigacci <niccolo@rigacci.org> + */ + +// 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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Hideaki SAWADA <chuno@live.jp> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Hideaki SAWADA <chuno@live.jp> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Myeongjin <aranet100@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Myeongjin <aranet100@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Gijs H. van Gemert <g.v.gemert@inter.nl.net> + * @author Mark Prins <mprins@users.sf.net> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Gijs van Gemert <gijsh@sherpanet.nl> + * @author Mark Prins <mprins@users.sf.net> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Bartek S <sadupl@gmail.com> + * @author Radoslaw Gorniak + * @author Tomasz Dworakowski <tomaszdworakowski@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Bartek S <sadupl@gmail.com> + * @author Radoslaw Gorniak + * @author Tomasz Dworakowski <tomaszdworakowski@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Flávio Roberto Santos <flavio.barata@gmail.com> + * @author Samory Pereira Santos <samory.santos@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Fabio Pereira de Sousa <fabiosousa.eti@gmail.com> + * @author Flávio Roberto Santos <flavio.barata@gmail.com> + * @author Samory Pereira Santos <samory.santos@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Fernando Ribeiro <pinguim.ribeiro@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Esther Brunner <wikidesign@gmail.com> + * @author Fernando Ribeiro <pinguim.ribeiro@gmail.com> + */ +$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 @@ +<?php +/** + * Romanian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + * @author Florin Chitiul <florinko@gmail.com> + */ +// 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 @@ +<?php +/** + * Romanian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + * @author Florin Chitiul <florinko@gmail.com> + */ + +// 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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Spike <spike@foobar2000.ru> + * @author Aleksandr Selivanov <alexgearbox@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Spike <spike@foobar2000.ru> + * @author Aleksandr Selivanov <alexgearbox@gmail.com> + * @author Aleksandr Selivanov <alexgearbox@yandex.ru> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Igor Korček <korcek dot igor at gmail dot com> + */ + +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Igor Korček <korcek dot igor at gmail dot com> + */ +$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 @@ +<?php +/** + * Slovenian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Blaž Mertelj <Blaz.Mertelj@atol.si> + */ + +// 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 @@ +<?php +/** + * Slovenian language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Blaž Mertelj <Blaz.Mertelj@atol.si> + */ + +// 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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Christer Nygren <wiki@fronet.fro.se> + * @author Tor Härnqvist <tor.harnqvist@gmail.com> + * @author Tor Härnqvist <tor@harnqvist.se> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author Christer Nygren <wiki@fronet.fro.se> + * @author Tor Härnqvist <tor.harnqvist@gmail.com> + * @author hib <hibratt@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author İlker R. Kapaç <irifat@gmail.com> + */ +$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 @@ +<?php + +/** + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * + * @author İlker R. Kapaç <irifat@gmail.com> + */ +$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 @@ +<?php +/** + * English language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +// 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 @@ +<?php +/** + * English language file + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +// 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 @@ +<?php +/** + * Archive Plugin: displays links to all wiki pages from a given month + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +/** + * 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 .= '<div class="level1">'; + $renderer->doc .= '<h1>' . $this->getLang('archive_title') . '</h1>'; + $renderer->doc .= $alt_list; + $renderer->doc .= '</div>' . 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 .= '</ul>' . DOKU_LF; + $ul_open = false; + } + $current_year = date('o',$entry['date']); + $list .= '<h2>' . $current_year . '</h2>' . DOKU_LF; + $current_month = ''; + } + if ($current_month != date('m',$entry['date'])) { + if ($ul_open) { + $list .= '</ul>' . DOKU_LF; + } + $current_month = date('m',$entry['date']); + $list .= '<h3 id="m' . date('o-m',$entry['date']) . '">' . $this->getLang('month_' . $current_month) . '</h3><ul>' . 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 .= '<li>' . date('d',$entry['date']) . ' - <a href="' . wl($entry['id']) . '" title="' . $entry['id'] . '">' . $entry['title'] . '</a></li>' . DOKU_LF; + } + $list .= '</ul>' . 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 = '<p>'; + $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 .= '<a href="#m' . $key . '" title="' . $alt . '">'; + $histogram .= '<img class="blog_archive_bar" alt="' . $alt . '" style="height: ' . $current_height . 'px;" src="'.DOKU_BASE.'lib/images/blank.gif"/></a>' . DOKU_LF; + $month_count += 1; + } + $histogram .= '</p>'; + + 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 @@ +<?php +/** + * Dynamic Archive Plugin: dynamically displays + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +/** + * 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 .= '<div class="autoarchive_selector">'; + foreach($months as $y => $mdata){ + $R->listu_open(); + $R->listitem_open(1); + $R->listcontent_open(); + $R->doc .= $y.'<span>:</span>'; + $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 .= '<span class="cur">'; + $R->doc .= '<a href="'.wl($ID,array('blogarchive'=>"$y-$m")).'" class="wikilink1" title="'.$this->_posts($cnt,$m,$y).'">'; + $R->doc .= $this->getLang('month_'.$m); + $R->doc .= '</a>'; + if("$y-$m" == $now){ + $R->doc .= '</span>'; + $ret = $cnt; + } + $R->listcontent_close(); + $R->listitem_close(); + $R->listu_close(); + } + $R->listitem_close(); + $R->listu_close(); + } + $R->doc .='</div>'; + 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 @@ +<?php +/** + * Blog Plugin: displays a number of recent entries from the blog subnamespace + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + * @author Robert Rackl <wiki@doogie.de> + */ + +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('|<div class="level(\d)">|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 .= '</div>'.DOKU_LF; + $renderer->doc .= '<div class="hfeed">'.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 .= '</div>'.DOKU_LF; + if ($clevel && !$include_flags['inline']) $renderer->doc .= '<div class="level'.$clevel.'">'.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 .= '<p class="centeralign">'.DOKU_LF.'<a href="'.wl($ID, 'first='.$first).'"'. + ' class="wikilink1"><< '.$this->getLang('newer').'</a>'; + if ($more) $ret .= ' | '; + else $ret .= '</p>'; + } else if ($more) { + $ret .= '<p class="centeralign">'.DOKU_LF; + } + if ($more) { + $ret .= '<a href="'.wl($ID, 'first='.$last).'" class="wikilink1">'. + $this->getLang('older').' >></a>'.DOKU_LF.'</p>'.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 '<div class="newentry_form">'.DOKU_LF. + '<form id="blog__newentry_form" method="post" action="'.script().'" accept-charset="'.$lang['encoding'].'">'.DOKU_LF. + DOKU_TAB.'<fieldset>'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<legend>'.hsc($newentrytitle).'</legend>'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<input type="hidden" name="id" value="'.$ID.'" />'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<input type="hidden" name="do" value="newentry" />'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<input type="hidden" name="ns" value="'.$ns.'" />'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<input class="edit" type="text" name="title" id="blog__newentry_title" size="40" tabindex="1" />'.DOKU_LF. + DOKU_TAB.DOKU_TAB.'<input class="button" type="submit" value="'.$lang['btn_create'].'" tabindex="2" />'.DOKU_LF. + DOKU_TAB.'</fieldset>'.DOKU_LF. + '</form>'.DOKU_LF. + '</div>'.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 @@ +<?php +/** + * Blog Plugin, draft component: marks the current page as draft + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Esther Brunner <wikidesign@gmail.com> + */ + +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: |