From 943289fa2ead5ccf536bf481b9dec608676b3387 Mon Sep 17 00:00:00 2001 From: Stefan Schmidt Date: Tue, 29 Nov 2016 11:52:18 +0100 Subject: [PATCH] www: plugins: install wrap plugin needed for the new eo doc system --- public_html/lib/plugins/wrap/.travis.yml | 13 + public_html/lib/plugins/wrap/COPYING | 340 ++++++++++++ public_html/lib/plugins/wrap/README | 1 + .../plugins/wrap/_test/wrap_syntax.test.php | 243 +++++++++ public_html/lib/plugins/wrap/action.php | 152 ++++++ public_html/lib/plugins/wrap/all.css | 321 ++++++++++++ public_html/lib/plugins/wrap/conf/default.php | 12 + .../lib/plugins/wrap/conf/lang2dir.conf | 249 +++++++++ .../lib/plugins/wrap/conf/metadata.php | 12 + public_html/lib/plugins/wrap/example.txt | 437 ++++++++++++++++ public_html/lib/plugins/wrap/helper.php | 489 ++++++++++++++++++ public_html/lib/plugins/wrap/images/README | 18 + .../lib/plugins/wrap/images/note/16/alert.png | Bin 0 -> 883 bytes .../plugins/wrap/images/note/16/download.png | Bin 0 -> 683 bytes .../lib/plugins/wrap/images/note/16/help.png | Bin 0 -> 929 bytes .../plugins/wrap/images/note/16/important.png | Bin 0 -> 574 bytes .../lib/plugins/wrap/images/note/16/info.png | Bin 0 -> 796 bytes .../lib/plugins/wrap/images/note/16/tip.png | Bin 0 -> 841 bytes .../lib/plugins/wrap/images/note/16/todo.png | Bin 0 -> 692 bytes .../lib/plugins/wrap/images/note/48/alert.png | Bin 0 -> 3654 bytes .../plugins/wrap/images/note/48/download.png | Bin 0 -> 2801 bytes .../lib/plugins/wrap/images/note/48/help.png | Bin 0 -> 3283 bytes .../plugins/wrap/images/note/48/important.png | Bin 0 -> 3029 bytes .../lib/plugins/wrap/images/note/48/info.png | Bin 0 -> 3315 bytes .../lib/plugins/wrap/images/note/48/tip.png | Bin 0 -> 4232 bytes .../lib/plugins/wrap/images/note/48/todo.png | Bin 0 -> 3176 bytes .../lib/plugins/wrap/images/toolbar/box.png | Bin 0 -> 353 bytes .../lib/plugins/wrap/images/toolbar/clear.png | Bin 0 -> 797 bytes .../plugins/wrap/images/toolbar/column.png | Bin 0 -> 246 bytes .../lib/plugins/wrap/images/toolbar/em.png | Bin 0 -> 235 bytes .../lib/plugins/wrap/images/toolbar/hi.png | Bin 0 -> 259 bytes .../lib/plugins/wrap/images/toolbar/lo.png | Bin 0 -> 211 bytes .../plugins/wrap/images/toolbar/picker.png | Bin 0 -> 870 bytes public_html/lib/plugins/wrap/lang/ar/lang.php | 16 + .../lib/plugins/wrap/lang/ar/settings.php | 11 + public_html/lib/plugins/wrap/lang/bn/lang.php | 21 + .../lib/plugins/wrap/lang/bn/settings.php | 14 + public_html/lib/plugins/wrap/lang/cs/lang.php | 21 + .../lib/plugins/wrap/lang/cs/settings.php | 14 + public_html/lib/plugins/wrap/lang/da/lang.php | 21 + .../lib/plugins/wrap/lang/da/settings.php | 12 + .../plugins/wrap/lang/de-informal/lang.php | 19 + .../wrap/lang/de-informal/settings.php | 14 + public_html/lib/plugins/wrap/lang/de/lang.php | 19 + .../lib/plugins/wrap/lang/de/settings.php | 14 + public_html/lib/plugins/wrap/lang/en/lang.php | 19 + .../lib/plugins/wrap/lang/en/settings.php | 14 + public_html/lib/plugins/wrap/lang/eo/lang.php | 21 + .../lib/plugins/wrap/lang/eo/settings.php | 14 + public_html/lib/plugins/wrap/lang/es/lang.php | 20 + .../lib/plugins/wrap/lang/es/settings.php | 15 + public_html/lib/plugins/wrap/lang/fa/lang.php | 20 + public_html/lib/plugins/wrap/lang/fr/lang.php | 23 + .../lib/plugins/wrap/lang/fr/settings.php | 18 + public_html/lib/plugins/wrap/lang/hr/lang.php | 21 + .../lib/plugins/wrap/lang/hr/settings.php | 15 + public_html/lib/plugins/wrap/lang/hu/lang.php | 21 + .../lib/plugins/wrap/lang/hu/settings.php | 16 + public_html/lib/plugins/wrap/lang/it/lang.php | 12 + .../lib/plugins/wrap/lang/it/settings.php | 12 + public_html/lib/plugins/wrap/lang/ja/lang.php | 21 + .../lib/plugins/wrap/lang/ja/settings.php | 16 + public_html/lib/plugins/wrap/lang/ko/lang.php | 21 + .../lib/plugins/wrap/lang/ko/settings.php | 15 + public_html/lib/plugins/wrap/lang/nl/lang.php | 21 + .../lib/plugins/wrap/lang/nl/settings.php | 16 + public_html/lib/plugins/wrap/lang/no/lang.php | 24 + .../lib/plugins/wrap/lang/no/settings.php | 15 + .../lib/plugins/wrap/lang/pt-br/lang.php | 21 + .../lib/plugins/wrap/lang/pt-br/settings.php | 13 + public_html/lib/plugins/wrap/lang/ru/lang.php | 23 + .../lib/plugins/wrap/lang/ru/settings.php | 16 + public_html/lib/plugins/wrap/lang/sk/lang.php | 12 + .../lib/plugins/wrap/lang/sk/settings.php | 12 + public_html/lib/plugins/wrap/lang/tr/lang.php | 22 + .../lib/plugins/wrap/lang/tr/settings.php | 15 + .../lib/plugins/wrap/lang/zh-tw/lang.php | 19 + .../lib/plugins/wrap/lang/zh-tw/settings.php | 11 + public_html/lib/plugins/wrap/lang/zh/lang.php | 20 + .../lib/plugins/wrap/lang/zh/settings.php | 16 + public_html/lib/plugins/wrap/manager.dat | 2 + public_html/lib/plugins/wrap/plugin.info.txt | 8 + public_html/lib/plugins/wrap/print.css | 57 ++ public_html/lib/plugins/wrap/style.css | 203 ++++++++ .../lib/plugins/wrap/syntax/closesection.php | 40 ++ public_html/lib/plugins/wrap/syntax/div.php | 132 +++++ .../lib/plugins/wrap/syntax/divblock.php | 21 + .../lib/plugins/wrap/syntax/divwrap.php | 20 + public_html/lib/plugins/wrap/syntax/span.php | 105 ++++ .../lib/plugins/wrap/syntax/spaninline.php | 20 + .../lib/plugins/wrap/syntax/spanwrap.php | 21 + 91 files changed, 3722 insertions(+) create mode 100644 public_html/lib/plugins/wrap/.travis.yml create mode 100644 public_html/lib/plugins/wrap/COPYING create mode 100644 public_html/lib/plugins/wrap/README create mode 100644 public_html/lib/plugins/wrap/_test/wrap_syntax.test.php create mode 100644 public_html/lib/plugins/wrap/action.php create mode 100644 public_html/lib/plugins/wrap/all.css create mode 100644 public_html/lib/plugins/wrap/conf/default.php create mode 100644 public_html/lib/plugins/wrap/conf/lang2dir.conf create mode 100644 public_html/lib/plugins/wrap/conf/metadata.php create mode 100644 public_html/lib/plugins/wrap/example.txt create mode 100644 public_html/lib/plugins/wrap/helper.php create mode 100644 public_html/lib/plugins/wrap/images/README create mode 100644 public_html/lib/plugins/wrap/images/note/16/alert.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/download.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/help.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/important.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/info.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/tip.png create mode 100644 public_html/lib/plugins/wrap/images/note/16/todo.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/alert.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/download.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/help.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/important.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/info.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/tip.png create mode 100644 public_html/lib/plugins/wrap/images/note/48/todo.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/box.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/clear.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/column.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/em.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/hi.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/lo.png create mode 100644 public_html/lib/plugins/wrap/images/toolbar/picker.png create mode 100644 public_html/lib/plugins/wrap/lang/ar/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/ar/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/bn/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/bn/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/cs/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/cs/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/da/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/da/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/de-informal/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/de-informal/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/de/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/de/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/en/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/en/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/eo/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/eo/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/es/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/es/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/fa/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/fr/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/fr/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/hr/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/hr/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/hu/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/hu/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/it/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/it/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/ja/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/ja/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/ko/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/ko/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/nl/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/nl/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/no/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/no/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/pt-br/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/pt-br/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/ru/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/ru/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/sk/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/sk/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/tr/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/tr/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/zh-tw/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/zh-tw/settings.php create mode 100644 public_html/lib/plugins/wrap/lang/zh/lang.php create mode 100644 public_html/lib/plugins/wrap/lang/zh/settings.php create mode 100644 public_html/lib/plugins/wrap/manager.dat create mode 100644 public_html/lib/plugins/wrap/plugin.info.txt create mode 100644 public_html/lib/plugins/wrap/print.css create mode 100644 public_html/lib/plugins/wrap/style.css create mode 100644 public_html/lib/plugins/wrap/syntax/closesection.php create mode 100644 public_html/lib/plugins/wrap/syntax/div.php create mode 100644 public_html/lib/plugins/wrap/syntax/divblock.php create mode 100644 public_html/lib/plugins/wrap/syntax/divwrap.php create mode 100644 public_html/lib/plugins/wrap/syntax/span.php create mode 100644 public_html/lib/plugins/wrap/syntax/spaninline.php create mode 100644 public_html/lib/plugins/wrap/syntax/spanwrap.php diff --git a/public_html/lib/plugins/wrap/.travis.yml b/public_html/lib/plugins/wrap/.travis.yml new file mode 100644 index 00000000..ed124b2b --- /dev/null +++ b/public_html/lib/plugins/wrap/.travis.yml @@ -0,0 +1,13 @@ +language: php +php: + - "5.6" + - "5.5" + - "5.4" + - "5.3" +env: + - DOKUWIKI=master + - DOKUWIKI=stable + - DOKUWIKI=old-stable +before_install: wget https://raw.github.com/splitbrain/dokuwiki-travis/master/travis.sh +install: sh travis.sh +script: cd _test && phpunit --stderr --group plugin_wrap diff --git a/public_html/lib/plugins/wrap/COPYING b/public_html/lib/plugins/wrap/COPYING new file mode 100644 index 00000000..d60c31a9 --- /dev/null +++ b/public_html/lib/plugins/wrap/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/public_html/lib/plugins/wrap/README b/public_html/lib/plugins/wrap/README new file mode 100644 index 00000000..c0a1118f --- /dev/null +++ b/public_html/lib/plugins/wrap/README @@ -0,0 +1 @@ +see plugin.info.txt \ No newline at end of file diff --git a/public_html/lib/plugins/wrap/_test/wrap_syntax.test.php b/public_html/lib/plugins/wrap/_test/wrap_syntax.test.php new file mode 100644 index 00000000..768c1304 --- /dev/null +++ b/public_html/lib/plugins/wrap/_test/wrap_syntax.test.php @@ -0,0 +1,243 @@ +pluginsEnabled[] = 'wrap'; + parent::setUp(); + } + + public function test_nestedheading() { + $instructions = p_get_instructions("\n==== Heading ====\n\nSome text\n"); + $expected = + array( + array( + 'document_start', + array(), + 0 + ), + array( + 'plugin', + array( + 'wrap_divwrap', + array( + DOKU_LEXER_ENTER, + '' + ), + 1 + ), + array( + 'header', + array( + 'Heading', + 3, + 8 + ), + 8 + ), + array( + 'plugin', + array( + 'wrap_closesection', + array(), + DOKU_LEXER_SPECIAL, + false + ), + 8 + ), + array( + 'p_open', + array(), + 8 + ), + array( + 'cdata', + array( + 'Some text' + ), + 27 + ), + array( + 'p_close', + array(), + 37 + ), + array( + 'plugin', + array( + 'wrap_divwrap', + array( + DOKU_LEXER_EXIT, + '' + ), + DOKU_LEXER_EXIT, + '' + ), + 37 + ), + array( + 'document_end', + array(), + 37 + ) + ); + $this->assertEquals($expected, $instructions); + } + + public function test_blocknesting() { + $instructions = p_get_instructions("\nFoo\n\n Bar\n"); + $expected = + array( + array( + 'document_start', + array(), + 0 + ), + array( + 'plugin', + array( + 'wrap_divwrap', + array( + DOKU_LEXER_ENTER, + '' + ), + 1 + ), + array( + 'p_open', + array( + ), + 1 + ), + array( + 'cdata', + array( + 'Foo' + ), + 8 + ), + array( + 'p_close', + array(), + 11 + ), + array( + 'p_open', + array( + ), + 11 + ), + array( + 'cdata', + array( + ' Bar' + ), + 13 + ), + array( + 'p_close', + array(), + 33 + ), + array( + 'plugin', + array( + 'wrap_divwrap', + array( + DOKU_LEXER_EXIT, + '' + ), + DOKU_LEXER_EXIT, + '' + ), + 33 + ), + array( + 'document_end', + array(), + 33 + ) + ); + $this->assertEquals($expected, $instructions); + } + + public function test_inlinenesting() { + $instructions = p_get_instructions("Foo Bar"); + $expected = + array( + array( + 'document_start', + array(), + 0 + ), + array( + 'p_open', + array( + ), + 0 + ), + array( + 'plugin', + array( + 'wrap_spanwrap', + array( + DOKU_LEXER_ENTER, + '' + ), + 1 + ), + array( + 'cdata', + array( + 'Foo Bar' + ), + 7 + ), + array( + 'plugin', + array( + 'wrap_spanwrap', + array( + DOKU_LEXER_EXIT, + '' + ), + DOKU_LEXER_EXIT, + '' + ), + 32 + ), + array( + 'cdata', + array( + '' + ), + 39 + ), + array( + 'p_close', + array(), + 39 + ), + array( + 'document_end', + array(), + 39 + ) + ); + $this->assertEquals($expected, $instructions); + } + +} \ No newline at end of file diff --git a/public_html/lib/plugins/wrap/action.php b/public_html/lib/plugins/wrap/action.php new file mode 100644 index 00000000..2a47fca0 --- /dev/null +++ b/public_html/lib/plugins/wrap/action.php @@ -0,0 +1,152 @@ + + */ + +// must be run within Dokuwiki +if(!defined('DOKU_INC')) die(); + +if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); +require_once(DOKU_PLUGIN.'action.php'); + +class action_plugin_wrap extends DokuWiki_Action_Plugin { + + /** + * register the eventhandlers + * + * @author Andreas Gohr + */ + function register(Doku_Event_Handler $controller){ + $controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'handle_toolbar', array ()); + $controller->register_hook('HTML_SECEDIT_BUTTON', 'BEFORE', $this, 'handle_secedit_button'); + } + + function handle_toolbar(Doku_Event $event, $param) { + $syntaxDiv = $this->getConf('syntaxDiv'); + $syntaxSpan = $this->getConf('syntaxSpan'); + + $event->data[] = array ( + 'type' => 'picker', + 'title' => $this->getLang('picker'), + 'icon' => '../../plugins/wrap/images/toolbar/picker.png', + 'list' => array( + array( + 'type' => 'format', + 'title' => $this->getLang('column'), + 'icon' => '../../plugins/wrap/images/toolbar/column.png', + 'open' => '<'.$syntaxDiv.' group>\n<'.$syntaxDiv.' half column>\n', + 'close' => '\n\n\n<'.$syntaxDiv.' half column>\n\n\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('box'), + 'icon' => '../../plugins/wrap/images/toolbar/box.png', + 'open' => '<'.$syntaxDiv.' center round box 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('info'), + 'icon' => '../../plugins/wrap/images/note/16/info.png', + 'open' => '<'.$syntaxDiv.' center round info 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('tip'), + 'icon' => '../../plugins/wrap/images/note/16/tip.png', + 'open' => '<'.$syntaxDiv.' center round tip 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('important'), + 'icon' => '../../plugins/wrap/images/note/16/important.png', + 'open' => '<'.$syntaxDiv.' center round important 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('alert'), + 'icon' => '../../plugins/wrap/images/note/16/alert.png', + 'open' => '<'.$syntaxDiv.' center round alert 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('help'), + 'icon' => '../../plugins/wrap/images/note/16/help.png', + 'open' => '<'.$syntaxDiv.' center round help 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('download'), + 'icon' => '../../plugins/wrap/images/note/16/download.png', + 'open' => '<'.$syntaxDiv.' center round download 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('todo'), + 'icon' => '../../plugins/wrap/images/note/16/todo.png', + 'open' => '<'.$syntaxDiv.' center round todo 60%>\n', + 'close' => '\n\n', + ), + array( + 'type' => 'insert', + 'title' => $this->getLang('clear'), + 'icon' => '../../plugins/wrap/images/toolbar/clear.png', + 'insert' => '<'.$syntaxDiv.' clear/>\n', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('em'), + 'icon' => '../../plugins/wrap/images/toolbar/em.png', + 'open' => '<'.$syntaxSpan.' em>', + 'close' => '', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('hi'), + 'icon' => '../../plugins/wrap/images/toolbar/hi.png', + 'open' => '<'.$syntaxSpan.' hi>', + 'close' => '', + ), + array( + 'type' => 'format', + 'title' => $this->getLang('lo'), + 'icon' => '../../plugins/wrap/images/toolbar/lo.png', + 'open' => '<'.$syntaxSpan.' lo>', + 'close' => '', + ), + ) + ); + } + + /** + * Handle section edit buttons, prevents section buttons inside the wrap plugin from being rendered + * + * @param Doku_Event $event The event object + * @param array $param Parameters for the event + */ + public function handle_secedit_button(Doku_Event $event, $param) { + // counter of the number of currently opened wraps + static $wraps = 0; + $data = $event->data; + + if ($data['target'] == 'plugin_wrap_start') { + ++$wraps; + } elseif ($data['target'] == 'plugin_wrap_end') { + --$wraps; + } elseif ($wraps > 0 && $data['target'] == 'section') { + $event->preventDefault(); + $event->stopPropagation(); + $event->result = ''; + } + } +} + diff --git a/public_html/lib/plugins/wrap/all.css b/public_html/lib/plugins/wrap/all.css new file mode 100644 index 00000000..b987c406 --- /dev/null +++ b/public_html/lib/plugins/wrap/all.css @@ -0,0 +1,321 @@ +/******************************************************************** +Screen and Print Styles for the Wrap Plugin +********************************************************************/ + +/* resetting the box model to something more sane makes life a whole lot easier */ +.dokuwiki .plugin_wrap { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +/* tables in columns and boxes should span the whole width */ +.dokuwiki .plugin_wrap table { + width: 100%; +} +/* emulate a headline */ +.dokuwiki .plugin_wrap em strong { + font-size: 130%; + font-weight: bold; + font-style: normal; + display: block; +} +/* emulate a bigger headline with a bottom border */ +.dokuwiki .plugin_wrap em strong em.u { + font-size: 115%; + border-bottom: 1px solid __border__; + font-style: normal; + text-decoration: none; + display: block; +} +/* different bigger headline for safety notes */ +.dokuwiki .wrap_danger em strong em.u, +.dokuwiki .wrap_warning em strong em.u, +.dokuwiki .wrap_caution em strong em.u, +.dokuwiki .wrap_notice em strong em.u, +.dokuwiki .wrap_safety em strong em.u { + text-transform: uppercase; + border-bottom-width: 0; +} +/* change border colour of emulated headlines inside boxes to something more neutral + (to match all the different background colours) */ +.dokuwiki .wrap_box em strong em.u, +.dokuwiki .wrap_info em strong em.u, +.dokuwiki .wrap_important em strong em.u, +.dokuwiki .wrap_alert em strong em.u, +.dokuwiki .wrap_tip em strong em.u, +.dokuwiki .wrap_help em strong em.u, +.dokuwiki .wrap_todo em strong em.u, +.dokuwiki .wrap_download em strong em.u { + border-bottom-color: #999; +} + +/* real headlines should not be indented inside a wrap */ +.dokuwiki .plugin_wrap h1, +.dokuwiki .plugin_wrap h2, +.dokuwiki .plugin_wrap h3, +.dokuwiki .plugin_wrap h4, +.dokuwiki .plugin_wrap h5 { + margin-left: 0; + margin-right: 0; +} + +/* columns +********************************************************************/ + +.dokuwiki .wrap_left, +.dokuwiki .wrap_column { + float: left; + margin-right: 1.5em; +} +[dir=rtl] .dokuwiki .wrap_column { + float: right; + margin-left: 1.5em; + margin-right: 0; +} +.dokuwiki .wrap_right { + float: right; + margin-left: 1.5em; +} +.dokuwiki .wrap_center { + display: block; + margin-left: auto; + margin-right: auto; +} + +/*____________ CSS3 columns ____________*/ + +.dokuwiki .wrap_col2, .dokuwiki .wrap_col3, .dokuwiki .wrap_col4, .dokuwiki .wrap_col5 { + -moz-column-gap: 1.5em; + -webkit-column-gap: 1.5em; + column-gap: 1.5em; + -moz-column-rule: 1px dotted #666; + -webkit-column-rule: 1px dotted #666; + column-rule: 1px dotted #666; +} +.dokuwiki .wrap_col2 { + -moz-column-count: 2; + -webkit-column-count: 2; + column-count: 2; +} +.dokuwiki .wrap_col3 { + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; +} +.dokuwiki .wrap_col4 { + -moz-column-count: 4; + -webkit-column-count: 4; + column-count: 4; +} +.dokuwiki .wrap_col5 { + -moz-column-count: 5; + -webkit-column-count: 5; + column-count: 5; +} + + +/* widths +********************************************************************/ + +.dokuwiki .wrap_half { + width: 48%; + margin-right: 4%; +} + +.dokuwiki .wrap_third { + width: 30%; + margin-right: 5%; +} + +.dokuwiki .wrap_quarter { + width: 22%; + margin-right: 4%; +} + +[dir=rtl] .dokuwiki .wrap_half, +[dir=rtl] .dokuwiki .wrap_third, +[dir=rtl] .dokuwiki .wrap_quarter { + margin-right: 0; + margin-left: 4%; +} +[dir=rtl] .dokuwiki .wrap_third { + margin-left: 5%; +} + +.dokuwiki .wrap_half:nth-of-type(2n), +.dokuwiki .wrap_third:nth-of-type(3n), +.dokuwiki .wrap_quarter:nth-of-type(4n) { + margin-right: 0; +} +[dir=rtl] .dokuwiki .wrap_half:nth-of-type(2n), +[dir=rtl] .dokuwiki .wrap_third:nth-of-type(3n), +[dir=rtl] .dokuwiki .wrap_quarter:nth-of-type(4n) { + margin-left: 0; +} + +.dokuwiki .wrap_half:nth-of-type(2n+1), +.dokuwiki .wrap_third:nth-of-type(3n+1), +.dokuwiki .wrap_quarter:nth-of-type(4n+1) { + clear: left; +} +[dir=rtl] .dokuwiki .wrap_half:nth-of-type(2n+1), +[dir=rtl] .dokuwiki .wrap_third:nth-of-type(3n+1), +[dir=rtl] .dokuwiki .wrap_quarter:nth-of-type(4n+1) { + clear: right; +} + +/* show 2 instead 4 columns on medium sized screens (mobile, etc) */ +@media only screen and (max-width: 950px) { + +.dokuwiki .wrap_quarter { + width: 48%; +} +.dokuwiki .wrap_quarter:nth-of-type(2n) { + margin-right: 0; +} +[dir=rtl] .dokuwiki .wrap_quarter:nth-of-type(2n) { + margin-left: 0; +} +.dokuwiki .wrap_quarter:nth-of-type(2n+1) { + clear: left; +} +[dir=rtl] .dokuwiki .wrap_quarter:nth-of-type(2n) { + clear: right; +} + +} /* /@media */ + +/* show full width on smaller screens (mobile, etc) */ +@media only screen and (max-width: 600px) { + +.dokuwiki .wrap_half, +.dokuwiki .wrap_third, +.dokuwiki .wrap_quarter { + width: auto; + margin-right: 0; + margin-left: 0; + float: none; +} + +} /* /@media */ + + +/* alignments +********************************************************************/ + +.dokuwiki .wrap_leftalign { + text-align: left; +} +.dokuwiki .wrap_centeralign { + text-align: center; +} +.dokuwiki .wrap_rightalign { + text-align: right; +} +.dokuwiki .wrap_justify { + text-align: justify; +} + + +/* box +********************************************************************/ + +/* see styles for boxes and notes with icons in style.css */ + +/*____________ rounded corners ____________*/ +/* (only for modern browsers) */ + +.dokuwiki div.wrap_round { + border-radius: 1.4em; +} +.dokuwiki span.wrap_round { + border-radius: .14em; +} + + +/* mark +********************************************************************/ + +.dokuwiki .wrap_lo { + color: __text_neu__; + font-size: 85%; +} +.dokuwiki .wrap_em { + color: #c00; + font-weight: bold; +} +.dokuwiki .wrap__dark.wrap_em { + color: #f66; +} + +/* see styles for highlighted text in style.css */ + + +/* miscellaneous +********************************************************************/ + +/*____________ indent ____________*/ + +.dokuwiki .wrap_indent { + padding-left: 1.5em; +} +[dir=rtl] .dokuwiki .wrap_indent { + padding-right: 1.5em; + padding-left: 0; +} + + +/*____________ outdent ____________*/ + +.dokuwiki .wrap_outdent { + margin-left: -1.5em; +} +[dir=rtl] .dokuwiki .wrap_outdent { + margin-right: -1.5em; + margin-left: 0; +} + +/*____________ word wrapping in pre ____________*/ + +.dokuwiki div.wrap_prewrap pre { + white-space: pre-wrap; + word-wrap: break-word;/* for IE < 8 */ +} + +/*____________ spoiler ____________*/ + +.dokuwiki div.wrap_spoiler { + margin-bottom: 1.5em; +} +/* see rest of spoiler styles in style.css */ + +/*____________ clear float ____________*/ + +.dokuwiki .wrap_clear { + clear: both; + line-height: 0; + height: 0; + font-size: 1px; + visibility: hidden; + overflow: hidden; +} + +/*____________ hide ____________*/ + +.dokuwiki .wrap_hide { + display: none; +} + + +/*____________ button-style link ____________*/ + +.dokuwiki .wrap_button a:link, +.dokuwiki .wrap_button a:visited { + background-image: none; + border: 1px solid __border__; + border-radius: .3em; + padding: .5em .7em; + text-decoration: none; +} +/* see rest of button link styles in style.css */ diff --git a/public_html/lib/plugins/wrap/conf/default.php b/public_html/lib/plugins/wrap/conf/default.php new file mode 100644 index 00000000..9a622dde --- /dev/null +++ b/public_html/lib/plugins/wrap/conf/default.php @@ -0,0 +1,12 @@ + array(0,1)); +$meta['syntaxDiv'] = array('multichoice','_choices' => array('WRAP','block', 'div')); +$meta['syntaxSpan'] = array('multichoice','_choices' => array('wrap', 'inline', 'span')); +$meta['darkTpl'] = array('onoff'); diff --git a/public_html/lib/plugins/wrap/example.txt b/public_html/lib/plugins/wrap/example.txt new file mode 100644 index 00000000..5914d3f7 --- /dev/null +++ b/public_html/lib/plugins/wrap/example.txt @@ -0,0 +1,437 @@ +====== Examples for the Wrap Plugin ====== + +===== Basic syntax ===== + +An uppercase **%%%%** (or alternatively **%%%%** or **%%
%%**) creates a **''div''** and should be used for **"big"** containers, **surrounding** paragraphs, lists, tables, etc. + + + +"big" content + + +or + +"big" content + + +or +
+"big" content +
+
+ +A lowercase **%%%%** (or alternatively **%%%%** or **%%%%**) creates a **''span''** and should be used for **"small"** containers, **inside** paragraphs, lists, tables, etc. + + +"small" content + +or +"small" content + +or +"small" content + + +:!: Please note, some things **won't work with lowercase spans**: + * **alignments** (including alignments generated by changing the text direction) + * **multi-columns** + * and **widths** +if the according wrap isn't floated as well. + +A shorthand of uppercase **%%%%** and lowercase **%%%%** are available if the container is empty or unnecessary. + + + +or + +or +
+ + +and + + +or + +or + + + +===== Classes and Styles ===== + + +==== Columns and Floats ==== + +You can have columns easily by adding the class ''column'' and a width, e.g. + ...content... + +The example below uses the following structure: + + + + +...content... +...content... +...content... + + + + + + + +=== Floating Options === + +Normally you would only need the class ''column'', but for more sophisticated uses (not only for columns, but for any other classes, like [[#boxes and notes]] as well) you can have several kinds of "floats": + + * **''column''** is the same as ''left'' in LTR languages and the same as ''right'' in RTL languages + * **''left''** will let you float your wrap on the left + * **''right''** will let the wrap float right + * **''center''** will position the wrap in the horizontal center of the page + +A **table** inside a column or box will always be **100% wide**. This makes positioning and sizing tables possible. + + + + +=== Widths === + +You can set any valid widths (but only on divs): ''%, px, em, ex, pt, pc, cm, mm, in'', but most of the time you'd only want either + +^type^e.g.^note^ +^''%''|''30%''|makes sense in most cases| +^''px''|''420px''|makes sense if your container contains images with a certain width| +^''em''|''20em''|makes sense if you like your wrap container to grow and shrink with the font size| + + + +=== Width Keywords === + +With certain width keywords you can fit your columns automatically to fill the available horizontal space. Those columns will also react to the screen size, so will be responsive and wrap underneath each other on mobile devices. + +There are three width keywords. These should not be combined with any other width. + + * **''half''** fits two columns in a row + * **''third''** fits three columns in a row + * **''quarter''** fits four columns in a row + +:!: Attention: In order to work properly, wraps with width keywords need an **additional ''%%%%'' around a set** of them. + + + + + +You can use the same options with spans (as each element that floats is automatically a block level element), but it probably doesn't make too much sense. :!: Widths on spans normally do not work (by design), but can make sense, when it is floating. + +:!: Attention: What is the difference between widths and width keywords and when is it best to use which? **Widths** can cause problems and will never fully add up, therefore will break the layout under some circumstances. (See [[http://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug|box model]] for a technical explanation.) So, getting widths right will need some fiddling around and testing in various browsers. **Width keywords** on the other hand fit automatically and work better on mobile devices. But the drawback is that they need an extra wrap around them and don't work properly in older browsers (IE8 and under). + +All of those options will also work in the [[#boxes and notes]] wraps (see below). + +=== Old Emulated Headlines === + +Every ''%%//**__text like this__**//%%'' or ''%%//**like that**//%%'' will create an "emulated headline" when used within a box or a column. Now that headlines within wraps are supported, they are not needed anymore, but are still supported for backwards-compatibility. + +If you need text that is bold and italic, simply use it the other way around: ''%%**//No Headline//**%%'' + + +=== Multi-columns === + + +For modern browsers (Firefox, Chrome and Safari, IE10+) you can use multi-columns. Just use **''%%col2%%''** for 2 columns, **''%%col3%%''** for 3 columns, **''%%col4%%''** for 4 columns and **''%%col5%%''** for 5 columns. + +:!: Note: Multi-columns don't make sense for spans. + + +Don't use this for bigger columns containing more than just text. Use the [[#columns and floats]] mentioned above instead. + + +==== Alignments ==== + +You can use these different text alignments: + + * ''leftalign'' + * ''rightalign'' + * ''centeralign'' + * ''justify'' + + +Center aligned text ... + + + +... and right aligned. + + + + +Center aligned text ... + + + +... and right aligned. + + + +:!: You cannot add alignments to spans. + + +==== Boxes and Notes ==== + + +=== round box 500px center === + + * ''box'' creates a box around the container and uses the colours from the template's ''style.ini'' as default colours (''%%__background_alt__%%'' and ''%%__text__%%'') + * any of the classes ''info'', ''tip'', ''important'', ''alert'', ''help'', ''download'', ''todo'' will add a special note container with a corresponding icon + * the classes ''danger'', ''warning'', ''caution'', ''notice'', ''safety'' use safety colours (and no icons) + * ''round'' can be added to anything with a background colour or a border and will only work in modern browsers (no IE8 and under) + + + + +=== Info === + + + + + +=== Tip === + + + + + +=== Important === + + + + + +=== Alert === + + + + + +=== Help === + + + + + +=== Download === + + + + + +=== Todo === + + + + + + + +**Safety Notes:** + + +=== Danger === + + + + +=== Warning === + + + + +=== Caution === + + + + +=== Notice === + + + + +=== Safety === + + + + + + +You can use notes and boxes also inside text with spans like this: +info, help, alert, important, tip, download, todo and round box and danger, warning, caution, notice, safety. + info, help, ... + +==== Marks ==== + +You can mark text as highlighted, less significant and especially emphasised. + + You can mark text as highlighted, less significant and especially emphasised. + +:!: This might look ugly in some templates and should be adjusted accordingly. + +==== Tabs ==== + +You can create a row of tabs by simply wrapping a list of links in ''%%%%''. + + + * [[Some page]] + * [[example|This page]] + * [[Another page]] + + + + * [[Some page]] + * [[example|This page]] + * [[Another page]] + + +:!: Please note, the styling of these tabs depend on the template you are using and not on the wrap plugin. If you only see a list of links and no tabs, please make sure to add "tabs" to the ''noPrefix'' config option and that your template supports at least the 2012-01-25 "Angua" DokuWiki release. + +==== Miscellaneous ==== + +=== Clear float === + +After using any of the float classes, you might come across following text protruding into the space where only the floating containers should be. To prevent that, you should simply add this after your last column: + + + +=== Indent === + +This text will appear indented. + + This text will appear indented. + +=== Outdent === + +This text will appear "outdented". + + This text will appear "outdented". + +=== Prewrap === + + + +Inside this code block the words will wrap to a new line although they are all in one line. + + + + + + Inside this code block the words will wrap to a new line although they are all in one line. + + + +=== Spoiler === + +Here follows a spoiler: Darth Vader is Luke's father. + + Here follows a spoiler: Darth Vader is Luke's father. + +Just select the text in the spoiler box to be able to read its content. + +=== Button links === + +A link that looks like a button: [[wiki:Syntax]] + + A link that looks like a button: [[wiki:Syntax]] + +=== Hide === + +The following text is hidden: John, please revise that sentence. + + The following text is hidden: John, please revise that sentence. + +:!: Warning: The text will still appear in the source code, in non-modern browsers and is searchable. Do not hide any security risky secrets with it! + +=== Pagebreak === + +The following will add a pagebreak: + + The following will add a pagebreak: + +This has no effect on the browser screen. A [[http://reference.sitepoint.com/css/page-break-after|pagebreak]] will force a new page in printouts. + +=== Nopagebreak === + +The following will try to avoid a pagebreak: much content, belonging together (like a long table) + + The following will try to avoid a pagebreak: much content, belonging together (like a long table) + +This also has no effect on the browser screen. It will try to [[http://reference.sitepoint.com/css/page-break-inside|avoid a page break]] in printouts. + +=== Noprint === + +This text appears on the screen, but not in print. + + This text appears on the screen, but not in print. + +=== Onlyprint === + +This text does not appear on the screen, but only in print. + + This text does not appear on the screen, but only in print. + + +==== Combining and Nesting ==== + +You can combine and nest all classes and types of boxes, e.g. + + +===Outer box floats right === + + +Inner nested box floats left and is partly __em__phasized and __hi__ghlighted with a nested __notice__ inside. + + +Text inside outer right box, but beneath inner left box. + + + + +Round tip box underneath, after a ''clear''. + + + + + + + +=== Outer box floats right === + + +Inner nested box floats left and is partly __em__phasized and __hi__ghlighted with a nested __notice__ inside. + + +Text inside outer right box, but beneath inner left box. + + + + +Round tip box underneath, after a ''clear''. + + + + + + +===== Language and Text Direction ===== + +You can change the language and the reading direction of a wrap container by simply adding a colon followed by the language code, like this: + + + +זה עברית. ((This means "This is Hebrew.", at least according to [[http://translate.google.com/|Google Translate]].)) + + + + +זה עברית. ((This means "This is Hebrew.", at least according to [[http://translate.google.com/|Google Translate]].)) + + +The text direction (''rtl'', right to left or ''ltr'', left to right) will get inserted automatically and is solely dependent on the language. The list of currently supported languages is taken from: http://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code +(If you specify a language not listed there, it simply won't do anything.) diff --git a/public_html/lib/plugins/wrap/helper.php b/public_html/lib/plugins/wrap/helper.php new file mode 100644 index 00000000..85a81b0a --- /dev/null +++ b/public_html/lib/plugins/wrap/helper.php @@ -0,0 +1,489 @@ + + */ + +// must be run within Dokuwiki +if(!defined('DOKU_INC')) die(); + +class helper_plugin_wrap extends DokuWiki_Plugin { + static protected $boxes = array ('wrap_box', 'wrap_danger', 'wrap_warning', 'wrap_caution', 'wrap_notice', 'wrap_safety', + 'wrap_info', 'wrap_important', 'wrap_alert', 'wrap_tip', 'wrap_help', 'wrap_todo', + 'wrap_download', 'wrap_hi', 'wrap_spoiler'); + static protected $paragraphs = array ('wrap_leftalign', 'wrap_rightalign', 'wrap_centeralign', 'wrap_justify'); + static protected $column_count = 0; + + /** + * get attributes (pull apart the string between '') + * and identify classes, width, lang and dir + * + * @author Anika Henke + * @author Christopher Smith + * (parts taken from http://www.dokuwiki.org/plugin:box) + */ + function getAttributes($data) { + + $attr = array(); + $tokens = preg_split('/\s+/', $data, 9); + $noPrefix = array_map('trim', explode(',', $this->getConf('noPrefix'))); + $restrictedClasses = $this->getConf('restrictedClasses'); + if ($restrictedClasses) { + $restrictedClasses = array_map('trim', explode(',', $this->getConf('restrictedClasses'))); + } + $restrictionType = $this->getConf('restrictionType'); + + foreach ($tokens as $token) { + + //get width + if (preg_match('/^\d*\.?\d+(%|px|em|ex|pt|pc|cm|mm|in)$/', $token)) { + $attr['width'] = $token; + continue; + } + + //get lang + if (preg_match('/\:([a-z\-]+)/', $token)) { + $attr['lang'] = trim($token,':'); + continue; + } + + //get id + if (preg_match('/#([A-Za-z0-9_-]+)/', $token)) { + $attr['id'] = trim($token,'#'); + continue; + } + + //get classes + //restrict token (class names) characters to prevent any malicious data + if (preg_match('/[^A-Za-z0-9_-]/',$token)) continue; + if ($restrictedClasses) { + $classIsInList = in_array(trim($token), $restrictedClasses); + // either allow only certain classes + if ($restrictionType) { + if (!$classIsInList) continue; + // or disallow certain classes + } else { + if ($classIsInList) continue; + } + } + $prefix = in_array($token, $noPrefix) ? '' : 'wrap_'; + $attr['class'] = (isset($attr['class']) ? $attr['class'].' ' : '').$prefix.$token; + } + if ($this->getConf('darkTpl')) { + $attr['class'] = (isset($attr['class']) ? $attr['class'].' ' : '').'wrap__dark'; + } + + //get dir + if($attr['lang']) { + $lang2dirFile = dirname(__FILE__).'/conf/lang2dir.conf'; + if (@file_exists($lang2dirFile)) { + $lang2dir = confToHash($lang2dirFile); + $attr['dir'] = strtr($attr['lang'],$lang2dir); + } + } + + return $attr; + } + + /** + * build attributes (write out classes, width, lang and dir) + */ + function buildAttributes($data, $addClass='', $mode='xhtml') { + + $attr = $this->getAttributes($data); + $out = ''; + + if ($mode=='xhtml') { + if($attr['class']) $out .= ' class="'.hsc($attr['class']).' '.$addClass.'"'; + // if used in other plugins, they might want to add their own class(es) + elseif($addClass) $out .= ' class="'.$addClass.'"'; + if($attr['id']) $out .= ' id="'.hsc($attr['id']).'"'; + // width on spans normally doesn't make much sense, but in the case of floating elements it could be used + if($attr['width']) { + if (strpos($attr['width'],'%') !== false) { + $out .= ' style="width: '.hsc($attr['width']).';"'; + } else { + // anything but % should be 100% when the screen gets smaller + $out .= ' style="width: '.hsc($attr['width']).'; max-width: 100%;"'; + } + } + // only write lang if it's a language in lang2dir.conf + if($attr['dir']) $out .= ' lang="'.$attr['lang'].'" xml:lang="'.$attr['lang'].'" dir="'.$attr['dir'].'"'; + } + + return $out; + } + + /** + * render ODT element, Open + * (get Attributes, select ODT element that fits, render it, return element name) + */ + function renderODTElementOpen($renderer, $HTMLelement, $data) { + + $attr = $this->getAttributes($data); + $classes = explode (' ', $attr['class']); + + // Get language + $language = $attr['lang']; + + $is_indent = in_array ('wrap_indent', $classes); + $is_outdent = in_array ('wrap_outdent', $classes); + $is_column = in_array ('wrap_column', $classes); + $is_group = in_array ('group', $classes); + $is_pagebreak = in_array ('wrap_pagebreak', $classes); + + // Check for multicolumns + $columns = 0; + preg_match ('/wrap_col\d/', $attr ['class'], $matches); + if ( empty ($matches [0]) === false ) { + $columns = $matches [0] [strlen($matches [0])-1]; + } + + // Check for boxes + $is_box = false; + foreach (self::$boxes as $box) { + if ( strpos ($attr ['class'], $box) !== false ) { + $is_box = true; + break; + } + } + + // Check for paragraphs + $is_paragraph = false; + if ( empty($language) === false ) { + $is_paragraph = true; + } else { + foreach (self::$paragraphs as $paragraph) { + if ( strpos ($attr ['class'], $paragraph) !== false ) { + $is_paragraph = true; + break; + } + } + } + + $style = NULL; + if ( empty($attr['width']) === false ) { + $style = 'width: '.$attr['width'].';'; + } + $attr ['class'] = 'dokuwiki '.$attr ['class']; + + // Call corresponding functions for current wrap class + if ( $HTMLelement == 'span' ) { + if ( $is_indent === false && $is_outdent === false ) { + $this->renderODTOpenSpan ($renderer, $attr ['class'], $style, $language); + return 'span'; + } else { + $this->renderODTOpenParagraph ($renderer, $attr ['class'], $style, $language, $is_indent, $is_outdent, true); + return 'paragraph'; + } + } else if ( $HTMLelement == 'div' ) { + if ( $is_box === true ) { + $this->renderODTOpenBox ($renderer, $attr ['class'], $style); + return 'box'; + } else if ( $columns > 0 ) { + $this->renderODTOpenColumns ($renderer, $attr ['class'], $style); + return 'multicolumn'; + } else if ( $is_paragraph === true || $is_indent === true || $is_outdent === true ) { + $this->renderODTOpenParagraph ($renderer, $attr ['class'], $style, $language, $is_indent, $is_outdent, false); + return 'paragraph'; + } else if ( $is_pagebreak === true ) { + $renderer->pagebreak (); + // Pagebreak hasn't got a closing stack so we return/push 'other' on the stack + return 'other'; + } else if ( $is_column === true ) { + $this->renderODTOpenColumn ($renderer, $attr ['class'], $style); + return 'column'; + } else if ( $is_group === true ) { + $this->renderODTOpenGroup ($renderer, $attr ['class'], $style); + return 'group'; + } + } + return 'other'; + } + + /** + * render ODT element, Close + */ + function renderODTElementClose($renderer, $element) { + switch ($element) { + case 'box': + $this->renderODTCloseBox ($renderer); + break; + case 'multicolumn': + $this->renderODTCloseColumns($renderer); + break; + case 'paragraph': + $this->renderODTCloseParagraph($renderer); + break; + case 'column': + $this->renderODTCloseColumn($renderer); + break; + case 'group': + $this->renderODTCloseGroup($renderer); + break; + case 'span': + $this->renderODTCloseSpan($renderer); + break; + // No default by intention. + } + } + + function renderODTOpenBox ($renderer, $class, $style) { + $properties = array (); + + if ( method_exists ($renderer, 'getODTProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + // Get CSS properties for ODT export. + $renderer->getODTProperties ($properties, 'div', $class, $style); + + if ( empty($properties ['background-image']) === false ) { + $properties ['background-image'] = + $renderer->replaceURLPrefix ($properties ['background-image'], DOKU_INC); + } + + if ( empty($properties ['float']) === true ) { + // If the float property is not set, set it to 'left' becuase the ODT plugin + // would default to 'center' which is diffeent to the XHTML behaviour. + if ( strpos ($class, 'wrap_center') === false ) { + $properties ['float'] = 'left'; + } else { + $properties ['float'] = 'center'; + } + } + + // The display property has differing usage in CSS. So we better overwrite it. + $properties ['display'] = 'always'; + if ( stripos ($class, 'wrap_noprint') !== false ) { + $properties ['display'] = 'screen'; + } + if ( stripos ($class, 'wrap_onlyprint') !== false ) { + $properties ['display'] = 'printer'; + } + + $renderer->_odtDivOpenAsFrameUseProperties ($properties); + } + + function renderODTCloseBox ($renderer) { + if ( method_exists ($renderer, '_odtDivCloseAsFrame') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + $renderer->_odtDivCloseAsFrame (); + } + + function renderODTOpenColumns ($renderer, $class, $style) { + $properties = array (); + + if ( method_exists ($renderer, 'getODTProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + // Get CSS properties for ODT export. + $renderer->getODTProperties ($properties, 'div', $class, $style); + + $renderer->_odtOpenMultiColumnFrame($properties); + } + + function renderODTCloseColumns ($renderer) { + if ( method_exists ($renderer, '_odtCloseMultiColumnFrame') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + $renderer->_odtCloseMultiColumnFrame(); + } + + function renderODTOpenParagraph ($renderer, $class, $style, $language, $is_indent, $is_outdent, $indent_first) { + $properties = array (); + + if ( method_exists ($renderer, 'getODTProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + // Get CSS properties for ODT export. + $renderer->getODTProperties ($properties, 'p', $class, $style); + + if ( empty($properties ['background-image']) === false ) { + $properties ['background-image'] = + $renderer->replaceURLPrefix ($properties ['background-image'], DOKU_INC); + } + + if ( empty($language) === false ) { + $properties ['lang'] = $language; + } + + if ( $indent_first === true ) { + // Eventually indent or outdent first line only... + if ( $is_indent === true ) { + // FIXME: Has to be adjusted if test direction will be supported. + // See all.css + $properties ['text-indent'] = $properties ['padding-left']; + $properties ['padding-left'] = 0; + } + if ( $is_outdent === true ) { + // FIXME: Has to be adjusted if text (RTL, LTR) direction will be supported. + // See all.css + $properties ['text-indent'] = $properties ['margin-left']; + $properties ['margin-left'] = 0; + } + } else { + // Eventually indent or outdent the whole paragraph... + if ( $is_indent === true ) { + // FIXME: Has to be adjusted if test direction will be supported. + // See all.css + $properties ['margin-left'] = $properties ['padding-left']; + $properties ['padding-left'] = 0; + } + if ( $is_outdent === true ) { + // Nothing to change: keep left margin property. + // FIXME: Has to be adjusted if text (RTL, LTR) direction will be supported. + // See all.css + } + } + + $renderer->p_close(); + $renderer->_odtParagraphOpenUseProperties($properties); + } + + function renderODTCloseParagraph ($renderer) { + if ( method_exists ($renderer, 'p_close') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + $renderer->p_close(); + } + + function renderODTOpenColumn ($renderer, $class, $style) { + $properties = array (); + + if ( method_exists ($renderer, 'getODTProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + // Get CSS properties for ODT export. + $renderer->getODTProperties ($properties, NULL, $class, $style); + + + // Frames/Textboxes still have some issues with formatting (at least in LibreOffice) + // So as a workaround we implement columns as a table. + // This is why we now use the margin of the div as the padding for the ODT table. + $properties ['padding-left'] = $properties ['margin-left']; + $properties ['padding-right'] = $properties ['margin-right']; + $properties ['padding-top'] = $properties ['margin-top']; + $properties ['padding-bottom'] = $properties ['margin-bottom']; + $properties ['margin-left'] = NULL; + $properties ['margin-right'] = NULL; + $properties ['margin-top'] = NULL; + $properties ['margin-bottom'] = NULL; + + // Percentage values are not supported for the padding. Convert to absolute values. + $length = strlen ($properties ['padding-left']); + if ( $length > 0 && $properties ['padding-left'] [$length-1] == '%' ) { + $properties ['padding-left'] = trim ($properties ['padding-left'], '%'); + $properties ['padding-left'] = $renderer->_getAbsWidthMindMargins ($properties ['padding-left']).'cm'; + } + $length = strlen ($properties ['padding-right']); + if ( $length > 0 && $properties ['padding-right'] [$length-1] == '%' ) { + $properties ['padding-right'] = trim ($properties ['padding-right'], '%'); + $properties ['padding-right'] = $renderer->_getAbsWidthMindMargins ($properties ['padding-right']).'cm'; + } + $length = strlen ($properties ['padding-top']); + if ( $length > 0 && $properties ['padding-top'] [$length-1] == '%' ) { + $properties ['padding-top'] = trim ($properties ['padding-top'], '%'); + $properties ['padding-top'] = $renderer->_getAbsWidthMindMargins ($properties ['padding-top']).'cm'; + } + $length = strlen ($properties ['padding-bottom']); + if ( $length > 0 && $properties ['padding-bottom'] [$length-1] == '%' ) { + $properties ['padding-bottom'] = trim ($properties ['padding-bottom'], '%'); + $properties ['padding-bottom'] = $renderer->_getAbsWidthMindMargins ($properties ['padding-bottom']).'cm'; + } + + $this->column_count++; + if ( $this->column_count == 1 ) { + // If this is the first column opened since the group was opened + // then we have to open the table and a (single) row first. + $column_width = $properties ['width']; + $properties ['width'] = '100%'; + $renderer->_odtTableOpenUseProperties($properties); + $renderer->_odtTableRowOpenUseProperties($properties); + $properties ['width'] = $column_width; + } + + // Convert rel-width to absolute width. + // The width in percentage works strange in LibreOffice, this is a workaround. + $length = strlen ($properties ['width']); + if ( $length > 0 && $properties ['width'] [$length-1] == '%' ) { + $properties ['width'] = trim ($properties ['width'], '%'); + $properties ['width'] = $renderer->_getAbsWidthMindMargins ($properties ['width']).'cm'; + } + + // We did not specify any max column value when we opened the table. + // So we have to tell the renderer to add a column just now. + $renderer->_odtTableAddColumnUseProperties($properties); + + // Open the cell. + $renderer->_odtTableCellOpenUseProperties($properties); + } + + function renderODTCloseColumn ($renderer) { + if ( method_exists ($renderer, '_odtTableAddColumnUseProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + $renderer->tablecell_close(); + } + + function renderODTOpenGroup ($renderer, $class, $style) { + // Nothing to do for now. + } + + function renderODTCloseGroup ($renderer) { + // If a table has been opened in the group we close it now. + if ( $this->column_count > 0 ) { + // At last we need to close the row and the table! + $renderer->tablerow_close(); + //$renderer->table_close(); + $renderer->_odtTableClose(); + } + $this->column_count = 0; + } + + function renderODTOpenSpan ($renderer, $class, $style, $language) { + $properties = array (); + + if ( method_exists ($renderer, 'getODTProperties') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + + // Get CSS properties for ODT export. + $renderer->getODTProperties ($properties, 'span', $class, $style); + + if ( empty($properties ['background-image']) === false ) { + $properties ['background-image'] = + $renderer->replaceURLPrefix ($properties ['background-image'], DOKU_INC); + } + + if ( empty($language) === false ) { + $properties ['lang'] = $language; + } + + $renderer->_odtSpanOpenUseProperties($properties); + } + + function renderODTCloseSpan ($renderer) { + if ( method_exists ($renderer, '_odtSpanClose') === false ) { + // Function is not supported by installed ODT plugin version, return. + return; + } + $renderer->_odtSpanClose(); + } +} diff --git a/public_html/lib/plugins/wrap/images/README b/public_html/lib/plugins/wrap/images/README new file mode 100644 index 00000000..a44a9f40 --- /dev/null +++ b/public_html/lib/plugins/wrap/images/README @@ -0,0 +1,18 @@ +_NOTE_ + +Icon set: Human-O2 +Designer: Oliver Scholtz (and others) [~schollidesign] +License: GPL (http://www.gnu.org/copyleft/gpl.html) +URL: http://schollidesign.deviantart.com/art/Human-O2-Iconset-105344123 + +_TOOLBAR_ + +Icon set: Silk +Designer: Mark James +License: Creative Commons Attribution 2.5 License (http://creativecommons.org/licenses/by/2.5/) +URL: http://www.famfamfam.com/lab/icons/silk/ + +Icon set: Silk Companion +Designer: Damien Guard +License: Creative Commons Attribution 2.5 License (http://creativecommons.org/licenses/by/2.5/) +URL: http://www.damieng.com/icons/silkcompanion diff --git a/public_html/lib/plugins/wrap/images/note/16/alert.png b/public_html/lib/plugins/wrap/images/note/16/alert.png new file mode 100644 index 0000000000000000000000000000000000000000..f051b1d903f25665c5c53df2ec4a8ce46132a7b4 GIT binary patch literal 883 zcmV-(1C0EMP)Px#32;bRa{vGf6951U69E94oEQKA00(qQO+^RT36F9>5ac0f8+?G7ccU2p+KZuMgdQ@Zzp~ADplJixN(E-YE@4}qx;SN{-W5MN=>D! zm7ORByLaXf^% zKqZ$Wb@(t{kqB?h&LZ1wdg5`Ul>9M2Pk8wf~l8jS{ayG^22BLtQ=ZIZvm9Y9(16FWn4I(d zNpp1c{9HcYvGUT=68Bv9r`1U0?qDpoudme-0uZ{6(6o(Mv2FQr5KO*$=+OBOFI@Qd zZv=RI$Ib(9ndU@a%O|Dl7@9^yN~(szf)JmlCnj=}M~`mk{{(uQWs={T^CbWP002ov JPDHLkV1j8So3np3KFnF8b=gs=mvC`t-b*ldH?8Thhy1g|Qi^bYTS96z^UoB-30)UjW z^Yz!2*-_v3^XuzBpYQEYe+ICs&G#QXqS;N1C6n8xUDv(UCVH~@RfD%_Fcm{*q9^M( z&JEXfZ^vx?bb98oXaE%bGD@nP*0xYeA+S(!fr^8Q3qT;HL`n;#WxMAEEe$Iup%Qk? z-Zk&du;S10Ggv}9L=eGR{tHtt$LLJ-uqQb{Sn*T9ubP97_Ed+~b`oIX-3agJKA_?P z9S0qULh2)v^CJYlM;Hbqlg;f7E7-P9YprCDeUKCB>o_S{v#;WUU{i8@_Z2c7IRN1} zO|6Xpt$h?>>T7F_f~=TDLdcKnOCvR|E`|O2C1{ zFe~l?vxPhClcyNWoW-&fmXrwJN6B(W4RCY(F23(&3I#){T%wTAQ!JI}FP)^anIzkC zlurwbxCs}xxdp8(LKC*u02j}n;qujM1CtZu%v1fYsGyX^i!7Xy|kfj4&V~fWROkkg%jOp0yD+SuJK|`TG+95kV4BI6w^0QN9{h zR9gYcKoR%>d{a@f6cvO(PzR7v9>CNA3cv;sR6nb-q9$24Rn#?C2Za1D{Q>Y++j()F R+eZKZ002ovPDHLkV1f+NHGKd8 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/16/help.png b/public_html/lib/plugins/wrap/images/note/16/help.png new file mode 100644 index 0000000000000000000000000000000000000000..2e923a291918d5ebefbfa4f40f1a2bef92fef664 GIT binary patch literal 929 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4(FKV9xM#aSW-Lla#OkB*pOmf6@`9 zW9JSWP&fm`#||7gz%2Uv(18OVx*8iF>M}DQ_D?wqRp*l2{mJ|FEU%Y4b{BMO%-r~y zBhvr~{`~p$?$~wn?|!zsHx-{hzI?jBv4O#!w1k8o=Ygid^j^|YTl!j3Vc}D$wJVn7 zXsaDKci{ZlV;^3Bk8cZ?-)Fq%@0ad}PdB@_$H&~>`{m}-x6%vre(^)x*C=)1r25KC z)pbv0RVmF8%SPpLFb#P!{IPkgGMPvWO6?JX$=h@f-R{A6`Exlyq zRHO2aiK)$O*_|s>e`~H=F7f>C7P)C}S!&JKu9n@ZR=*)=& zAHE*XXLEC7Yx9qy2xE{_1{s`g=Uj!*#cKP8l`v@JV({%-j197^OgP~n!D(=?4k~{pBJzrwpzF$1z$*HNSKmI+unasx4 z_8w>{4@6s15->`S15?JM$D3E1OU#InnBdsdZ|9shLo-V&IX(Tyk2kM)fm+0YI{w4l z`QgjauX~Tz)$XY8ZEkL66o2sGLBfx(5C3fyzy4h=IU%6}=#LN3cy9UC-rd;f818XU z#mVdZ@wvVMo{yiOpU<hr|7AFry0&dqllT|R_B}87Mo{bAPYQQ{an^LB{Ts5>inm8 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/16/important.png b/public_html/lib/plugins/wrap/images/note/16/important.png new file mode 100644 index 0000000000000000000000000000000000000000..0d7f1f0772495fed95bf1e4b6b13e7d8b4bd757f GIT binary patch literal 574 zcmV-E0>S->P)O zrz-su^iaX0c)Gs-Ky8kVxgd&SeWzD1+)?+U}0k{L<cD=ownVsMK|5@Daafh#Y z#e3h+e*Hd}NII2`J_uF&Ez%1?r8Dzdt!#Ui@IO({9a@60-vrfa_RH z!YI7ykI%gK(qk6~eXjtJ0BKfm?5)pFc&+wEX=*Khq6u}zYS&@Va|m^YKhfl+YI&{p z`ti5Fcrnj&b^y=OSbJx=*XgVyYjzl?L^>nS3tl)nxbk5h; z-d)|^L8nWjQ9m_U?t4L;?Jg(8@a2y;5x^)&=57I4J-F0yoAuX1UVc-uEM&jyJ*(4- zNM}SkBaBmyJ-k9$fzB$Dtk|tZI%7J^8T7l)@PLwvM$Hvc4nn;%T?i@!rGe)kACi|9 zmwxyQomEhkfI$j@Qr0SNV?hBTNlSt_MMw*jjj$9KzrD@zNAE=lh)YRo1W8&Dh7qH! zh_OEw7$X$AnE8{)AC-5zw$ns8F3N$HV-bWQ09XB#agGnD=>hmz*L4by3BN3O2W?|i8si?2&)EG4TR+NCwtUv zi<*+0exeIPvRhAsm?YZ3zqIqpS2us>k=ti*d+Rhkg=JGphx1pqEnqod*a{ZJ4 awf+b8-%+pLwB=X;00005LnaSW-Llaz9RNzea^*suSe zxBuHdzg|>QLPEmgW~7|a#?5oCpWXk9FIE?*>Hq(vBNy(hU-<>Z+HDS zf`IG6;~mA{J2`tbTK?@WaATIfAkcSaZNh)Y2DRP0xAA+6Zf(A!&2q!|LS^N{c_(!o z4sdS(Yj4{9K%e=v`LqA~_wTLv+&#bX<9YwK`{s6k|L=bN{C~Z5z44#DAE!S2KmEP_ z{XdUV|9$`bJDzP?zCkU-_9p3s3H2XW8<-zH*_UppB(?0@h{+K{nNG++MCvmYP*9%z3y zKiaMnKUMxujrPBHfB*j0Nn(1V{gqp9zvDG#h^9_AHXuk7dv@8##=cC}vf%dQZucqA z&(F8#v9GiHb@2GF*A~Xww>3+?LTowY(a8e@r?r#*fByIX(1NUoXFfc;>D=btA8!Bx zE@e8$0-$kt=mIaJu$}QI0}ZWHh8icl4FIy*g9vD^yub=h0 h0^KCPL6Zq=Ix~Z70?WKA1Lcn()t;_?F6*2UngD|~n4kav literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/16/todo.png b/public_html/lib/plugins/wrap/images/note/16/todo.png new file mode 100644 index 0000000000000000000000000000000000000000..ebaf17a01d7c3d7b52865b546da6e4ba0621a19d GIT binary patch literal 692 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 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/48/important.png b/public_html/lib/plugins/wrap/images/note/48/important.png new file mode 100644 index 0000000000000000000000000000000000000000..6910ef64ca28e9df6857daf659bbff8fc44faf87 GIT binary patch literal 3029 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 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/48/info.png b/public_html/lib/plugins/wrap/images/note/48/info.png new file mode 100644 index 0000000000000000000000000000000000000000..ccb25e87215a80786cd662dcc550cf070be55fdb GIT binary patch literal 3315 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 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/note/48/tip.png b/public_html/lib/plugins/wrap/images/note/48/tip.png new file mode 100644 index 0000000000000000000000000000000000000000..7bd89519d23c122ba436d7fd019307d53f2b4574 GIT binary patch literal 4232 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 O0000@H!pQI5+Ti_L0YJ|=5)wx zkF=1qGlSNkDr^3|$ws8mau%VAs!N}G7ur`j3{a)&lwiJCaRceu$939gbwXgD!G7W+ z`tnW&{YVf#zprcNBv=w4wLNbW#_u=%`)~XMSM_D9ZJ#Vp00000NkvXXu0mjfl(La4 literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/toolbar/clear.png b/public_html/lib/plugins/wrap/images/toolbar/clear.png new file mode 100644 index 0000000000000000000000000000000000000000..1cdcb488da1254e40c39cc99fa1cb6e0a480ce8d GIT binary patch literal 797 zcmV+&1LFLNP)ngf1_J^|Gp7DU(Z`P&Lcrat`vasg%WsqVcveJqFtnL#qW z1|k5>%^n=AuSPXpCpN+TR~bBcm)(T$WuhZKc_ajm1?qMH%DN59wBhAMc<6f3rrzi{ z+ZS^8mmyqQ=y5+To`~Yv$5nW}J~WBI{4!9Gb+osN@KN`Q26(DAoOSH3$KyA%cr-H$ zuJiagTu5|aQQ;sd7P5;ay3vP5KaX0$MuX4E5f5kPI6$Y7*n~l##)A*D`HdqqHq;{Z zLvv0En*p**MW{+16Ek02kAp{pNOZShZ0Hv08@$BmIzu&e?i%Y%JXZzPpknHVqkzUb zc2n%w!`B&%-x((1a2S*KhDdt;Cs?j(3*eX|woC%uu)#2uwNErHkZ>r3SS*GEk#?k? zj}XhUwg85yJHgXI5b%59uNB>}-RiV1yW(gxin+PD-;gjK3|}L(t{XX6T3N%PJpqWK zfSolC5IEe~2L1bc5)6hAi9}E+6u|R5^7%aC@i=5z#^Q?!;sS2d4!e7~ACdt`C0a6- zJ~{D*9X%(uft#5Xs(@6b2A>`I*(@@B|PH18+niCV2MPSl1b1XsI zE&-XZS+|iYIow4i1cES+umYV03g8)6>&ixAAY+d0*+RZ5kTmL|~dG%5SHHk|deM bVp01AsKi;DWRF+x00000NkvXXu0mjfFXUt| literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/toolbar/column.png b/public_html/lib/plugins/wrap/images/toolbar/column.png new file mode 100644 index 0000000000000000000000000000000000000000..97b2e03534fde13a13e7d84768e47f9b4e9b049f GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^zbpD<_bdI{u9mbgZg z1m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-&X@N{tu(Kw&{=X`^_fnmU^23D6T z|NkHVz|OPW*vP=;@BgD8WzABvu@M{$HPs!^U|F=gR-} z&AETiZeUz-oG szv_+eu)PvwoyEX;-Tuf72ZK!v%2xjJ(h^EWKsPaXy85}Sb4q9e0Nid~c>n+a literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/toolbar/em.png b/public_html/lib/plugins/wrap/images/toolbar/em.png new file mode 100644 index 0000000000000000000000000000000000000000..894013136a754879117fc293c30fb1ef988a2d9e GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE(~cP$iB-f7bwD6;1OBO zz`!jG!i)^F=12eq*-JcqUDEaktaVt4Nf>ngsP2w>R^Wl1l+br!CK749vhYlP# z(cvq&N%6*$35>#`Ki5R#Fq;O^-g@IFN~52!HR)5S5Q;?~jNle`BMc#4(665P^Gb;Ta~yCsNaNz1e vGhT2Xw>}}R(cQ}(|8lKS{a@zrr#5#!#w(pXR_1*bXeEQEtDnm{r-UW|u)0-~ literal 0 HcmV?d00001 diff --git a/public_html/lib/plugins/wrap/images/toolbar/lo.png b/public_html/lib/plugins/wrap/images/toolbar/lo.png new file mode 100644 index 0000000000000000000000000000000000000000..cb64e86071884fe8fc18cdee91694ee3b5ed3c53 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPy7q=J#BlnN#n}I^IC9V-A&iT2ysd*&~&PAz-C8;S2 z<(VZJ3LzP(3hti10q;{(^MDG?JzX3_D&{07NU%2ZELpnrufMnVZ~u*oOID;ST?<&m x>lWT|=6D)Mpxyy?4KoI9hwsLrN$DS$7_5VH>C0%IF_B-EibI!3; zmECmrm)8an`9ejrD)RBb>G9d!eAa&f^W&#_RP+NCd4KPL(_N-r0Si}0Y*l?rMLx;yA3oSS@Hz=GG|SW2PLfJ#f`@A}%PMkFMZO<8_j~&>VE*dJ zFrpWn?xB;tN6+AP9|8@Dw-&fJF-G6hCrETWNzkgYS(>3yotsi)#*V);b;Y_ne(DEA z&OLE()N=FB;x}q+SLZNclc-h3u>$t>9|3=hWM@AKH%q-d&t_=`Z)^F-lp1;S@XMF2 zs8OR?onpT=F&~vr_P{8S}7F)0jxB3?hv+<#ji{w%?frB zEbnhfDB;F68uf?7nJ!2>XcVI&q|^wHaxkC)r1s$U93xI=aQz3!#&2v#4Pv(w<75#p zgjkU1%e`EUN^07fRa$ZH=IPlWjR=cvq{kcDh+iO3o=-7)FO0xjPVo`Tp wzi#Q*>R07*qoM6N<$f + */ +$lang['column'] = 'عمود'; +$lang['box'] = 'مربع متوسط بسيط'; +$lang['info'] = 'مربع معلومات'; +$lang['tip'] = 'مربع تلميح'; +$lang['important'] = 'مربع هام'; +$lang['alert'] = 'مربع التنبيه'; +$lang['help'] = 'مربع تعليمات'; +$lang['download'] = 'مربع التحميل'; +$lang['lo'] = 'أقل أهمية'; diff --git a/public_html/lib/plugins/wrap/lang/ar/settings.php b/public_html/lib/plugins/wrap/lang/ar/settings.php new file mode 100644 index 00000000..808b8439 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ar/settings.php @@ -0,0 +1,11 @@ + + */ +$lang['restrictedClasses'] = 'تقييد استخدام البرنامج المساعد لهذه الفئات (مفصولة بفاصلة)'; +$lang['restrictionType'] = 'تعين نوع القيد، إذا كانت الفئات المذكورة أعلاه يجب تضمينها أو استبعادها'; +$lang['restrictionType_o_0'] = 'السماح لجميع الفئات باستثناء تلك المذكورة أعلاه'; +$lang['restrictionType_o_1'] = 'تقييد للفئات المذكورة أعلاه فقط وليس غيرها'; diff --git a/public_html/lib/plugins/wrap/lang/bn/lang.php b/public_html/lib/plugins/wrap/lang/bn/lang.php new file mode 100644 index 00000000..301d2709 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/bn/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'মোড়ানো প্লাগইন'; +$lang['column'] = 'স্তম্ভ'; +$lang['box'] = 'সহজ কেন্দ্রিক বাক্স'; +$lang['info'] = 'তথ্য বাক্স'; +$lang['tip'] = 'টিপ বাক্স'; +$lang['important'] = 'গুরুত্বপূর্ণ বাক্স'; +$lang['alert'] = 'সতর্কতা বাক্স'; +$lang['help'] = 'সাহায্য বাক্স'; +$lang['download'] = 'ডাউনলোডের বাক্স'; +$lang['todo'] = 'করণীয় বাক্স'; +$lang['clear'] = 'স্পষ্ট floats'; +$lang['em'] = 'বিশেষ করে জোর'; +$lang['hi'] = 'হাইলাইট'; +$lang['lo'] = 'কম গুরুত্বপূর্ণ'; diff --git a/public_html/lib/plugins/wrap/lang/bn/settings.php b/public_html/lib/plugins/wrap/lang/bn/settings.php new file mode 100644 index 00000000..baeca824 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/bn/settings.php @@ -0,0 +1,14 @@ + + */ +$lang['noPrefix'] = 'যা (কমা দিয়ে পৃথক) শ্রেণীর নাম "wrap_" সঙ্গে অগ্রে যুক্ত হওয়া থেকে বাদ দেওয়া হবে?'; +$lang['restrictedClasses'] = 'এইসব করতে প্লাগিন ব্যবহার সীমিত (কমা দিয়ে পৃথক করা) ক্লাস'; +$lang['restrictionType'] = 'ক্লাস উপরে অন্তর্ভুক্ত বা বাদ দেওয়া হইবে যদি সীমাবদ্ধতা ধরন, নির্দিষ্ট করে'; +$lang['restrictionType_o_0'] = 'উপরোক্ত জনকে ছাড়া সব শ্রেণীর অনুমতি'; +$lang['restrictionType_o_1'] = 'শুধুমাত্র উপরোক্ত শ্রেণীর এবং কোন অন্যদের সীমিত'; +$lang['syntaxDiv'] = 'কোন বাক্য গঠন ব্লক গোপন জন্য টুলবার জুতো ব্যবহার করা উচিত?'; +$lang['syntaxSpan'] = 'কোন বাক্য গঠন ইনলাইন গোপন জন্য টুলবার জুতো ব্যবহার করা উচিত?'; diff --git a/public_html/lib/plugins/wrap/lang/cs/lang.php b/public_html/lib/plugins/wrap/lang/cs/lang.php new file mode 100644 index 00000000..7c3d7dcc --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/cs/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Zásuvný modul Wrap'; +$lang['column'] = 'sloupce'; +$lang['box'] = 'jednoduchý vystředěný rámeček'; +$lang['info'] = 'informační rámeček'; +$lang['tip'] = 'rámeček s radou'; +$lang['important'] = 'důležitý rámeček'; +$lang['alert'] = 'výstražný rámeček'; +$lang['help'] = 'pomocný rámeček'; +$lang['download'] = 'rámeček s odkazem ke stažení'; +$lang['todo'] = 'rámeček úkolu'; +$lang['clear'] = 'clear floats'; +$lang['em'] = 'zvláštně zdůrazněné'; +$lang['hi'] = 'zvýrazněné'; +$lang['lo'] = 'méně důležité'; diff --git a/public_html/lib/plugins/wrap/lang/cs/settings.php b/public_html/lib/plugins/wrap/lang/cs/settings.php new file mode 100644 index 00000000..e8d133cb --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/cs/settings.php @@ -0,0 +1,14 @@ + + */ +$lang['noPrefix'] = 'Která (čárkou oddělená) jména tříd nemají být označována předponou "wrap_"?'; +$lang['restrictedClasses'] = 'omezit použití zásuvného modulu na tyto (čárkou oddělené) třídy'; +$lang['restrictionType'] = 'typ omezení, rozhoduje jestli mají být výše uvedené třídy zahrnuty nebo vyřazeny'; +$lang['restrictionType_o_0'] = 'povolit všechny třídy kromě těch výše'; +$lang['restrictionType_o_1'] = 'omezit pouze na třídy výše a žádné jiné'; +$lang['syntaxDiv'] = 'Jaká syntax má být použita ve výběru pro zarovnání bloku? '; +$lang['syntaxSpan'] = 'Jaká syntax má být použita ve výběru pro zarovnání v řádku? '; diff --git a/public_html/lib/plugins/wrap/lang/da/lang.php b/public_html/lib/plugins/wrap/lang/da/lang.php new file mode 100644 index 00000000..d300095b --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/da/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap Plugin'; +$lang['column'] = 'række'; +$lang['box'] = 'simpel centreret boks'; +$lang['info'] = 'info boks'; +$lang['tip'] = 'tip boks'; +$lang['important'] = 'vigtig boks'; +$lang['alert'] = 'alarm boks'; +$lang['help'] = 'hjælp boks'; +$lang['download'] = 'download boks'; +$lang['todo'] = 'todo boks'; +$lang['clear'] = 'ryd flydere'; +$lang['em'] = 'specielt fremhævet'; +$lang['hi'] = 'fremhævet'; +$lang['lo'] = 'mindre vigtigt'; diff --git a/public_html/lib/plugins/wrap/lang/da/settings.php b/public_html/lib/plugins/wrap/lang/da/settings.php new file mode 100644 index 00000000..25b0962a --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/da/settings.php @@ -0,0 +1,12 @@ + + */ +$lang['noPrefix'] = 'Hvilke (kommaseparerede) klassenavne skal udelukkes fra at få præfikset "wrap_"?'; +$lang['restrictedClasses'] = 'begræns brugen af plugin til følgende (kommaseparerede) klasser'; +$lang['restrictionType'] = 'begrænsningstype, specificerer om ovenstående klasser skal inkluderes eller ekskluderes'; +$lang['restrictionType_o_0'] = 'tillad alle klasser på nær de ovenstående'; +$lang['restrictionType_o_1'] = 'begræns til ovenstående klasser og ingen andre'; diff --git a/public_html/lib/plugins/wrap/lang/de-informal/lang.php b/public_html/lib/plugins/wrap/lang/de-informal/lang.php new file mode 100644 index 00000000..0e83e085 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/de-informal/lang.php @@ -0,0 +1,19 @@ + + */ +$lang['picker'] = 'Wrap-kromaĵo'; +$lang['column'] = 'kolumnoj'; +$lang['box'] = 'simpla centrita skatolo'; +$lang['info'] = 'inform-skatolo'; +$lang['tip'] = 'konsil-skatolo'; +$lang['important'] = 'grava skatolo'; +$lang['alert'] = 'avert-skatolo'; +$lang['help'] = 'help-skatolo'; +$lang['download'] = 'elŝut-skatolo'; +$lang['todo'] = 'farendaĵ-skatolo'; +$lang['clear'] = 'liberigi la randojn'; +$lang['em'] = 'aparte emfazita'; +$lang['hi'] = 'markita'; +$lang['lo'] = 'malpli grava'; diff --git a/public_html/lib/plugins/wrap/lang/eo/settings.php b/public_html/lib/plugins/wrap/lang/eo/settings.php new file mode 100644 index 00000000..89d037a1 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/eo/settings.php @@ -0,0 +1,14 @@ + + */ +$lang['noPrefix'] = 'Kiuj (komo-disigitaj) klasnomoj estu ekskludataj de la prefikso "wrap_"?'; +$lang['restrictedClasses'] = 'limigi la uzon de la kromaĵo al tiuj klasoj (komo-disigitaj)'; +$lang['restrictionType'] = 'tipo de limigo (ĉu la supre menciitaj klasoj estu inkludataj aŭ ekskludataj?)'; +$lang['restrictionType_o_0'] = 'permesi ĉiujn klasojn krom la menciitaj'; +$lang['restrictionType_o_1'] = 'limigi al nur tiuj grupoj, neniuj aliaj'; +$lang['syntaxDiv'] = 'Kiun sintakson uzi por blok-volvoj en la ilaro-elektilo?'; +$lang['syntaxSpan'] = 'Kiun sintakson uzi por enliniaj volvoj en la ilaro-elektilo?'; diff --git a/public_html/lib/plugins/wrap/lang/es/lang.php b/public_html/lib/plugins/wrap/lang/es/lang.php new file mode 100644 index 00000000..432cd05c --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/es/lang.php @@ -0,0 +1,20 @@ + + * @author Óscar M. Lage + */ +$lang['noPrefix'] = '¿Qué nombres de clase (separados por comas) no deberían ser precedidos de "wrap_"?'; +$lang['restrictedClasses'] = 'restringir el uso de este plugin a estas clases (separadas por comas)'; +$lang['restrictionType'] = 'tipo de restricción, especifica si las clases anteriores serán incluidas o ecluidas'; +$lang['restrictionType_o_0'] = 'permitir todas las clases excepto las anteriores'; +$lang['restrictionType_o_1'] = 'restringir a sólo las clases anteriores y no otras'; +$lang['syntaxDiv'] = '¿Qué sintaxis debería ser usada en el selector de la barra de herramientas para los bloques "wrap"?'; +$lang['syntaxSpan'] = '¿Qué sintaxis debería ser usada en el selector de la barra de herramientas para los "wrap" en linea?'; diff --git a/public_html/lib/plugins/wrap/lang/fa/lang.php b/public_html/lib/plugins/wrap/lang/fa/lang.php new file mode 100644 index 00000000..14d04e72 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/fa/lang.php @@ -0,0 +1,20 @@ + + */ +$lang['column'] = 'ستون'; +$lang['box'] = 'کادر ساده'; +$lang['info'] = 'کادر اطلاعات'; +$lang['tip'] = 'کادر نکته'; +$lang['important'] = 'کادر مهم'; +$lang['alert'] = 'کادر هشدار'; +$lang['help'] = 'کادر کمک'; +$lang['download'] = 'کادر دانلود'; +$lang['todo'] = 'کادر کاربردی'; +$lang['clear'] = 'کادر شناور فعال'; +$lang['em'] = 'تاکید'; +$lang['hi'] = 'هایلایت'; +$lang['lo'] = 'کم اهمیت'; diff --git a/public_html/lib/plugins/wrap/lang/fr/lang.php b/public_html/lib/plugins/wrap/lang/fr/lang.php new file mode 100644 index 00000000..0a94a1bb --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/fr/lang.php @@ -0,0 +1,23 @@ + + * @author schplurtz + * @author Schplurtz le Déboulonné + */ +$lang['picker'] = 'Extension Wrap'; +$lang['column'] = 'colonnes'; +$lang['box'] = 'bloc simple'; +$lang['info'] = 'bloc information'; +$lang['tip'] = 'bloc astuce'; +$lang['important'] = 'bloc important'; +$lang['alert'] = 'bloc alerte'; +$lang['help'] = 'bloc aide'; +$lang['download'] = 'bloc téléchargement'; +$lang['todo'] = 'bloc à faire'; +$lang['clear'] = 'rétablir le flux après un élément flottant'; +$lang['em'] = 'particulièrement important'; +$lang['hi'] = 'important'; +$lang['lo'] = 'peu important'; diff --git a/public_html/lib/plugins/wrap/lang/fr/settings.php b/public_html/lib/plugins/wrap/lang/fr/settings.php new file mode 100644 index 00000000..91c520b3 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/fr/settings.php @@ -0,0 +1,18 @@ + + * @author schplurtz + * @author Schplurtz le Déboulonné + * @author Pietroni + */ +$lang['noPrefix'] = 'Quelles classes (séparées par une virgule) ne devraient pas être préfixées d\'un "wrap_" ?'; +$lang['restrictedClasses'] = 'Restreindre l\'utilisation de cette extension à ces classes. (liste séparée par des virgules)'; +$lang['restrictionType'] = 'Type de restriction. Indique s\'il faut inclure ou exclure les classes ci-dessus.'; +$lang['restrictionType_o_0'] = 'Autoriser toutes les classes sauf celles ci-dessus.'; +$lang['restrictionType_o_1'] = 'N\'autoriser que les classes ci dessus.'; +$lang['syntaxDiv'] = 'Quelle syntaxe les boutons de la barre d\'outil doivent-ils générer pour les éléments blocs ?'; +$lang['syntaxSpan'] = 'Quelle syntaxe les boutons de la barre d\'outil doivent-ils générer pour les éléments en ligne ?'; +$lang['darkTpl'] = 'Optimiser les couleurs pour les thèmes sombres?'; diff --git a/public_html/lib/plugins/wrap/lang/hr/lang.php b/public_html/lib/plugins/wrap/lang/hr/lang.php new file mode 100644 index 00000000..3923ceb1 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/hr/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap dodatak'; +$lang['column'] = 'kolone'; +$lang['box'] = 'običan centrirani okvir'; +$lang['info'] = 'info okvir'; +$lang['tip'] = 'okvir savjet'; +$lang['important'] = 'okvir važno'; +$lang['alert'] = 'okvir upozorenja'; +$lang['help'] = 'okvir pomoći'; +$lang['download'] = 'okvir učitavanja'; +$lang['todo'] = 'okvir preostalo'; +$lang['clear'] = 'prazan okvir'; +$lang['em'] = 'posebno naglašeni'; +$lang['hi'] = 'istaknuti'; +$lang['lo'] = 'manje bitan'; diff --git a/public_html/lib/plugins/wrap/lang/hr/settings.php b/public_html/lib/plugins/wrap/lang/hr/settings.php new file mode 100644 index 00000000..46f6f0a9 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/hr/settings.php @@ -0,0 +1,15 @@ + + */ +$lang['noPrefix'] = 'Koja (zarezom odvojene) imena klasa trebaju ne trebaju biti s prefiksom "wrap_"? '; +$lang['restrictedClasses'] = 'ograniči korištenje ovog dodatka na ove klase (zarezom odvojena lista)'; +$lang['restrictionType'] = 'vrsta ograničenja, određuje da li gore navedene klase trebaju biti uključene ili isključene'; +$lang['restrictionType_o_0'] = 'dozvoli sve klase osim gore navedenih'; +$lang['restrictionType_o_1'] = 'dozvoli samo gore navedene klase'; +$lang['syntaxDiv'] = 'Koja sintaksa treba biti korištena u alatnoj traci za omeđivanje bloka?'; +$lang['syntaxSpan'] = 'Koja sintaksa treba biti korištena u alatnoj traci za omeđivanje teksta u liniji?'; +$lang['darkTpl'] = 'Prilagoditi boje za tamne predloške?'; diff --git a/public_html/lib/plugins/wrap/lang/hu/lang.php b/public_html/lib/plugins/wrap/lang/hu/lang.php new file mode 100644 index 00000000..4dbfc99e --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/hu/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap-csatoló'; +$lang['column'] = 'oszlopok'; +$lang['box'] = 'egyszerű, középre igazított doboz'; +$lang['info'] = 'információs doboz'; +$lang['tip'] = 'tippdoboz'; +$lang['important'] = 'fontos doboz'; +$lang['alert'] = 'figyelmeztető doboz'; +$lang['help'] = 'súgódoboz'; +$lang['download'] = 'letöltéshez doboz'; +$lang['todo'] = 'teendőhöz doboz'; +$lang['clear'] = 'float tiltása'; +$lang['em'] = 'különösen hangsúlyos'; +$lang['hi'] = 'kiemelt'; +$lang['lo'] = 'kevésbé fontos'; diff --git a/public_html/lib/plugins/wrap/lang/hu/settings.php b/public_html/lib/plugins/wrap/lang/hu/settings.php new file mode 100644 index 00000000..6f3c9daa --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/hu/settings.php @@ -0,0 +1,16 @@ + + * @author DelD + */ +$lang['noPrefix'] = 'Mely (vesszővel elválasztott) osztályneveknek ne legyen "wrap_" előtagja?'; +$lang['restrictedClasses'] = 'csatoló korlátozása ezekre a (vesszővel elválasztott) osztályokra'; +$lang['restrictionType'] = 'korlátozás típusa, megadja, hogy a fenti osztályokat figyelembe vegye vagy se a csatoló'; +$lang['restrictionType_o_0'] = 'minden osztály engedélyezése, kivéve a fentieket'; +$lang['restrictionType_o_1'] = 'csak a fenti osztályok engedélyezése'; +$lang['syntaxDiv'] = 'Milyen szintaxist használjunk a blokktípusú dobozokhoz az eszközsorban?'; +$lang['syntaxSpan'] = 'Milyen szintaxist használjunk a soron belüli (inline) dobozokhoz az eszközsorban?'; +$lang['darkTpl'] = 'Optimalizáljam a színeket sötét sablonokhoz?'; diff --git a/public_html/lib/plugins/wrap/lang/it/lang.php b/public_html/lib/plugins/wrap/lang/it/lang.php new file mode 100644 index 00000000..a77be6ab --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/it/lang.php @@ -0,0 +1,12 @@ + + * @author Giovanni + */ +$lang['column'] = 'colonne'; +$lang['em'] = 'enfatizzato speciale'; +$lang['hi'] = 'evidenziato'; +$lang['lo'] = 'meno importante'; diff --git a/public_html/lib/plugins/wrap/lang/it/settings.php b/public_html/lib/plugins/wrap/lang/it/settings.php new file mode 100644 index 00000000..84ad4d12 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/it/settings.php @@ -0,0 +1,12 @@ + + */ +$lang['noPrefix'] = 'quali nomi di classi (elenco separato da virgole) non devono avere il prefisso "wrap_"?'; +$lang['restrictedClasses'] = 'restringi l\'uso del plugin a queste classi (elenco separato da virgole)'; +$lang['restrictionType'] = 'tipo di restrizione, specifica se le classi sopra devono essere incluse o escluse'; +$lang['restrictionType_o_0'] = 'permetti tutte le classi tranne quelle sopra'; +$lang['restrictionType_o_1'] = 'restringi solo alle classi sopra e a nessun\'altra'; diff --git a/public_html/lib/plugins/wrap/lang/ja/lang.php b/public_html/lib/plugins/wrap/lang/ja/lang.php new file mode 100644 index 00000000..598b4810 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ja/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap プラグイン'; +$lang['column'] = '多段組み'; +$lang['box'] = '中央配置枠'; +$lang['info'] = '情報枠'; +$lang['tip'] = 'ヒント枠'; +$lang['important'] = '重要枠'; +$lang['alert'] = '警告枠'; +$lang['help'] = 'ヘルプ枠'; +$lang['download'] = 'ダウンロード枠'; +$lang['todo'] = 'TODO枠'; +$lang['clear'] = '回り込み解除'; +$lang['em'] = '特に強調'; +$lang['hi'] = 'ハイライト表示'; +$lang['lo'] = '非強調(薄色表示)'; diff --git a/public_html/lib/plugins/wrap/lang/ja/settings.php b/public_html/lib/plugins/wrap/lang/ja/settings.php new file mode 100644 index 00000000..ec880ac4 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ja/settings.php @@ -0,0 +1,16 @@ + + * @author Hideaki SAWADA + */ +$lang['noPrefix'] = 'プレフィックス"wrap_" なしのCSSセレクタを例外的に適用するクラス名(カンマ区切り)'; +$lang['restrictedClasses'] = '有効性をチェックするクラス名(カンマ区切り)'; +$lang['restrictionType'] = '指定したクラスの扱い方'; +$lang['restrictionType_o_0'] = '指定クラスを無効とし、他は有効とする'; +$lang['restrictionType_o_1'] = '指定クラスのみを有効とする'; +$lang['syntaxDiv'] = 'ツールバー使用時:ブロック型構文に使用するタグ名'; +$lang['syntaxSpan'] = 'ツールバー使用時:インライン型構文に使用するタグ名'; +$lang['darkTpl'] = '色の濃いテンプレート用に最適化しますか?'; diff --git a/public_html/lib/plugins/wrap/lang/ko/lang.php b/public_html/lib/plugins/wrap/lang/ko/lang.php new file mode 100644 index 00000000..6dce54eb --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ko/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap 플러그인'; +$lang['column'] = '단'; +$lang['box'] = '간단한 가운데 상자'; +$lang['info'] = '정보 상자'; +$lang['tip'] = '팁 상자'; +$lang['important'] = '중요 상자'; +$lang['alert'] = '경고 상자'; +$lang['help'] = '도움말 상자'; +$lang['download'] = '다운로드 상자'; +$lang['todo'] = '할 일 상자'; +$lang['clear'] = '플로트 지우기'; +$lang['em'] = '특히 강조'; +$lang['hi'] = '강조'; +$lang['lo'] = '덜 중요함'; diff --git a/public_html/lib/plugins/wrap/lang/ko/settings.php b/public_html/lib/plugins/wrap/lang/ko/settings.php new file mode 100644 index 00000000..9cba9129 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ko/settings.php @@ -0,0 +1,15 @@ + + */ +$lang['noPrefix'] = '어떤 (쉼표로 구분된) 클래스 이름이 "wrap_" 접두어가 필요가 없습니까?'; +$lang['restrictedClasses'] = '다음 (쉼표로 구분된) 클래스에 플러그인의 사용을 제한'; +$lang['restrictionType'] = '제한 유형은 위의 클래스가 포함되거나 제외되어야 하는지 지정'; +$lang['restrictionType_o_0'] = '위의 클래스를 제외하고 모든 클래스를 허용'; +$lang['restrictionType_o_1'] = '위의 클래스만 허용하고 다른 클래스를 제한'; +$lang['syntaxDiv'] = '어떤 문법이 블록 포장을 위해 도구 모음 선택기에서 사용되어야 합니까?'; +$lang['syntaxSpan'] = '어떤 문법이 인라인 포장을 위해 도구 모음 선택기에서 사용되어야 합니까?'; +$lang['darkTpl'] = '어두은 템플릿을 위해 색을 최적화하겠습니까?'; diff --git a/public_html/lib/plugins/wrap/lang/nl/lang.php b/public_html/lib/plugins/wrap/lang/nl/lang.php new file mode 100644 index 00000000..f771b9dd --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/nl/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Wrap Plugin'; +$lang['column'] = 'kolommen'; +$lang['box'] = 'simpele gecentreerde blok'; +$lang['info'] = 'informatie blok'; +$lang['tip'] = 'tip blok'; +$lang['important'] = 'belangrijk blok'; +$lang['alert'] = 'waarschuwingsblok'; +$lang['help'] = 'helpblok'; +$lang['download'] = 'downloadblok'; +$lang['todo'] = 'tedoen blok'; +$lang['clear'] = 'reset drijvende blokken (clear floats)'; +$lang['em'] = 'bijzonder benadrukken'; +$lang['hi'] = 'gemarkeerd'; +$lang['lo'] = 'minder belangrijk'; diff --git a/public_html/lib/plugins/wrap/lang/nl/settings.php b/public_html/lib/plugins/wrap/lang/nl/settings.php new file mode 100644 index 00000000..8fb33ae2 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/nl/settings.php @@ -0,0 +1,16 @@ + + * @author Johan Wijnker + */ +$lang['noPrefix'] = 'Welke (komma gescheiden) klassennamen moeten niet het voorvoegsel "wrap_" krijgen?'; +$lang['restrictedClasses'] = 'Beperk het gebruik van de plugin tot deze (komma gescheiden) klassen'; +$lang['restrictionType'] = 'beperkingstype, specificeer of de klassen hierboven wel of niet gebruikt mogen worden'; +$lang['restrictionType_o_0'] = 'alle klassen zijn toegestaan, behalve de bovenstaande'; +$lang['restrictionType_o_1'] = 'beperk de toegestane klassen tot de bovenstaande, en geen anderen'; +$lang['syntaxDiv'] = 'Welke syntax moet worden gebruikt in het werkbalk-keuzemenu voor blok-wraps?'; +$lang['syntaxSpan'] = 'Welke syntax moet worden gebruikt in het werkbalk-keuzemenu voor inline-wraps?'; +$lang['darkTpl'] = 'Optimaliseer de kleuren voor donkere templates?'; diff --git a/public_html/lib/plugins/wrap/lang/no/lang.php b/public_html/lib/plugins/wrap/lang/no/lang.php new file mode 100644 index 00000000..a1734b8f --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/no/lang.php @@ -0,0 +1,24 @@ + + */ +$lang['picker'] = 'Omhylningsplugin +Omkransningsplugin'; +$lang['column'] = 'kolonner'; +$lang['box'] = 'enkel sentrert boks'; +$lang['info'] = 'infoboks'; +$lang['tip'] = 'tipsboks'; +$lang['important'] = 'viktig boks'; +$lang['alert'] = 'alarmboks'; +$lang['help'] = 'hjelpeboks'; +$lang['download'] = 'nedlastningsboks'; +$lang['todo'] = 'gjøremålsboks'; +$lang['clear'] = 'tøm floats'; +$lang['em'] = 'spesielt fremhevet (singular) +spesielt fremhevede (plural)'; +$lang['hi'] = 'markert (singular) +markerte (plural)'; +$lang['lo'] = 'mindre viktig'; diff --git a/public_html/lib/plugins/wrap/lang/no/settings.php b/public_html/lib/plugins/wrap/lang/no/settings.php new file mode 100644 index 00000000..1bdc7623 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/no/settings.php @@ -0,0 +1,15 @@ + + */ +$lang['noPrefix'] = 'Hvilke klasser (adskilt med komma) bør eksluderes fra å ha prefiks "wrap_"?'; +$lang['restrictedClasses'] = 'begrens bruk av plugin til klasser adskilt med komma'; +$lang['restrictionType'] = 'restriksjonstype, spesifiserer om de ovenforstående klassene skal inkluderes eller ekskluderes'; +$lang['restrictionType_o_0'] = 'vis alle klasser bortsett fra de ovenforstående'; +$lang['restrictionType_o_1'] = 'begrens til kun ovenforstående klasser og ingen fler'; +$lang['syntaxDiv'] = 'Hvilken syntaks bør brukes i verktøylinjen valg for blokkomkransning?'; +$lang['syntaxSpan'] = 'Hvilken syntaks bør brukes i verktøylinjen valg for omkransning på en linje?'; +$lang['darkTpl'] = 'Optimer farger for mørke maler?'; diff --git a/public_html/lib/plugins/wrap/lang/pt-br/lang.php b/public_html/lib/plugins/wrap/lang/pt-br/lang.php new file mode 100644 index 00000000..d1d20f59 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/pt-br/lang.php @@ -0,0 +1,21 @@ + + */ +$lang['picker'] = 'Plugin Wrap'; +$lang['column'] = 'coluna'; +$lang['box'] = 'caixa centralizada simples'; +$lang['info'] = 'caixa de informação'; +$lang['tip'] = 'caixa de sugestão'; +$lang['important'] = 'caixa importante'; +$lang['alert'] = 'caixa de alerta'; +$lang['help'] = 'caixa de ajuda'; +$lang['download'] = 'caixa de download'; +$lang['todo'] = 'caixa de tarefas a fazer'; +$lang['clear'] = 'limpar'; +$lang['em'] = 'especialmente enfatizado'; +$lang['hi'] = 'enfatizado'; +$lang['lo'] = 'menos significativo'; diff --git a/public_html/lib/plugins/wrap/lang/pt-br/settings.php b/public_html/lib/plugins/wrap/lang/pt-br/settings.php new file mode 100644 index 00000000..261029ba --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/pt-br/settings.php @@ -0,0 +1,13 @@ + + * @author Juliano Marconi Lanigra + */ +$lang['noPrefix'] = 'Quais classes (separadas por vírgula) deverão ser excluídas de receber o prefixo "wrap_"?'; +$lang['restrictedClasses'] = 'uso restrito do plugin para essas classes (separadas por vírgula)'; +$lang['restrictionType'] = 'tipo de restrição, especifica se as classes acima deveriam ser incluídas ou excluídas'; +$lang['restrictionType_o_0'] = 'permite todas as classes exceto as acima'; +$lang['restrictionType_o_1'] = 'restrita somente às classes acima e nenhuma outra'; diff --git a/public_html/lib/plugins/wrap/lang/ru/lang.php b/public_html/lib/plugins/wrap/lang/ru/lang.php new file mode 100644 index 00000000..c02c8866 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ru/lang.php @@ -0,0 +1,23 @@ + + * @author Ilya Rozhkov + * @author Aleksandr Selivanov + */ +$lang['picker'] = 'Wrap'; +$lang['column'] = 'колонки'; +$lang['box'] = 'простой центрированный блок'; +$lang['info'] = 'блок «Информация»'; +$lang['tip'] = 'блок «Подсказка»'; +$lang['important'] = 'блок «Важно»'; +$lang['alert'] = 'блок «Тревога»'; +$lang['help'] = 'блок «Справка»'; +$lang['download'] = 'блок «Скачивание»'; +$lang['todo'] = 'блок «Список задач»'; +$lang['clear'] = 'очистить float\'ы'; +$lang['em'] = 'пометить важным'; +$lang['hi'] = 'маркер'; +$lang['lo'] = 'пометить неважным'; diff --git a/public_html/lib/plugins/wrap/lang/ru/settings.php b/public_html/lib/plugins/wrap/lang/ru/settings.php new file mode 100644 index 00000000..f53143eb --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/ru/settings.php @@ -0,0 +1,16 @@ + + * @author Aleksandr Selivanov + * @author Rouslan + */ +$lang['noPrefix'] = 'К каким (разделенным запятыми) именам классов не должен быть приписан префикс "wrap_" ?'; +$lang['restrictedClasses'] = 'Классы плагина, которые нельзя использовать (перечислите через запятую)'; +$lang['restrictionType'] = 'Тип ограничения, указывающий, должны ли быть включены или исключены классы выше'; +$lang['restrictionType_o_0'] = 'разрешить все, за исключением классов, указанных выше'; +$lang['restrictionType_o_1'] = 'ограничить только классами, указанными выше'; +$lang['syntaxDiv'] = 'Какой синтаксис использовать для создания блоков и примечаний?'; +$lang['syntaxSpan'] = 'Какой синтаксис использовать для создания блоков выделения внутри текста?'; diff --git a/public_html/lib/plugins/wrap/lang/sk/lang.php b/public_html/lib/plugins/wrap/lang/sk/lang.php new file mode 100644 index 00000000..af572f7e --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/sk/lang.php @@ -0,0 +1,12 @@ + + */ +$lang['picker'] = 'Wrap Plugin'; +$lang['column'] = 'stĺpec'; +$lang['em'] = 'zvlášť zdôraznený'; +$lang['hi'] = 'zvýraznený'; +$lang['lo'] = 'menej významný'; diff --git a/public_html/lib/plugins/wrap/lang/sk/settings.php b/public_html/lib/plugins/wrap/lang/sk/settings.php new file mode 100644 index 00000000..4e79e945 --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/sk/settings.php @@ -0,0 +1,12 @@ + + */ +$lang['noPrefix'] = 'Ktoré (čiarkou oddelené) mená tried by mali byť vynechané pri použití predpony "wrap_"?'; +$lang['restrictedClasses'] = 'Obmedzenie použitia pluginu na tieto (čiarkou oddelené) triedy'; +$lang['restrictionType'] = 'Typ obmedzenia, špecifikuje, či triedy uvedené vyššie maju byť zahrnuté alebo vynechané'; +$lang['restrictionType_o_0'] = 'povolenie pre všetky triedy okrem uvedených vyššie'; +$lang['restrictionType_o_1'] = 'obmedzenie len na triedy uvedené vyššie a žiadne iné'; diff --git a/public_html/lib/plugins/wrap/lang/tr/lang.php b/public_html/lib/plugins/wrap/lang/tr/lang.php new file mode 100644 index 00000000..ba55922a --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/tr/lang.php @@ -0,0 +1,22 @@ + + * @author İlker R. Kapaç + */ +$lang['picker'] = 'Paket Eklentisi'; +$lang['column'] = 'sütunlar'; +$lang['box'] = 'ortalanmış basit kutu'; +$lang['info'] = 'bilgi kutusu'; +$lang['tip'] = 'ipucu kutusu'; +$lang['important'] = 'önemli kutusu'; +$lang['alert'] = 'ikaz kutusu'; +$lang['help'] = 'yardım kutusu'; +$lang['download'] = 'indirme kutusu'; +$lang['todo'] = 'yapılacaklar kutusu'; +$lang['clear'] = 'boşlukları temizle'; +$lang['em'] = 'özellikle vurgulanmış'; +$lang['hi'] = 'vurgulanmış'; +$lang['lo'] = 'daha az önemli'; diff --git a/public_html/lib/plugins/wrap/lang/tr/settings.php b/public_html/lib/plugins/wrap/lang/tr/settings.php new file mode 100644 index 00000000..a4f7cd5a --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/tr/settings.php @@ -0,0 +1,15 @@ + + */ +$lang['noPrefix'] = 'Hangi sınıf isimleri, (virgülle ayrılmış) önüne "wrap_" öneki almaktan hariç tutulsun?'; +$lang['restrictedClasses'] = 'eklentinin kullanımını bu sınıflarla (virgülle ayrılmış) sınırla'; +$lang['restrictionType'] = 'kısıtlama tipi, üstteki sınıfların dalil mi edileceklerini yoksa hariç mi tutulacaklarını belirler.'; +$lang['restrictionType_o_0'] = 'üsttekiler hariç tüm sınıflara izin ver'; +$lang['restrictionType_o_1'] = 'sadece üstteki sınıflarla sınırla, başkasına izin verme'; +$lang['syntaxDiv'] = 'Blok paketi için araç çubuğunda hangi sözdizimi kullanılsın?'; +$lang['syntaxSpan'] = 'Satır içi paketi için araç çubuğunda hangi sözdizimi kullanılsın?'; +$lang['darkTpl'] = 'Karanlık şablonlar için renkler iyileştirilsin mi?'; diff --git a/public_html/lib/plugins/wrap/lang/zh-tw/lang.php b/public_html/lib/plugins/wrap/lang/zh-tw/lang.php new file mode 100644 index 00000000..fe60272b --- /dev/null +++ b/public_html/lib/plugins/wrap/lang/zh-tw/lang.php @@ -0,0 +1,19 @@ + + * @author maie + */ +$lang['noPrefix'] = '哪些CSS类不需要加上“wrap_"前缀?(逗号分隔)'; +$lang['restrictedClasses'] = '将插件的使用限制应用到这些类(逗号分隔)'; +$lang['restrictionType'] = '限制类型,指定上述类应该被包含或排除'; +$lang['restrictionType_o_0'] = '允许除上述类之外的所有类'; +$lang['restrictionType_o_1'] = '仅允许上述类'; +$lang['syntaxDiv'] = '在编辑工具栏的选择器中应对块级元素使用何种语法?'; +$lang['syntaxSpan'] = '在编辑工具栏的选择器中应对行内元素使用何种语法?'; +$lang['darkTpl'] = '优化黑模板的颜色?'; diff --git a/public_html/lib/plugins/wrap/manager.dat b/public_html/lib/plugins/wrap/manager.dat new file mode 100644 index 00000000..f91b57e5 --- /dev/null +++ b/public_html/lib/plugins/wrap/manager.dat @@ -0,0 +1,2 @@ +downloadurl=https://github.com/selfthinker/dokuwiki_plugin_wrap/archive/stable.zip +installed=Thu, 08 Sep 2016 12:06:06 +0000 diff --git a/public_html/lib/plugins/wrap/plugin.info.txt b/public_html/lib/plugins/wrap/plugin.info.txt new file mode 100644 index 00000000..a8553eb9 --- /dev/null +++ b/public_html/lib/plugins/wrap/plugin.info.txt @@ -0,0 +1,8 @@ +base wrap +author Anika Henke +email anika@selfthinker.org +date 2015-07-19 +name Wrap Plugin +desc Universal plugin which combines functionalities of many other plugins. Wrap wiki text inside containers (divs or spans) and give them a class (choose from a variety of preset classes), a width and/or a language with its associated text direction. +url https://www.dokuwiki.org/plugin:wrap +#syntax See example.txt diff --git a/public_html/lib/plugins/wrap/print.css b/public_html/lib/plugins/wrap/print.css new file mode 100644 index 00000000..bae47053 --- /dev/null +++ b/public_html/lib/plugins/wrap/print.css @@ -0,0 +1,57 @@ +/******************************************************************** +Print Styles for the Wrap Plugin (additional to all.css) +********************************************************************/ + +/* boxes and notes with icons +********************************************************************/ + +.dokuwiki div.wrap_box, +.dokuwiki div.wrap_danger, .dokuwiki div.wrap_warning, .dokuwiki div.wrap_caution, .dokuwiki div.wrap_notice, .dokuwiki div.wrap_safety, +.dokuwiki div.wrap_info, .dokuwiki div.wrap_important, .dokuwiki div.wrap_alert, .dokuwiki div.wrap_tip, .dokuwiki div.wrap_help, .dokuwiki div.wrap_todo, .dokuwiki div.wrap_download { + border: 2px solid #999; + padding: 1em 1em .5em; + margin-bottom: 1.5em; +} +.dokuwiki span.wrap_box, +.dokuwiki span.wrap_danger, .dokuwiki span.wrap_warning, .dokuwiki span.wrap_caution, .dokuwiki span.wrap_notice, .dokuwiki span.wrap_safety, +.dokuwiki span.wrap_info, .dokuwiki span.wrap_important, .dokuwiki span.wrap_alert, .dokuwiki span.wrap_tip, .dokuwiki span.wrap_help, .dokuwiki span.wrap_todo, .dokuwiki span.wrap_download { + border: 1px solid #999; + padding: 0 .3em; +} + + +/* mark +********************************************************************/ + +.dokuwiki .wrap_hi { + border: 1px solid #999; +} + + +/* miscellaneous +********************************************************************/ + +/*____________ spoiler ____________*/ + +.dokuwiki .wrap_spoiler { + visibility: hidden; +} + +/*____________ pagebreak ____________*/ + +.dokuwiki .wrap_pagebreak { + page-break-after: always; +} + +/*____________ avoid page break ____________*/ +/* not yet supported by most browsers */ + +.dokuwiki .wrap_nopagebreak { + page-break-inside: avoid; +} + +/*____________ no print ____________*/ + +.dokuwiki .wrap_noprint { + display: none; +} diff --git a/public_html/lib/plugins/wrap/style.css b/public_html/lib/plugins/wrap/style.css new file mode 100644 index 00000000..fa6bc163 --- /dev/null +++ b/public_html/lib/plugins/wrap/style.css @@ -0,0 +1,203 @@ +/******************************************************************** +Screen Styles for the Wrap Plugin (additional to all.css) +********************************************************************/ + +/* box +********************************************************************/ + +.dokuwiki .wrap_box { + background: __background_alt__; + color: __text__; +} +.dokuwiki div.wrap_box, +.dokuwiki div.wrap_danger, +.dokuwiki div.wrap_warning, +.dokuwiki div.wrap_caution, +.dokuwiki div.wrap_notice, +.dokuwiki div.wrap_safety { + padding: 1em 1em .5em; + margin-bottom: 1.5em; + overflow: hidden; +} +.dokuwiki span.wrap_box, +.dokuwiki span.wrap_danger, +.dokuwiki span.wrap_warning, +.dokuwiki span.wrap_caution, +.dokuwiki span.wrap_notice, +.dokuwiki span.wrap_safety { + padding: 0 .3em; +} + +/*____________ notes with icons ____________*/ + +/* general styles for all note divs */ +.dokuwiki div.wrap_info, +.dokuwiki div.wrap_important, +.dokuwiki div.wrap_alert, +.dokuwiki div.wrap_tip, +.dokuwiki div.wrap_help, +.dokuwiki div.wrap_todo, +.dokuwiki div.wrap_download { + padding: 1em 1em .5em 70px; + margin-bottom: 1.5em; + min-height: 68px; + background-position: 10px 50%; + background-repeat: no-repeat; + color: inherit; + overflow: hidden; +} +/* general styles for all note spans */ +.dokuwiki span.wrap_info, +.dokuwiki span.wrap_important, +.dokuwiki span.wrap_alert, +.dokuwiki span.wrap_tip, +.dokuwiki span.wrap_help, +.dokuwiki span.wrap_todo, +.dokuwiki span.wrap_download { + padding: 0 2px 0 20px; + min-height: 20px; + background-position: 2px 50%; + background-repeat: no-repeat; + color: inherit; +} + +/* sorry for icons glued to the right side, but there is currently no way + to make this look good without adjusting the images themselves */ +[dir=rtl] .dokuwiki div.wrap_info, +[dir=rtl] .dokuwiki div.wrap_important, +[dir=rtl] .dokuwiki div.wrap_alert, +[dir=rtl] .dokuwiki div.wrap_tip, +[dir=rtl] .dokuwiki div.wrap_help, +[dir=rtl] .dokuwiki div.wrap_todo, +[dir=rtl] .dokuwiki div.wrap_download { + padding: 1em 60px .5em 1em; + background-position: right 50%; +} +[dir=rtl] .dokuwiki span.wrap_info, +[dir=rtl] .dokuwiki span.wrap_important, +[dir=rtl] .dokuwiki span.wrap_alert, +[dir=rtl] .dokuwiki span.wrap_tip, +[dir=rtl] .dokuwiki span.wrap_help, +[dir=rtl] .dokuwiki span.wrap_todo, +[dir=rtl] .dokuwiki span.wrap_download { + padding: 0 18px 0 2px; + background-position: right 50%; +} + +/*____________ info ____________*/ +.dokuwiki .wrap_info { background-color: #d1d7df; } +.dokuwiki .wrap__dark.wrap_info { background-color: #343e4a; } +.dokuwiki div.wrap_info { background-image: url(images/note/48/info.png); } +.dokuwiki span.wrap_info { background-image: url(images/note/16/info.png); } + +/*____________ important ____________*/ +.dokuwiki .wrap_important { background-color: #ffd39f; } +.dokuwiki .wrap__dark.wrap_important { background-color: #6c3b00; } +.dokuwiki div.wrap_important { background-image: url(images/note/48/important.png); } +.dokuwiki span.wrap_important { background-image: url(images/note/16/important.png); } + +/*____________ alert ____________*/ +.dokuwiki .wrap_alert { background-color: #ffbcaf; } +.dokuwiki .wrap__dark.wrap_alert { background-color: #6b1100; } +.dokuwiki div.wrap_alert { background-image: url(images/note/48/alert.png); } +.dokuwiki span.wrap_alert { background-image: url(images/note/16/alert.png); } + +/*____________ tip ____________*/ +.dokuwiki .wrap_tip { background-color: #fff79f; } +.dokuwiki .wrap__dark.wrap_tip { background-color: #4a4400; } +.dokuwiki div.wrap_tip { background-image: url(images/note/48/tip.png); } +.dokuwiki span.wrap_tip { background-image: url(images/note/16/tip.png); } + +/*____________ help ____________*/ +.dokuwiki .wrap_help { background-color: #dcc2ef; } +.dokuwiki .wrap__dark.wrap_help { background-color: #3c1757; } +.dokuwiki div.wrap_help { background-image: url(images/note/48/help.png); } +.dokuwiki span.wrap_help { background-image: url(images/note/16/help.png); } + +/*____________ todo ____________*/ +.dokuwiki .wrap_todo { background-color: #c2efdd; } +.dokuwiki .wrap__dark.wrap_todo { background-color: #17573e; } +.dokuwiki div.wrap_todo { background-image: url(images/note/48/todo.png); } +.dokuwiki span.wrap_todo { background-image: url(images/note/16/todo.png); } + +/*____________ download ____________*/ +.dokuwiki .wrap_download { background-color: #d6efc2; } +.dokuwiki .wrap__dark.wrap_download { background-color: #345717; } +.dokuwiki div.wrap_download { background-image: url(images/note/48/download.png); } +.dokuwiki span.wrap_download { background-image: url(images/note/16/download.png); } + + +/*____________ safety notes ____________*/ + +.dokuwiki .wrap_danger { + background-color: #c00; + color: #fff; +} +.dokuwiki .wrap_warning { + background-color: #f60; + color: #000; +} +.dokuwiki .wrap_caution { + background-color: #ff0; + color: #000; +} +.dokuwiki .wrap_notice { + background-color: #06f; + color: #fff; +} +.dokuwiki .wrap_safety { + background-color: #090; + color: #fff; +} + + +/* mark +********************************************************************/ + +.dokuwiki .wrap_hi { + background-color: #ff9; + overflow: hidden; +} +.dokuwiki .wrap__dark.wrap_hi { + background-color: #4e4e0d; +} + + +/* miscellaneous +********************************************************************/ + +/*____________ spoiler ____________*/ + +.dokuwiki .wrap_spoiler { + background-color: __background__ !important; + color: __background__ !important; + border: 1px dotted red; +} + +/*____________ only print ____________*/ + +.dokuwiki .wrap_onlyprint { + display: none; +} + +/*____________ tabs ____________*/ +/* in addition to template styles */ + +.dokuwiki .plugin_wrap.tabs { + margin-bottom: 1.4em; +} + +/*____________ button-style link ____________*/ + +.dokuwiki .wrap_button a:link, +.dokuwiki .wrap_button a:visited { + background-color: __background_alt__; +} +.dokuwiki .wrap_button a:link:hover, +.dokuwiki .wrap_button a:visited:hover, +.dokuwiki .wrap_button a:link:focus, +.dokuwiki .wrap_button a:visited:focus, +.dokuwiki .wrap_button a:link:active, +.dokuwiki .wrap_button a:visited:active { + background-color: __background_neu__; +} diff --git a/public_html/lib/plugins/wrap/syntax/closesection.php b/public_html/lib/plugins/wrap/syntax/closesection.php new file mode 100644 index 00000000..4bb4837c --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/closesection.php @@ -0,0 +1,40 @@ + + */ + +if(!defined('DOKU_INC')) die(); + +if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); +require_once(DOKU_PLUGIN.'syntax.php'); + +class syntax_plugin_wrap_closesection extends DokuWiki_Syntax_Plugin { + + function getType(){ return 'substition';} + function getPType(){ return 'block';} + function getSort(){ return 195; } + + /** + * Dummy handler, this syntax part has no syntax but is directly added to the instructions by the div syntax + */ + function handle($match, $state, $pos, Doku_Handler $handler){ + } + + /** + * Create output + */ + function render($mode, Doku_Renderer $renderer, $indata) { + if($mode == 'xhtml'){ + /** @var Doku_Renderer_xhtml $renderer */ + $renderer->finishSectionEdit(); + return true; + } + return false; + } + + +} + diff --git a/public_html/lib/plugins/wrap/syntax/div.php b/public_html/lib/plugins/wrap/syntax/div.php new file mode 100644 index 00000000..2e84c2ba --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/div.php @@ -0,0 +1,132 @@ + + */ + +if(!defined('DOKU_INC')) die(); + +if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); +require_once(DOKU_PLUGIN.'syntax.php'); + +class syntax_plugin_wrap_div extends DokuWiki_Syntax_Plugin { + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?
)'; + protected $exit_pattern = '
'; + + function getType(){ return 'formatting';} + function getAllowedTypes() { return array('container', 'formatting', 'substition', 'protected', 'disabled', 'paragraphs'); } + function getPType(){ return 'stack';} + function getSort(){ return 195; } + // override default accepts() method to allow nesting - ie, to get the plugin accepts its own entry syntax + function accepts($mode) { + if ($mode == substr(get_class($this), 7)) return true; + return parent::accepts($mode); + } + + /** + * Connect pattern to lexer + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern($this->special_pattern,$mode,'plugin_wrap_'.$this->getPluginComponent()); + $this->Lexer->addEntryPattern($this->entry_pattern,$mode,'plugin_wrap_'.$this->getPluginComponent()); + } + + function postConnect() { + $this->Lexer->addExitPattern($this->exit_pattern, 'plugin_wrap_'.$this->getPluginComponent()); + $this->Lexer->addPattern('[ \t]*={2,}[^\n]+={2,}[ \t]*(?=\n)', 'plugin_wrap_'.$this->getPluginComponent()); + } + + /** + * Handle the match + */ + function handle($match, $state, $pos, Doku_Handler $handler){ + global $conf; + switch ($state) { + case DOKU_LEXER_ENTER: + case DOKU_LEXER_SPECIAL: + $data = strtolower(trim(substr($match,strpos($match,' '),-1)," \t\n/")); + return array($state, $data); + + case DOKU_LEXER_UNMATCHED: + $handler->_addCall('cdata', array($match), $pos); + break; + + case DOKU_LEXER_MATCHED: + // we have a == header ==, use the core header() renderer + // (copied from core header() in inc/parser/handler.php) + $title = trim($match); + $level = 7 - strspn($title,'='); + if($level < 1) $level = 1; + $title = trim($title,'='); + $title = trim($title); + + $handler->_addCall('header',array($title,$level,$pos), $pos); + // close the section edit the header could open + if ($title && $level <= $conf['maxseclevel']) { + $handler->addPluginCall('wrap_closesection', array(), DOKU_LEXER_SPECIAL, $pos, ''); + } + break; + + case DOKU_LEXER_EXIT: + return array($state, ''); + } + return false; + } + + /** + * Create output + */ + function render($mode, Doku_Renderer $renderer, $indata) { + static $type_stack = array (); + + if (empty($indata)) return false; + list($state, $data) = $indata; + + if($mode == 'xhtml'){ + /** @var Doku_Renderer_xhtml $renderer */ + switch ($state) { + case DOKU_LEXER_ENTER: + // add a section edit right at the beginning of the wrap output + $renderer->startSectionEdit(0, 'plugin_wrap_start'); + $renderer->finishSectionEdit(); + // add a section edit for the end of the wrap output. This prevents the renderer + // from closing the last section edit so the next section button after the wrap syntax will + // include the whole wrap syntax + $renderer->startSectionEdit(0, 'plugin_wrap_end'); + + case DOKU_LEXER_SPECIAL: + $wrap = $this->loadHelper('wrap'); + $attr = $wrap->buildAttributes($data, 'plugin_wrap'); + + $renderer->doc .= ''; + if ($state == DOKU_LEXER_SPECIAL) $renderer->doc .= ''; + break; + + case DOKU_LEXER_EXIT: + $renderer->doc .= ''; + $renderer->finishSectionEdit(); + break; + } + return true; + } + if($mode == 'odt'){ + switch ($state) { + case DOKU_LEXER_ENTER: + $wrap = plugin_load('helper', 'wrap'); + array_push ($type_stack, $wrap->renderODTElementOpen($renderer, 'div', $data)); + break; + + case DOKU_LEXER_EXIT: + $element = array_pop ($type_stack); + $wrap = plugin_load('helper', 'wrap'); + $wrap->renderODTElementClose ($renderer, $element); + break; + } + return true; + } + return false; + } +} diff --git a/public_html/lib/plugins/wrap/syntax/divblock.php b/public_html/lib/plugins/wrap/syntax/divblock.php new file mode 100644 index 00000000..9bac0532 --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/divblock.php @@ -0,0 +1,21 @@ + ...
syntax + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Anika Henke + */ + +require_once(dirname(__FILE__).'/div.php'); + +class syntax_plugin_wrap_divblock extends syntax_plugin_wrap_div { + + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?)'; + protected $exit_pattern = ''; + + +} + diff --git a/public_html/lib/plugins/wrap/syntax/divwrap.php b/public_html/lib/plugins/wrap/syntax/divwrap.php new file mode 100644 index 00000000..386c5ff8 --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/divwrap.php @@ -0,0 +1,20 @@ + ...
syntax + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Anika Henke + */ + +require_once(dirname(__FILE__).'/div.php'); + +class syntax_plugin_wrap_divwrap extends syntax_plugin_wrap_div { + + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?)'; + protected $exit_pattern = ''; + +} + diff --git a/public_html/lib/plugins/wrap/syntax/span.php b/public_html/lib/plugins/wrap/syntax/span.php new file mode 100644 index 00000000..2611c5a9 --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/span.php @@ -0,0 +1,105 @@ + + */ + +if(!defined('DOKU_INC')) die(); + +if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); +require_once(DOKU_PLUGIN.'syntax.php'); + +class syntax_plugin_wrap_span extends DokuWiki_Syntax_Plugin { + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?)'; + protected $exit_pattern = ''; + + function getType(){ return 'formatting';} + function getAllowedTypes() { return array('formatting', 'substition', 'disabled'); } + function getPType(){ return 'normal';} + function getSort(){ return 195; } + // override default accepts() method to allow nesting - ie, to get the plugin accepts its own entry syntax + function accepts($mode) { + if ($mode == substr(get_class($this), 7)) return true; + return parent::accepts($mode); + } + + /** + * Connect pattern to lexer + */ + function connectTo($mode) { + $this->Lexer->addSpecialPattern($this->special_pattern,$mode,'plugin_wrap_'.$this->getPluginComponent()); + $this->Lexer->addEntryPattern($this->entry_pattern,$mode,'plugin_wrap_'.$this->getPluginComponent()); + } + + function postConnect() { + $this->Lexer->addExitPattern($this->exit_pattern, 'plugin_wrap_'.$this->getPluginComponent()); + } + + /** + * Handle the match + */ + function handle($match, $state, $pos, Doku_Handler $handler){ + switch ($state) { + case DOKU_LEXER_ENTER: + case DOKU_LEXER_SPECIAL: + $data = strtolower(trim(substr($match,strpos($match,' '),-1)," \t\n/")); + return array($state, $data); + + case DOKU_LEXER_UNMATCHED : + $handler->_addCall('cdata', array($match), $pos); + return false; + + case DOKU_LEXER_EXIT : + return array($state, ''); + + } + return false; + } + + /** + * Create output + */ + function render($mode, Doku_Renderer $renderer, $indata) { + static $type_stack = array (); + + if (empty($indata)) return false; + list($state, $data) = $indata; + + if($mode == 'xhtml'){ + switch ($state) { + case DOKU_LEXER_ENTER: + case DOKU_LEXER_SPECIAL: + $wrap = $this->loadHelper('wrap'); + $attr = $wrap->buildAttributes($data); + + $renderer->doc .= ''; + if ($state == DOKU_LEXER_SPECIAL) $renderer->doc .= ''; + break; + + case DOKU_LEXER_EXIT: + $renderer->doc .= ''; + break; + } + return true; + } + if($mode == 'odt'){ + switch ($state) { + case DOKU_LEXER_ENTER: + $wrap = plugin_load('helper', 'wrap'); + array_push ($type_stack, $wrap->renderODTElementOpen($renderer, 'span', $data)); + break; + + case DOKU_LEXER_EXIT: + $element = array_pop ($type_stack); + $wrap = plugin_load('helper', 'wrap'); + $wrap->renderODTElementClose ($renderer, $element); + break; + } + return true; + } + return false; + } +} diff --git a/public_html/lib/plugins/wrap/syntax/spaninline.php b/public_html/lib/plugins/wrap/syntax/spaninline.php new file mode 100644 index 00000000..cc7a6692 --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/spaninline.php @@ -0,0 +1,20 @@ + ... syntax + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Anika Henke + */ + +require_once(dirname(__FILE__).'/span.php'); + +class syntax_plugin_wrap_spaninline extends syntax_plugin_wrap_span { + + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?)'; + protected $exit_pattern = ''; + +} + diff --git a/public_html/lib/plugins/wrap/syntax/spanwrap.php b/public_html/lib/plugins/wrap/syntax/spanwrap.php new file mode 100644 index 00000000..9c3d9214 --- /dev/null +++ b/public_html/lib/plugins/wrap/syntax/spanwrap.php @@ -0,0 +1,21 @@ + ... syntax + * + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Anika Henke + */ + +require_once(dirname(__FILE__).'/span.php'); + +class syntax_plugin_wrap_spanwrap extends syntax_plugin_wrap_span { + + protected $special_pattern = '\r\n]*?/>'; + protected $entry_pattern = '(?=.*?)'; + protected $exit_pattern = ''; + + +} +