summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/ImageMap
diff options
context:
space:
mode:
authorYaco <franco@reevo.org>2020-06-04 11:01:00 -0300
committerYaco <franco@reevo.org>2020-06-04 11:01:00 -0300
commitfc7369835258467bf97eb64f184b93691f9a9fd5 (patch)
treedaabd60089d2dd76d9f5fb416b005fbe159c799d /www/wiki/extensions/ImageMap
first commit
Diffstat (limited to 'www/wiki/extensions/ImageMap')
-rw-r--r--www/wiki/extensions/ImageMap/CODE_OF_CONDUCT.md1
-rw-r--r--www/wiki/extensions/ImageMap/COPYING339
-rw-r--r--www/wiki/extensions/ImageMap/Gruntfile.js28
-rw-r--r--www/wiki/extensions/ImageMap/ImageMap.php14
-rw-r--r--www/wiki/extensions/ImageMap/ImageMap_body.php406
-rw-r--r--www/wiki/extensions/ImageMap/composer.json37
-rw-r--r--www/wiki/extensions/ImageMap/desc-20.pngbin0 -> 1088 bytes
-rw-r--r--www/wiki/extensions/ImageMap/desc.svg299
-rw-r--r--www/wiki/extensions/ImageMap/extension.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/af.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ais.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/an.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ar.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/arz.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/as.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ast.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/az.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/azb.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ba.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bcc.json17
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bcl.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/be-tarask.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bg.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bjn.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bn.json15
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bo.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/br.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/bs.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ca.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ce.json13
-rw-r--r--www/wiki/extensions/ImageMap/i18n/co.json4
-rw-r--r--www/wiki/extensions/ImageMap/i18n/cs.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/cy.json13
-rw-r--r--www/wiki/extensions/ImageMap/i18n/da.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/de.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/diq.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/dsb.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/el.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/en-gb.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/en.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/eo.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/es.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/et.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/eu.json12
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ext.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/fa.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/fi.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/fo.json13
-rw-r--r--www/wiki/extensions/ImageMap/i18n/fr.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/frp.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/gl.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/grc.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/gsw.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/gu.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/he.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/hi.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/hr.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/hsb.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/hu.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ia.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/id.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ilo.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/io.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/is.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/it.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ja.json24
-rw-r--r--www/wiki/extensions/ImageMap/i18n/jv.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ka.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/kk-arab.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/kk-cyrl.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/kk-latn.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/km.json15
-rw-r--r--www/wiki/extensions/ImageMap/i18n/kn.json13
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ko.json24
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ksh.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ku-latn.json9
-rw-r--r--www/wiki/extensions/ImageMap/i18n/la.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/lb.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/li.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/lki.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/lrc.json11
-rw-r--r--www/wiki/extensions/ImageMap/i18n/lt.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/lv.json11
-rw-r--r--www/wiki/extensions/ImageMap/i18n/mk.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ml.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/mr.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ms.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/mt.json18
-rw-r--r--www/wiki/extensions/ImageMap/i18n/myv.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nap.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nb.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nds-nl.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nds.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ne.json4
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nl.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/nn.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/oc.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/olo.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/or.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/os.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pdc.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pfl.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pl.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pms.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pnb.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ps.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pt-br.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/pt.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/qqq.json24
-rw-r--r--www/wiki/extensions/ImageMap/i18n/qu.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ro.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/roa-tara.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ru.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/rue.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sa.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sah.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sat.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/scn.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/si.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sk.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sl.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sq.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sr-ec.json24
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sr-el.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/stq.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/su.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sv.json22
-rw-r--r--www/wiki/extensions/ImageMap/i18n/sw.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ta.json16
-rw-r--r--www/wiki/extensions/ImageMap/i18n/te.json17
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tet.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tg-cyrl.json17
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tg-latn.json17
-rw-r--r--www/wiki/extensions/ImageMap/i18n/th.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tk.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tl.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/tr.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/uk.json23
-rw-r--r--www/wiki/extensions/ImageMap/i18n/ur.json12
-rw-r--r--www/wiki/extensions/ImageMap/i18n/vec.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/vep.json8
-rw-r--r--www/wiki/extensions/ImageMap/i18n/vi.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/vo.json15
-rw-r--r--www/wiki/extensions/ImageMap/i18n/yi.json19
-rw-r--r--www/wiki/extensions/ImageMap/i18n/yo.json10
-rw-r--r--www/wiki/extensions/ImageMap/i18n/yue.json20
-rw-r--r--www/wiki/extensions/ImageMap/i18n/zh-hans.json21
-rw-r--r--www/wiki/extensions/ImageMap/i18n/zh-hant.json23
-rw-r--r--www/wiki/extensions/ImageMap/imageMapParserTests.txt10
-rw-r--r--www/wiki/extensions/ImageMap/includes/ImageMap.php406
-rw-r--r--www/wiki/extensions/ImageMap/phpcs.xml13
-rw-r--r--www/wiki/extensions/ImageMap/tests/parser/imageMapParserTests.txt10
-rw-r--r--www/wiki/extensions/ImageMap/tests/phan/config.php11
153 files changed, 4004 insertions, 0 deletions
diff --git a/www/wiki/extensions/ImageMap/CODE_OF_CONDUCT.md b/www/wiki/extensions/ImageMap/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000..d8e5d087
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/CODE_OF_CONDUCT.md
@@ -0,0 +1 @@
+The development of this software is covered by a [Code of Conduct](https://www.mediawiki.org/wiki/Code_of_Conduct).
diff --git a/www/wiki/extensions/ImageMap/COPYING b/www/wiki/extensions/ImageMap/COPYING
new file mode 100644
index 00000000..d159169d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/COPYING
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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 Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/www/wiki/extensions/ImageMap/Gruntfile.js b/www/wiki/extensions/ImageMap/Gruntfile.js
new file mode 100644
index 00000000..26ca0c16
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/Gruntfile.js
@@ -0,0 +1,28 @@
+/*jshint node:true */
+module.exports = function ( grunt ) {
+ grunt.loadNpmTasks( 'grunt-banana-checker' );
+ grunt.loadNpmTasks( 'grunt-jsonlint' );
+ grunt.loadNpmTasks( 'grunt-contrib-jshint' );
+
+ var conf = grunt.file.readJSON( 'extension.json' );
+ grunt.initConfig( {
+ banana: conf.MessagesDirs,
+ jshint: {
+ all: [
+ '**/*.js',
+ '!node_modules/**',
+ '!vendor/**'
+ ]
+ },
+ jsonlint: {
+ all: [
+ '**/*.json',
+ '!node_modules/**',
+ '!vendor/**'
+ ]
+ }
+ } );
+
+ grunt.registerTask( 'test', [ 'jsonlint', 'banana', 'jshint' ] );
+ grunt.registerTask( 'default', 'test' );
+};
diff --git a/www/wiki/extensions/ImageMap/ImageMap.php b/www/wiki/extensions/ImageMap/ImageMap.php
new file mode 100644
index 00000000..71b9d9b2
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/ImageMap.php
@@ -0,0 +1,14 @@
+<?php
+
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'ImageMap' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $wgMessagesDirs['ImageMap'] = __DIR__ . '/i18n';
+ /* wfWarn(
+ 'Deprecated PHP entry point used for ImageMap extension. Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
+ ); */
+ return true;
+} else {
+ die( 'This version of the ImageMap extension requires MediaWiki 1.25+' );
+}
diff --git a/www/wiki/extensions/ImageMap/ImageMap_body.php b/www/wiki/extensions/ImageMap/ImageMap_body.php
new file mode 100644
index 00000000..3d4cda7e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/ImageMap_body.php
@@ -0,0 +1,406 @@
+<?php
+/**
+ * Main file for extension ImageMap.
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * Syntax:
+ * <imagemap>
+ * Image:Foo.jpg | 100px | picture of a foo
+ *
+ * rect 0 0 50 50 [[Foo type A]]
+ * circle 50 50 20 [[Foo type B]]
+ *
+ * desc bottom-left
+ * </imagemap>
+ *
+ * Coordinates are relative to the source image, not the thumbnail.
+ */
+
+class ImageMap {
+ public static $id = 0;
+
+ const TOP_RIGHT = 0;
+ const BOTTOM_RIGHT = 1;
+ const BOTTOM_LEFT = 2;
+ const TOP_LEFT = 3;
+ const NONE = 4;
+
+ /**
+ * @param Parser $parser
+ */
+ public static function onParserFirstCallInit( Parser &$parser ) {
+ $parser->setHook( 'imagemap', [ 'ImageMap', 'render' ] );
+ }
+
+ /**
+ * @param $input
+ * @param $params
+ * @param $parser Parser
+ * @return string HTML (Image map, or error message)
+ */
+ public static function render( $input, $params, $parser ) {
+ global $wgUrlProtocols, $wgNoFollowLinks;
+ $config = ConfigFactory::getDefaultInstance()->makeConfig( 'main' );
+
+ $lines = explode( "\n", $input );
+
+ $first = true;
+ $lineNum = 0;
+ $mapHTML = '';
+ $links = [];
+
+ // Define canonical desc types to allow i18n of 'imagemap_desc_types'
+ $descTypesCanonical = 'top-right, bottom-right, bottom-left, top-left, none';
+ $descType = self::BOTTOM_RIGHT;
+ $defaultLinkAttribs = false;
+ $realmap = true;
+ $extLinks = [];
+ foreach ( $lines as $line ) {
+ ++$lineNum;
+ $externLink = false;
+
+ $line = trim( $line );
+ if ( $line == '' || $line[0] == '#' ) {
+ continue;
+ }
+
+ if ( $first ) {
+ $first = false;
+
+ // The first line should have an image specification on it
+ // Extract it and render the HTML
+ $bits = explode( '|', $line, 2 );
+ if ( count( $bits ) == 1 ) {
+ $image = $bits[0];
+ $options = '';
+ } else {
+ list( $image, $options ) = $bits;
+ }
+ $imageTitle = Title::newFromText( $image );
+ if ( !$imageTitle || !$imageTitle->inNamespace( NS_FILE ) ) {
+ return self::error( 'imagemap_no_image' );
+ }
+ if ( wfIsBadImage( $imageTitle->getDBkey(), $parser->mTitle ) ) {
+ return self::error( 'imagemap_bad_image' );
+ }
+ // Parse the options so we can use links and the like in the caption
+ $parsedOptions = $parser->recursiveTagParse( $options );
+ $imageHTML = $parser->makeImage( $imageTitle, $parsedOptions );
+ $parser->replaceLinkHolders( $imageHTML );
+ $imageHTML = $parser->mStripState->unstripBoth( $imageHTML );
+ $imageHTML = Sanitizer::normalizeCharReferences( $imageHTML );
+
+ $domDoc = new DOMDocument();
+ wfSuppressWarnings();
+ $ok = $domDoc->loadXML( $imageHTML );
+ wfRestoreWarnings();
+ if ( !$ok ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $xpath = new DOMXPath( $domDoc );
+ $imgs = $xpath->query( '//img' );
+ if ( !$imgs->length ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $imageNode = $imgs->item( 0 );
+ $thumbWidth = $imageNode->getAttribute( 'width' );
+ $thumbHeight = $imageNode->getAttribute( 'height' );
+
+ $imageObj = wfFindFile( $imageTitle );
+ if ( !$imageObj || !$imageObj->exists() ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ // Add the linear dimensions to avoid inaccuracy in the scale
+ // factor when one is much larger than the other
+ // (sx+sy)/(x+y) = s
+ $denominator = $imageObj->getWidth() + $imageObj->getHeight();
+ $numerator = $thumbWidth + $thumbHeight;
+ if ( $denominator <= 0 || $numerator <= 0 ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $scale = $numerator / $denominator;
+ continue;
+ }
+
+ // Handle desc spec
+ $cmd = strtok( $line, " \t" );
+ if ( $cmd == 'desc' ) {
+ $typesText = wfMessage( 'imagemap_desc_types' )->inContentLanguage()->text();
+ if ( $descTypesCanonical != $typesText ) {
+ // i18n desc types exists
+ $typesText = $descTypesCanonical . ', ' . $typesText;
+ }
+ $types = array_map( 'trim', explode( ',', $typesText ) );
+ $type = trim( strtok( '' ) );
+ $descType = array_search( $type, $types );
+ if ( $descType > 4 ) {
+ // A localized descType is used. Subtract 5 to reach the canonical desc type.
+ $descType = $descType - 5;
+ }
+ // <0? In theory never, but paranoia...
+ if ( $descType === false || $descType < 0 ) {
+ return self::error( 'imagemap_invalid_desc', $typesText );
+ }
+ continue;
+ }
+
+ $title = false;
+ // Find the link
+ $link = trim( strstr( $line, '[' ) );
+ $m = [];
+ if ( preg_match( '/^ \[\[ ([^|]*+) \| ([^\]]*+) \]\] \w* $ /x', $link, $m ) ) {
+ $title = Title::newFromText( $m[1] );
+ $alt = trim( $m[2] );
+ } elseif ( preg_match( '/^ \[\[ ([^\]]*+) \]\] \w* $ /x', $link, $m ) ) {
+ $title = Title::newFromText( $m[1] );
+ if ( is_null( $title ) ) {
+ return self::error( 'imagemap_invalid_title', $lineNum );
+ }
+ $alt = $title->getFullText();
+ } elseif ( in_array( substr( $link, 1, strpos( $link, '//' ) + 1 ), $wgUrlProtocols )
+ || in_array( substr( $link, 1, strpos( $link, ':' ) ), $wgUrlProtocols )
+ ) {
+ if ( preg_match( '/^ \[ ([^\s]*+) \s ([^\]]*+) \] \w* $ /x', $link, $m ) ) {
+ $title = $m[1];
+ $alt = trim( $m[2] );
+ $externLink = true;
+ } elseif ( preg_match( '/^ \[ ([^\]]*+) \] \w* $ /x', $link, $m ) ) {
+ $title = $alt = trim( $m[1] );
+ $externLink = true;
+ }
+ } else {
+ return self::error( 'imagemap_no_link', $lineNum );
+ }
+ if ( !$title ) {
+ return self::error( 'imagemap_invalid_title', $lineNum );
+ }
+
+ $shapeSpec = substr( $line, 0, -strlen( $link ) );
+
+ // Tokenize shape spec
+ $shape = strtok( $shapeSpec, " \t" );
+ switch ( $shape ) {
+ case 'default':
+ $coords = [];
+ break;
+ case 'rect':
+ $coords = self::tokenizeCoords( 4, $lineNum );
+ if ( !is_array( $coords ) ) {
+ return $coords;
+ }
+ break;
+ case 'circle':
+ $coords = self::tokenizeCoords( 3, $lineNum );
+ if ( !is_array( $coords ) ) {
+ return $coords;
+ }
+ break;
+ case 'poly':
+ $coords = [];
+ $coord = strtok( " \t" );
+ while ( $coord !== false ) {
+ $coords[] = $coord;
+ $coord = strtok( " \t" );
+ }
+ if ( !count( $coords ) ) {
+ return self::error( 'imagemap_missing_coord', $lineNum );
+ }
+ if ( count( $coords ) % 2 !== 0 ) {
+ return self::error( 'imagemap_poly_odd', $lineNum );
+ }
+ break;
+ default:
+ return self::error( 'imagemap_unrecognised_shape', $lineNum );
+ }
+
+ // Scale the coords using the size of the source image
+ foreach ( $coords as $i => $c ) {
+ $coords[$i] = intval( round( $c * $scale ) );
+ }
+
+ // Construct the area tag
+ $attribs = [];
+ if ( $externLink ) {
+ $attribs['href'] = $title;
+ $attribs['class'] = 'plainlinks';
+ if ( $wgNoFollowLinks ) {
+ $attribs['rel'] = 'nofollow';
+ }
+ } elseif ( $title->getFragment() != '' && $title->getPrefixedDBkey() == '' ) {
+ // XXX: kluge to handle [[#Fragment]] links, should really fix getLocalURL()
+ // in Title.php to return an empty string in this case
+ $attribs['href'] = $title->getFragmentForURL();
+ } else {
+ $attribs['href'] = $title->getLocalURL() . $title->getFragmentForURL();
+ }
+ if ( $shape != 'default' ) {
+ $attribs['shape'] = $shape;
+ }
+ if ( $coords ) {
+ $attribs['coords'] = implode( ',', $coords );
+ }
+ if ( $alt != '' ) {
+ if ( $shape != 'default' ) {
+ $attribs['alt'] = $alt;
+ }
+ $attribs['title'] = $alt;
+ }
+ if ( $shape == 'default' ) {
+ $defaultLinkAttribs = $attribs;
+ } else {
+ $mapHTML .= Xml::element( 'area', $attribs ) . "\n";
+ }
+ if ( $externLink ) {
+ $extLinks[] = $title;
+ } else {
+ $links[] = $title;
+ }
+ }
+
+ if ( $first ) {
+ return self::error( 'imagemap_no_image' );
+ }
+
+ if ( $mapHTML == '' ) {
+ // no areas defined, default only. It's not a real imagemap, so we do not need some tags
+ $realmap = false;
+ }
+
+ if ( $realmap ) {
+ // Construct the map
+ // Add random number to avoid breaking cached HTML fragments that are
+ // later joined together on the one page (bug 16471)
+ $mapName = "ImageMap_" . ++self::$id . '_' . mt_rand( 0, 0x7fffffff );
+ $mapHTML = "<map name=\"$mapName\">\n$mapHTML</map>\n";
+
+ // Alter the image tag
+ $imageNode->setAttribute( 'usemap', "#$mapName" );
+ }
+
+ // Add a surrounding div, remove the default link to the description page
+ $anchor = $imageNode->parentNode;
+ $parent = $anchor->parentNode;
+ $div = $parent->insertBefore( new DOMElement( 'div' ), $anchor );
+ $div->setAttribute( 'class', 'noresize' );
+ if ( $defaultLinkAttribs ) {
+ $defaultAnchor = $div->appendChild( new DOMElement( 'a' ) );
+ foreach ( $defaultLinkAttribs as $name => $value ) {
+ $defaultAnchor->setAttribute( $name, $value );
+ }
+ $imageParent = $defaultAnchor;
+ } else {
+ $imageParent = $div;
+ }
+
+ // Add the map HTML to the div
+ // We used to add it before the div, but that made tidy unhappy
+ if ( $mapHTML != '' ) {
+ $mapDoc = new DOMDocument();
+ $mapDoc->loadXML( $mapHTML );
+ $mapNode = $domDoc->importNode( $mapDoc->documentElement, true );
+ $div->appendChild( $mapNode );
+ }
+
+ $imageParent->appendChild( $imageNode->cloneNode( true ) );
+ $parent->removeChild( $anchor );
+
+ // Determine whether a "magnify" link is present
+ $xpath = new DOMXPath( $domDoc );
+ $magnify = $xpath->query( '//div[@class="magnify"]' );
+ if ( !$magnify->length && $descType != self::NONE ) {
+ // Add image description link
+ if ( $descType == self::TOP_LEFT || $descType == self::BOTTOM_LEFT ) {
+ $marginLeft = 0;
+ } else {
+ $marginLeft = $thumbWidth - 20;
+ }
+ if ( $descType == self::TOP_LEFT || $descType == self::TOP_RIGHT ) {
+ $marginTop = -$thumbHeight;
+ // 1px hack for IE, to stop it poking out the top
+ $marginTop += 1;
+ } else {
+ $marginTop = -20;
+ }
+ $div->setAttribute( 'style', "height: {$thumbHeight}px; width: {$thumbWidth}px; " );
+ $descWrapper = $div->appendChild( new DOMElement( 'div' ) );
+ $descWrapper->setAttribute( 'style',
+ "margin-left: {$marginLeft}px; " .
+ "margin-top: {$marginTop}px; " .
+ "text-align: left;"
+ );
+
+ $descAnchor = $descWrapper->appendChild( new DOMElement( 'a' ) );
+ $descAnchor->setAttribute( 'href', $imageTitle->getLocalURL() );
+ $descAnchor->setAttribute(
+ 'title',
+ wfMessage( 'imagemap_description' )->inContentLanguage()->text()
+ );
+ $descImg = $descAnchor->appendChild( new DOMElement( 'img' ) );
+ $descImg->setAttribute(
+ 'alt',
+ wfMessage( 'imagemap_description' )->inContentLanguage()->text()
+ );
+ $url = $config->get( 'ExtensionAssetsPath' ) . '/ImageMap/desc-20.png';
+ $descImg->setAttribute(
+ 'src',
+ OutputPage::transformResourcePath( $config, $url )
+ );
+ $descImg->setAttribute( 'style', 'border: none;' );
+ }
+
+ // Output the result
+ // We use saveXML() not saveHTML() because then we get XHTML-compliant output.
+ // The disadvantage is that we have to strip out the DTD
+ $output = preg_replace( '/<\?xml[^?]*\?>/', '', $domDoc->saveXML( null, LIBXML_NOEMPTYTAG ) );
+
+ // Register links
+ foreach ( $links as $title ) {
+ if ( $title->isExternal() || $title->getNamespace() == NS_SPECIAL ) {
+ // Don't register special or interwiki links...
+ } elseif ( $title->getNamespace() == NS_MEDIA ) {
+ // Regular Media: links are recorded as image usages
+ $parser->mOutput->addImage( $title->getDBkey() );
+ } else {
+ // Plain ol' link
+ $parser->mOutput->addLink( $title );
+ }
+ }
+ foreach ( $extLinks as $title ) {
+ $parser->mOutput->addExternalLink( $title );
+ }
+ // Armour output against broken parser
+ $output = str_replace( "\n", '', $output );
+ return $output;
+ }
+
+ /**
+ * @param $count int
+ * @param $lineNum int|string
+ * @return array|string String with error (HTML), or array of coordinates
+ */
+ static function tokenizeCoords( $count, $lineNum ) {
+ $coords = [];
+ for ( $i = 0; $i < $count; $i++ ) {
+ $coord = strtok( " \t" );
+ if ( $coord === false ) {
+ return self::error( 'imagemap_missing_coord', $lineNum );
+ }
+ if ( !is_numeric( $coord ) || $coord > 1e9 || $coord < 0 ) {
+ return self::error( 'imagemap_invalid_coord', $lineNum );
+ }
+ $coords[$i] = $coord;
+ }
+ return $coords;
+ }
+
+ /**
+ * @param $name string
+ * @param $line string|int|bool
+ * @return string HTML
+ */
+ static function error( $name, $line = false ) {
+ return '<p class="error">' . wfMessage( $name, $line )->text() . '</p>';
+ }
+}
diff --git a/www/wiki/extensions/ImageMap/composer.json b/www/wiki/extensions/ImageMap/composer.json
new file mode 100644
index 00000000..87a7c028
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/composer.json
@@ -0,0 +1,37 @@
+{
+ "name": "mediawiki/image-map",
+ "type": "mediawiki-extension",
+ "description": "Allows clickable HTML image maps",
+ "keywords": [
+ "Wiki",
+ "MediaWiki",
+ "ImageMap"
+ ],
+ "homepage": "https://www.mediawiki.org/wiki/Extension:ImageMap",
+ "license": "GPL-2.0-or-later",
+ "require": {
+ "php": ">=5.4",
+ "composer/installers": "1.*,>=1.0.1"
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/mediawiki-codesniffer": "18.0.0",
+ "mediawiki/minus-x": "0.3.1",
+ "mediawiki/mediawiki-phan-config": "0.2.0"
+ },
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude vendor --exclude node_modules",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
+ },
+ "extra": {
+ "phan-taint-check-plugin": "1.2.0"
+ }
+}
diff --git a/www/wiki/extensions/ImageMap/desc-20.png b/www/wiki/extensions/ImageMap/desc-20.png
new file mode 100644
index 00000000..2ed33e4f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/desc-20.png
Binary files differ
diff --git a/www/wiki/extensions/ImageMap/desc.svg b/www/wiki/extensions/ImageMap/desc.svg
new file mode 100644
index 00000000..f86ea359
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/desc.svg
@@ -0,0 +1,299 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="744.09448819"
+ height="1052.3622047"
+ id="svg2"
+ sodipodi:version="0.32"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="desc.svg"
+ version="1.1"
+ inkscape:export-filename="/Users/tparscal/Desktop/imageMap.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient3615">
+ <stop
+ style="stop-color:#50a3ff;stop-opacity:1;"
+ offset="0"
+ id="stop3617" />
+ <stop
+ style="stop-color:#0051ab;stop-opacity:1;"
+ offset="1"
+ id="stop3619" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5219">
+ <stop
+ style="stop-color:#8b8b8b;stop-opacity:1;"
+ offset="0"
+ id="stop5221" />
+ <stop
+ style="stop-color:#999999;stop-opacity:1;"
+ offset="1"
+ id="stop5223" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5183">
+ <stop
+ style="stop-color:#1282ff;stop-opacity:1;"
+ offset="0"
+ id="stop5185" />
+ <stop
+ style="stop-color:#0a7eff;stop-opacity:0.184;"
+ offset="1"
+ id="stop5187" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5140">
+ <stop
+ style="stop-color:#008bff;stop-opacity:1;"
+ offset="0"
+ id="stop5142" />
+ <stop
+ style="stop-color:#003452;stop-opacity:0;"
+ offset="1"
+ id="stop5144" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2904">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop2906" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop2908" />
+ </linearGradient>
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 526.18109 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+ id="perspective13" />
+ <inkscape:perspective
+ id="perspective2832"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <inkscape:perspective
+ id="perspective2857"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <inkscape:perspective
+ id="perspective2882"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <inkscape:perspective
+ id="perspective2882-0"
+ inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+ inkscape:vp_z="1 : 0.5 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 0.5 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5183"
+ id="radialGradient5191"
+ cx="421.42856"
+ cy="694.62939"
+ fx="421.42856"
+ fy="694.62939"
+ r="311.18631"
+ gradientTransform="matrix(2.2098429,-3.3268405e-8,2.0370692e-8,1.31418,-509.86238,-221.41781)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2904"
+ id="linearGradient5203"
+ x1="421.42856"
+ y1="770.5788"
+ x2="421.42856"
+ y2="157.00269"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2904"
+ id="linearGradient5207"
+ gradientUnits="userSpaceOnUse"
+ x1="421.42856"
+ y1="770.5788"
+ x2="421.42856"
+ y2="157.00269" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2904"
+ id="linearGradient5210"
+ gradientUnits="userSpaceOnUse"
+ x1="421.42856"
+ y1="770.5788"
+ x2="421.42856"
+ y2="157.00269" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2904"
+ id="linearGradient5212"
+ gradientUnits="userSpaceOnUse"
+ x1="421.42856"
+ y1="770.5788"
+ x2="421.42856"
+ y2="157.00269"
+ gradientTransform="matrix(1.014493,0,0,1.029412,-127.53624,-175.0696)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2904"
+ id="linearGradient5217"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.014493,0,0,1.029412,-107.53624,-157.92674)"
+ x1="421.42856"
+ y1="770.5788"
+ x2="421.42856"
+ y2="157.00269" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5219"
+ id="linearGradient5225"
+ x1="421.42856"
+ y1="768.92761"
+ x2="421.42856"
+ y2="158.65387"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3615"
+ id="radialGradient3621"
+ cx="421.42856"
+ cy="463.79074"
+ fx="421.42856"
+ fy="463.79074"
+ r="303.84723"
+ gradientTransform="matrix(1,0,0,1.0042444,0,-1.968506)"
+ gradientUnits="userSpaceOnUse" />
+ <filter
+ inkscape:collect="always"
+ id="filter3631"
+ x="-0.1165843"
+ width="1.2331686"
+ y="-0.065459239"
+ height="1.1309185">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="10.301636"
+ id="feGaussianBlur3633" />
+ </filter>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ gridtolerance="10000"
+ guidetolerance="10"
+ objecttolerance="10"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.35"
+ inkscape:cx="108.91681"
+ inkscape:cy="358.30213"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer3"
+ inkscape:window-width="1920"
+ inkscape:window-height="1075"
+ inkscape:window-x="1440"
+ inkscape:window-y="0"
+ showgrid="false"
+ inkscape:window-maximized="0" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Base"
+ inkscape:groupmode="layer"
+ id="layer1"
+ style="display:inline"
+ sodipodi:insensitive="true">
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient3621);fill-opacity:1;stroke:url(#linearGradient5225);stroke-width:27.61747932;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path1872"
+ sodipodi:cx="421.42856"
+ sodipodi:cy="463.79074"
+ sodipodi:rx="295.71429"
+ sodipodi:ry="291.42856"
+ d="m 717.14285,463.79074 a 295.71429,291.42856 0 1 1 -591.42859,0 295.71429,291.42856 0 1 1 591.42859,0 z"
+ transform="matrix(1.014493,0,0,1.029412,-107.53624,-157.92674)" />
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer4"
+ inkscape:label="Refraction"
+ style="display:inline"
+ sodipodi:insensitive="true">
+ <path
+ transform="matrix(1.014493,0,0,1.029412,-107.53624,-157.92674)"
+ d="m 717.14285,463.79074 a 295.71429,291.42856 0 1 1 -591.42859,0 295.71429,291.42856 0 1 1 591.42859,0 z"
+ sodipodi:ry="291.42856"
+ sodipodi:rx="295.71429"
+ sodipodi:cy="463.79074"
+ sodipodi:cx="421.42856"
+ id="path5180"
+ style="opacity:0.79111113;fill:url(#radialGradient5191);fill-opacity:1;stroke:none;display:inline"
+ sodipodi:type="arc" />
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer5"
+ inkscape:label="Reflection"
+ style="display:inline"
+ sodipodi:insensitive="true">
+ <path
+ style="opacity:0.3288889;fill:url(#linearGradient5217);fill-opacity:1;stroke:none;display:inline"
+ d="m 320,19.517857 c -165.68547,0 -300,134.314543 -300,300.000003 0,21.41886 2.264366,42.28957 6.53125,62.4375 C 106.0102,338.98527 208.33367,313.11161 320,313.11161 c 111.66633,0 213.9898,25.87366 293.46875,68.84375 C 617.73563,361.80743 620,340.93672 620,319.51786 620,153.8324 485.68547,19.517857 320,19.517857 z"
+ id="path5193" />
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer3"
+ inkscape:label="Italic &quot;i&quot;"
+ style="display:inline">
+ <path
+ id="path2820"
+ style="font-size:144px;font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.17777782;fill:#000000;fill-opacity:1;stroke:none;filter:url(#filter3631);font-family:Times New Roman"
+ d="m 370.95661,140.65523 c 15.48657,3.7e-4 28.47549,3.8263 38.96675,11.4778 10.7406,7.65219 16.111,16.9056 16.11127,27.76025 -2.7e-4,10.85529 -5.37067,20.10867 -16.11127,27.76025 -10.74102,7.65215 -23.72994,11.47807 -38.96675,11.47777 -14.98738,3e-4 -27.85138,-3.82562 -38.59209,-11.47777 -10.74096,-7.65158 -16.11137,-16.90496 -16.11127,-27.76025 -10e-5,-10.85465 5.24545,-20.10806 15.73661,-27.76025 10.7407,-7.6515 23.72961,-11.47743 38.96675,-11.4778 m 23.23015,122.78572 -76.80945,189.78403 c -4.24645,10.85499 -6.36966,17.973 -6.36955,21.35404 -1.1e-4,1.95747 1.12395,3.82596 3.37211,5.60542 2.248,1.60157 4.62096,2.40236 7.11894,2.40232 4.24624,4e-5 8.49265,-1.33457 12.7391,-4.00388 11.24028,-6.58411 24.72877,-18.50676 40.46547,-35.76801 l 12.73917,5.33852 c -37.71796,46.80095 -77.80871,70.20137 -120.27237,70.20141 -16.23624,-4e-5 -29.2251,-3.20315 -38.96676,-9.60932 -9.49195,-6.58418 -14.23788,-14.85885 -14.23788,-24.8241 0,-6.5841 2.12321,-14.94779 6.36955,-25.09098 l 52.08058,-127.59039 c 4.99569,-12.27837 7.49356,-21.53179 7.49361,-27.76026 -5e-5,-3.91468 -2.37302,-7.3847 -7.11894,-10.41007 -4.74598,-3.02494 -11.24044,-4.53753 -19.48338,-4.53775 -3.74682,2.2e-4 -8.24299,0.0892 -13.48849,0.26688 l 4.87088,-10.67703 127.01659,-14.68091 22.48082,0"
+ transform="matrix(1.0936445,0,0,1.0936445,-29.966243,-30.856327)" />
+ <path
+ d="m 369.16654,116.40862 c 16.9368,4.1e-4 31.14206,4.18461 42.61577,12.55264 11.7464,8.36877 17.61971,18.48871 17.62,30.35984 -2.9e-4,11.87183 -5.8736,21.99174 -17.62,30.35984 -11.74686,8.36874 -25.95212,12.55293 -42.61577,12.5526 -16.39086,3.3e-4 -30.45951,-4.18386 -42.20603,-12.5526 -11.74679,-8.3681 -17.62011,-18.48801 -17.62,-30.35984 -1.1e-4,-11.87113 5.73666,-21.99107 17.21026,-30.35984 11.74651,-8.36803 25.95176,-12.55223 42.61577,-12.55264 m 25.40553,134.28393 -84.00224,207.55626 c -4.6441,11.8715 -6.96614,19.65607 -6.96602,23.35372 -1.2e-4,2.14078 1.2292,4.18424 3.68789,6.13034 2.45851,1.75155 5.05369,2.62733 7.78559,2.62728 4.64388,5e-5 9.28794,-1.45954 13.93205,-4.37882 12.29287,-7.20067 27.04448,-20.23981 44.25483,-39.11748 l 13.93213,5.83844 c -41.25004,51.1836 -85.09507,76.77534 -131.53522,76.77538 -17.75667,-4e-5 -31.96187,-3.5031 -42.61578,-10.50918 -10.38082,-7.20075 -15.57118,-16.2503 -15.57118,-27.14874 0,-7.20066 2.32204,-16.34756 6.96603,-27.44061 l 56.95764,-139.53852 c 5.4635,-13.42818 8.19529,-23.54813 8.19534,-30.35986 -5e-5,-4.28127 -2.59524,-8.07624 -7.78559,-11.38492 -5.19041,-3.3082 -12.29304,-4.96244 -21.30789,-4.96268 -4.09769,2.4e-4 -9.0149,0.0976 -14.75161,0.29187 l 5.32701,-11.67687 138.91099,-16.0557 24.58603,0"
+ style="font-size:144px;font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Times New Roman"
+ id="path5215" />
+ </g>
+</svg>
diff --git a/www/wiki/extensions/ImageMap/extension.json b/www/wiki/extensions/ImageMap/extension.json
new file mode 100644
index 00000000..76a8dfd0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/extension.json
@@ -0,0 +1,22 @@
+{
+ "name": "ImageMap",
+ "author": "Tim Starling",
+ "url": "https://www.mediawiki.org/wiki/Extension:ImageMap",
+ "descriptionmsg": "imagemap_desc",
+ "license-name": "GPL-2.0-or-later",
+ "type": "parserhook",
+ "MessagesDirs": {
+ "ImageMap": [
+ "i18n"
+ ]
+ },
+ "Hooks": {
+ "ParserFirstCallInit": [
+ "ImageMap::onParserFirstCallInit"
+ ]
+ },
+ "AutoloadClasses": {
+ "ImageMap": "includes/ImageMap.php"
+ },
+ "manifest_version": 1
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/af.json b/www/wiki/extensions/ImageMap/i18n/af.json
new file mode 100644
index 00000000..4835eb21
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/af.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj",
+ "SPQRobin",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "imagemap_no_image": "Fout: moet 'n beeld op die eerste lyn spesifiseer",
+ "imagemap_invalid_image": "Fout: beeld is ongeldig of bestaan nie",
+ "imagemap_bad_image": "Fout: beeld is op die swartlys vir hierdie bladsy",
+ "imagemap_no_link": "Fout: geen geldige skakel was aan die einde van lyn $1 gevind nie",
+ "imagemap_invalid_title": "Fout: ongeldige titel in skakel op lyn $1",
+ "imagemap_missing_coord": "Fout: nie genoeg koördinate vir vorm op lyn $1",
+ "imagemap_description": "Beeldinligting"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ais.json b/www/wiki/extensions/ImageMap/i18n/ais.json
new file mode 100644
index 00000000..c8a98059
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ais.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Benel",
+ "Bunukwiki"
+ ]
+ },
+ "imagemap_desc": "mahasa kolatando pisaungay <code>&lt;imagemap&gt;</code> aazihen-paya kapah misanga’ sapecec tu misaungayay sasing papo",
+ "imagemap_no_image": "mungangaw: kanca matuzu’ay tu iga i sakacacay a tusil.",
+ "imagemap_invalid_image": "mungangaw:iga caay tatenga’ saca inayi’.",
+ "imagemap_bad_image": "mungangaw: pasilsil tu kasabelih ku iga malangat piazihan-tu-sulit.",
+ "imagemap_no_link": "mungangaw: i saka $1 tusil sazikuzay caay katepah kapahay a siket.",
+ "imagemap_invalid_title": "mungangaw:i saka $1 tusil misiket satangahan la’cus.",
+ "imagemap_missing_coord": "mungangaw:i saka $1 tusil ma’ngadis taenengan palekal tu cacay a bacu.",
+ "imagemap_unrecognised_shape": "mungangaw: i saka $1 tusil izaw ku la’cus taazihan a bacu, paytusil kanca pisaungay isasa’ cacay cebang a sulit miteka: <code>default</code>, <code>rect</code>, <code>circle</code> saca <code>poly</code>.",
+ "imagemap_invalid_coord": "mungangaw: i saka $1 tusil izaw tu caay katatenga’ay a puenengan-bacu, puenengan-bacu kanca ku asip-bacu.",
+ "imagemap_invalid_desc": "mungangaw: caay tatenga’ay tu i desc a lalkuan. kanca u cudad isasa’ sizumaay cacay: <code>$1</code>.",
+ "imagemap_description": "mahizaay kuyni a iga",
+ "imagemap_poly_odd": "mungangaw:i saka $1 tusil matepa cayapiay-asip yadah-nikatatapal puenengan-bacu"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/an.json b/www/wiki/extensions/ImageMap/i18n/an.json
new file mode 100644
index 00000000..9a50245e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/an.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Juanpabl"
+ ]
+ },
+ "imagemap_desc": "Premite mapas d'imachens punchables en o client fendo servir a etiqueta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: ha d'endicar una imachen a primer ringlera",
+ "imagemap_invalid_image": "Error: a imachen no ye conforme u no existe",
+ "imagemap_bad_image": "Error: a imachen ye en a lista negra ta ista pachina",
+ "imagemap_no_link": "Error: no s'ha trobato garra vinclo conforme a la fin d'a ringlera $1",
+ "imagemap_invalid_title": "Error: títol no conforme en o vinclo d'a ringlera $1",
+ "imagemap_missing_coord": "Error: No bi'n ha prous de coordinadas ta definir a forma en a ringlera $1",
+ "imagemap_unrecognised_shape": "Error: no s'ha reconoixito a forma en a ringlera $1, cada linia ha de prencipiar con una d'as siguients espresions: <code>default</code>, <code>rect</code>, <code>circle</code> u <code>poly</code>",
+ "imagemap_invalid_coord": "Error: coordinada no conforme en a ringlera $1, ha d'estar un numero",
+ "imagemap_invalid_desc": "Error: A descripción (desc) especificata no ye conforme, ha d'estar una de: <code>$1</code>",
+ "imagemap_description": "Información sobre ista imachen",
+ "imagemap_poly_odd": "Error: s'ha trobato un polinomio con un numero impar de coordinadas en a linia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ar.json b/www/wiki/extensions/ImageMap/i18n/ar.json
new file mode 100644
index 00000000..42beea35
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ar.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "OsamaK"
+ ]
+ },
+ "imagemap_desc": "يسمح بخرائط صور قابلة للضغط عليها من طرف العميل باستخدام وسم <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "خطأ: يجب تحديد صورة في السطر الأول",
+ "imagemap_invalid_image": "خطأ: الصورة غير صحيحة أو غير موجودة",
+ "imagemap_bad_image": "خطأ: الصورة في القائمة السوداء على هذه الصفحة",
+ "imagemap_no_link": "خطأ: لم يتم العثور على وصلة صحيحة في نهاية السطر $1",
+ "imagemap_invalid_title": "خطأ: عنوان غير صحيح في الوصلة عند السطر $1",
+ "imagemap_missing_coord": "خطأ: إحداثيات غير كافية للشكل عند السطر $1",
+ "imagemap_unrecognised_shape": "خطأ: شكل غير معروف عند السطر $1، كل سطر يجب أن يبدأ بواحد من: <code>default</code>، <code>rect</code>، <code>circle</code> أو <code>poly</code>",
+ "imagemap_invalid_coord": "خطأ: إحداثي غير صحيح عند السطر $1، يجب أن يكون رقما",
+ "imagemap_invalid_desc": "خطأ: محدد وصف غير صحيح، يجب أن يكون واحدا من: <code>$1</code>",
+ "imagemap_description": "عن هذه الصورة",
+ "imagemap_desc_types": "أعلى اليمين, أسفل اليمين, أسفل اليسار, أعلى اليسار, لا شيء",
+ "imagemap_poly_odd": "خطأ: تم العثور على مضلع بعدد فردي من الأضلاع في السطر $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/arz.json b/www/wiki/extensions/ImageMap/i18n/arz.json
new file mode 100644
index 00000000..783cfa1a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/arz.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "Ramsis II"
+ ]
+ },
+ "imagemap_desc": "بيسمح بخرايط صور قابلة للضغط عليها من طرف العميل باستخدام تاج <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "غلط: لازم تحدد صورة فى السطر الاولانى.",
+ "imagemap_invalid_image": "غلط:الصورة مش صحيحة او مش موجودة",
+ "imagemap_bad_image": "غلط: الصورة فى البلاك ليست بتاعة الصفحة دى",
+ "imagemap_no_link": "$1 غلط:مفيش لينك شغالة فى اخر السطر",
+ "imagemap_invalid_title": "غلط:عنوان مش صحيح فى اللينك عند السطر$1",
+ "imagemap_missing_coord": "غلط: إحداثيات مش كافية للشكل عند السطر $1",
+ "imagemap_unrecognised_shape": "غلط:شكل مش معروف عند السطر$1، كل سطر لازم يبتدى بواحد من دول: <code>default</code>, <code>rect</code>, <code>circle</code> او <code>poly</code>",
+ "imagemap_invalid_coord": "غلط:احداثى مش صحيح عند السطر $1, لازم يكون رقم",
+ "imagemap_invalid_desc": "غلط: محدد وصف مش صحيح, لازم يكون واحد من دول: <code>$1</code>",
+ "imagemap_description": "عن الصورة دي",
+ "imagemap_desc_types": "اليمين من فوق،اليمين من تحت،الشمال من تحت،الشمال من فوق، ولا حاجة",
+ "imagemap_poly_odd": "خطأ: تم العثور على مضلع بعدد فردى من الأضلاع فى السطر $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/as.json b/www/wiki/extensions/ImageMap/i18n/as.json
new file mode 100644
index 00000000..4c6dec70
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/as.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bishnu Saikia",
+ "Gitartha.bordoloi"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> টেগ্‌ ব্যৱহাৰ কৰি ক্লায়েণ্ট-চাইড ক্লিকেবল্‌ ইমেজ্‌ মেপৰ অনুমতি দিয়ে",
+ "imagemap_no_image": "ত্ৰুটী: প্ৰথম শাৰীত এখন ছবি নিৰ্দিষ্ট কৰিবই লাগিব",
+ "imagemap_invalid_image": "ত্ৰুটী: ছবিখন অবৈধ বা ছবিখন নাই",
+ "imagemap_bad_image": "ত্ৰুটী: এই পৃষ্ঠাত ছবিখন ব্লেকলিষ্টেড কৰা হৈছে।",
+ "imagemap_no_link": "ত্ৰুটী: $1 শাৰীৰ শেষত কোনো বৈধ লিংক পোৱা নগ'ল",
+ "imagemap_invalid_title": "ত্ৰুটী: $1 শাৰীত থকা লিংকৰ শিৰোনাম অবৈধ",
+ "imagemap_missing_coord": "ত্ৰুটী: $1 শাৰীত আকৃতিৰ বাবে যথেষ্ট স্থানাংক নাই",
+ "imagemap_unrecognised_shape": "ত্ৰুটী: $1 শাৰীত অজ্ঞাত আকৃতি আছে, প্ৰতিটো শাৰী এইকেইটাৰ এটাৰে আৰম্ভ হ'ব লাগিব: <code>default</code>, <code>rect</code>, <code>circle</code> বা <code>poly</code>",
+ "imagemap_invalid_coord": "ত্ৰুটী: $1 শাৰীত থকা স্থানাংক অবৈধ, ই এটা সংখ্যা হ'বই লাগিব",
+ "imagemap_invalid_desc": "ত্ৰুটী: অবৈধ desc বিৱৰণ, ই ইয়াৰে এটা হ'ব লাগিব: <code>$1</code>",
+ "imagemap_description": "এই ছবিখনৰ বিষয়ে",
+ "imagemap_poly_odd": "ত্ৰুটী: $1 শাৰীত অযৌগ স্থানাংক সংখ্যাৰে poly পোৱা গৈছে"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ast.json b/www/wiki/extensions/ImageMap/i18n/ast.json
new file mode 100644
index 00000000..e1036db0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ast.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Esbardu",
+ "Xuacu"
+ ]
+ },
+ "imagemap_desc": "Permite nel llau del cliente los mapes d'imaxe que se puen calcar usando la etiqueta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: ha especificase una imaxe na primer llinia",
+ "imagemap_invalid_image": "Error: la imaxe nun ye válida o nun esiste",
+ "imagemap_bad_image": "Error: La imaxe ta na llista prieta d'esta páxina",
+ "imagemap_no_link": "Error: atopóse un enllaz non válidu a lo cabero la llinia $1",
+ "imagemap_invalid_title": "Error: títulu non válidu nel enllaz de la llinia $1",
+ "imagemap_missing_coord": "Error: nun hai abondes coordenaes pa formar la figura de la llinia $1",
+ "imagemap_unrecognised_shape": "Error: figura non reconocida na llinia $1, cada llinia ha empecipiar con dalguna d'estes: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>.",
+ "imagemap_invalid_coord": "Error: coordenada non válida en llinia $1, ha ser un númberu",
+ "imagemap_invalid_desc": "Error: parámetru 'desc' non válidu, ha ser ún d'estos: <code>$1</code>",
+ "imagemap_description": "Tocante a esta imaxe",
+ "imagemap_poly_odd": "Error: atopóse un polígonu con un númberu impar de coordenaes na llinia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/az.json b/www/wiki/extensions/ImageMap/i18n/az.json
new file mode 100644
index 00000000..144600af
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/az.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vago"
+ ]
+ },
+ "imagemap_desc_types": "yuxarı-sağ, aşağı-sağ, aşağı-sol, yuxarı-sol, heç nə"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/azb.json b/www/wiki/extensions/ImageMap/i18n/azb.json
new file mode 100644
index 00000000..af77f908
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/azb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amir a57"
+ ]
+ },
+ "imagemap_description": "شکیله گوره"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ba.json b/www/wiki/extensions/ImageMap/i18n/ba.json
new file mode 100644
index 00000000..6972063b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ba.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> билдәһе ярҙамында килент яғында баҫмалы рәсемдәр картаһын күрһатеү мөмкинлеген бирә",
+ "imagemap_no_image": "Хата: беренсе юлда рәсем билдәләнгән булырға тейеш",
+ "imagemap_invalid_image": "Хата: рәсем дөрөҫ түгел йәки юҡ",
+ "imagemap_bad_image": "Хата: рәсем был биттә ҡара исемлеккә керә",
+ "imagemap_no_link": "Хата: $1 юлының аҙағында һылтанма дөрөҫ түгел",
+ "imagemap_invalid_title": "Хата: $1 юлында һылтанманың исеме дөрөҫ түгел",
+ "imagemap_missing_coord": "Хата: $1 юлында фигура өсөн координаталар етмәй",
+ "imagemap_unrecognised_shape": "Хата: $1 юлында танылмаған фигура, һәр юл <code>default</code>, <code>rect</code>, <code>circle</code> йәки <code>poly</code> асҡыс һүҙҙәренең береһе менән башланырға тейеш",
+ "imagemap_invalid_coord": "Хата: $1 юлында координата дөрөҫ түгел, һан булырға тейеш",
+ "imagemap_invalid_desc": "Хата: desc дөрөҫ күрһәтелмәгән, түбәндәгеләрҙең береһе булырға тейеш: <code>$1</code>",
+ "imagemap_description": "Рәсем тураһында",
+ "imagemap_poly_odd": "Хата: $1 юлындағы күпмөйөштөң координаталар һаны — таҡ һан"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bcc.json b/www/wiki/extensions/ImageMap/i18n/bcc.json
new file mode 100644
index 00000000..08354b82
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bcc.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mostafadaneshvar"
+ ]
+ },
+ "imagemap_desc": "اجازت دن استفاده چه برچسپ<code>&lt;imagemap&gt;</code>نقشه یان تصاویر کلیکی کاربر-جهت",
+ "imagemap_no_image": "&lt;imagemap&gt;: بایدن یک تصویری ته خط اول مشخص کنیت",
+ "imagemap_invalid_image": "&lt;imagemap&gt;: عکس نامعتبر یا موجود نهنت",
+ "imagemap_no_link": "&lt;imagemap&gt;: هچ معتبرین لینکی ته آهر خط$1پیداگ نه بوت",
+ "imagemap_invalid_title": "&lt;imagemap&gt;: نامعتبراین عنوان ته لینک ته خط $1",
+ "imagemap_missing_coord": "&lt;imagemap&gt;: کافی ان هماهنگی په شکل نیست ته خط $1",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt;: ناشناسین شکل ته خط $1، هر خط بایدن گون یکی چه شان شروه بیت:پیشفرض،مربع, گردیم یا باز",
+ "imagemap_invalid_coord": "&lt;imagemap&gt;: نامعتبراین هماهنگی ته خطا $1, بایدن یک شماره بیت",
+ "imagemap_invalid_desc": "&lt;imagemap&gt;: نامعتبراین مشخصه ای توضیح، بایدن یکی چه شان بیت: <code>$1</code>",
+ "imagemap_description": "ای عکسء باره"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bcl.json b/www/wiki/extensions/ImageMap/i18n/bcl.json
new file mode 100644
index 00000000..40262d8e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bcl.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Filipinayzd",
+ "Geopoet"
+ ]
+ },
+ "imagemap_desc": "Minatugot sa lado nin kliyente an puwedeng ma-klik na mga imahe nin mapa na ginagamit an <code>&lt;imagemap&gt;</code> na tatak",
+ "imagemap_no_image": "Kasalaan:Kaipuhan isambit an imahe sa enot na linya.",
+ "imagemap_invalid_image": "Kasalaan: An imahe imbalido o bakong eksistido.",
+ "imagemap_bad_image": "Kasalaan:An imahe pinagbawal sa pahinang ini.",
+ "imagemap_no_link": "Kasalaan:Mayo nin balidong sugpon an manumpungan sa tapos kan linya na $1.",
+ "imagemap_invalid_title": "Kasalaan:Imbalido an titulo na yaon sa sugpon sa linya na $1.",
+ "imagemap_missing_coord": "Kasalaan:Bakong supisiyente an mga koordinato para sa kahitsurahan kan linya $1.",
+ "imagemap_unrecognised_shape": "Kasalaan: Bakong rekonosido an kahitsurahan sa linya $1, an lambang linya kaipong magpoon na igwang saro kan: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>.",
+ "imagemap_invalid_coord": "Kasalaan:Imbalidong koordinato sa linya $1, kaipohan na sarong numero.",
+ "imagemap_invalid_desc": "Kasalaan: Imbalido an deskripsyon nin espesipikasyon, kaipohan na saro sa:<code>$1</code>.",
+ "imagemap_description": "Manónongod sa retratong ini",
+ "imagemap_poly_odd": "Kasalaan:Nanumpungan an poli na igwang butal na numero kan koordinato sa may linya na $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/be-tarask.json b/www/wiki/extensions/ImageMap/i18n/be-tarask.json
new file mode 100644
index 00000000..a9254006
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/be-tarask.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by",
+ "Red Winged Duck"
+ ]
+ },
+ "imagemap_desc": "Дазваляе стварэньне на старонцы кліента мапаў выявы з выкарыстаньнем тэгу <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Памылка: у першым радку мусіць быць пазначаная выява",
+ "imagemap_invalid_image": "Памылка: няслушная выява альбо яна не існуе",
+ "imagemap_bad_image": "Памылка: выява на гэтай старонцы ўваходзіць у чорны сьпіс",
+ "imagemap_no_link": "Памылка: ня знойдзеная слушная спасылка ў канцы радку $1",
+ "imagemap_invalid_title": "Памылка: няслушная назва ў спасылцы ў радку $1",
+ "imagemap_missing_coord": "Памылка: недастаткова каардынатаў для фігуры ў радку $1",
+ "imagemap_unrecognised_shape": "Памылка: нераспазнаная фігура ў радку $1, кожны радок павінен пачынацца з: <code>default</code>, <code>rect</code>, <code>circle</code> ці <code>poly</code>",
+ "imagemap_invalid_coord": "Памылка: няправільная каардыната ў радку $1, павінна быць лічба",
+ "imagemap_invalid_desc": "Памылка: няслушнае значэньне desc, павінна быць адно з: <code>$1</code>",
+ "imagemap_description": "Апісаньне выявы",
+ "imagemap_poly_odd": "Памылка: у радку $1 знойдзены шматкутнік зь няцотнай колькасьцю каардынатаў"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bg.json b/www/wiki/extensions/ImageMap/i18n/bg.json
new file mode 100644
index 00000000..46299f5f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bg.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Spiritia",
+ "StanProg"
+ ]
+ },
+ "imagemap_no_image": "Грешка: трябва да се укаже изображение на първия ред.",
+ "imagemap_invalid_image": "Грешка: невалидно или липсващо изображение.",
+ "imagemap_bad_image": "Грешка: има забрана за включване на изображението в тази страница.",
+ "imagemap_no_link": "Грешка: липсва валидна препратка в края на ред $1.",
+ "imagemap_invalid_title": "Грешка: невалидно заглавие в препратка на ред $1.",
+ "imagemap_missing_coord": "Грешка: недостатъчно координати за фигура на ред $1.",
+ "imagemap_unrecognised_shape": "Грешка: неразпозната фигура на ред $1; всеки ред трябва да са започва с някое от следните: <code>default</code> (по подразбиране), <code>rect</code> (правоъгълник), <code>circle</code> (кръг) или <code>poly</code> (многоъгълник).",
+ "imagemap_invalid_coord": "Грешка: невалидна координата на ред $1, трябва да бъде число.",
+ "imagemap_invalid_desc": "Грешка: невалидна спецификация на описанието (desc), което трябва да бъде някое от следните: <code>$1</code>.",
+ "imagemap_description": "Информация за изображението",
+ "imagemap_poly_odd": "Грешка: открит е многоъгълник (poly) с нечетен брой координати на ред $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bjn.json b/www/wiki/extensions/ImageMap/i18n/bjn.json
new file mode 100644
index 00000000..23c57ad3
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bjn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alamnirvana"
+ ]
+ },
+ "imagemap_invalid_coord": "Nyunyuk: koordinat kada sah pada baris ka $1, musti barupa angka"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bn.json b/www/wiki/extensions/ImageMap/i18n/bn.json
new file mode 100644
index 00000000..a78f116d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bn.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bellayet"
+ ]
+ },
+ "imagemap_no_image": "ত্রুটি:প্রথম লাইনে অবশ্যই একটি চিত্র নির্দিষ্ট করতে হবে",
+ "imagemap_invalid_image": "ত্রুটি:চিত্রটি সঠিক নয় অথবা চিত্রটি নাই",
+ "imagemap_bad_image": "ত্রুটি:এই পাতায় ছবি কালতালিকাভুক্ত করা হয়েছে",
+ "imagemap_no_link": "ত্রুটি:লাইন নম্বর $1 এ শেষ কোন সঠিক লিঙ্ক পাওয়া যায় নি",
+ "imagemap_invalid_title": "ত্রুটি:লাইন নম্বর $1 এ লিঙ্কে সঠিক শিরোনাম নাই",
+ "imagemap_missing_coord": "ত্রুটি:লাইন নম্বর $1 এ আকারের জন্য যথেষ্ট স্থানাংক নাই",
+ "imagemap_invalid_coord": "ত্রুটি:লাইন নম্বর $1 এ স্থানাংক সঠিক নয়, তা অবশ্যই সংখ্যা হবে",
+ "imagemap_description": "এই চিত্র সম্পর্কে"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bo.json b/www/wiki/extensions/ImageMap/i18n/bo.json
new file mode 100644
index 00000000..63fc54ff
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Freeyak"
+ ]
+ },
+ "imagemap_description": "བརྙན་རིས་འདིའི་སྐོར།"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/br.json b/www/wiki/extensions/ImageMap/i18n/br.json
new file mode 100644
index 00000000..6d8697fa
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/br.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup"
+ ]
+ },
+ "imagemap_desc": "Aotren a ra ar c'hartennoù skeudennoù arval klikadus, a-drugarez d'an dikedenn <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: rankout a rit spisaat ur skeudenn el linenn gentañ",
+ "imagemap_invalid_image": "Error : direizh eo ar skeudenn pe n'eus ket anezhi",
+ "imagemap_bad_image": "Fazi : emañ ar skeudenn war al listenn zu evit ar bajenn-mañ",
+ "imagemap_no_link": "Error: n'eus bet kavet liamm reizh ebet e dibenn al linenn $1",
+ "imagemap_invalid_title": "Error: titl direizh el liamm el linenn $1",
+ "imagemap_missing_coord": "Error: diouer a zaveennoù zo evit stumm al linenn $1",
+ "imagemap_unrecognised_shape": "Fazi : Furm dianav el linenn $1, rankout a ra pep linenn kregiñ gant unan eus ar gerioù-mañ : <code>default</code>, <code>rect</code>, <code>circle</code> pe <code>poly</code>",
+ "imagemap_invalid_coord": "Fazi : daveenn fall el linenn $1, ret eo e vije un niver",
+ "imagemap_invalid_desc": "Fazi : arventenn desc direizh; setu an arventennoù aotreet : <code>$1</code>",
+ "imagemap_description": "Diwar-benn ar skeudenn-mañ",
+ "imagemap_poly_odd": "Fazi : kavet ez eus ul lieskorn dezhañ un niver daveennoù ampar el linenn $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/bs.json b/www/wiki/extensions/ImageMap/i18n/bs.json
new file mode 100644
index 00000000..0b72df4e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/bs.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator"
+ ]
+ },
+ "imagemap_desc": "Omogućuje mape slika na klijentskom računaru koje se mogu kliknuti koristeći oznaku <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Greška: morate odrediti sliku u prvom redu",
+ "imagemap_invalid_image": "Greška: slika je nevaljana ili ne postoji",
+ "imagemap_bad_image": "Greška: slika je nepoželjna na ovoj stranici",
+ "imagemap_no_link": "Greška: nije pronađen valjan link na kraju reda $1",
+ "imagemap_invalid_title": "Greška: nevaljan naslov u linku u redu $1",
+ "imagemap_missing_coord": "Greška: nema dovoljno koordinata za iscrtavanje u redu $1",
+ "imagemap_unrecognised_shape": "Greška: neprepoznat oblik u redu $1, svaki red mora počinjati sa jednim od: <code>default</code>, <code>rect</code>, <code>circle</code> ili <code>poly</code>",
+ "imagemap_invalid_coord": "Greška: nevaljane koordinate u redu $1, treba biti broj",
+ "imagemap_invalid_desc": "Greška: nevaljana specifikacija opisa, mora biti jedan od: <code>$1</code>",
+ "imagemap_description": "O ovoj slici",
+ "imagemap_desc_types": "gore-desno, dolje-desno, dolje-lijevo, gore-lijevo, nema",
+ "imagemap_poly_odd": "Greška: pronađen poly sa neparnim brojem koordinata u redu $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ca.json b/www/wiki/extensions/ImageMap/i18n/ca.json
new file mode 100644
index 00000000..4038a62c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ca.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "SMP",
+ "Toniher"
+ ]
+ },
+ "imagemap_desc": "Permet mapes d'imatges clicables des del costat del client fent servir l'etiqueta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: cal especificar una imatge en la primera línia",
+ "imagemap_invalid_image": "Error: la imatge no es vàlida o no existeix",
+ "imagemap_bad_image": "Error: la imatge està en la llista negra",
+ "imagemap_no_link": "Error: no s'ha trobat cap enllaç vàlid al final de la línia $1",
+ "imagemap_invalid_title": "Error: el títol no és vàlid a l'enllaç de la línia $1",
+ "imagemap_missing_coord": "Error: no hi ha coordenades suficients per a la forma de la línia $1",
+ "imagemap_unrecognised_shape": "Error: la forma de la línia $1 no és reconeixible, cada línia ha de començar amb una de les opcions següents: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>",
+ "imagemap_invalid_coord": "Error: la coordenada a la línia $1 no és vàlida, ha de ser un nombre",
+ "imagemap_invalid_desc": "Error: l'especificació de descripció no és vàlida, ha de ser una de: <code>$1</code>",
+ "imagemap_description": "Quant a la imatge",
+ "imagemap_poly_odd": "Error: poly amb un nombre senar de coordenades a la línia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ce.json b/www/wiki/extensions/ImageMap/i18n/ce.json
new file mode 100644
index 00000000..1158f71c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ce.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sasan700",
+ "Умар"
+ ]
+ },
+ "imagemap_desc": "Таро хуьлуьйту картан суьрта таӀийча латораш билгалдан <code>&lt;imagemap&gt;</code> теган гӀуьнца",
+ "imagemap_invalid_image": "ГӀалат: нийса доцу я доцуш долу сурт",
+ "imagemap_no_link": "ГӀалат: $1 могӀанан чаккхехь нийса йоцу хьажорг ю",
+ "imagemap_invalid_title": "ГӀалат: могӀана $1 хьажориган корта нийса яц",
+ "imagemap_description": "Суьртах лаьцна"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/co.json b/www/wiki/extensions/ImageMap/i18n/co.json
new file mode 100644
index 00000000..49f49ee3
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/co.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "imagemap_description": "À prupositu d'issa imagine"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/cs.json b/www/wiki/extensions/ImageMap/i18n/cs.json
new file mode 100644
index 00000000..6a398248
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/cs.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Li-sung",
+ "Mormegil"
+ ]
+ },
+ "imagemap_desc": "Umožňuje vytvoření klikací mapy obrázku na straně klienta pomocí značky <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: na první řádce musí být určen obrázek",
+ "imagemap_invalid_image": "Error: soubor není platný nebo neexistuje",
+ "imagemap_bad_image": "Chyba: obrázek se nachází na černé listině",
+ "imagemap_no_link": "Error: nebyl nalezen žádný platný odkaz na konci řádku $1",
+ "imagemap_invalid_title": "Error: neplatný název v odkazu na řádku $1",
+ "imagemap_missing_coord": "Error: chybějící souřadnice tvaru na řádku $1",
+ "imagemap_unrecognised_shape": "Error: nerozpoznaný tvar na řádku $1, každá řádka musí začínat definicí tvaru: <code>default</code>, <code>rect</code>, <code>circle</code> nebo <code>poly</code>",
+ "imagemap_invalid_coord": "Error: neplatné souřadnice na řádku $1, je očekáváno číslo",
+ "imagemap_invalid_desc": "Error: neplatné určení oblasti desc, je očekávána jedna z možností: <code>$1</code>",
+ "imagemap_description": "O tomto obrázku",
+ "imagemap_poly_odd": "Chyba: na řádku $1 nalezen mnohoúhelník s lichým počtem souřadnic"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/cy.json b/www/wiki/extensions/ImageMap/i18n/cy.json
new file mode 100644
index 00000000..104c3961
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/cy.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "imagemap_no_image": "Gwall: Rhaid nodi delwedd yn y llinell gyntaf.",
+ "imagemap_invalid_image": "Gwall: Nid yw'r ddelwedd yn ddilys, neu nid yw'n bod.",
+ "imagemap_bad_image": "Gwall: Mae'r ddelwedd wedi ei gwahardd rhag ei defnyddio ar y dudalen hon.",
+ "imagemap_no_link": "Gwall: Ni chafwyd unrhyw gyswllt dilys ar ddiwedd y llinell $1.",
+ "imagemap_invalid_title": "Gwall: Teitl annilys yn y cyswllt ar linell $1.",
+ "imagemap_description": "Ynglŷn â'r ddelwedd hon"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/da.json b/www/wiki/extensions/ImageMap/i18n/da.json
new file mode 100644
index 00000000..ebf682d8
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/da.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Peter Alberti",
+ "Tjernobyl"
+ ]
+ },
+ "imagemap_desc": "Muliggør klikbare billeder med brug af <code>&lt;imagemap&gt;</code>-tagget.",
+ "imagemap_no_image": "Fejl: Der skal angives et billede i første linje",
+ "imagemap_invalid_image": "Fejl: Billedet er ugyldigt eller findes ikke",
+ "imagemap_bad_image": "Fejl: billedet er sortlistet på denne side",
+ "imagemap_no_link": "Fejl: Fandt ikke en brugbar henvisning i slutningen af linje $1",
+ "imagemap_invalid_title": "Fejl: Ugyldig titel i henvisning på linje $1",
+ "imagemap_missing_coord": "Fejl: Ikke nok koordinater til omridset på linje $1",
+ "imagemap_unrecognised_shape": "Fejl: Ukendt omridstype på linje $1. Alle linjer skal starte med enten <code>default</code>, <code>rect</code>, <code>circle</code> eller <code>poly</code>",
+ "imagemap_invalid_coord": "Fejl: Ugyldigt koordinat på linje $1, koordinater skal være tal",
+ "imagemap_invalid_desc": "Fejl: Ugyldig specifikation af desc, skal være en af: <code>$1</code>",
+ "imagemap_description": "Om dette billede",
+ "imagemap_desc_types": "top-højre, bund-højre, bund-venstre, top-venstre, ingen",
+ "imagemap_poly_odd": "Fejl: fandt polygon med et ulige antal koordinater på linje $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/de.json b/www/wiki/extensions/ImageMap/i18n/de.json
new file mode 100644
index 00000000..edbcc796
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/de.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "LWChris",
+ "Raimond Spekking",
+ "Umherirrender"
+ ]
+ },
+ "imagemap_desc": "Ergänzt das Tag <code>&lt;imagemap&gt;</code> zum Erstellen verweissensitiver Grafiken",
+ "imagemap_no_image": "&lt;imagemap&gt;-Fehler: In der ersten Zeile muss ein Bild angegeben werden",
+ "imagemap_invalid_image": "&lt;imagemap&gt;-Fehler: Bild ist ungültig oder nicht vorhanden",
+ "imagemap_bad_image": "Fehler: Das Bild steht auf der Liste unerwünschter Bilder",
+ "imagemap_no_link": "&lt;imagemap&gt;-Fehler: Am Ende von Zeile $1 wurde kein gültiger Link gefunden",
+ "imagemap_invalid_title": "&lt;imagemap&gt;-Fehler: ungültiger Titel im Link in Zeile $1",
+ "imagemap_missing_coord": "&lt;imagemap&gt;-Fehler: Zu wenige Koordinaten in Zeile $1 für den Umriss",
+ "imagemap_unrecognised_shape": "Fehler: Es befindet sich eine unbekannte Umrissform in Zeile $1. Jede Zeile muss mit einem der folgenden Parameter anfangen: <code>default</code>, <code>rect</code>, <code>circle</code> oder <code>poly</code>",
+ "imagemap_invalid_coord": "&lt;imagemap&gt;-Fehler: Ungültige Koordinate in Zeile $1: es sind nur Zahlen erlaubt",
+ "imagemap_invalid_desc": "&lt;imagemap&gt;-Fehler: Ungültiger „desc“-Parameter, möglich sind: <code>$1</code>",
+ "imagemap_description": "Über dieses Bild",
+ "imagemap_desc_types": "oben rechts, unten rechts, unten links, oben links, keine",
+ "imagemap_poly_odd": "Fehler: Polygon mit ungerader Anzahl an Koordinaten in Zeile $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/diq.json b/www/wiki/extensions/ImageMap/i18n/diq.json
new file mode 100644
index 00000000..c5eafd2a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/diq.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aspar",
+ "Mirzali"
+ ]
+ },
+ "imagemap_desc": "pê şuxulnayişê etiketê <code>&lt;imagemap&gt;</code>i destur dano gırewtox xeritayê resmi bıtıkın",
+ "imagemap_no_image": "xeta: şıma gani satıro ewwil de yew resm nişan bıkeri",
+ "imagemap_invalid_image": "Xeta: resım ya çıniyo ya zi meqbul niyo.",
+ "imagemap_bad_image": "Xeta: Resım na pele de biyo qereliste.",
+ "imagemap_no_link": "xeta: peyniyê satıro $1. de yew gıreyo meqbul çino.",
+ "imagemap_invalid_title": "xeta:satıro $1. de gıre de sernameyo nemeqbul esto.",
+ "imagemap_missing_coord": "xeta:satıro $1. de qey şekli koordinat tayê",
+ "imagemap_unrecognised_shape": "Xeta: Rêza $1 de şeklo nênaskerde esto, her rêza gani be ninan ra yewe ra dest pêkero: <code>default</code>, <code>rect</code>, <code>circle</code> ya zi <code>poly</code>",
+ "imagemap_invalid_coord": "xeta: satıro $1. de koordinato nemeqbul, gani yew amar bıbo",
+ "imagemap_invalid_desc": "xeta: diyarikerdışê desci yo nemeqbul, gani ninan ra yew bıbo: <code>$1</code>",
+ "imagemap_description": "Heqa nê resımi de",
+ "imagemap_poly_odd": "xeta: satıro $1. de poliyo ke wayirê yew koordinat diya"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/dsb.json b/www/wiki/extensions/ImageMap/i18n/dsb.json
new file mode 100644
index 00000000..08176857
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/dsb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "imagemap_desc": "Zmóžnja klikajobne wobraze wót boka klienta z pomocu toflicki <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Zmólka: musyš wobraz w prědnej zmužce pódaś",
+ "imagemap_invalid_image": "Zmólka: wobraz jo njepłaśiwy abo njeeksistěrujo",
+ "imagemap_bad_image": "Zmólka: wobraz stoj na cornej lisćinje",
+ "imagemap_no_link": "Zmólka: žeden płaśiwy wótkaz na kóńcu smužki $1 namakany",
+ "imagemap_invalid_title": "Zmólka: njepłaśiwy titel we wótkazu w smužce $1",
+ "imagemap_missing_coord": "Zmólka: nic dosć koordinatow za formu w smužce $1",
+ "imagemap_unrecognised_shape": "Zmólka: njespóznata forma w smužce $1, kužda smužka musy se z jadnym z toś tych parametrow zachopiś: <code>default</code>, <code>rect</code>, <code>circle</code> abo <code>poly</code>",
+ "imagemap_invalid_coord": "Zmólka: njepłaśiwa koordinata w smužce $1, musy to licba byś",
+ "imagemap_invalid_desc": "Zmólka: njepłaśiwy parameter \"desc\", móžno su: <code>$1</code>",
+ "imagemap_description": "Wó toś tom wobrazu",
+ "imagemap_poly_odd": "Zmólka: polygon z njerowneju licbu koordinatow w smužce $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/el.json b/www/wiki/extensions/ImageMap/i18n/el.json
new file mode 100644
index 00000000..ea5e7848
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/el.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Consta",
+ "Dead3y3"
+ ]
+ },
+ "imagemap_desc": "Επιτρέπει από την πλευρά-του-πελάτη επιλέξιμους εικονοχάρτες χρησιμοποιώντας την ετικέτα <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Σφάλμα: πρέπει να ορίσετε μια εικόνα στην πρώτη γραμμή",
+ "imagemap_invalid_image": "Σφάλμα: η εικόνα είναι άκυρη ή ανύπαρκτη",
+ "imagemap_bad_image": "Σφάλμα: η εικόνα βρίσκεται στη μαύρη λίστα σε αυτή τη σελίδα",
+ "imagemap_no_link": "Σφάλμα: δεν βρέθηκε κανένας έγκυρος σύνδεσμος στο τέλος της γραμμής $1",
+ "imagemap_invalid_title": "Σφάλμα: άκυρος τίτλος σε σύνδεσμο στη γραμμή $1",
+ "imagemap_missing_coord": "Σφάλμα: όχι αρκετές συντεταγμένες για σχήμα στη γραμμή $1",
+ "imagemap_unrecognised_shape": "Σφάλμα: μη αναγνωρίσιμο σχήμα στη γραμμή $1, κάθε γραμμή πρέπει να αρχίζει με μία από τις λέξεις: <code>default</code>, <code>rect</code>, <code>circle</code> ή <code>poly</code>",
+ "imagemap_invalid_coord": "Σφάλμα: άκυρη συντεταγμένη στη γραμμή $1, πρέπει να είναι αριθμός",
+ "imagemap_invalid_desc": "Σφάλμα: άκυρος ορισμός desc, πρέπει να είναι ένας από τους: <code>$1</code>",
+ "imagemap_description": "Σχετικά με αυτήν την εικόνα",
+ "imagemap_poly_odd": "Σφάλμα: βρέθηκε πολύγωνο με περιττό αριθμό συντεταγμένων στη γραμμή $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/en-gb.json b/www/wiki/extensions/ImageMap/i18n/en-gb.json
new file mode 100644
index 00000000..8579df10
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/en-gb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki"
+ ]
+ },
+ "imagemap_unrecognised_shape": "Error: Unrecognised shape at line $1, each line must start with one of: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>."
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/en.json b/www/wiki/extensions/ImageMap/i18n/en.json
new file mode 100644
index 00000000..c396853a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/en.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tim Starling"
+ ]
+ },
+ "imagemap_desc": "Allows client-side clickable image maps using <code>&lt;imagemap&gt;</code> tag",
+ "imagemap_no_image": "Error: Must specify an image in the first line.",
+ "imagemap_invalid_image": "Error: Image is invalid or non-existent.",
+ "imagemap_bad_image": "Error: Image is blacklisted on this page.",
+ "imagemap_no_link": "Error: No valid link was found at the end of line $1.",
+ "imagemap_invalid_title": "Error: Invalid title in link at line $1.",
+ "imagemap_missing_coord": "Error: Not enough coordinates for shape at line $1.",
+ "imagemap_unrecognised_shape": "Error: Unrecognized shape at line $1, each line must start with one of: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>.",
+ "imagemap_invalid_coord": "Error: Invalid coordinate at line $1, must be a number.",
+ "imagemap_invalid_desc": "Error: Invalid desc specification, must be one of: <code>$1</code>.",
+ "imagemap_description": "About this image",
+ "imagemap_desc_types": "top-right, bottom-right, bottom-left, top-left, none",
+ "imagemap_poly_odd": "Error: Found poly with odd number of coordinates on line $1"
+} \ No newline at end of file
diff --git a/www/wiki/extensions/ImageMap/i18n/eo.json b/www/wiki/extensions/ImageMap/i18n/eo.json
new file mode 100644
index 00000000..828a5fd1
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/eo.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki",
+ "Yekrats"
+ ]
+ },
+ "imagemap_desc": "Permesas klientflankajn klakeblajn bildmapojn uzante etikedon <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Eraro: devas specifi bildon en la unua linio",
+ "imagemap_invalid_image": "Eraro: bildo estas aŭ malvalida aŭ neekzista",
+ "imagemap_bad_image": "Eraro: bildo estas nigralistigita en ĉi tiu paĝo",
+ "imagemap_no_link": "Eraro: neniu valida ligilo estis trovita ĉe fino de linio $1",
+ "imagemap_invalid_title": "Eraro: malvalida titolo en ligilo ĉe linio $1",
+ "imagemap_missing_coord": "Eraro: mankas sufiĉaj koordinatoj por formo ĉe linio $1",
+ "imagemap_unrecognised_shape": "Eraro: nekonata formo ĉe linio $1; ĉiu linio devas komenci kun unu el: <code>default</code>, <code>rect</code>, <code>circle</code> aŭ <code>poly</code>",
+ "imagemap_invalid_coord": "Eraro: Malvalida koordinato ĉe linio $1; ĝi nepre estu nombro",
+ "imagemap_invalid_desc": "Eraro: malvalida deklarado de desc, devas esti unu el: <code>$1</code>",
+ "imagemap_description": "Pri ĉi tiu bildo",
+ "imagemap_poly_odd": "Eraro: troviĝis poligono kun malpara nombro de koordinatoj en linio $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/es.json b/www/wiki/extensions/ImageMap/i18n/es.json
new file mode 100644
index 00000000..e6669d1e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/es.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "Drini",
+ "Remember the dot",
+ "Sanbec",
+ "Macofe"
+ ]
+ },
+ "imagemap_desc": "Permite ''image-maps'' dinámicos usando la etiqueta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: hay que especificar un imagen en la línea primera.",
+ "imagemap_invalid_image": "Error: la imagen no es válida o no existe.",
+ "imagemap_bad_image": "Error: la imagen esta en la lista negra en esta página",
+ "imagemap_no_link": "Error: no se encontró ningún enlace válido al final de la línea $1.",
+ "imagemap_invalid_title": "Error: título no válido en un enlace de la línea $1.",
+ "imagemap_missing_coord": "Error: no hay coordenadas suficientes para la figura en la línea $1.",
+ "imagemap_unrecognised_shape": "Error: figura no reconocida en la línea $1. Cada línea debe comenzar con uno de los siguientes: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Error: hay una coordenada no válida en la línea $1, debe ser un número",
+ "imagemap_invalid_desc": "Error: especificación de desc no válido, debe ser uno de: <code>$1</code>",
+ "imagemap_description": "Acerca de esta imagen",
+ "imagemap_poly_odd": "Error: se encontró un polígono con un número de coordenadas impar en la línea $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/et.json b/www/wiki/extensions/ImageMap/i18n/et.json
new file mode 100644
index 00000000..1368fcde
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/et.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Avjoska",
+ "Pikne",
+ "Silvar"
+ ]
+ },
+ "imagemap_desc": "Lubab kliendipoolse klõpsatava pildi ala, mis kasutab silti <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Tõrge: Esimesel real peab määrama pildi.",
+ "imagemap_invalid_image": "Tõrge: Pilt on vigane või teda pole olemas.",
+ "imagemap_bad_image": "Tõrge: Pilt on siin lehel mustas nimekirjas.",
+ "imagemap_no_link": "Tõrge: Rea $1 lõpust ei leitud sobivat linki",
+ "imagemap_invalid_title": "Tõrge: Real $1 lingis vigane pealkiri",
+ "imagemap_missing_coord": "Tõrge: Real $1 pole kujundi jaoks piisavalt koordinaate",
+ "imagemap_unrecognised_shape": "Tõrge: Real $1 on tundmatu kujund; rida peab algama ühega neist: <tt><code>default</code></tt>, <tt><code>rect</code></tt>, <tt><code>circle</code></tt> või <tt><code>poly</code></tt>.",
+ "imagemap_invalid_coord": "Tõrge: Real $1 on vigane koordinaat; see peab olema number",
+ "imagemap_invalid_desc": "Tõrge: Vigane \"desc\"-parameeter; peab olema üks järgmistest: <code>$1</code>",
+ "imagemap_description": "Info pildi kohta",
+ "imagemap_poly_odd": "Tõrge: Real $1 on polügoon paaritu arvu koordinaatidega."
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/eu.json b/www/wiki/extensions/ImageMap/i18n/eu.json
new file mode 100644
index 00000000..108edc0e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/eu.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Kobazulo"
+ ]
+ },
+ "imagemap_no_image": "Errorea: lehen lerroan irudia zehaztu behar da",
+ "imagemap_invalid_image": "Errorea: irudia baliogabea da edo ez da existitzen",
+ "imagemap_invalid_coord": "Errorea: baliogabeko koordenatua $1. lerroan, zenbaki bat izan behar du",
+ "imagemap_description": "Irudi honen inguruan"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ext.json b/www/wiki/extensions/ImageMap/i18n/ext.json
new file mode 100644
index 00000000..ba2ff72d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ext.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Better"
+ ]
+ },
+ "imagemap_description": "Al tentu esta imahin"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/fa.json b/www/wiki/extensions/ImageMap/i18n/fa.json
new file mode 100644
index 00000000..3d79330f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/fa.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio",
+ "Huji",
+ "ZxxZxxZ"
+ ]
+ },
+ "imagemap_desc": "امکان ایجاد نقشه‌های تصویری قابل کلیک کردن در سمت کاربر را با استفاده از برچسب <code>&lt;imagemap&gt;</code> فراهم می‌آورد",
+ "imagemap_no_image": "<imagemap>: باید در اولین سطر یک تصویر را مشخص کنید",
+ "imagemap_invalid_image": "<imagemap>: تصویر نامحاز است یا وجود ندارد",
+ "imagemap_bad_image": "خطا: تصویر در این صفحه در فهرست سیاه قرار دارد",
+ "imagemap_no_link": "خطا: هیچ پیوند مجازی در انتهای خط $1 یافت نشد",
+ "imagemap_invalid_title": "<imagemap>: عنوان نامجاز در پیوند سطر $1",
+ "imagemap_missing_coord": "<imagemap>: تعداد مختصات در سطر $1 برای شکل کافی نیست",
+ "imagemap_unrecognised_shape": "<imagemap>: شکل ناشناخته در سطر $1، هر سطر باید با یکی از این دستورات آغاز شود: <code>default</code>، <code>rect</code>، <code>circle</code> یا <code>poly</code>",
+ "imagemap_invalid_coord": "<imagemap>: مختصات نامجاز در سطر $1، مختصات باید عدد باشد",
+ "imagemap_invalid_desc": "<imagemap>: توضیحات نامجاز، باید یکی از این موارد باشد: <code>$1</code>",
+ "imagemap_description": "دربارهٔ این تصویر",
+ "imagemap_poly_odd": "خطا: چند ضلعی با تعداد فرعی از مختصات در سطر $1 پیدا شد"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/fi.json b/www/wiki/extensions/ImageMap/i18n/fi.json
new file mode 100644
index 00000000..b50dff98
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/fi.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agony",
+ "Nike",
+ "Str4nd",
+ "Tarmo"
+ ]
+ },
+ "imagemap_desc": "Mahdollistaa napsautettavien kuvakarttojen tekemisen <code>&lt;imagemap&gt;</code>-elementillä.",
+ "imagemap_no_image": "Error: kuva pitää määritellä ensimmäisellä rivillä.",
+ "imagemap_invalid_image": "Error: kuva ei kelpaa tai sitä ei ole olemassa",
+ "imagemap_bad_image": "Virhe: Kuva kuuluu sivuston estolistalle",
+ "imagemap_no_link": "Virhe: rivin $1 lopusta ei löytynyt kelvollista linkkiä",
+ "imagemap_invalid_title": "Virhe: kelvoton otsikko linkissä rivillä $1",
+ "imagemap_missing_coord": "Virhe: rivin $1 muodolle ei ole määritelty riittävästi koordinaatteja",
+ "imagemap_unrecognised_shape": "Virhe: rivin $1 muotoa ei tunnistettu. Jokaisen rivin tulee alkaa jollakin seuraavista: <code>default</code>, <code>rect</code>, <code>circle</code> tai <code>poly</code>.",
+ "imagemap_invalid_coord": "Error: kelpaamaton koordinaatti rivillä $1. Koordinaatin täytyy olla numero.",
+ "imagemap_invalid_desc": "Virhe: virheellinen kohdemäärittely, kohdemäärittelyn tulee olla yksi seuraavista: <code>$1</code>",
+ "imagemap_description": "Kuvan tiedot",
+ "imagemap_poly_odd": "Virhe: löytyi polygoni, jossa pariton määrä koordinaatteja rivillä $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/fo.json b/www/wiki/extensions/ImageMap/i18n/fo.json
new file mode 100644
index 00000000..870d7b80
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/fo.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "imagemap_no_image": "Feilur: tú mást skriva eitt myndanavn á fyrstu linju",
+ "imagemap_invalid_image": "Feilur: Myndin er ógyldug ella er ikki til",
+ "imagemap_bad_image": "Feilur: Myndin er á svartalista á hesi síðu",
+ "imagemap_no_link": "Feilur: ongin galdandi slóð var funnin fyri endan á linju $1",
+ "imagemap_invalid_title": "Feilur: skeivt heiti á leinkjuni á linju $1",
+ "imagemap_description": "Um hesa myndina"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/fr.json b/www/wiki/extensions/ImageMap/i18n/fr.json
new file mode 100644
index 00000000..93f49bea
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/fr.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Grondin",
+ "Urhixidur",
+ "Verdy p",
+ "Derugon"
+ ]
+ },
+ "imagemap_desc": "Permet les cartes images clientes cliquables, grâce à la balise <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "&lt;imagemap&gt; : vous devez spécifier une image dans la première ligne",
+ "imagemap_invalid_image": "&lt;imagemap&gt; : l’image est invalide ou n’existe pas",
+ "imagemap_bad_image": "&lt;imagemap&gt; : l’image est en liste noire sur cette page",
+ "imagemap_no_link": "&lt;imagemap&gt; : aucun lien valide n’a été trouvé à la fin de la ligne $1",
+ "imagemap_invalid_title": "&lt;imagemap&gt; : titre invalide dans le lien à la ligne $1",
+ "imagemap_missing_coord": "&lt;imagemap&gt; : pas assez de coordonnées pour la forme à la ligne $1",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt; : forme non reconnue à la ligne $1, chaque ligne doit débuter par un des mots suivants : <code>default</code>, <code>rect</code>, <code>circle</code> ou <code>poly</code>",
+ "imagemap_invalid_coord": "&lt;imagemap&gt; : coordonnée invalide à la ligne $1, doit être un nombre",
+ "imagemap_invalid_desc": "&lt;imagemap&gt; : paramètre « desc » invalide, les paramètres possibles sont : $1",
+ "imagemap_description": "À propos de cette image",
+ "imagemap_desc_types": "en haut à droite, en bas à droite, en bas à gauche, en haut à gauche, nulle part",
+ "imagemap_poly_odd": "Erreur : trouvé un polygone avec un nombre impair de coordonnées à la ligne $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/frp.json b/www/wiki/extensions/ImageMap/i18n/frp.json
new file mode 100644
index 00000000..eb268e04
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/frp.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "imagemap_desc": "Pèrmèt les mapes émâges cliantes clicâbles, grâce a la balisa <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Èrror : vos dête spècefiar una émâge dens la premiére legne",
+ "imagemap_invalid_image": "Èrror : l’émâge est envalida ou ben ègziste pas",
+ "imagemap_bad_image": "Èrror : l’émâge est en lista nêre sur ceta pâge",
+ "imagemap_no_link": "Èrror : nion lim valido at étâ trovâ a la fin de la legne $1",
+ "imagemap_invalid_title": "Èrror : titro envalido dens lo lim a la legne $1",
+ "imagemap_missing_coord": "Èrror : pas prod de coordonâs por la fôrma a la legne $1",
+ "imagemap_unrecognised_shape": "Èrror : fôrma pas recognua a la legne $1, châque legne dêt comenciér per yon de cetos mots : <code>default</code>, <code>rect</code>, <code>circle</code> ou ben <code>poly</code>",
+ "imagemap_invalid_coord": "Èrror : coordonâ envalida a la legne $1, dêt étre un nombro",
+ "imagemap_invalid_desc": "Èrror : paramètre « dèsc » envalido, los paramètres possiblos sont : <code>$1</code>",
+ "imagemap_description": "Sur ceta émâge",
+ "imagemap_desc_types": "d’amont a drêta, d’avâl a drêta, d’avâl a gôche, d’amont a gôche, nion",
+ "imagemap_poly_odd": "Èrror : trovâ un poligono avouéc un nombro mâl-par de coordonâs a la legne $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/gl.json b/www/wiki/extensions/ImageMap/i18n/gl.json
new file mode 100644
index 00000000..d484e735
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/gl.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alma",
+ "Toliño",
+ "Xosé"
+ ]
+ },
+ "imagemap_desc": "Permite mapas de imaxe nos que se pode facer clic usando a etiqueta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Erro: Cómpre especificar unha imaxe na primeira liña.",
+ "imagemap_invalid_image": "Erro: A imaxe non é válida ou non existe.",
+ "imagemap_bad_image": "Erro: A imaxe atópase na lista negra desta páxina.",
+ "imagemap_no_link": "Erro: Non se atopou ningunha ligazón válida ao final da liña $1.",
+ "imagemap_invalid_title": "Erro: Título incorrecto na ligazón da liña $1.",
+ "imagemap_missing_coord": "Erro: Non abondan as coordenadas para a forma na liña $1.",
+ "imagemap_unrecognised_shape": "Erro: Forma descoñecida na liña $1. Cada liña debe comezar con algunha das seguintes secuencias: <code>default</code>, <code>rect</code>, <code>circle</code> ou <code>poly</code>.",
+ "imagemap_invalid_coord": "Erro: Coordenada non válida na liña $1; debe ser un número.",
+ "imagemap_invalid_desc": "Erro: Especificación da descrición non válida. Os valores posibles son: <code>$1</code>.",
+ "imagemap_description": "Acerca desta imaxe",
+ "imagemap_desc_types": "arriba-dereita, abaixo-dereita, abaixo-esquerda, arriba-esquerda, ningunha",
+ "imagemap_poly_odd": "Erro: Atopouse un polígono cun número impar de coordenadas na liña $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/grc.json b/www/wiki/extensions/ImageMap/i18n/grc.json
new file mode 100644
index 00000000..7ee8a51e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/grc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omnipaedista"
+ ]
+ },
+ "imagemap_description": "Περὶ τῆσδε τῆς εἰκόνος"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/gsw.json b/www/wiki/extensions/ImageMap/i18n/gsw.json
new file mode 100644
index 00000000..14eac515
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/gsw.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Chlämens",
+ "Als-Holder"
+ ]
+ },
+ "imagemap_desc": "Macht s Aalege vu verwyys-sensitive Grafike ''(image maps)'' megli mit dr Hilf vu dr <code>&lt;imagemap&gt;</code>-Syntax",
+ "imagemap_no_image": "Fähler: in dr erschte Zyylete muess e Bild aagee wäre",
+ "imagemap_invalid_image": "Fähler: Bild ist nit giltig oder s git s nit",
+ "imagemap_bad_image": "Fähler: S Bild stoht uf dr Lischt vu nit gwinschte Bilder",
+ "imagemap_no_link": "Fähler: Am Änd vu Zyyle $1 isch kei giltige Link gfunde wore",
+ "imagemap_invalid_title": "Fähler: uugiltiger Titel im Link in dr Zyyle $1",
+ "imagemap_missing_coord": "Fähler: Z wenig Koordinate in dr Zyyle $1 fir dr Umriss",
+ "imagemap_unrecognised_shape": "Fähler: Nit bekannti Umrissform in dr Zyyle $1. Jedi Zyyle muess mit eim vu däne Parameter aafange: <tt><code>default</code>, <code>rect</code>, <code>circle</code></tt> oder <tt><code>poly</code></tt>",
+ "imagemap_invalid_coord": "Fähler: Uugiltigi Koordinate in dr Zyyle $1: s sin nume Zahle erlaubt",
+ "imagemap_invalid_desc": "Fähler: Uugiltige „desc“-Parameter, megli sin: <code>$1</code>",
+ "imagemap_description": "Iber des Bild",
+ "imagemap_poly_odd": "Fähler: Polygon mit ere uugrade Anzahl vu Koordinate in dr Zyyle $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/gu.json b/www/wiki/extensions/ImageMap/i18n/gu.json
new file mode 100644
index 00000000..fb6c7744
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/gu.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dsvyas",
+ "KartikMistry",
+ "Sushant savla"
+ ]
+ },
+ "imagemap_desc": "વપરાશ કર્તા (ક્લાયંટ સાઈડ) પર <code>&lt;imagemap&gt;</code> ટેગ વાપરી ક્લીક કરી શકાય તેવા ચિત્ર નક્શાની પરવાનગી આપે છે.",
+ "imagemap_no_image": "ત્રુટિ: પહેલી લીટીમાં ચિત્રની સ્પષ્ટાતા કરેલી હોવી જ જોઈએ",
+ "imagemap_invalid_image": "ત્રુટી: ચિત્ર યાતો અવૈધ છે અથવાતો અસ્તિત્વમાં નથી",
+ "imagemap_bad_image": "ત્રુટી: આ પાના પર ચિત્ર પર પ્રતિબંધ મુકેલો છે",
+ "imagemap_no_link": "ત્રુટી : $1મી હરોળ ના અંતે કોઈ પણ વૈધ કડી ન મળી",
+ "imagemap_invalid_title": "ત્રુટી: $1 મી લાઈનમાં અયોગ્ય શીર્ષક",
+ "imagemap_missing_coord": "ત્રુટી: $1મી હરોળમાં પૂરતાં આકાર માટે અક્ષાંસ રેખાંશ ન મળ્યાં",
+ "imagemap_unrecognised_shape": "ત્રુટી: $1મી હરોળમાં અયોગ્ય અક્ષર, દરેક હરોળ : <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code> થી શરૂ થવી જોઈએ.",
+ "imagemap_invalid_coord": "ક્ષતિ: લીટી $1 પર અયોગ્ય કો-ઓર્ડિનેટ, સંખ્યા જ હોવી જોઈએ.",
+ "imagemap_invalid_desc": "Error: અયોગ્ય વર્ણન વિગત, આમાંનું એક હોવુ જોઈએ: <code>$1</code>",
+ "imagemap_description": "આ ચિત્ર વિષે",
+ "imagemap_poly_odd": "ત્રુટી: $1 મી હરોળમાં વિસંગત ક્રમાંકના નિર્દેશકો મળી આવ્યાં"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/he.json b/www/wiki/extensions/ImageMap/i18n/he.json
new file mode 100644
index 00000000..8a10ab4d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/he.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Rotem Liss",
+ "IKhitron"
+ ]
+ },
+ "imagemap_desc": "אפשרות להוסיף תמונות ממופות בצד הלקוח באמצעות התג <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "שגיאה: יש לציין תמונה בשורה הראשונה",
+ "imagemap_invalid_image": "שגיאה: התמונה שגויה או שאינה קיימת",
+ "imagemap_bad_image": "שגיאה: התמונה אסורה לשימוש בדף זה",
+ "imagemap_no_link": "שגיאה: לא נמצא קישור תקף בסוף שורה $1",
+ "imagemap_invalid_title": "שגיאה: כותרת שגויה בקישור בשורה $1",
+ "imagemap_missing_coord": "שגיאה: לא מספיק קוארדינאטות לצורה בשורה $1",
+ "imagemap_unrecognised_shape": "שגיאה: צורה בלתי מזוהה בשורה $1, כל שורה חייבת להתחיל עם אחת האפשרויות הבאות: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>",
+ "imagemap_invalid_coord": "שגיאה: קוארדינאטה שגויה בשורה $1, היא חייבת להיות מספר",
+ "imagemap_invalid_desc": "שגיאה: הגדרת פרמטר desc שגויה, צריך להיות אחד מהבאים: $1",
+ "imagemap_description": "אודות התמונה",
+ "imagemap_poly_odd": "שגיאה: איזור poly עם מספר אי־זוגי של קואורדינטות בשורה $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/hi.json b/www/wiki/extensions/ImageMap/i18n/hi.json
new file mode 100644
index 00000000..905e3170
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/hi.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Kaustubh",
+ "Siddhartha Ghai"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> टैग के प्रयोग द्वारा क्लायंट द्वारा क्लिक किये जा सकने वाले चित्रनक्षों का प्रयोग संभव करता है",
+ "imagemap_no_image": "त्रुटि: पहली पंक्ति में चित्र देना ज़रूरी है",
+ "imagemap_invalid_image": "त्रुटि: चित्र अमान्य है अथवा मौजूद नहीं है।",
+ "imagemap_bad_image": "त्रुटि: चित्र को इस पृष्ठ पर ब्लैकलिस्ट किया गया है।",
+ "imagemap_no_link": "त्रुटि: $1 पंक्ति के अंत में कोई वैध कड़ी नहीं मिली।",
+ "imagemap_invalid_title": "त्रुटि: $1 पंक्ति में कड़ी में अमान्य शीर्षक।",
+ "imagemap_missing_coord": "त्रुटि: $1 पंक्ति में आकार के लिये आवश्यक कोऑर्डिनेट्स नहीं हैं।",
+ "imagemap_unrecognised_shape": "त्रुटि: $1 पंक्ति में अज्ञात आकार, हर कतार निम्न में से एक से शुरू होनी चाहिए: <code>default</code>, <code>rect</code>, <code>circle</code> अथवा <code>poly</code>।",
+ "imagemap_invalid_coord": "त्रुटि: $1 पंक्ति में अमान्य कोऑर्डिनेट्स, संख्या होनी चाहिये।",
+ "imagemap_invalid_desc": "त्रुटि: अमान्य desc जानकारी, निम्न में से एक होनी चाहिये: <code>$1</code>",
+ "imagemap_description": "इस चित्र के बारे में",
+ "imagemap_poly_odd": "त्रुटि: $1 पंक्ति पर विषम संख्या के कोऑर्डिनेट्स वाला poly मिला"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/hr.json b/www/wiki/extensions/ImageMap/i18n/hr.json
new file mode 100644
index 00000000..562a3ced
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/hr.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalibor Bosits",
+ "Roberta F.",
+ "SpeedyGonsales"
+ ]
+ },
+ "imagemap_desc": "Omogućava strani klijenta klikabilne slike karata korištenjem <code>&lt;imagemap&gt;</code> oznake",
+ "imagemap_no_image": "Error: morate navesti ime slike koju rabite u prvom retku",
+ "imagemap_invalid_image": "Error: slika ne postoji ili je krivog tipa",
+ "imagemap_bad_image": "Pogrješka: slika je na crnom popisu na ovoj stranici",
+ "imagemap_no_link": "Error: nema (ispravne) poveznice na kraju retka $1",
+ "imagemap_invalid_title": "Error: loš naziv u poveznici u retku $1",
+ "imagemap_missing_coord": "Error: nedovoljan broj koordinata za oblik u retku $1",
+ "imagemap_unrecognised_shape": "Error: oblik u retku $1 nije prepoznat, svaki redak mora početi s jednim od oblika: <code>default</code>, <code>rect</code>, <code>circle</code> ili <code>poly</code>",
+ "imagemap_invalid_coord": "Error: nevaljane koordinate u retku $1, mora biti broj",
+ "imagemap_invalid_desc": "Error: nevaljan opis, mora biti jedan od: <code>$1</code>",
+ "imagemap_description": "Ovo je slika/karta s poveznicama (''imagemap'')",
+ "imagemap_poly_odd": "Pogrješka: pronađen poly s neobičnim brojem koordinata u redu $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/hsb.json b/www/wiki/extensions/ImageMap/i18n/hsb.json
new file mode 100644
index 00000000..9658e441
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/hsb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "imagemap_desc": "Zmóžnja klikajomne wobrazowe mapy na klientowej stronje z pomocu taflički <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "&lt;imagemap&gt; zmylk: Dyrbiš w prěnjej lince wobraz podać",
+ "imagemap_invalid_image": "&lt;imagemap&gt; zmylk: Wobraz je njepłaćiwy abo njeeksistuje",
+ "imagemap_bad_image": "Zmylk: wobraz na tutej stronje je na čornej lisćinje",
+ "imagemap_no_link": "&lt;imagemap&gt; zmylk: Na kóncu linki $1 njebu płaćiwy wotkaz namakany",
+ "imagemap_invalid_title": "&lt;imagemap&gt; zmylk: njepłaćiwy titul we wotkazu w lince $1",
+ "imagemap_missing_coord": "&lt;imagemap&gt; zmylk: Přemało koordinatow w lince $1 za podobu",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt; zmylk: Njeznata podoba w lince $1, kóžda linka dyrbi so z jednym z tutych parametrow započeć: <tt><code>default</code>, <code>rect</code>, <code>circle</code></tt> abo <tt><code>poly</code></tt>",
+ "imagemap_invalid_coord": "&lt;imagemap&gt; zmylk: njepłaćiwa koordinata w lince $1: su jenož ličby dowolene",
+ "imagemap_invalid_desc": "&lt;imagemap&gt; zmylk: Njepłaćiwy parameter \"desc\", móžne su: <code>$1</code>",
+ "imagemap_description": "Wo tutym wobrazu",
+ "imagemap_poly_odd": "Zmylk: polygon z njerunej ličbu koordinatow na lince $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/hu.json b/www/wiki/extensions/ImageMap/i18n/hu.json
new file mode 100644
index 00000000..f5c80405
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/hu.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani",
+ "KossuthRad",
+ "Tgr",
+ "Tacsipacsi"
+ ]
+ },
+ "imagemap_desc": "Lehetővé teszi kliensoldali imagemapek létrehozását az <code>&lt;imagemap&gt;</code> címke segítségével",
+ "imagemap_no_image": "Hiba: kell egy előírt kép az első sorban",
+ "imagemap_invalid_image": "Hiba: érvénytelen vagy nem létező kép",
+ "imagemap_bad_image": "Hiba: a kép feketelistán van ezen az oldalon",
+ "imagemap_no_link": "Hiba: nincs érvényes link a(z) $1. sor végén",
+ "imagemap_invalid_title": "Hiba: érvénytelen cím a linkben a(z) $1. sorban",
+ "imagemap_missing_coord": "Hiba: nincs elég koordináta az alakzathoz a(z) $1. sorban",
+ "imagemap_unrecognised_shape": "Hiba: ismeretlen alakzat a(z) $1. sorban, minden sornak a következők valamelyikével kell kezdődnie: <code>default</code>, <code>rect</code>, <code>circle</code> vagy <code>poly</code>",
+ "imagemap_invalid_coord": "Hiba: érvénytelen koordináta a(z) $1. sorban, számnak kell lennie",
+ "imagemap_invalid_desc": "Hiba: hibás desc leírás, ezek egyike kell: <code>$1</code>",
+ "imagemap_description": "Erről a képről",
+ "imagemap_poly_odd": "Hiba: a(z) $1. sorban páratlan számú koordináta található"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ia.json b/www/wiki/extensions/ImageMap/i18n/ia.json
new file mode 100644
index 00000000..c9181089
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ia.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "imagemap_desc": "Permitte le mappas de imagines cliccabile al latere del cliente, usante le etiquetta <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: debe specificar un imagine in le prime linea",
+ "imagemap_invalid_image": "Error: imagine es invalide o non existe",
+ "imagemap_bad_image": "Error: le imagine es in le lista nigre de iste pagina",
+ "imagemap_no_link": "Error: necun ligamine valide esseva trovate al fin del linea $1",
+ "imagemap_invalid_title": "Error: titulo invalide in ligamine al linea $1",
+ "imagemap_missing_coord": "Error: non bastante coordinatas pro le forma al linea $1",
+ "imagemap_unrecognised_shape": "Error: forma non recognoscite al linea $1; cata linea debe comenciar con un del sequentes: <code>default</code>, <code>rect</code>, <code>circle</code>, <code>poly</code>",
+ "imagemap_invalid_coord": "Error: coordinata invalide al linea $1, debe esser un numero",
+ "imagemap_invalid_desc": "Error: specification \"desc\" invalide, debe esser un del sequentes: <code>$1</code>",
+ "imagemap_description": "A proposito de iste imagine",
+ "imagemap_poly_odd": "Error: se trova un polygono con un numero impar de coordinatas in linea $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/id.json b/www/wiki/extensions/ImageMap/i18n/id.json
new file mode 100644
index 00000000..a5a071bc
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/id.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "IvanLanin",
+ "Rex",
+ "Gombang"
+ ]
+ },
+ "imagemap_desc": "Menyediakan peta gambar yang dapat diklik dari klien dengan menggunakan tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Kesalahan: silakan tentukan gambar dalam baris pertama",
+ "imagemap_invalid_image": "Kesalahan: Gambar tidak sah atau tidak ditemukan.",
+ "imagemap_bad_image": "Kesalahan: berkas tidak diperbolehkan pada halaman ini",
+ "imagemap_no_link": "Kesalahan: tidak ditemukan pranala yang sah di akhir baris ke $1",
+ "imagemap_invalid_title": "Kesalahan: judul tidak sah dalam pranala pada baris ke $1",
+ "imagemap_missing_coord": "Kesalahan: tidak cukup koordinat untuk bentuk pada baris ke $1",
+ "imagemap_unrecognised_shape": "Kesalahan: bentuk pada baris ke $1 tidak dikenali. Tiap baris harus dimulai dengan salah satu dari: <code>default</code>, <code>rect</code>, <code>circle</code> atau <code>poly</code>",
+ "imagemap_invalid_coord": "Kesalahan: koordinat tidak sah pada baris ke $1, haruslah berupa angka",
+ "imagemap_invalid_desc": "Kesalahan: spesifikasi desc tidak sah, harus salah satu dari: $1",
+ "imagemap_description": "Tentang gambar ini",
+ "imagemap_poly_odd": "Kesalahan: terdapat poligon dengan nomor koordinat salah pada baris $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ilo.json b/www/wiki/extensions/ImageMap/i18n/ilo.json
new file mode 100644
index 00000000..9a7f0936
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ilo.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "imagemap_desc": "Palubusan ti kliente-a bangir nga agpabalin ti agtakla kadagiti imahen ti mapa nga agusar ti <code>&lt;imagemap&gt;</code> nga etiketa",
+ "imagemap_no_image": "Biddut: masapul nga inaganan ti imahen iti umuna a linia",
+ "imagemap_invalid_image": "Biddut: ti imahen ket imbalido wenn awan",
+ "imagemap_bad_image": "Biddut: ti imahen ket naiparit iti daytoy a panid",
+ "imagemap_no_link": "Biddut: awan ti nabirukan nga umisu a panilpo idiay lippasan ti linia $1",
+ "imagemap_invalid_title": "Biddut: imbalido a titulo iti panilpo idiay linia $1",
+ "imagemap_missing_coord": "Biddut: awan ti umanay a nagsasabtan para iti tabas idiay linia $1",
+ "imagemap_unrecognised_shape": "Biddut: saan a malasing a tabas idiay linia $1, tunggal maysa a linia ket masapul a mangrugi iti maysa nga: kinasigud, rektanggilo, nagtimbukel wenno <code>poly</code>",
+ "imagemap_invalid_coord": "Biddut: imbalido a nagsasabtan idiay linia $1, masapul a numero",
+ "imagemap_invalid_desc": "Biddut: imbalido a nainaganan a panagipalpalawag, masapul a maysa iti: <code>$1</code>",
+ "imagemap_description": "Maipanggep daytoy nga imahen",
+ "imagemap_poly_odd": "Biddut: nabirukan ti poly nga addaan ti pangis a numero iti nagsasabtan idiay linia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/io.json b/www/wiki/extensions/ImageMap/i18n/io.json
new file mode 100644
index 00000000..b2233f1b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/io.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "imagemap_description": "Pri ca imajo"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/is.json b/www/wiki/extensions/ImageMap/i18n/is.json
new file mode 100644
index 00000000..0209b56e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/is.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Snævar"
+ ]
+ },
+ "imagemap_no_image": "Villa: mynd verður að vera tilgreind í fyrstu línu",
+ "imagemap_invalid_image": "Villa: mynd er ógild eða ekki til",
+ "imagemap_bad_image": "Villa: myndin er bannlistuð á þessari síðu",
+ "imagemap_no_link": "Villa: engin gildur tengill fannst við enda línu $1",
+ "imagemap_invalid_title": "Villa: Ógildur titill í tengli í línu $1",
+ "imagemap_missing_coord": "Villa: Ekki nógu mörg hnit fyrir þetta form í línu $1",
+ "imagemap_unrecognised_shape": "Villa: Óþekkt form í línu $1, hver lína verður að byrja á <code>default</code>, <code>rect</code>, <code>circle</code> eða <code>poly</code>",
+ "imagemap_invalid_coord": "Villa: Ógilt hnit í línu $1, verður að vera tala",
+ "imagemap_description": "Um þessa mynd"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/it.json b/www/wiki/extensions/ImageMap/i18n/it.json
new file mode 100644
index 00000000..d5460ce8
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/it.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anyfile",
+ "Beta16",
+ "BrokenArrow",
+ "Darth Kule"
+ ]
+ },
+ "imagemap_desc": "Consente di realizzare ''image map'' cliccabili lato client con il tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Errore: si deve specificare un'immagine nella prima riga",
+ "imagemap_invalid_image": "Errore: l'immagine non è valida o non esiste",
+ "imagemap_bad_image": "Errore: l'immagine si trova nella blacklist per questa pagina",
+ "imagemap_no_link": "Errore: non è stato trovato alcun collegamento valido alla fine della riga $1",
+ "imagemap_invalid_title": "Errore: titolo del collegamento non valido alla riga $1",
+ "imagemap_missing_coord": "Errore: non ci sono abbastanza coordinate per la forma specificata alla riga $1",
+ "imagemap_unrecognised_shape": "Errore: forma specificata non riconosciuta alla riga $1, ogni riga deve iniziare con uno dei seguenti valori: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Errore: coordinata non valida alla riga $1, deve essere un numero",
+ "imagemap_invalid_desc": "Errore: valore non valido per il parametro desc, deve essere uno dei seguenti: $1",
+ "imagemap_description": "Informazioni sull'immagine",
+ "imagemap_poly_odd": "Errore: trovato poligono con un numero dispari di coordinate nella riga $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ja.json b/www/wiki/extensions/ImageMap/i18n/ja.json
new file mode 100644
index 00000000..3f4dfcf0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ja.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aotake",
+ "Fryed-peach",
+ "JtFuruhata",
+ "Kahusi",
+ "Mizusumashi",
+ "Shirayuki"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code>タグによるクライアントサイドのクリッカブルマップ機能を有効にする",
+ "imagemap_no_image": "エラー: 最初の行で画像を指定してください。",
+ "imagemap_invalid_image": "エラー: 画像が無効、または存在しません。",
+ "imagemap_bad_image": "エラー: このページでは画像が排除されています。",
+ "imagemap_no_link": "エラー: $1 行目の末尾に有効なリンクが見つかりません。",
+ "imagemap_invalid_title": "エラー: $1 行目のリンクのタイトルが無効です。",
+ "imagemap_missing_coord": "エラー: $1 行目の図形の座標指定が不足しています。",
+ "imagemap_unrecognised_shape": "エラー: $1 行目の図形を認識できません。各行の先頭は以下のいずれかにしてください: <code>default</code>, <code>rect</code>, <code>circle</code>, <code>poly</code>",
+ "imagemap_invalid_coord": "エラー: $1 行目の座標が無効です。数字を指定してください。",
+ "imagemap_invalid_desc": "エラー: desc の指定が無効です。以下のいずれかを指定してください: <code>$1</code>",
+ "imagemap_description": "画像の詳細",
+ "imagemap_poly_odd": "エラー: $1 行目に、座標値が奇数個の poly があります。"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/jv.json b/www/wiki/extensions/ImageMap/i18n/jv.json
new file mode 100644
index 00000000..ebd607eb
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/jv.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meursault2004",
+ "Pras",
+ "NoiX180"
+ ]
+ },
+ "imagemap_desc": "Nyedyakaké péta gambar sing bisa diklik saka klièn mawa nganggo tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: kudu mènèhi sawijining gambar ing baris kapisan",
+ "imagemap_invalid_image": "Masalah: Gambar ora trep utawa ora ana.",
+ "imagemap_bad_image": "Masalah: Barkas ora diidinaké ing kaca iki",
+ "imagemap_no_link": "Masalah: Pranala sing trep ora ana ing pungkasané $1.",
+ "imagemap_invalid_title": "Error: irah-irahan ora absah ing pranala ing baris kaping $1",
+ "imagemap_missing_coord": "Error: ora cukup koordinat kanggo wujud ing baris kaping $1",
+ "imagemap_unrecognised_shape": "Error: wujud ora ditepungi ing baris kaping $1, saben baris kudu diwiwiti mawa salah siji saka: <code>default</code>, <code>rect</code>, <code>circle</code> utawa <code>poly</code>",
+ "imagemap_invalid_coord": "Error: koordinat ora absah ing baris kaping $1, kudu awujud angka",
+ "imagemap_invalid_desc": "Error: spésifikasi desc ora absah, kudu salah siji saka: $1",
+ "imagemap_description": "Prekara gambar iki",
+ "imagemap_poly_odd": "Kasalahan: ana poligon kanthi nomer koordinat kliru ing larikan $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ka.json b/www/wiki/extensions/ImageMap/i18n/ka.json
new file mode 100644
index 00000000..b8e1b454
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ka.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "BRUTE",
+ "David1010",
+ "ITshnik",
+ "Malafaya",
+ "გიორგიმელა"
+ ]
+ },
+ "imagemap_desc": "უფლებას აძლევს კლიენტის ინტერაქტიულ სურათის რუკებს გამოიყენოს <code>&lt;imagemap&gt;</code> ტეგები",
+ "imagemap_no_image": "შეცდომა: პირველ ხაზზე უნდა მიუთითოთ სურათი",
+ "imagemap_invalid_image": "შეცდომა: სურათი მცდარია ან არ არსებობს",
+ "imagemap_bad_image": "შეცდომა: სურათი შავ სიაშია ამ გვერდზე",
+ "imagemap_no_link": "შეცდომა: არასწორი ბმული $1 ხაზის ბოლოს",
+ "imagemap_invalid_title": "შეცდომა: არასწორი სათაური ბმულში ხაზზე $1",
+ "imagemap_missing_coord": "შეცდომა: ხაზ $1 არ არის საკმარისი რაოდენობის კოორდინატები",
+ "imagemap_unrecognised_shape": "შეცდომა: გაურკვეველი ფიგურა ხაზ $1-ში, ყველა ახალი ხაზი უნდა იწყებოდეს ერთ-ერთი ძირითადი სიტყვით: <code>default</code>, <code>rect</code>, <code>circle</code> ან <code>poly</code>",
+ "imagemap_invalid_coord": "შეცდომა:არასწორი კოორდინატი ხაზ $1-ში, მოლოდინშია ციფრი",
+ "imagemap_invalid_desc": "შეცდომა: არასწორი მნიშვნელობა desc, მოლოდინშია ერთ-ერთი მნიშვნელობა <code>$1</code>.",
+ "imagemap_description": "ამ სურათის შესახებ",
+ "imagemap_poly_odd": "შეცდომა: $1 ხაზში არის შეცდომით აღწერილი მრავალკუთხედით ზედმეტი კორდინატებით."
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/kk-arab.json b/www/wiki/extensions/ImageMap/i18n/kk-arab.json
new file mode 100644
index 00000000..045b5bce
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/kk-arab.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet"
+ ]
+ },
+ "imagemap_no_image": "&lt;imagemap&gt;: بٸرٸنشٸ جولدا سۋرەتتٸ كٶرسەتۋ قاجەت",
+ "imagemap_invalid_image": "&lt;imagemap&gt;: سۋرەت جارامسىز نەمەسە جوق",
+ "imagemap_no_link": "&lt;imagemap&gt;: $1 جول اياعىندا جارامدى سٸلتەمە تابىلمادى",
+ "imagemap_invalid_title": "&lt;imagemap&gt;: $1 جول اياعىنداعى سٸلتەمەدە جارامسىز اتاۋ",
+ "imagemap_missing_coord": "&lt;imagemap&gt;: $1 جولداعى كەسكٸن ٷشٸن كوورديناتتار جەتٸكسٸز",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt;: $1 جولداعى كەسكٸن جارامسىز, ٵربٸر جول مىنانىڭ بٸرەۋٸنەن باستالۋ قاجەت:",
+ "imagemap_invalid_coord": "&lt;imagemap&gt;: $1 جولىندا جارامسىز كوورديناتا, سان بولۋى قاجەت",
+ "imagemap_invalid_desc": "&lt;imagemap&gt;: جارامسىز سيپاتتاما ماماندانىمى, مىنانىڭ بٸرەۋٸ بولۋى قاجەت: $1",
+ "imagemap_description": "بۇل سۋرەت تۋرالى"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/kk-cyrl.json b/www/wiki/extensions/ImageMap/i18n/kk-cyrl.json
new file mode 100644
index 00000000..5ba9b5f3
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/kk-cyrl.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet"
+ ]
+ },
+ "imagemap_no_image": "&lt;imagemap&gt;: бірінші жолда суретті көрсету қажет",
+ "imagemap_invalid_image": "&lt;imagemap&gt;: сурет жарамсыз немесе жоқ",
+ "imagemap_no_link": "&lt;imagemap&gt;: $1 жол аяғында жарамды сілтеме табылмады",
+ "imagemap_invalid_title": "&lt;imagemap&gt;: $1 жол аяғындағы сілтемеде жарамсыз атау",
+ "imagemap_missing_coord": "&lt;imagemap&gt;: $1 жолдағы кескін үшін координаттар жетіксіз",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt;: $1 жолдағы кескін жарамсыз, әрбір жол мынаның біреуінен басталу қажет:",
+ "imagemap_invalid_coord": "&lt;imagemap&gt;: $1 жолында жарамсыз координата, сан болуы қажет",
+ "imagemap_invalid_desc": "&lt;imagemap&gt;: жарамсыз сипаттама маманданымы, мынаның біреуі болуы қажет: $1",
+ "imagemap_description": "Бұл сурет туралы"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/kk-latn.json b/www/wiki/extensions/ImageMap/i18n/kk-latn.json
new file mode 100644
index 00000000..02c814e2
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/kk-latn.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet"
+ ]
+ },
+ "imagemap_no_image": "&lt;imagemap&gt;: birinşi jolda swretti körsetw qajet",
+ "imagemap_invalid_image": "&lt;imagemap&gt;: swret jaramsız nemese joq",
+ "imagemap_no_link": "&lt;imagemap&gt;: $1 jol ayağında jaramdı silteme tabılmadı",
+ "imagemap_invalid_title": "&lt;imagemap&gt;: $1 jol ayağındağı siltemede jaramsız ataw",
+ "imagemap_missing_coord": "&lt;imagemap&gt;: $1 joldağı keskin üşin koordïnattar jetiksiz",
+ "imagemap_unrecognised_shape": "&lt;imagemap&gt;: $1 joldağı keskin jaramsız, ärbir jol mınanıñ birewinen bastalw qajet:",
+ "imagemap_invalid_coord": "&lt;imagemap&gt;: $1 jolında jaramsız koordïnata, san bolwı qajet",
+ "imagemap_invalid_desc": "&lt;imagemap&gt;: jaramsız sïpattama mamandanımı, mınanıñ birewi bolwı qajet: $1",
+ "imagemap_description": "Bul swret twralı"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/km.json b/www/wiki/extensions/ImageMap/i18n/km.json
new file mode 100644
index 00000000..a952d2ac
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/km.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chhorran",
+ "Lovekhmer",
+ "Thearith",
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "imagemap_no_image": "កំហុស៖ ត្រូវបញ្ជាក់​រូបភាពមួយនៅក្នុង​បន្ទាត់ទីមួយ​",
+ "imagemap_invalid_image": "កំហុស៖ រូបភាព​មិនត្រឹមត្រូវ ឬមិនមាន​",
+ "imagemap_bad_image": "កំហុស៖ រូបភាពត្រូវបានហាមឃាត់ក្នុងបញ្ជី​ខ្មៅ​ លើ​ទំព័រនេះ​",
+ "imagemap_invalid_title": "កំហុស:ចំណងជើងមិនត្រឹមត្រូវក្នុងតំណភ្ជាប់នៅបន្ទាត់ទី$1",
+ "imagemap_description": "អំពីរូបភាពនេះ"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/kn.json b/www/wiki/extensions/ImageMap/i18n/kn.json
new file mode 100644
index 00000000..ddf521da
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/kn.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "VASANTH S.N."
+ ]
+ },
+ "imagemap_no_image": "ದೋಷ:ಪ್ರಥಮ ಸಾಲಿನಲ್ಲಿ ಒಂದು ಚಿತ್ರವನ್ನು ಖಚಿತವಾಗಿ ನಮೂದಿಸಬೇಕು",
+ "imagemap_invalid_image": "ದೋಷ:ಚಿತ್ರವು ಅಸಿಂಧು ಅಥವಾ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ.",
+ "imagemap_bad_image": "ದೋಷ:ಈ ಪುಟದಲ್ಲಿ ಚಿತ್ರವನ್ನು ಕರಿಪಟ್ಟಿಗೆ ಸೇರಿಸಲಾಗಿದೆ.",
+ "imagemap_no_link": "ದೋಷ:ಸಾಲು $1ರ ಕೊನೆಯಲ್ಲಿ ಯಾವುದೇ ಸಿಂಧು ಸಂಪರ್ಕಕೊಂಡಿ ಇಲ್ಲ.",
+ "imagemap_invalid_title": "ದೋಷ:ಕೊಂಡಿಯ ಸಾಲು $1ರಲ್ಲಿ ಅಸಿಂಧು ಶೀರ್ಷಿಕೆ.",
+ "imagemap_description": "ಈ ಚಿತ್ರದ ಬಗ್ಗೆ"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ko.json b/www/wiki/extensions/ImageMap/i18n/ko.json
new file mode 100644
index 00000000..c4770372
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ko.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klutzy",
+ "Kwj2772",
+ "Yknok29",
+ "아라",
+ "Hwangjy9",
+ "Garam"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> 태그로 클라이언트 측에서 클릭할 수 있는 영상 지도를 사용할 수 있습니다",
+ "imagemap_no_image": "오류: 첫 줄에 그림이 제시되어야 합니다.",
+ "imagemap_invalid_image": "오류: 그림이 잘못되었거나 존재하지 않습니다.",
+ "imagemap_bad_image": "오류: 그림은 이 문서에서 사용이 금지되어 있습니다.",
+ "imagemap_no_link": "오류: $1번째 줄에서 올바른 링크를 찾을 수 없습니다",
+ "imagemap_invalid_title": "오류: $1번째 줄의 링크 제목이 잘못되었습니다",
+ "imagemap_missing_coord": "오류: $1줄에 정의된 도형의 좌표 값이 충분하지 않습니다.",
+ "imagemap_unrecognised_shape": "오류: $1줄에서 도형을 인식할 수 없음, 각 줄은 다음으로 시작해야 합니다: <code>default</code>, <code>rect</code>, <code>circle</code>, <code>poly</code>",
+ "imagemap_invalid_coord": "오류: $1번째 줄에서 좌표가 잘못되었습니다. 좌표는 반드시 숫자여야 합니다.",
+ "imagemap_invalid_desc": "오류: 잘못된 desc 설정으로, 다음 중 하나여야 합니다: <code>$1</code>",
+ "imagemap_description": "이 그림에 대한 정보",
+ "imagemap_poly_odd": "오류: $1번째 줄에 정의된 좌표 값의 수가 홀수 개입니다."
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ksh.json b/www/wiki/extensions/ImageMap/i18n/ksh.json
new file mode 100644
index 00000000..11d65d17
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ksh.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "imagemap_desc": "Brengk dä Befäähl <code>&lt;imagemap&gt;</code> en et Wiki, un med em Belldsche, wo mer op Anndeile fun klecke kann, wo dann Lengks henger lijje.",
+ "imagemap_no_image": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: En de eetzte Reih mööt e Beld shtonn.",
+ "imagemap_invalid_image": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: dat Beld jidd_et nit, odder dä Name es verkeeht",
+ "imagemap_bad_image": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: Dat Beld es op dä Sigg nit äloup.",
+ "imagemap_no_link": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: En de {{PLURAL:$1|eetzte|$1-te|nullte}} Reih eß am Engk keine Lengk jefonge woode.",
+ "imagemap_invalid_title": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: Dä Tittel em Lengk en de {{PLURAL:$1|eetzte|$1-te|nullte}} Reih eß verkeeht.",
+ "imagemap_missing_coord": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: En dä {{PLURAL:$1|eetzte|$1-te|nullte}} Reih sin nit jenooch Ko'oddinate förr_ene komplätte Ömreß.",
+ "imagemap_unrecognised_shape": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: Dä Name förr_enne Ömreß en de {{PLURAL:$1|eetzte|$1-te|nullte}} Reih eß verkeeht. Et mööt „<tt><code>rect</code></tt>“, „<tt><code>circle</code></tt>“, „<tt><code>poly</code></tt>“, udder „<tt><code>default</code></tt>“ do shtonn.",
+ "imagemap_invalid_coord": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: En de {{PLURAL:$1|eetzte|$1-te|nullte}} Reih eß jet verkeeht met de Ko'oddinate. Do mööte luuter Zahle shtonn, es äver nit esu.",
+ "imagemap_invalid_desc": "Do es ene Fääler met <code>&lt;imagemap&gt;</code> opjefalle: Dä Parammeeter „<tt><nowiki>desc</nowiki></tt>“ eß verkeeht aanjejovve. Bruche kanns De nor ein fun dänne hee: <code>$1</code>",
+ "imagemap_description": "Övver dat Beld heh",
+ "imagemap_desc_types": "bovve räähß, unge räähß, unge lengkß, bovve lengkß, nix",
+ "imagemap_poly_odd": "Do es ene Fääler met <imagemap> opjefalle: De Parammeeter för „poly“ möße Zahle-Päärche sin, ävver hee es ei Zahl zovill udder zowinnisch\nen dä Reih: $1."
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ku-latn.json b/www/wiki/extensions/ImageMap/i18n/ku-latn.json
new file mode 100644
index 00000000..74e63e55
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ku-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal",
+ "Gomada"
+ ]
+ },
+ "imagemap_description": "Derbarê vî wêneyî de"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/la.json b/www/wiki/extensions/ImageMap/i18n/la.json
new file mode 100644
index 00000000..99d9272a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/la.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "SPQRobin"
+ ]
+ },
+ "imagemap_description": "De hac imagine"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/lb.json b/www/wiki/extensions/ImageMap/i18n/lb.json
new file mode 100644
index 00000000..3a98a3c7
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/lb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby",
+ "Soued031"
+ ]
+ },
+ "imagemap_desc": "Erlaabt et Biller ze benotzen déi een uklicke ka mat Hëllef vum Tag <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Feeler: Dir musst an der éischter Linn e Bild uginn",
+ "imagemap_invalid_image": "Feeler: d'Bild ass ongëltig oder net do",
+ "imagemap_bad_image": "Feeler: D'Bild steet op der Lëscht vun den onerwënschte Biller",
+ "imagemap_no_link": "Feeler: Um Enn vun der Zeil $1 gouf kee gëltege Link fonnt",
+ "imagemap_invalid_title": "Feeler: ongëltigen Titel am Link an der Zeil $1",
+ "imagemap_missing_coord": "Feeler: Ze wéineg Koordinaten an der Zeil $1 fir den Ëmress",
+ "imagemap_unrecognised_shape": "Feeler: Onbekannte Form an der Zeil $1. All Zeile muss matt engem vun dëse Parameter ufänken: <tt><code>default</code>, <code>rect</code>, <code>circle</code></tt> oder <tt><code>poly</code></tt>",
+ "imagemap_invalid_coord": "Feeler: Ongëlteg Koordinaten an der Zeil $1: et sinn nëmmen Zuelen erlaabt",
+ "imagemap_invalid_desc": "Feeler: Ongëltegen „desc“-Parameter, méiglech sinn: <code>$1</code>",
+ "imagemap_description": "Iwwer dëst Bild",
+ "imagemap_desc_types": "uewe-riets, ënne-riets, ënne-lénks, uewe-lénks, keen",
+ "imagemap_poly_odd": "Feeler: e Polygon mat enger ongerueder Zuel vu Koordinate gouf an der Linn $1 fonnt"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/li.json b/www/wiki/extensions/ImageMap/i18n/li.json
new file mode 100644
index 00000000..ce4dd74c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/li.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aelske",
+ "Matthias",
+ "Ooswesthoesbes"
+ ]
+ },
+ "imagemap_desc": "Maakt aanklikbare imagemaps meugelijk met de tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: geef 'n afbeelding op in de eerste regel",
+ "imagemap_invalid_image": "Error: de afbeelding is corrupt of bestaat neet",
+ "imagemap_bad_image": "Fout: de afbeelding steit op de zwarte lies voor deze pagina",
+ "imagemap_no_link": "Error: er is geen geldige link aangetroffen aan het einde van regel $1",
+ "imagemap_invalid_title": "Error: er staat een ongeldige titel in de verwijzing op regel $1",
+ "imagemap_missing_coord": "Error: neet genoeg coördinaten veur vorm in regel $1",
+ "imagemap_unrecognised_shape": "Error: neet herkende vorm in regel $1, iedere regel mot beginne met éin van de commando's: <code>default</code>, <code>rect</code>, <code>circle</code> of <code>poly</code>",
+ "imagemap_invalid_coord": "Error: ongeldige coördinaten in regel $1, moet een getal zien",
+ "imagemap_invalid_desc": "Error: ongeldige beschrijvingsspecificatie, dit moet er één zijn uit de volgende lijst: $1",
+ "imagemap_description": "Euver deze aafbeelding",
+ "imagemap_poly_odd": "Fout: polygoon gevonje met een oneven aantal coördinate op regel $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/lki.json b/www/wiki/extensions/ImageMap/i18n/lki.json
new file mode 100644
index 00000000..2f4fc302
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/lki.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue"
+ ]
+ },
+ "imagemap_desc": "امکان ایجاد نقشه‌های تصویری قابل کلیک کردن در سمت کاربر را با استفاده از برچسب <code>&lt;imagemap&gt;</code> فراهم می‌آورد",
+ "imagemap_no_image": "<imagemap>: باید در اولین سطر یک تصویر را مشخص کنید",
+ "imagemap_invalid_image": "<imagemap>: تصویر نامحاز است یا وجود ندارد",
+ "imagemap_bad_image": "خطا: تصویر در این صفحه در فهرست سیاه قرار دارد",
+ "imagemap_no_link": "خطا: هیچ پیوند مجازی در انتهای خط $1 یافت نشد",
+ "imagemap_invalid_title": "<imagemap>: عنوان نامجاز در پیوند سطر $1",
+ "imagemap_missing_coord": "<imagemap>: تعداد مختصات در سطر $1 برای شکل کافی نیست",
+ "imagemap_unrecognised_shape": "<imagemap>: شکل ناشناخته در سطر $1، هر سطر باید با یکی از این دستورات آغاز شود: <code>default</code>، <code>rect</code>، <code>circle</code> یا <code>poly</code>",
+ "imagemap_invalid_coord": "<imagemap>: مختصات نامجاز در سطر $1، مختصات باید عدد باشد",
+ "imagemap_invalid_desc": "<imagemap>: توضیحات نامجاز، باید یکی از این موارد باشد: <code>$1</code>",
+ "imagemap_description": "دربارهٔ این تصویر",
+ "imagemap_poly_odd": "خطا: چند ضلعی با تعداد فرعی از مختصات در سطر $1 پیدا شد"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/lrc.json b/www/wiki/extensions/ImageMap/i18n/lrc.json
new file mode 100644
index 00000000..7f522123
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/lrc.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "imagemap_bad_image": "خطا:عسگی که ها د ای بلگه ها د نومگه سئ.",
+ "imagemap_invalid_title": "خطا:داسون نامعتور سی هومپیوند خط $1.",
+ "imagemap_invalid_coord": "خطا:تیارگه نامعتور د خط $1، واس یه گل شماره با.",
+ "imagemap_description": "دباره ای عسگ"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/lt.json b/www/wiki/extensions/ImageMap/i18n/lt.json
new file mode 100644
index 00000000..23fa4962
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/lt.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Garas",
+ "Matasg",
+ "Albertas"
+ ]
+ },
+ "imagemap_desc": "Leidžia susieti klientinės pusės paspaudžiamą paveikslėlį naudojant <code>&lt;imagemap&gt;</code> žymę",
+ "imagemap_no_image": "Error: privalote nurodyti paveikslėlį pirmoje linijoje",
+ "imagemap_invalid_image": "Error: blogas arba neegzistuojantis paveikslėlis",
+ "imagemap_bad_image": "Klaida: Paveikslėlis šiame puslapyje yra įtraukas į juodąjį sąrašą.",
+ "imagemap_no_link": "Error: nerasta tinkama nuoroda eilutės $1 pabaigoje",
+ "imagemap_invalid_title": "Error: blogas pavadinimas nuorodoje $1 eilutėje",
+ "imagemap_missing_coord": "Error: nėra pakankamai koordinačių figūrai $1 eilutėje",
+ "imagemap_unrecognised_shape": "Error: neatpažįstama figūra $1 eilutėje, kiekviena eilutė privalo prasidėti su vienu iš šių žodžių: <code>default</code>, <code>rect</code>, <code>circle</code> arba <code>poly</code>",
+ "imagemap_invalid_coord": "Error: netinkama koordinatė $1 eilutėje, privalo būti skaičius",
+ "imagemap_invalid_desc": "Error: bloga aprašymo specifikacija, privalo būti viena iš: <code>$1</code>",
+ "imagemap_description": "Apie šį paveikslėlį",
+ "imagemap_poly_odd": "Klaida: Rastas daugiakampis su nelyginiu koordinačių skaičiumi eilutėje $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/lv.json b/www/wiki/extensions/ImageMap/i18n/lv.json
new file mode 100644
index 00000000..1054b4de
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/lv.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xil"
+ ]
+ },
+ "imagemap_no_image": "Kļūda: pirmajā rindiņā jānorāda attēls",
+ "imagemap_invalid_image": "Kļūda: attēls nav derīgs vai nepastāv",
+ "imagemap_no_link": "Kļūda: rindiņas $1 beigās netika atrasta derīga saite",
+ "imagemap_description": "Par šo attēlu"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/mk.json b/www/wiki/extensions/ImageMap/i18n/mk.json
new file mode 100644
index 00000000..c8e5c1f0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/mk.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "imagemap_desc": "Дава картографски слики кои можат да се кликаат од клиентот користејќи ја ознаката <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Грешка: мора да се назначи слика во првиот ред",
+ "imagemap_invalid_image": "Грешка: сликата е неважечка или не постои",
+ "imagemap_bad_image": "Грешка: сликата е на црн список за оваа страница",
+ "imagemap_no_link": "Грешка: не беше пронајдена важечка врска на крајот на редот $1",
+ "imagemap_invalid_title": "Грешка: погрешен наслов во врската на ред $1",
+ "imagemap_missing_coord": "Грешка: нема доволно координати за обликот на ред $1",
+ "imagemap_unrecognised_shape": "Грешка: непризнат ред $1, секој ред мора да почне со едно од: <code>default</code>, <code>rect</code>, <code>circle</code> или <code>poly</code>",
+ "imagemap_invalid_coord": "Грешка: погрешни координати на ред $1, мора да биде со бројки",
+ "imagemap_invalid_desc": "Грешка: неважечко напатствие за опис, мора да биде едно од: <code>$1</code>",
+ "imagemap_description": "За сликава",
+ "imagemap_desc_types": "најгоре-десно, најдолу-десно, најдолу-лево, најгоре-лево, нема",
+ "imagemap_poly_odd": "Грешка: пронајден е многуаголник (poly) со непарен број на координати во ред $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ml.json b/www/wiki/extensions/ImageMap/i18n/ml.json
new file mode 100644
index 00000000..1bdfa3cf
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ml.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Shijualex"
+ ]
+ },
+ "imagemap_desc": "സ്വീകർത്താവിന് ചിത്രത്തിലെ അടയാളപ്പെടുത്തലുകളിൽ ഞെക്കി ഗമിക്കാവുന്ന സൗകര്യം <code>&lt;imagemap&gt;</code> റ്റാഗ് ഉപയോഗിച്ച് സാദ്ധ്യമാക്കുന്നു",
+ "imagemap_no_image": "പിഴവ്: ഒന്നാമത്തെ വരിയിൽ ഒരു ചിത്രത്തിന്റെ പേരു വേണം",
+ "imagemap_invalid_image": "പിഴവ്: ചിത്രം അസാധുവാണ്‌ അല്ലെങ്കിൽ നിലവിലില്ല",
+ "imagemap_bad_image": "പിഴവ്: ഈ താളിൽ ചിത്രം കരിമ്പട്ടികയിലാണ്",
+ "imagemap_no_link": "പിഴവ്: വരി $1-ന്റെ അവസാനം സാധുവായ കണ്ണി കാണുന്നില്ല",
+ "imagemap_invalid_title": "പിഴവ്: വരി $1-ൽ അസാധുവായ തലക്കെട്ട്",
+ "imagemap_missing_coord": "പിഴവ്: വരി $1-ൽ രൂപത്തിന് ആവശ്യമുള്ളത്ര നിർദ്ദേശാങ്കങ്ങൾ നിർവചിച്ചിട്ടില്ല.",
+ "imagemap_unrecognised_shape": "പിഴവ്: വരി $1-ൽ മനസ്സിലാക്കാൻ പറ്റാത്ത രൂപം. ഓരോ വരിയും ഇനി പറയുന്ന ഒന്നു കൊണ്ടു വേണം തുടങ്ങാൻ: <code>default</code>, <code>rect</code>, <code>circle</code> അഥവാ <code>poly</code>",
+ "imagemap_invalid_coord": "പിഴവ്: വരി $1-ൽ അസാധുവായ നിർദ്ദേശാങ്കം. നിർബന്ധമായും അത് ഒരു സംഖ്യയായിരിക്കണം.",
+ "imagemap_invalid_desc": "പിഴവ്: അസാധുവായ വിവരണ നിർദ്ദേശം. ഇനി പറയുന്ന ഇനങ്ങളിൽ ഒന്നായിരിക്കണം: <code>$1</code>",
+ "imagemap_description": "ഈ ചിത്രത്തെ കുറിച്ച്",
+ "imagemap_poly_odd": "പിഴവ്: വിവിധ ഒറ്റയായുള്ള സംഖ്യകൾ ഉപയോഗിച്ചുള്ള നിർദ്ദേശാങ്കങ്ങൾ വരി $1-ൽ കണ്ടെത്തി"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/mr.json b/www/wiki/extensions/ImageMap/i18n/mr.json
new file mode 100644
index 00000000..007480cb
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/mr.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaajawa",
+ "Kaustubh",
+ "Rahuldeshmukh101",
+ "V.narsikar"
+ ]
+ },
+ "imagemap_desc": "क्लायंटकडील चित्रनकाशे <code>&lt;imagemap&gt;</code> टॅग देऊन वापरता येऊ शकतात.",
+ "imagemap_no_image": "Error: पहिल्या ओळीत चित्र देणे गरजेचे आहे",
+ "imagemap_invalid_image": "Error: चुकीचे अथवा अस्तित्वात नसलेले चित्र",
+ "imagemap_bad_image": "त्रुटी: ह्या पानावरील चित्र काळ्या यादीत टाकले आहे",
+ "imagemap_no_link": "Error: $1 ओळीच्या शेवटी योग्य दुवा सापडलेला नाही",
+ "imagemap_invalid_title": "Error: $1 ओळीतील दुव्याचे चुकीचे शीर्षक",
+ "imagemap_missing_coord": "Error: $1 ओळीवरील आकारासाठी पुरेसे कोऑर्डिनेट्स नाहीत",
+ "imagemap_unrecognised_shape": "Error: $1 ओळीमध्ये चुकीचा आकार, प्रत्येक ओळ ही: <code>default</code>, <code>rect</code>, <code>circle</code> अथवा <code>poly</code> पासून सुरु व्हायला पाहिजे.",
+ "imagemap_invalid_coord": "Error: $1 ओळीवर चुकीचे कोऑर्डिनेट्स, संख्या हवी",
+ "imagemap_invalid_desc": "Error: चुकीची माहिती, यापैकी एक असायला हवी: <code>$1</code>",
+ "imagemap_description": "या चित्राबद्दल माहिती",
+ "imagemap_poly_odd": "त्रुटी: रेष क्र. $1 मधे विषम संख्येचे गुणक असलेला बहुभुजक आकार सापडला"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ms.json b/www/wiki/extensions/ImageMap/i18n/ms.json
new file mode 100644
index 00000000..69928823
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ms.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Aviator",
+ "Kurniasan"
+ ]
+ },
+ "imagemap_desc": "Membenarkan peta imej boleh klik menggunakan tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Ralat: sila nyatakan imej dalam baris pertama",
+ "imagemap_invalid_image": "Imej: imej tidak sah atau tidak wujud",
+ "imagemap_bad_image": "Ralat: imej disenaraihitamkan di laman ini",
+ "imagemap_no_link": "Ralat: tiada pautan sah dijumpai pada akhir baris $1",
+ "imagemap_invalid_title": "Ralat: tajuk tidak sah dalam pautan pada baris $1",
+ "imagemap_missing_coord": "Ralat: koordinat bagi bentuk tidak cukup pada baris $1",
+ "imagemap_unrecognised_shape": "Ralat: bentuk tidak dikenali pada baris $1, setiap baris hendaklah dimulakan dengan salah satu daripada: <code>default</code>, <code>rect</code>, <code>circle</code> atau <code>poly</code>",
+ "imagemap_invalid_coord": "Ralat: koordinat tidak sah pada baris $1, hanya nombor dibenarkan",
+ "imagemap_invalid_desc": "Ralat: spesifikasi keterangan tidak sah, hendaklah salah satu daripada: <code>$1</code>",
+ "imagemap_description": "Perihal imej ini",
+ "imagemap_desc_types": "atas-kanan, bawah-kanan, bawah-kiri, atas-kiri, tiada",
+ "imagemap_poly_odd": "Ralat: terdapat poligon dengan bilangan koordinat yang ganjil dalam baris $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/mt.json b/www/wiki/extensions/ImageMap/i18n/mt.json
new file mode 100644
index 00000000..0060725f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/mt.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "imagemap_no_image": "Żball: trid tispeċifika stampa fl-ewwel linja",
+ "imagemap_invalid_image": "Żball: l-istampa hija invalida jew ħażina",
+ "imagemap_bad_image": "Żball: l-istampa tinsab fil-''blacklist'' fuq din il-paġna",
+ "imagemap_no_link": "Żball: l-ebda ħolqa valida ma nstabet fi tmiem il-linja $1",
+ "imagemap_invalid_title": "Żball: titlu invalidu għall-ħolqa f'linja $1",
+ "imagemap_missing_coord": "Żball: mhux biżżejjed koordinati għall-forma speċifikata fil-linja $1",
+ "imagemap_unrecognised_shape": "Żball: il-forma speċifikata fil-linja $1 mhix magħrufa, kull linja trid tibda b'waħda minn dawn: <code>default</code>, <code>rect</code>, <code>circle</code> jew <code>poly</code>",
+ "imagemap_invalid_coord": "Żball: koordinata invalida fil-linja $1, trid tkun numru",
+ "imagemap_invalid_desc": "Żball: valur ħażin għall-parametru desc, irid ikun wieħed minn: <code>$1</code>",
+ "imagemap_description": "Dwar din l-istampa",
+ "imagemap_poly_odd": "Żball: instab poliganu b'numru fard ta' koordinati fil-linja $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/myv.json b/www/wiki/extensions/ImageMap/i18n/myv.json
new file mode 100644
index 00000000..e0adc222
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/myv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Botuzhaleny-sodamo"
+ ]
+ },
+ "imagemap_description": "Те артовкстонть"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nap.json b/www/wiki/extensions/ImageMap/i18n/nap.json
new file mode 100644
index 00000000..c63b3763
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nap.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "C.R."
+ ]
+ },
+ "imagemap_desc": "Premmettesse 'e mappe 'immaggene cliccabbele a lato cliente ausanno 'o tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Errore: s'avess'a specificà n'immaggene int' 'a primma riga",
+ "imagemap_invalid_image": "Errore: l'immaggene è invalida o nun esiste.",
+ "imagemap_bad_image": "Errore: l'immaggene ncoppa è dint' 'a lista nira int'a sta paggena.",
+ "imagemap_no_link": "Errore: Nisciuno link buono s'è truvato a 'o fine d' 'a linea $1.",
+ "imagemap_invalid_title": "Errore: titole invalide int' 'o cullegamento a 'a linea $1",
+ "imagemap_missing_coord": "Errore: Nun ce stanno abbastanza coordinate p' 'a forma specificata int'a linea $1.",
+ "imagemap_unrecognised_shape": "Errore: fiùra nun ricanusciuta â linea $1, ogne linea adda accummincià cu uno 'e chiste: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Errore: coordinate invalide a 'a linea $1, adda essere nu nummero",
+ "imagemap_invalid_desc": "Errore: Specificazione desc invalida, adda essere una 'e chiste: <code>$1</code>.",
+ "imagemap_description": "Ncopp'a st'immaggene",
+ "imagemap_poly_odd": "Errore: Truvato nu poligono cu nu cierto nummero dispare 'e coordinate dint' 'a riga $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nb.json b/www/wiki/extensions/ImageMap/i18n/nb.json
new file mode 100644
index 00000000..217231f6
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jon Harald Søby"
+ ]
+ },
+ "imagemap_desc": "Gjør at man kan bruke klikkbare bilder ved hjelp av <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Error: må angi et bilde i første linje",
+ "imagemap_invalid_image": "Error: bilde er ugyldig eller ikke-eksisterende",
+ "imagemap_bad_image": "Feil: bildet er svartelistet på denne siden",
+ "imagemap_no_link": "Error: ingen gyldig lenke ble funnet i slutten av linje $1",
+ "imagemap_invalid_title": "Error: ugyldig tittel i lenke på linje $1",
+ "imagemap_missing_coord": "Error: ikke nok koordinater for form på linje $1",
+ "imagemap_unrecognised_shape": "Error: ugjenkjennelig form på linje $1; hver linje må starte med enten: <code>default</code>, <code>rect</code>, <code>circle</code> eller <code>poly</code>",
+ "imagemap_invalid_coord": "Error: ugyldig koordinat i slutten av linje $1, må være et tall",
+ "imagemap_invalid_desc": "Error: ugyldig desc-spesifisering, må være enten: <code>$1</code>",
+ "imagemap_description": "Om dette bildet",
+ "imagemap_poly_odd": "Feil: fant poly med et oddetall koordinater på rad $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nds-nl.json b/www/wiki/extensions/ImageMap/i18n/nds-nl.json
new file mode 100644
index 00000000..255c00cf
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nds-nl.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "imagemap_desc": "Maakt anklikbaore verwiezingen op aofbeeldingen meugelik mit t etiket <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Fout: geef n aofbeelding op in de eerste regel",
+ "imagemap_invalid_image": "Fout: aofbeelding is ongeldig of besteet niet",
+ "imagemap_bad_image": "Fout: de aofbeelding steet op de zwarte lieste veur disse zied",
+ "imagemap_no_link": "Fout: der is gien geldige verwiezing evunnen an t einde van regel $1",
+ "imagemap_invalid_title": "Fout: ongeldige titel in de verwiezing op regel $1",
+ "imagemap_missing_coord": "Fout: niet genog koördinaoten veur vorm op regel $1",
+ "imagemap_unrecognised_shape": "Fout: onherkenbaore vorm op regel $1, elke regel mut beginnen mit één van de volgende vormen: standard, dreehoek, sirkel of n veulhoek",
+ "imagemap_invalid_coord": "Fout: ongeldige koördinaot in regel $1, mut n getal ween",
+ "imagemap_invalid_desc": "Fout: ongeldige beschrievingsspesifikasie, mut n van: <code>$1</code> ween",
+ "imagemap_description": "Over disse aofbeelding",
+ "imagemap_poly_odd": "Fout: polygoon evunnen mit n oneffen antal koördinaoten op regel $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nds.json b/www/wiki/extensions/ImageMap/i18n/nds.json
new file mode 100644
index 00000000..fc05bba7
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nds.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Slomox"
+ ]
+ },
+ "imagemap_desc": "Verlöövt dat Instellen vun Lenken op Biller över den Tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: in de eerste Reeg mutt en Bild angeven wesen",
+ "imagemap_invalid_image": "Error: Bild geiht nich oder dat gifft dat gornich",
+ "imagemap_bad_image": "Fehler: Dat Bild steiht op de swarte List för disse Sied",
+ "imagemap_no_link": "Error: an dat Enn vun Reeg $1 weer keen Lenk",
+ "imagemap_invalid_title": "Error: in Reeg $1 is de Titel in’n Lenk nich bi de Reeg",
+ "imagemap_missing_coord": "Error: Form in Reeg $1 hett nich noog Koordinaten",
+ "imagemap_unrecognised_shape": "Error: Form in Reeg $1 nich kennt, jede Reeg mutt mit ''<code>default</code>'', ''<code>rect</code>'', ''<code>circle</code>'' oder ''<code>poly</code>'' anfangen",
+ "imagemap_invalid_coord": "Error: Koordinaat in Reeg $1 nich bi de Reeg, mutt en Tall wesen",
+ "imagemap_invalid_desc": "Error: Beschrieven nich bi de Reeg, mutt een vun disse wesen: <code>$1</code>",
+ "imagemap_description": "Över dit Bild",
+ "imagemap_poly_odd": "Fehler: Polygon mit unevene Tall Koordinaten in Reeg $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ne.json b/www/wiki/extensions/ImageMap/i18n/ne.json
new file mode 100644
index 00000000..2b14c8fc
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ne.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "imagemap_description": "यो चित्रको बारेमा"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nl.json b/www/wiki/extensions/ImageMap/i18n/nl.json
new file mode 100644
index 00000000..ad60c6ac
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nl.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "SPQRobin",
+ "Siebrand"
+ ]
+ },
+ "imagemap_desc": "Maakt aanklikbare imagemaps mogelijk met het label <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Fout: geef een afbeelding op in de eerste regel",
+ "imagemap_invalid_image": "Fout: de afbeelding is beschadigd of bestaat niet",
+ "imagemap_bad_image": "Fout: de afbeelding staat op de zwarte lijst voor deze pagina",
+ "imagemap_no_link": "Fout: er is geen geldige koppeling aangetroffen aan het einde van regel $1",
+ "imagemap_invalid_title": "Fout: er staat een ongeldige titel in de koppeling op regel $1",
+ "imagemap_missing_coord": "Fout: niet genoeg coördinaten voor vorm in regel $1",
+ "imagemap_unrecognised_shape": "Fout: niet herkende vorm in regel $1. Iedere regel moet beginnen met één van de commando's: <code>default</code>, <code>rect</code>, <code>circle</code> of <code>poly</code>.",
+ "imagemap_invalid_coord": "Fout: ongeldige coördinaten in regel $1, moet een getal zijn",
+ "imagemap_invalid_desc": "Fout: ongeldige beschrijvingsspecificatie, dit moet er één zijn uit de volgende lijst: $1",
+ "imagemap_description": "Over deze afbeelding",
+ "imagemap_poly_odd": "Fout: polygoon gevonden met een oneven aantal coördinaten op regel $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/nn.json b/www/wiki/extensions/ImageMap/i18n/nn.json
new file mode 100644
index 00000000..e560659f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/nn.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Frokor"
+ ]
+ },
+ "imagemap_desc": "Gjer at ein kan nytte klikkbare bilete ved hjelp av <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Feil: må gje eit bilete i første linja",
+ "imagemap_invalid_image": "Fil: biletet er ugyldig eller eksisterer ikkje",
+ "imagemap_bad_image": "Feil: biletet er svartelista på denne sida",
+ "imagemap_no_link": "Feil: fann ingen gyldig lenke i slutten av linje $1",
+ "imagemap_invalid_title": "Feil: ugyldig tittel i lenke på linje $1",
+ "imagemap_missing_coord": "Feil: ikkje nok koordinatar for form på linje $1",
+ "imagemap_unrecognised_shape": "Feil: ukjend form på linje $1; kvar linje må starte med anten: <code>default</code>, <code>rect</code>, <code>circle</code> eller <code>poly</code>",
+ "imagemap_invalid_coord": "Feil: ugyldig koordinat i slutten av linje $1, må vere eit tal",
+ "imagemap_invalid_desc": "Feil: ugyldig desc-spesifisering, må vere ein av: <code>$1</code>",
+ "imagemap_description": "Om dette bilete",
+ "imagemap_poly_odd": "Feil: fann poly med eit oddetal koordinatar på rad $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/oc.json b/www/wiki/extensions/ImageMap/i18n/oc.json
new file mode 100644
index 00000000..046b3c44
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/oc.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "imagemap_desc": "Permet qu'una mapa imatge clienta siá clicabla en utilizant la balisa <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error : vos cal especificar un imatge dins la primièra linha",
+ "imagemap_invalid_image": "Error : l’imatge es invalid o existís pas",
+ "imagemap_bad_image": "Error : l’imatge es sus la lista negra sus aquesta pagina",
+ "imagemap_no_link": "Error : cap de ligam valid es pas estat trobat a la fin de la linha $1",
+ "imagemap_invalid_title": "Error : títol invalid dins lo ligam a la linha $1",
+ "imagemap_missing_coord": "Error : pas pro de coordenadas per la forma a la linha $1",
+ "imagemap_unrecognised_shape": "Error : forma pas reconeguda a la linha $1, cada linha deu començar amb un dels mots seguents : <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Error : coordenada invalida a la linha $1, deu èsser un nombre",
+ "imagemap_invalid_desc": "Error : paramètre « desc » invalid, los paramètres possibles son : $1",
+ "imagemap_description": "A prepaus d'aqueste imatge",
+ "imagemap_poly_odd": "Error : trobat un poligòn amb un nombre impar de coordenadas a la linha $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/olo.json b/www/wiki/extensions/ImageMap/i18n/olo.json
new file mode 100644
index 00000000..9c058e6c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/olo.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mashoi7"
+ ]
+ },
+ "imagemap_desc": "Andau mahton luadie painaldettavii kuvakartoi käyttäjen <code>&lt;imagemap&gt;</code>-tägii.",
+ "imagemap_no_image": "Haireh: Kuva pidäy miäritellä ezmäzel riävyl.",
+ "imagemap_invalid_image": "Haireh: Kuva ei päi libo sidä ei ole olemas.",
+ "imagemap_bad_image": "Haireh: Kuva on saitan estolistal.",
+ "imagemap_no_link": "Haireh: Riävyn $1 lopus ei löydynyh pädijiä linkua.",
+ "imagemap_invalid_title": "Haireh: Pädemätöi rubriekku linkas riävyl $1.",
+ "imagemap_missing_coord": "Haireh: Riävyle $1 ei ole tävvyndälleh kourdinuatoi.",
+ "imagemap_unrecognised_shape": "Haireh: Riävyn $1 muodo on tundematoi. Jogahizen riävyn pidäy algu miltahto nämmis: <code>default</code>, <code>rect</code>, <code>circle</code> libo <code>poly</code>.",
+ "imagemap_invalid_coord": "Haireh: Pädemätöi kourdinuattu riävyl $1. Kourdinuatan pidäy olla noumer.",
+ "imagemap_invalid_desc": "Haireh: Pädemätöi kohtehmiärittely, desc-parametru, pidäy olla yksi nämmis: <code>$1</code>.",
+ "imagemap_description": "Täh kuvah näh",
+ "imagemap_poly_odd": "Haireh: Löydyi poligonu, kudamas puaratoi lugu kourdinuatoi riävyl $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/or.json b/www/wiki/extensions/ImageMap/i18n/or.json
new file mode 100644
index 00000000..ed2b36c9
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/or.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Psubhashish"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> ଚିହ୍ନ ବ୍ୟବହାର କରି କ୍ଲାଏଣ୍ଟ ଭାଗର କ୍ଲିକ କଲାଭଳି ଛବିର ମାନଚିତ୍ର ତିଆରି କରିଥାଏ ।",
+ "imagemap_no_image": "ଭୁଲ: ପ୍ରଥମ ଧାଡ଼ିରେ ଏକ ଛବି ଉଲ୍ଲେଖ କରିବା ଜରୁରୀ",
+ "imagemap_invalid_image": "ଭୁଲ: ଛବିଟି ଅବୈଧ ବା ନାହିଁ",
+ "imagemap_bad_image": "ଭୁଲ: ଏହି ପୃଷ୍ଠାରେ ଛବିଟି ବାସନ୍ଦ କରାଯାଇଅଛି",
+ "imagemap_no_link": "ଭୁଲ:$1 ଧାଡ଼ିର ଶେଷରେ କୌଣସିଟି ବୈଧ ଲିଙ୍କ ଦିଆଯାଇନାହିଁ",
+ "imagemap_invalid_title": "ଭୁଲ:$1ତମ ଧାଡ଼ିରେ ଭୁଲ ନାମଟିଏ ଦିଆଯାଇଅଛି",
+ "imagemap_missing_coord": "ଭୁଲ: ଆକୃତି ପାଇଁ $1 ଧାଡ଼ିରେ ସେତେ ଅଧିକ ଦିଗବରେଣି ନାହିଁ",
+ "imagemap_unrecognised_shape": "ଭୁଲ: $1ମ ଧାଡ଼ିରେ ଅଚିହ୍ନା ଆକୃତି, ସବୁଯାକ ଧାଡ଼ି ଏହି ସବୁ ନାମରୁ ଆରମ୍ଭ ହେବ ଉଚିତ: ଆପେଆପେ, ଆୟତକ୍ଷେତ୍ର, ବୃତ୍ତ ବ ବହୁଭୂଜ",
+ "imagemap_invalid_coord": "ଭୁଲ: $1 ଧାଡ଼ିରେ ଥିବା ଅବୈଧ ଦିଗବାରେଣି, ସଂଖ୍ୟାଟିଏ ନିହାତି ହୋଇପାରେ",
+ "imagemap_invalid_desc": "ଭୁଲ: ଅବୈଧ ବଖାଣ ନିର୍ଦିଷ୍ଟତା, ଏହି ସବୁ ଭିତରୁ ଗୋଟିଏ ହୋଇପାରେ: <code>$1</code>",
+ "imagemap_description": "ଏହି ଛବି ବାବଦରେ",
+ "imagemap_poly_odd": "ଭୁଲ: $1 ତମ ଧାଡ଼ିରେ ଏକ ବିସମ କୋଣଥିବା ବହୁଭୂଜ ପାଇଲୁଁ"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/os.json b/www/wiki/extensions/ImageMap/i18n/os.json
new file mode 100644
index 00000000..013bc67a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/os.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amikeco"
+ ]
+ },
+ "imagemap_description": "Ацы нывы тыххæй"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pdc.json b/www/wiki/extensions/ImageMap/i18n/pdc.json
new file mode 100644
index 00000000..9b49f0d0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pdc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt"
+ ]
+ },
+ "imagemap_description": "Iwwer sell Pikder"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pfl.json b/www/wiki/extensions/ImageMap/i18n/pfl.json
new file mode 100644
index 00000000..159b7f66
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pfl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Manuae"
+ ]
+ },
+ "imagemap_description": "Iwas Bild"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pl.json b/www/wiki/extensions/ImageMap/i18n/pl.json
new file mode 100644
index 00000000..4496d131
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Derbeth",
+ "Leinad",
+ "Sp5uhe"
+ ]
+ },
+ "imagemap_desc": "Umożliwia utworzenie obrazka zawierającego klikalną mapę, z użyciem znacznika <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Błąd – należy wpisać grafikę w pierwszej linii",
+ "imagemap_invalid_image": "Błąd – grafika jest niepoprawna lub nie istnieje",
+ "imagemap_bad_image": "Błąd – ta grafika jest zakazana w tym serwisie",
+ "imagemap_no_link": "Błąd – nie znaleziono poprawnego linku na końcu linii $1",
+ "imagemap_invalid_title": "Błąd – niepoprawny tytuł linku w linii $1",
+ "imagemap_missing_coord": "Błąd – niewystarczająca liczba współrzędnych dla kształtu zdefiniowanego w linii $1",
+ "imagemap_unrecognised_shape": "Błąd – nierozpoznany kształt w linii $1; każda linia musi zawierać tekst: <code>default</code>, <code>rect</code>, <code>circle</code> lub <code>poly</code>",
+ "imagemap_invalid_coord": "Błąd – nieprawidłowa współrzędna w linii $1; należy podać liczbę",
+ "imagemap_invalid_desc": "Błąd – nieprawidłowa specyfikacja opisu; należy wpisać jeden z wariantów: <code>$1</code>",
+ "imagemap_description": "Informacje o tej grafice",
+ "imagemap_poly_odd": "Błąd – w linii $1 znaleziono wielokąt z nieparzystą liczbą współrzędnych"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pms.json b/www/wiki/extensions/ImageMap/i18n/pms.json
new file mode 100644
index 00000000..6309a17d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pms.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bèrto 'd Sèra",
+ "Dragonòt"
+ ]
+ },
+ "imagemap_desc": "A përmëtt \"image map\" client-side clicàbij an dovrand ël tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: ant la prima riga a venta ch'a-i sia la specìfica ëd na figura",
+ "imagemap_invalid_image": "Error: la figura ò ch'a l'ha chèich-còs ch'a va nen, ò ch'a-i é nen d'autut",
+ "imagemap_bad_image": "Eror: la figura a l'é ant la blacklist ëd costa pàgina",
+ "imagemap_no_link": "Error: pa gnun-a anliura bon-a a la fin dla riga $1",
+ "imagemap_invalid_title": "Error: tìtol nen bon ant l'anliura dla riga $1",
+ "imagemap_missing_coord": "Error: pa basta ëd coordinà për fé na forma a la riga $1",
+ "imagemap_unrecognised_shape": "Error: forma nen arconossùa a la riga $1, minca riga a la dev anandiesse con un ëd: <code>default</code>, <code>rect</code>, <code>circle</code> ò <code>poly</code>",
+ "imagemap_invalid_coord": "Error: coordinà nen bon-a a la riga $1, a l'ha da esse un nùmer",
+ "imagemap_invalid_desc": "Error: specìfica dla descrission nen bon-a, a l'ha da esse un-a ëd coste-sì: <code>$1</code>",
+ "imagemap_description": "Rësgoard a sta figura-sì",
+ "imagemap_poly_odd": "Eror: trovà un polìgon con un nùmer dìspar ëd coordinà an sla linia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pnb.json b/www/wiki/extensions/ImageMap/i18n/pnb.json
new file mode 100644
index 00000000..dc8c29b7
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pnb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Khalid Mahmood"
+ ]
+ },
+ "imagemap_desc": "اجازت دیندا اے کلائینٹ سائیڈ کلکایبل امیج نقشے <code>&lt;imagemap&gt;</code> ٹیگ ورتدیاں ہویاں۔",
+ "imagemap_no_image": "غلطی: پہلی لائن چ مورت بارے دسو",
+ "imagemap_invalid_image": "مسئلہ: اے فوٹو غلط اے یا نئیں ہیگی",
+ "imagemap_bad_image": "مسئلہ: فوٹو اس صفے واسطے بلیک لسٹ اے",
+ "imagemap_no_link": "مسئلہ: $1 دی لائن دے انت تے کوئی ٹردا جوڑ نئیں",
+ "imagemap_invalid_title": "مسئلہ: $1 لائن دے جوڑ تے غلط ناں اے",
+ "imagemap_missing_coord": "غلطی: کافی کووارڈینیٹ لکیر $1 تے مورت لئی نئیں دتے گۓ۔",
+ "imagemap_unrecognised_shape": "غلطی:لکیر $1 تے مورت نئیں پچھانی جاندی، ہر لکیر ایناں چوں کسے نال شروع ہووے: ڈیفالٹ، ریکٹ، چکر، یا پولی",
+ "imagemap_invalid_coord": "غلطی: ناں منے جان والے کووارڈینیٹ لکیر $1، لازمی اک نمبر ہووے۔",
+ "imagemap_invalid_desc": "غلطی: ناں منی جان والی ڈیسک سپیسیفیکیشن، لازمی ایناں چوں ہووے: <code>$1</code>",
+ "imagemap_description": "ایس مورت بارے",
+ "imagemap_poly_odd": "غلطی: لکیر $1 تے پولی لبی وکھے نمبراں دے کوورڈینیٹ نال"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ps.json b/www/wiki/extensions/ImageMap/i18n/ps.json
new file mode 100644
index 00000000..35ba007b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ps.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "imagemap_description": "ددې انځور په اړه"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pt-br.json b/www/wiki/extensions/ImageMap/i18n/pt-br.json
new file mode 100644
index 00000000..b2fb6cc8
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pt-br.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Carla404",
+ "Eduardo.mps",
+ "Dianakc",
+ "Felipe L. Ewald"
+ ]
+ },
+ "imagemap_desc": "Permite mapas de imagem clicáveis no lado do cliente usando a marca <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Erro: deve ser especificada uma imagem na primeira linha.",
+ "imagemap_invalid_image": "Erro: imagem inválida ou inexistente.",
+ "imagemap_bad_image": "Erro: a imagem está na lista negra para esta página.",
+ "imagemap_no_link": "Erro: não foi encontrada uma ligação válida ao final da linha $1.",
+ "imagemap_invalid_title": "Erro: título inválido no link da linha $1.",
+ "imagemap_missing_coord": "Erro: coordenadas insuficientes para formar uma figura na linha $1.",
+ "imagemap_unrecognised_shape": "Erro: figura não reconhecida na linha $1. Cada linha precisa iniciar com: <code>default</code>, <code>rect</code>, <code>circle</code> ou <code>poly</code>.",
+ "imagemap_invalid_coord": "Erro: coordenada inválida na linha $1, é necessário que seja um número.",
+ "imagemap_invalid_desc": "Erro: especificação desc inválida, é necessário que seja uma dentre: <code>$1</code>.",
+ "imagemap_description": "Sobre esta imagem",
+ "imagemap_desc_types": "superior-direito, inferior-direito, inferior-esquerdo, superior-esquerdo, nenhum",
+ "imagemap_poly_odd": "Erro: encontrado polígono com número ímpar de coordenadas na linha $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/pt.json b/www/wiki/extensions/ImageMap/i18n/pt.json
new file mode 100644
index 00000000..77df7639
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/pt.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Malafaya"
+ ]
+ },
+ "imagemap_desc": "Permite mapas de imagem clicáveis no lado do cliente usando a \"tag\" <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Erro: é necessário especificar uma imagem na primeira linha",
+ "imagemap_invalid_image": "Erro: imagem inválida ou inexistente",
+ "imagemap_bad_image": "Erro: a imagem está na lista negra para esta página",
+ "imagemap_no_link": "Erro: não foi encontrada nenhuma hiperligação válida ao final da linha $1.",
+ "imagemap_invalid_title": "Erro: título inválido numa hiperligação, na linha $1.",
+ "imagemap_missing_coord": "Erro: coordenadas insuficientes para formar uma figura, na linha $1",
+ "imagemap_unrecognised_shape": "Erro: figura não reconhecida, na linha $1 - cada linha tem de começar por: <code>default</code>, <code>rect</code>, <code>circle</code> ou <code>poly</code>",
+ "imagemap_invalid_coord": "Erro: coordenada inválida, na linha $1 - tem de ser um número",
+ "imagemap_invalid_desc": "Erro: especificação desc inválida - tem de ser uma destas: <code>$1</code>",
+ "imagemap_description": "Sobre esta imagem",
+ "imagemap_poly_odd": "Erro: encontrado polígono com número ímpar de coordenadas na linha $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/qqq.json b/www/wiki/extensions/ImageMap/i18n/qqq.json
new file mode 100644
index 00000000..8f7406f9
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/qqq.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Purodha",
+ "Shirayuki",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "imagemap_desc": "{{desc|name=Image Map|url=https://www.mediawiki.org/wiki/Extension:ImageMap}}",
+ "imagemap_no_image": "Used as error message.\n\nThis message indicates that an image must be specified in the first line.",
+ "imagemap_invalid_image": "Used as error message.",
+ "imagemap_bad_image": "Used as error message.",
+ "imagemap_no_link": "Used as error message. Parameters:\n* $1 - line number",
+ "imagemap_invalid_title": "Used as error message. Parameters:\n* $1 - line number",
+ "imagemap_missing_coord": "Used as error message. Parameters:\n* $1 - line number",
+ "imagemap_unrecognised_shape": "{{doc-important|Do not translate the parameters <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>.}}\nUsed as error message. Parameters:\n* $1 - line number",
+ "imagemap_invalid_coord": "Used as error message. Parameters:\n* $1 - line number",
+ "imagemap_invalid_desc": "Used as error message. Parameters:\n* $1 - list of desc types",
+ "imagemap_description": "Used as HTML <code>title=</code> attribute of <code><nowiki><a></nowiki></code> tag and as HTML <code>alt=</code> attribute of <code><nowiki><img></nowiki></code> tag.",
+ "imagemap_desc_types": "{{optional}}{{doc-important|Keep the same order.}}",
+ "imagemap_poly_odd": "Used as error message. Parameters:\n* $1 - line number"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/qu.json b/www/wiki/extensions/ImageMap/i18n/qu.json
new file mode 100644
index 00000000..c05a9570
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/qu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "imagemap_description": "Kay rikchamanta"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ro.json b/www/wiki/extensions/ImageMap/i18n/ro.json
new file mode 100644
index 00000000..74ffa517
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ro.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cin",
+ "KlaudiuMihaila",
+ "Mihai",
+ "Minisarm"
+ ]
+ },
+ "imagemap_desc": "Permite realizarea unei imagini hartă, cu ajutorul etichetei <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Eroare: trebuie specificată o imagine pe prima linie",
+ "imagemap_invalid_image": "Eroare: imaginea este incorectă sau nu există",
+ "imagemap_bad_image": "Eroare: imaginea este pe o listă neagră pentru această pagină",
+ "imagemap_no_link": "Eroare: nu a fost găsită nici o legătură validă la sfârșitul liniei $1",
+ "imagemap_invalid_title": "Eroare: titlu invalid în legătură în linia $1",
+ "imagemap_missing_coord": "Eroare: coordonate insuficiente pentru forma de la linia $1",
+ "imagemap_unrecognised_shape": "Eroare: formă nerecunoscută în linia $1, fiecare linie trebuie să înceapă cu unul din parametrii: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>",
+ "imagemap_invalid_coord": "Eroare: coordonată incorectă la linia $1, trebuie să fie număr",
+ "imagemap_invalid_desc": "Eroare: parametru \"desc\" invalid, trebuie să fie unul din următorii: <code>$1</code>",
+ "imagemap_description": "Despre această imagine",
+ "imagemap_poly_odd": "Eroare: a fost găsit un poligon cu un număr impar de coordonate în linia $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/roa-tara.json b/www/wiki/extensions/ImageMap/i18n/roa-tara.json
new file mode 100644
index 00000000..ddf7967c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/roa-tara.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "imagemap_desc": "Permette le mappe de immaggine cazzabbele late cliende ausanne 'u tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Errore: a specifià 'n'immaggine jndr'à prima righe",
+ "imagemap_invalid_image": "Errore: l'immaggine jè invalide o non g'esiste",
+ "imagemap_bad_image": "Errore: l'immaggine sus a sta pàgene jè jndr'à lista gnore",
+ "imagemap_no_link": "Errore: nisciune collegamende valide ha state acchiate a fine d'a linèe $1",
+ "imagemap_invalid_title": "Errore: titele invalide jndr'à 'u collegamende a 'a linèe $1",
+ "imagemap_missing_coord": "Errore: non ge stonne abbastanze coordinate pa figure a 'a linèe $1",
+ "imagemap_unrecognised_shape": "Errore: figure none recanusciute a 'a linèe $1, ogne linèe adda accumenzà cu une de quiste: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Errore: coordinate invalide a 'a linèe $1, adda essere 'nu numere",
+ "imagemap_invalid_desc": "Errore: specificazione d'a descrizione (desc) invalide, adda essere une de <code>$1</code>",
+ "imagemap_description": "Sus a st'immaggine",
+ "imagemap_poly_odd": "Errore: acchiate 'nu poligone cu numere dispare de coordinate sus a linèe $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ru.json b/www/wiki/extensions/ImageMap/i18n/ru.json
new file mode 100644
index 00000000..d5f0e129
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ru.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dim Grits",
+ "Kaganer",
+ "Александр Сигачёв"
+ ]
+ },
+ "imagemap_desc": "Позволяет указывать срабатывающие на нажатие карты изображений на стороне клиента с помощью тега <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Ошибка: в первой строке должно быть задано изображение",
+ "imagemap_invalid_image": "Ошибка: неверное или отсутствующее изображение",
+ "imagemap_bad_image": "Ошибка. Изображение входит в чёрный список на этой странице.",
+ "imagemap_no_link": "Ошибка: неверная ссылка в конце строки $1",
+ "imagemap_invalid_title": "Ошибка: неверный заголовок ссылки в строке $1",
+ "imagemap_missing_coord": "Ошибка: недостаточно координат для фигуры в строке $1",
+ "imagemap_unrecognised_shape": "Ошибка: неопознанная фигура в строке $1, каждая строка должна начинаться одним из ключевых слов: <code>default</code>, <code>rect</code>, <code>circle</code> или <code>poly</code>",
+ "imagemap_invalid_coord": "Ошибка: ошибочная координата в строке $1, ожидается число",
+ "imagemap_invalid_desc": "Ошибка: некорректное значение desc, ожидается одно из следующих значений: <code>$1</code>",
+ "imagemap_description": "Описание изображения",
+ "imagemap_desc_types": "верхний правый, нижний правый, нижний левый, верхний левый, ни один",
+ "imagemap_poly_odd": "Ошибка: в строке $1 обнаружено описание многоугольника с лишними координатами"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/rue.json b/www/wiki/extensions/ImageMap/i18n/rue.json
new file mode 100644
index 00000000..5a369733
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/rue.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb"
+ ]
+ },
+ "imagemap_desc": "Доволює створёвати кликачу мапу образку на боцї кліента за помочі значкы <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Хыба: на першім рядку мусить быти заданый образок",
+ "imagemap_invalid_image": "Хыба: файл не є платный або не єствує",
+ "imagemap_bad_image": "Хыба: образок ся находить на чорнім списку",
+ "imagemap_no_link": "Хыба: не нашов ся жаден платный одказ на кінцї рядку $1",
+ "imagemap_invalid_title": "Хыба: неправилна назва в одказї на рядку $1",
+ "imagemap_missing_coord": "Хыба: хыблячі коордінаты про твар на рядку $1",
+ "imagemap_unrecognised_shape": "Хыба: нероспознаный твар на рядку $1, каждый рядок мусить зачінати дефініціов твару: <code>default</code>, <code>rect</code>, <code>circle</code> або <code>poly</code>",
+ "imagemap_invalid_coord": "Хыба: неправилны коордінаты на рядку $1, має быти чісло",
+ "imagemap_invalid_desc": "Хыба: неправилне заданя области desc, має быти єдна з такых можностей: <code>$1</code>",
+ "imagemap_description": "О образку",
+ "imagemap_poly_odd": "Хыба: на рядку $1 найденый многокутник з непарным чіслом коордінат"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sa.json b/www/wiki/extensions/ImageMap/i18n/sa.json
new file mode 100644
index 00000000..f720374f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sa.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shubha",
+ "NehalDaveND"
+ ]
+ },
+ "imagemap_desc": " <code>&lt;imagemap&gt;</code> इदम् उपयुज्य क्लैण्ट्-सैड्-नोदनयोग्यचित्रपटं कर्तुं शक्यते ।",
+ "imagemap_no_image": "दॊषः: प्रथमपङ्क्तौ चित्रं निर्देष्टव्यम्",
+ "imagemap_invalid_image": "दॊषः: इदं चित्रम् अमान्यम् अथवा अविद्यमानम्",
+ "imagemap_bad_image": "दोषः: चित्रम् अस्मिन् पृष्ठे अमानितमस्ति",
+ "imagemap_no_link": "दोषः: $1 पङ्क्तेः अन्ते मान्यः परिसन्धिः कोपि न दृष्टः ।",
+ "imagemap_invalid_title": "दोषः: $1 पङ्क्तौ अनुबन्धस्य अमान्यं शिरोनाम विद्यते",
+ "imagemap_missing_coord": "दोषः : $1 पङ्क्तौ आकाराय आवश्यकाः बिन्दवः न विद्यन्ते",
+ "imagemap_unrecognised_shape": "Error: $1 पङ्क्त्याः आकारे कश्चन दोषः जातः, प्रतिपङ्क्तिः: <code>default</code>, <code>rect</code>, <code>circle</code> अथवा <code>poly</code> इत्येतेन आरब्धा स्यात्",
+ "imagemap_invalid_coord": "Error: $1 पङ्क्तौ अङ्कनं दोषपूर्णम्, संख्या अपेक्षिता",
+ "imagemap_invalid_desc": "दोषः: सदोषविवरणम्, अनयोः अन्यतरः स्यात् <code>$1</code>",
+ "imagemap_description": "अस्य चित्रस्य विषये",
+ "imagemap_poly_odd": "दोषः: $1 पङ्क्तौ विषमसंख्यायुक्तैः अङ्कनैः दोषः दृष्टः"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sah.json b/www/wiki/extensions/ImageMap/i18n/sah.json
new file mode 100644
index 00000000..62e5993a
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sah.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul"
+ ]
+ },
+ "imagemap_desc": "Бу <code>&lt;imagemap&gt;</code> тиэги туһанан клиент өттүгэр каартаны баттааһын үлэлиирин көҥүллүүр",
+ "imagemap_no_image": "Error: бастакы строкатыгар ойуу баар буолуохтаах",
+ "imagemap_invalid_image": "Error: ойуу сыыһа бэриллибит, эбэтэр отой суох",
+ "imagemap_bad_image": "Алҕас: ойуу бу сирэй хара испииһэгэр киирэр",
+ "imagemap_no_link": "Error: $1 строка бүтэһигэр сыыһа ыйынньык турбут",
+ "imagemap_invalid_title": "Error: $1 строкаҕа ыйынньык баһа сыыһа суруллубут",
+ "imagemap_missing_coord": "Error: недостаточно координат для фигуры в строке $1",
+ "imagemap_unrecognised_shape": "Error: неопознанная фигура в строке $1, каждая строка должна начинаться одним из ключевых слов: <code>default</code>, <code>rect</code>, <code>circle</code> или <code>poly</code>",
+ "imagemap_invalid_coord": "Error: $1 строкаҕа сыыһа координата суруллубут, чыыһыла буолуохтаах",
+ "imagemap_invalid_desc": "Error: desc суолтата сыыһа турбут, мантан талыахха наада: <code>$1</code>",
+ "imagemap_description": "Ойуу туһунан",
+ "imagemap_poly_odd": "Алҕас: $1 строкааҕа наһаа элбэх координааталаах многоугольник туһунан булулунна"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sat.json b/www/wiki/extensions/ImageMap/i18n/sat.json
new file mode 100644
index 00000000..dc837642
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sat.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ramjit Tudu"
+ ]
+ },
+ "imagemap_description": "ᱱᱚᱣᱟ ᱪᱤᱛᱟᱹᱨ ᱵᱟᱵᱚᱫᱽᱛᱮ"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/scn.json b/www/wiki/extensions/ImageMap/i18n/scn.json
new file mode 100644
index 00000000..c74feb61
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/scn.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Santu"
+ ]
+ },
+ "imagemap_desc": "Pirmetti di rializzari ''image map'' cliccàbbili latu client cô tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Sbàgghiu: s'hà spicificari na mmàggini ntâ prima riga",
+ "imagemap_invalid_image": "Sbàgghiu: la mmàggini nun è vàlida o non c'è",
+ "imagemap_bad_image": "Sbàgghiu: la mmàggini s'attrova ntâ blacklist pi sta pàggina",
+ "imagemap_no_link": "\nSbàgghiu: non vinni attruvatu nuddu lijami vàlidu a la fini dâ riga $1",
+ "imagemap_invalid_title": "Sbàgghiu: tìtulu dû lijami non vàlidu ntâ riga $1",
+ "imagemap_missing_coord": "Sbàgghiu: non ci sunnu abbastanza cuurdinati pi la furma spicificata nti la tiga $1",
+ "imagemap_unrecognised_shape": "Sbàgghiu: Furma (shape) non canusciuta nti la riga $1, ogniduna di li righi hà accuminciari cu unu di li furmi ccà di sècutu: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Sbàgghiu: cuurdinata non vàlida ntâ riga $1, idda hà èssiri nu nùmmiru",
+ "imagemap_invalid_desc": "Sbàgghiu: valuri non vàlidu pô paràmitru desc, hà èssiri unu di chisti: <code>$1</code>",
+ "imagemap_description": "Nfumazzioni supr'a â mmàggini",
+ "imagemap_desc_types": "top-right (susu-a manu dritta), bottom-right (jusu-a manu dritta) , bottom-left (jusu-a manu manca), top-left (susu-a manu manca), none (nenti)",
+ "imagemap_poly_odd": "Sbàgghiu: attruvatu pulìgunu c'un nùmmiru sparu di cuurdinati nti la riga $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/si.json b/www/wiki/extensions/ImageMap/i18n/si.json
new file mode 100644
index 00000000..cfd64fd5
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/si.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "නන්දිමිතුරු"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> ටැගය භාවිතයෙන් සේවාලාභි-අන්තයෙහි ක්ලික්කලහැකි රූප සිතියම් වලට ඉඩ සලසයි",
+ "imagemap_no_image": "දෝෂය: ඔබ විසින්, පළමු පේලියෙහි රූපයක් හුවාදැක්වියයුතුය",
+ "imagemap_invalid_image": "දෝෂය: රූපය අනීතිකයි නැතිනම් නොපවතියි",
+ "imagemap_bad_image": "දෝෂය: රූපය මෙම පටුවෙහි අපලේඛණය කොට ඇත",
+ "imagemap_no_link": "දෝෂය: $1 පේළිය කෙළවර කිසිදු නීතික සබැඳියක් හමුනොවිණි",
+ "imagemap_invalid_title": "දෝෂය: $1 පේළියෙහි සබැඳියෙහි ශීර්ෂය අනීතිකයි",
+ "imagemap_missing_coord": "දෝෂය: $1 පේළියෙහි හැඩය සඳහා අවශ්‍ය තරමට ඛණ්ඩාංක සපයා නොමැත",
+ "imagemap_unrecognised_shape": "දෝෂය: $1 පේළියෙහි හැඩය හඳුනාගතනොහැකි විය, සෑම පේළියක්ම මෙයින් එකකික් ඇරඹිය යුතුය: <code>default</code>, <code>rect</code>, <code>circle</code> හෝ <code>poly</code>",
+ "imagemap_invalid_coord": "දෝෂය: $1 පේළියෙහි අනීතික ඛණ්ඩාංකයකි, එය සංඛ්‍යාවක් විය යුතුය",
+ "imagemap_invalid_desc": "දෝෂය: desc පිරිවිතරය අනීතිකයි, මෙයින් එකක් විය යුතුය: <code>$1</code>",
+ "imagemap_description": "මෙම රූපය පිළිබඳ",
+ "imagemap_desc_types": "ඉහළ-දකුණ, පහළ-දකුණ, පහළ-වම, ඉහළ-වම, කිසිවක් නැත",
+ "imagemap_poly_odd": "දෝෂය: $1 පේළියෙහි ඛණ්ඩාංක ඔත්තේ ගණනක් සමග poly හමුවිය"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sk.json b/www/wiki/extensions/ImageMap/i18n/sk.json
new file mode 100644
index 00000000..ceb3ad60
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sk.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84"
+ ]
+ },
+ "imagemap_desc": "Poskytuje klikateľné obrázkové mapy spracúvané na strane klienta pomocou značky <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Chyba: musí mať na prvom riadku uvedený obrázok",
+ "imagemap_invalid_image": "Chyba: obrázok je neplatný alebo neexistuje",
+ "imagemap_bad_image": "Chyba: obrázok na tejto stránke sa nachádza na čiernej listine",
+ "imagemap_no_link": "Chyba: na konci riadka $1 nebol nájdený platný odkaz",
+ "imagemap_invalid_title": "Chyba: neplatný nadpis v odkaze na riadku $1",
+ "imagemap_missing_coord": "Chyba: nedostatok súradníc na vytvorenie tvaru na riadku $1",
+ "imagemap_unrecognised_shape": "Chyba: nerozpoznaný tvar na riadku $1, každý riadok musí začínať jedným z: <code>default</code>, <code>rect</code>, <code>circle</code> alebo <code>poly</code>",
+ "imagemap_invalid_coord": "Chyba: neplatná súradnica na riadku $1, musí to byť číslo",
+ "imagemap_invalid_desc": "Chyba: neplatný popis, musí byť jedno z nasledovných: <code>$1</code>",
+ "imagemap_description": "O tomto obrázku",
+ "imagemap_poly_odd": "Chyba: nájdený mnohouholník s nepárnym počtom súradníc na riadku $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sl.json b/www/wiki/extensions/ImageMap/i18n/sl.json
new file mode 100644
index 00000000..370c380f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sl.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334"
+ ]
+ },
+ "imagemap_desc": "Omogoča klikljive zemljevide slik na odjemalski strani z uporabo oznake <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Napaka: v prvi vrstici morate navesti sliko",
+ "imagemap_invalid_image": "Napaka: slika je neveljavna ali ne obstaja",
+ "imagemap_bad_image": "Napaka: slika je na tej strani na črnem seznamu",
+ "imagemap_no_link": "Napaka: na koncu vrstice $1 ni bila najdena veljavna povezava",
+ "imagemap_invalid_title": "Napaka: neveljaven naslov v povezavi v vrstici $1",
+ "imagemap_missing_coord": "Napaka: ni dovolj koordinat za obliko v vrstici $1",
+ "imagemap_unrecognised_shape": "Napaka: nerazpoznavna oblika v vrsici $1; vsaka vrstica se mora začeti z enim od: <code>default</code>, <code>rect</code>, <code>circle</code> ali <code>poly</code>",
+ "imagemap_invalid_coord": "Napaka: neveljavna koordinata v vrstici $1, mora biti število",
+ "imagemap_invalid_desc": "Napaka: neveljavno določilo desc, mora biti eno izmed: <code>$1</code>",
+ "imagemap_description": "O tej sliki",
+ "imagemap_poly_odd": "Napaka: najden večkotnik z lihim številom koordinat v vrstici $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sq.json b/www/wiki/extensions/ImageMap/i18n/sq.json
new file mode 100644
index 00000000..6d51d6ac
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sq.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Olsi"
+ ]
+ },
+ "imagemap_desc": "Lejon klientin-side klikueshme harta figure duke përdorur etiketën <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Gabim: duhet të specifikohet një figurë në rreshtin e parë",
+ "imagemap_invalid_image": "Gabim: figura është e pavlefshme ose joekzistente",
+ "imagemap_bad_image": "Gabim: figura është në listën e zezë në këtë faqe",
+ "imagemap_no_link": "Gabim: nuk u gjet asnjë lidhje në fund të rreshtit $1",
+ "imagemap_invalid_title": "Gabim: titull i pavlefshëm në lidhjen tek rreshti $1",
+ "imagemap_missing_coord": "Gabim: nuk ka mjaftueshëm koordinata për formën tek rreshti $1",
+ "imagemap_unrecognised_shape": "Gabim: formë e papranuar tek rreshti $1, çdo rresht duhet të fillojë me një: <code>default</code>, <code>rect</code>, cicrcle ose <code>poly</code>",
+ "imagemap_invalid_coord": "Gabim: koordinatë e pavlefshme tek rreshti $1, duhet të jetë një numër",
+ "imagemap_invalid_desc": "Gabim: desc specifikim i pavlefshëm, duhet të jetë një nga: <code>$1</code>",
+ "imagemap_description": "Rreth kësaj figure",
+ "imagemap_poly_odd": "Gabim: u gjet poli me numër tek i koordinatave në rreshtin $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sr-ec.json b/www/wiki/extensions/ImageMap/i18n/sr-ec.json
new file mode 100644
index 00000000..ea03c8e8
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sr-ec.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Millosh",
+ "Rancher",
+ "Sasa Stefanovic",
+ "Михајло Анђелковић",
+ "Milicevic01"
+ ]
+ },
+ "imagemap_desc": "Омогућава клијентској страни кликабилну мапу коришћњењм ознаке <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Грешка: неопходно је одредити слику у првој линији.",
+ "imagemap_invalid_image": "Грешка: слика је лоша или не постоји.",
+ "imagemap_bad_image": "Грешка: слика се налази на црном списку за ову страну",
+ "imagemap_no_link": "Грешка: није пронађена ниједна ваљана веза на крају линије $1.",
+ "imagemap_invalid_title": "Грешка: лош наслов у вези у линији $1.",
+ "imagemap_missing_coord": "Грешка: нема довољно координата за облик на линији $1.",
+ "imagemap_unrecognised_shape": "Грешка: непознат облик на линији $1, свака линија мора почети једном од: <code>default</code>, <code>rect</code>, <code>circle</code> или <code>poly</code>.",
+ "imagemap_invalid_coord": "Грешка: лоше координате у линији $1; морају бити број.",
+ "imagemap_invalid_desc": "Грешка: лоша спецификација desc, мора бити једно од: <code>$1</code>.",
+ "imagemap_description": "О слици",
+ "imagemap_desc_types": "горе-десно, доле-десно, доле-лево, горе-лево, нема",
+ "imagemap_poly_odd": "Грешка: нађен је полигон са непарним бројем координата у линији $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sr-el.json b/www/wiki/extensions/ImageMap/i18n/sr-el.json
new file mode 100644
index 00000000..7a5a8f0b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sr-el.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello",
+ "Milicevic01",
+ "Сербијана"
+ ]
+ },
+ "imagemap_desc": "Omogućava klijentskoj strani klikabilnu mapu korišćnjenjm oznake <code>&lt;imagemap&gt;</code>.",
+ "imagemap_no_image": "Greška: neophodno je odrediti sliku u prvoj liniji.",
+ "imagemap_invalid_image": "Greška: slika je loša ili ne postoji.",
+ "imagemap_bad_image": "Greška: slika se nalazi na crnom spisku za ovu stranu",
+ "imagemap_no_link": "Greška: nije pronađena nijedna valjana veza na kraju linije $1.",
+ "imagemap_invalid_title": "Greška: loš naslov u vezi u liniji $1.",
+ "imagemap_missing_coord": "Greška: nema dovoljno koordinata za oblik na liniji $1.",
+ "imagemap_unrecognised_shape": "Greška: nepoznat oblik na liniji $1, svaka linija mora početi jednom od: <code>default</code>, <code>rect</code>, <code>circle</code> ili <code>poly</code>.",
+ "imagemap_invalid_coord": "Greška: loše koordinate u liniji $1; moraju biti broj.",
+ "imagemap_invalid_desc": "Greška: loša specifikacija desc, mora biti jedno od: <code>$1</code>.",
+ "imagemap_description": "O slici",
+ "imagemap_desc_types": "gore-desno, dole-desno, dole-levo, gore-levo, nema",
+ "imagemap_poly_odd": "Greška: nađen je poligon sa neparnim brojem koordinata u liniji $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/stq.json b/www/wiki/extensions/ImageMap/i18n/stq.json
new file mode 100644
index 00000000..1aefbb4b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/stq.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pyt"
+ ]
+ },
+ "imagemap_desc": "Moaket dät muugelk ferwies-sensitive Grafike ''(image maps)'' tou moakjen mäd Hälpe fon ju <code>&lt;imagemap&gt;</code>-Syntax",
+ "imagemap_no_image": "Failer: In ju eerste Riege mout ne Bielde ounroat wäide",
+ "imagemap_invalid_image": "Failer: Bielde is uungultich of is nit deer",
+ "imagemap_bad_image": "Failer: Ju Bielde stoant ap ju Lieste fon nit wonskede Bielden",
+ "imagemap_no_link": "Failer: Ap Eende fon Riege $1 wuude neen gultige Link fuunen",
+ "imagemap_invalid_title": "Failer: uungultigen Tittel in dän Link in Riege $1",
+ "imagemap_missing_coord": "Failer: Tou min Koordinate in Riege $1 foar dän Uumriet",
+ "imagemap_unrecognised_shape": "Failer: Uunbekoande Uumrietfoarm in Riege $1. Älke Riege mout mäd aan fon disse Parametere ounfange: <tt><code>default</code>, <code>rect</code>, <code>circle</code></tt> of <tt><code>poly</code></tt>",
+ "imagemap_invalid_coord": "Failer: Uungultige Koordinate in Riege $1: der sunt bloot Taale toulät",
+ "imagemap_invalid_desc": "Failer: Uungultigen „desc“-Parameter, muugelk sunt: <code>$1</code>",
+ "imagemap_description": "Uur disse Bielde",
+ "imagemap_poly_odd": "Failer: Polygon mäd uunpooren Antaal an Koordinoaten in Riege $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/su.json b/www/wiki/extensions/ImageMap/i18n/su.json
new file mode 100644
index 00000000..8229eafe
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/su.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kandar"
+ ]
+ },
+ "imagemap_description": "Ngeunaan ieu gambar"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sv.json b/www/wiki/extensions/ImageMap/i18n/sv.json
new file mode 100644
index 00000000..79af5b31
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sv.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boivie",
+ "Lejonel",
+ "M.M.S.",
+ "WikiPhoenix"
+ ]
+ },
+ "imagemap_desc": "Lägger till taggen <code>&lt;imagemap&gt;</code> för klickbara bilder",
+ "imagemap_no_image": "Fel: en bild måste anges på första raden",
+ "imagemap_invalid_image": "Fel: bilden är ogiltig eller existerar inte",
+ "imagemap_bad_image": "Fel: bilden är svartlistad på den här sidan",
+ "imagemap_no_link": "Fel: ingen giltig länk fanns i slutet av rad $1",
+ "imagemap_invalid_title": "Fel: felaktig titel i länken på rad $1",
+ "imagemap_missing_coord": "Fel: koordinater saknas för området på rad $1",
+ "imagemap_unrecognised_shape": "Fel: Okänd områdesform på rad $1, varje rad måste börja med något av följande: <code>default</code>, <code>rect</code>, <code>circle</code> eller <code>poly</code>",
+ "imagemap_invalid_coord": "Fel: ogiltig koordinat på rad $1, måste vara ett tal",
+ "imagemap_invalid_desc": "Fel: ogiltig specifikation av desc, den måste var en av följande: <code>$1</code>",
+ "imagemap_description": "Bildinformation",
+ "imagemap_poly_odd": "Fel: hittade poly med udda antal koordinater på rad $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/sw.json b/www/wiki/extensions/ImageMap/i18n/sw.json
new file mode 100644
index 00000000..31cbd0df
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/sw.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwisha"
+ ]
+ },
+ "imagemap_description": "Kuhusu picha hii"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ta.json b/www/wiki/extensions/ImageMap/i18n/ta.json
new file mode 100644
index 00000000..44a96a30
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ta.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karthi.dr",
+ "Shanmugamp7",
+ "மதனாஹரன்"
+ ]
+ },
+ "imagemap_no_image": "பிழை:ஒரு படத்தை முதல் வரியில் கண்டிப்பாக குறிப்பிடவேண்டும்.",
+ "imagemap_invalid_image": "பிழை:படம் செல்லத்தக்கதல்ல அல்லது இல்லாத ஒன்று",
+ "imagemap_bad_image": "பிழை:படம் இந்த பக்கத்தில் ஏற்கத்தகாதது என பட்டியலிடப்பட்டுள்ளது.",
+ "imagemap_no_link": "தவறு: $1 வரியின் முடிவில் செல்லுபடியாகும் தொடுப்பு எதுவும் காணப்படவில்லை",
+ "imagemap_invalid_title": "பிழை:செல்லத்தகாத தலைப்பு இணைப்பின் வரி $1ல்",
+ "imagemap_missing_coord": "தவறு: $1 வரியில் வடிவத்துக்குப் போதுமான ஆள்கூறுகள் இல்லை",
+ "imagemap_description": "இப் படத்தைப் பற்றி"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/te.json b/www/wiki/extensions/ImageMap/i18n/te.json
new file mode 100644
index 00000000..f0afc80f
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/te.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chaduvari",
+ "Veeven"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> ట్యాగును వాడటం ద్వారా క్లిక్కదగ్గ క్లయంటు-వైపు ఇమేజి మ్యాపులను అనుమతిస్తుంది",
+ "imagemap_no_image": "Error: తప్పనిసరిగా మొదటి లైనులో ఓ బొమ్మని ఇవ్వాలి",
+ "imagemap_invalid_image": "Error: తప్పుడు లేదా ఉనికిలో లేని బొమ్మ",
+ "imagemap_no_link": "Error: $1వ లైను చివర సరియైన లింకు కనబడలేదు",
+ "imagemap_invalid_title": "Error: $1వ లైనులో ఉన్న లింకులో తప్పుడు శీర్షిక",
+ "imagemap_missing_coord": "Error: ఆకృతికి తగినన్ని నిరూపకాలు $1వ లైనులో లేవు",
+ "imagemap_invalid_coord": "Error: $1వ లైనులో తప్పుడు నిరూపకం, అది ఖచ్చితంగా సంఖ్య అయివుండాలి.",
+ "imagemap_invalid_desc": "Error: descని తప్పుగా ఇచ్చారు, అది వీటిల్లో ఏదో ఒకటి అయివుండాలి: <code>$1</code>",
+ "imagemap_description": "ఈ బొమ్మ గురించి"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tet.json b/www/wiki/extensions/ImageMap/i18n/tet.json
new file mode 100644
index 00000000..b7c02e71
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tet.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "MF-Warburg"
+ ]
+ },
+ "imagemap_description": "Kona-ba imajen ne'e"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tg-cyrl.json b/www/wiki/extensions/ImageMap/i18n/tg-cyrl.json
new file mode 100644
index 00000000..7f9c12ee
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tg-cyrl.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahim"
+ ]
+ },
+ "imagemap_desc": "Имкони эҷоди нақшаҳои тасвирӣ қобили клик кардан дар самти корбарро бо истифода аз барчасби <code>&lt;imagemap&gt;</code> фароҳам меоварад",
+ "imagemap_no_image": "Error: бояд дар сатри аввал як аксро мушаххас кунед",
+ "imagemap_invalid_image": "Error: акс ғайримиҷоз аст ё вуҷуд надорад",
+ "imagemap_no_link": "Error: ҳеҷ пайванди миҷозе то интиҳои сатри $1 пайдо нашуд",
+ "imagemap_invalid_title": "Error: унвони ғайримиҷоз дар пайванди сатри $1",
+ "imagemap_missing_coord": "Error: теъдоди ҳамоҳангӣ дар сатри $1 барои шакл кофӣ нест",
+ "imagemap_unrecognised_shape": "Error: шакли ношинохта дар сатри $1, ҳар сатр бояд бо яке аз ин дастурот оғоз шавад: <code>default</code>, <code>rect</code>, <code>circle</code> ё <code>poly</code>",
+ "imagemap_invalid_coord": "Error: баробарии ғайримиҷоз дар сатри $1, бояд адад бошад",
+ "imagemap_invalid_desc": "Error: тавзеҳоти ғайримиҷоз, бояд яке аз ин маворид бошад: <code>$1</code>",
+ "imagemap_description": "Дар бораи ин акс"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tg-latn.json b/www/wiki/extensions/ImageMap/i18n/tg-latn.json
new file mode 100644
index 00000000..6fc85f6e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tg-latn.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "imagemap_desc": "Imkoni eçodi naqşahoi tasvirī qobili klik kardan dar samti korbarro bo istifoda az barcasbi <code>&lt;imagemap&gt;</code> faroham meovarad",
+ "imagemap_no_image": "Error: bojad dar satri avval jak aksro muşaxxas kuned",
+ "imagemap_invalid_image": "Error: aks ƣajrimiçoz ast jo vuçud nadorad",
+ "imagemap_no_link": "Error: heç pajvandi miçoze to intihoi satri $1 pajdo naşud",
+ "imagemap_invalid_title": "Error: unvoni ƣajrimiçoz dar pajvandi satri $1",
+ "imagemap_missing_coord": "Error: te'dodi hamohangī dar satri $1 baroi şakl kofī nest",
+ "imagemap_unrecognised_shape": "Error: şakli noşinoxta dar satri $1, har satr bojad bo jake az in dasturot oƣoz şavad: <code>default</code>, <code>rect</code>, <code>circle</code> jo <code>poly</code>",
+ "imagemap_invalid_coord": "Error: barobariji ƣajrimiçoz dar satri $1, bojad adad boşad",
+ "imagemap_invalid_desc": "Error: tavzehoti ƣajrimiçoz, bojad jake az in mavorid boşad: <code>$1</code>",
+ "imagemap_description": "Dar borai in aks"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/th.json b/www/wiki/extensions/ImageMap/i18n/th.json
new file mode 100644
index 00000000..2bc11595
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/th.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nullzero"
+ ]
+ },
+ "imagemap_description": "เกี่ยวกับภาพนี้"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tk.json b/www/wiki/extensions/ImageMap/i18n/tk.json
new file mode 100644
index 00000000..60051a00
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tk.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hanberke"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> tegini ulanyp, müşderi tarapyndan tyklanyp boljak surat kartalaryna rugsat berýär",
+ "imagemap_no_image": "Säwlik: birinji setirde bir surat görkezmeli",
+ "imagemap_invalid_image": "Säwlik: surat nädogry ýa-da ýok",
+ "imagemap_bad_image": "Säwlik: surat bu sahypada gara sanawda",
+ "imagemap_no_link": "Säwlik: $1 setiriň ahyrynda dogry çykgyt tapylmady",
+ "imagemap_invalid_title": "Säwlik: $1 setirdäki çykgytda nädogry at",
+ "imagemap_missing_coord": "Säwlik: $1 setirde surat üçin ýeterlik koordinata ýok",
+ "imagemap_unrecognised_shape": "Säwlik: $1 setirde ykrar edilmedik şekil, her setir şulardan biri bilen başlamaly: <code>default</code>, <code>rect</code>, cirle ýa-da <code>poly</code>",
+ "imagemap_invalid_coord": "Säwlik: $1 setirde nädogry koordinata, san bolmaly",
+ "imagemap_invalid_desc": "Säwlik: nädogry desc bahasy, şulardan biri bolmaly: <code>$1</code>",
+ "imagemap_description": "Bu surat hakda",
+ "imagemap_poly_odd": "Säwlik: $1 setirde täk sanly koordinata eýe poly tapyldy"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tl.json b/www/wiki/extensions/ImageMap/i18n/tl.json
new file mode 100644
index 00000000..a9c8e14d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tl.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw"
+ ]
+ },
+ "imagemap_desc": "Nagpapahintulot ng napipindot na mga larawang mapa sa panig ng mga kliyente na ginagamitan ng tatak na <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Kamalian: dapat tumukoy ng isang larawan sa unang guhit/hanay",
+ "imagemap_invalid_image": "Kamalian: hindi tanggap o hindi umiiral ang isang larawan",
+ "imagemap_bad_image": "Kamalian: ipinagbabawal (nasa \"itim na talaan\") sa pahinang ito ang larawan",
+ "imagemap_no_link": "Kamalian: walang natagpuang tanggap na kawing sa hulihan ng guhit/hanay na $1",
+ "imagemap_invalid_title": "Kamalian: may hindi tanggap na pamagat sa kawing sa guhit/hanay na $1",
+ "imagemap_missing_coord": "Kamalian: walang sapat na tugmaang pampook para sa hugis sa guhit/hanay na $1",
+ "imagemap_unrecognised_shape": "Kamalian: hindi nakikilalang hugis sa guhit/hanay na $1, bawat guhit ay dapat na nagsisimula sa kahit na isang: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>.",
+ "imagemap_invalid_coord": "Kamalian: hindi tanggap na tugmaang pampook sa guhit/hanay na $1, dapat na isang bilang",
+ "imagemap_invalid_desc": "Kamalian: hindi tanggap na pagtukoy sa paglalarawan, dapat na isa sa: <code>$1</code>",
+ "imagemap_description": "Tungkol sa larawang ito",
+ "imagemap_desc_types": "pang-itaas na kanan, pang-ibabang kanan, pang-ibabang kaliwa, pang-itaas na kaliwa, wala",
+ "imagemap_poly_odd": "Kamalian: nakatagpo ng isang \"poli\" (''poly'') na mayroong bilang na may butal na pang-pagtutugmang pampook na nasa guhit/hanay na $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/tr.json b/www/wiki/extensions/ImageMap/i18n/tr.json
new file mode 100644
index 00000000..d3d05b43
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/tr.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joseph",
+ "Karduelis"
+ ]
+ },
+ "imagemap_desc": "<code>&lt;imagemap&gt;</code> etiketini kullanarak, alıcı-tarafında tıklanabilir resim haritalarına izin verir",
+ "imagemap_no_image": "Hata: ilk satırda bir resim belirtmelisiniz",
+ "imagemap_invalid_image": "Hata: resim geçersiz ya da mevcut değil",
+ "imagemap_bad_image": "Hata: resim bu sayfada karalistelenmiş",
+ "imagemap_no_link": "Hata: $1. satırın sonunda geçerli bir bağlantı bulunamadı",
+ "imagemap_invalid_title": "Hata: $1. satırdaki bağlantıda geçersiz başlık",
+ "imagemap_missing_coord": "Hata: $1. satırda şekil için yeterli koordinat yok",
+ "imagemap_unrecognised_shape": "Hata: $1. satırda tanımlanmamış şekil, her satır şunlardan biriyle başlamalı: <code>default</code>, <code>rect</code>, cirle ya da <code>poly</code>",
+ "imagemap_invalid_coord": "Hata: $1. satırda geçersiz koordinat, bir sayı olmalı",
+ "imagemap_invalid_desc": "Hata: geçersiz desc belirlemesi, şunlardan biri olmalı: <code>$1</code>",
+ "imagemap_description": "Resim hakkında",
+ "imagemap_poly_odd": "Hata: $1. satırda tek sayıda koordinata sahip poly bulundu"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/uk.json b/www/wiki/extensions/ImageMap/i18n/uk.json
new file mode 100644
index 00000000..58d0963e
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/uk.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "AS",
+ "Ahonc",
+ "Alex Khimich",
+ "Dim Grits"
+ ]
+ },
+ "imagemap_desc": "Дозволяє створювати на боці клієнта карти зображень, які спрацьовують при натисканні, за допомогою тегу <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Помилка: у першому рядку має бути задане зображення",
+ "imagemap_invalid_image": "Помилка: неправильне або відсутнє зображення",
+ "imagemap_bad_image": "Помилка: зображення на цій сторінці присутнє у чорному списку",
+ "imagemap_no_link": "Помилка: неправильне посилання в кінці рядка $1",
+ "imagemap_invalid_title": "Помилка: неправильний заголовок в посиланні в рядку $1",
+ "imagemap_missing_coord": "Помилка: недостатньо координат для фігури в рядку $1",
+ "imagemap_unrecognised_shape": "Помилка: нерозпізнана фігура в рядку $1, кожен рядок повинен починатися з одного з ключових слів: <code>default</code>, <code>rect</code>, <code>circle</code> або <code>poly</code>",
+ "imagemap_invalid_coord": "Помилка: помилкова координата в рядку $1, має бути число",
+ "imagemap_invalid_desc": "Помилка: помилкове значення desc, має бути одне з таких значень: <code>$1</code>",
+ "imagemap_description": "Опис зображення",
+ "imagemap_desc_types": "угорі праворуч, унизу праворуч, унизу ліворуч, угорі ліворуч, ніде",
+ "imagemap_poly_odd": "Помилка: в рядку $1 знайдений многокутник із непарною кількістю координат"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/ur.json b/www/wiki/extensions/ImageMap/i18n/ur.json
new file mode 100644
index 00000000..186e79ca
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/ur.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "BukhariSaeed"
+ ]
+ },
+ "imagemap_invalid_image": "خطا: تصویر نا درست یا غیر موجود ہے۔",
+ "imagemap_bad_image": "خطا: تصویر اس صفحہ پر بلیک لسٹ ہے۔",
+ "imagemap_no_link": "خطا: سطر $1 کے آخر میں کوئی درست ربط نہیں ملا۔",
+ "imagemap_invalid_title": "خطا: سطر $1 پر ربط میں نادرست عنوان۔",
+ "imagemap_description": "اس تصویر کے متعلق"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/vec.json b/www/wiki/extensions/ImageMap/i18n/vec.json
new file mode 100644
index 00000000..652d6899
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/vec.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua"
+ ]
+ },
+ "imagemap_desc": "Parméte de realizar ''image map'' clicàbili lato client col tag <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Error: se gà da specificar na imagine ne la prima riga",
+ "imagemap_invalid_image": "Error: l'imagine no la xe valida o no la esiste",
+ "imagemap_bad_image": "Eror: l'imagine la se cata su la lista nera de sta pagina",
+ "imagemap_no_link": "Error: no xe stà catà nissun colegamento valido a la fine de la riga $1",
+ "imagemap_invalid_title": "Error: titolo del colegamento mìa valido ne la riga $1",
+ "imagemap_missing_coord": "Error: no ghe xe coordinate in bisogno par la forma speçificada ne la riga $1",
+ "imagemap_unrecognised_shape": "Error: Forma (shape) mìa riconossiùa ne la riga $1, ogni riga la ga da scuminsiar con uno dei seguenti: <code>default</code>, <code>rect</code>, <code>circle</code> o <code>poly</code>",
+ "imagemap_invalid_coord": "Error: coordinata mìa valida ne la riga $1, la gà da èssar un nùmaro",
+ "imagemap_invalid_desc": "Error: Valor mìa valido par el parametro desc, el gà da èssar uno dei seguenti: $1",
+ "imagemap_description": "Informazion su sta imagine",
+ "imagemap_poly_odd": "Erór: gò catà un polìgono co' un nùmaro dispari de coordinate in te la riga $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/vep.json b/www/wiki/extensions/ImageMap/i18n/vep.json
new file mode 100644
index 00000000..e480d9ba
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/vep.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "imagemap_description": "Necen kuvan polhe"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/vi.json b/www/wiki/extensions/ImageMap/i18n/vi.json
new file mode 100644
index 00000000..b7ccdd6c
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/vi.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran"
+ ]
+ },
+ "imagemap_desc": "Thêm những bản đồ hình có liên kết dùng thẻ <code>&lt;imagemap&gt;</code>",
+ "imagemap_no_image": "Lỗi: phải đưa tên hình vào dòng đầu tiên",
+ "imagemap_invalid_image": "Lỗi: hình không hợp lệ hay không tồn tại",
+ "imagemap_bad_image": "Lỗi: cấm nhúng hình đó vào trang này",
+ "imagemap_no_link": "Lỗi: không có liên kết hợp lệ ở cuối dòng $1",
+ "imagemap_invalid_title": "Lỗi: văn bản liên kết không hợp lệ ở dòng $1",
+ "imagemap_missing_coord": "Lỗi: không có đủ tọa độ cho vùng ở dòng $1",
+ "imagemap_unrecognised_shape": "Lỗi: không hiểu hình dạng ở dòng $1, mỗi dòng phải bắt đầu với một trong: <code>default</code>, <code>rect</code>, <code>circle</code>, hay <code>poly</code>",
+ "imagemap_invalid_coord": "Lỗi: tọa độ không hợp lệ ở dòng $1, phải là số",
+ "imagemap_invalid_desc": "Lỗi: chọn desc không hợp lệ, phải là một trong: $1",
+ "imagemap_description": "Thông tin về hình này",
+ "imagemap_desc_types": "trên-phải, dưới-phải, dưới-trái, trên-trái, không",
+ "imagemap_poly_odd": "Lỗi: đa giác có tọa độ không đầy đủ ở dòng $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/vo.json b/www/wiki/extensions/ImageMap/i18n/vo.json
new file mode 100644
index 00000000..7fc31b0d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/vo.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Smeira"
+ ]
+ },
+ "imagemap_no_image": "Error: lien balid muton keninükön magodanemi",
+ "imagemap_invalid_image": "Error: magod no lonöfon u no dabinon",
+ "imagemap_bad_image": "Pöl: magod binon in blägalised",
+ "imagemap_no_link": "Error: yüm lonöföl no petuvon finü lien: $1",
+ "imagemap_invalid_title": "Error: tiäd no lonöföl pö yüm su lien: $1",
+ "imagemap_invalid_coord": "Error: koordinats no lonöföls su lien $1: mutons binön num",
+ "imagemap_description": "Tefü magod at"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/yi.json b/www/wiki/extensions/ImageMap/i18n/yi.json
new file mode 100644
index 00000000..877e67eb
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/yi.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "imagemap_desc": "דערמעגלעכט קליענט־זײַט בילד מאפעס מיטן <code>&lt;imagemap&gt;</code> טאַג",
+ "imagemap_no_image": "טעות: מען מוז ספעציפיצירן א בילד אין דער ערשטער שורה",
+ "imagemap_invalid_image": "טעות: בילד איז אומגילטיק אָדער נישט פֿאַרהאַנען",
+ "imagemap_bad_image": "טעות: מען טאר נישט שטעלן דאס בילד אויף דעם בלאט",
+ "imagemap_no_link": "טעות: נישט געטראפן קיין גילטיקן לינק ביים סוף פון שורה $1",
+ "imagemap_invalid_title": "טעות: אומגילטיקער טיטל אין פֿאַרבינדונג אין שורה $1",
+ "imagemap_missing_coord": "טעות: נישט גענוג קאארדינאטן פאר פארעם אין שורה $1",
+ "imagemap_unrecognised_shape": "טעות: אומבאקאנטע פארעם אין שורה $1, יעדע שורה מוז אנהייבן מיט איינעם פון: <code>default</code>, <code>rect</code>, <code>circle</code> or <code>poly</code>",
+ "imagemap_invalid_coord": "טעות: אומגילטיקער קאארדינאט אין שורה $1, מוז זיין א נומער",
+ "imagemap_invalid_desc": "טעות: אומגילטיקע desc פאראמעטער, מוז זיין איינער פון: <code>$1</code>",
+ "imagemap_description": "וועגן דעם בילד",
+ "imagemap_poly_odd": "טעות: געטראפן poly מיט נומיקער צאל קאארדינאטן אין שורה $1"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/yo.json b/www/wiki/extensions/ImageMap/i18n/yo.json
new file mode 100644
index 00000000..41b670f0
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/yo.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Demmy"
+ ]
+ },
+ "imagemap_no_image": "Àsìṣe: àwòrán gbọ́dọ̀ jẹ́ títọ́kasí ní inú ìlà àkọ́kọ́",
+ "imagemap_missing_coord": "Àsìṣe: àwọn ajọfọ̀nàkò kò tó fún síṣerí ní ìlà $1",
+ "imagemap_description": "Nípa àwòrán yìí"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/yue.json b/www/wiki/extensions/ImageMap/i18n/yue.json
new file mode 100644
index 00000000..ddca32e7
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/yue.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "imagemap_desc": "容許客戶端可以用<code>&lt;imagemap&gt;</code>標籤整可撳圖像地圖",
+ "imagemap_no_image": "錯誤: 一定要響第一行指定一幅圖像",
+ "imagemap_invalid_image": "錯誤: 圖像唔正確或者唔存在",
+ "imagemap_bad_image": "錯誤: 圖像響呢一版已經列入咗黑名單度",
+ "imagemap_no_link": "錯誤: 響第$1行結尾度搵唔到一個正式嘅連結",
+ "imagemap_invalid_title": "錯誤: 響第$1行度嘅標題連結唔正確",
+ "imagemap_missing_coord": "錯誤: 響第$1行度未有足夠嘅座標組成一個形狀",
+ "imagemap_unrecognised_shape": "錯誤: 響第$1行度有未能認出嘅形狀,每一行一定要用以下其中一樣開始: <code>default</code>, <code>rect</code>, <code>circle</code> 或者係 <code>poly</code>",
+ "imagemap_invalid_coord": "錯誤: 響第$1行度有唔正確嘅座標,佢一定係一個數字",
+ "imagemap_invalid_desc": "錯誤: 唔正確嘅 desc 參數,一定係要以下嘅其中之一: $1",
+ "imagemap_description": "關於呢幅圖像",
+ "imagemap_desc_types": "右上, 右下, 左下, 左上, 無",
+ "imagemap_poly_odd": "錯誤: 響第$1行搵到單數嘅多邊坐標"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/zh-hans.json b/www/wiki/extensions/ImageMap/i18n/zh-hans.json
new file mode 100644
index 00000000..80c35c8d
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/zh-hans.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman",
+ "Xiaomingyan"
+ ]
+ },
+ "imagemap_desc": "容许客户端可以使用<code>&lt;imagemap&gt;</code>标签整可点击图像地图",
+ "imagemap_no_image": "错误: 必须要在第一行指定一幅图像",
+ "imagemap_invalid_image": "错误: 图像不正确或者不存在",
+ "imagemap_bad_image": "错误: 图像已被本页列入黑名单内",
+ "imagemap_no_link": "错误: 在第$1行结尾中找不到一个正式的链接",
+ "imagemap_invalid_title": "错误: 在第$1行中的标题链接不正确",
+ "imagemap_missing_coord": "错误: 在第$1行中未有足够的座标组成一个形状",
+ "imagemap_unrecognised_shape": "错误: 在第$1行中有未能认出的形状,每一行必须使用以下其中一组字开始: <code>default</code>, <code>rect</code>, <code>circle</code> 或者是 <code>poly</code>",
+ "imagemap_invalid_coord": "错误: 在第$1行中有不正确的座标,它必须是一个数字",
+ "imagemap_invalid_desc": "错误: 不正确的 desc 参数,必须是以下的其中之一: $1",
+ "imagemap_description": "关于该图像",
+ "imagemap_desc_types": "右上, 右下, 左下, 左上, 无",
+ "imagemap_poly_odd": "错误: 在第$1行找到单数的多边坐标"
+}
diff --git a/www/wiki/extensions/ImageMap/i18n/zh-hant.json b/www/wiki/extensions/ImageMap/i18n/zh-hant.json
new file mode 100644
index 00000000..4e2fb9a4
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/i18n/zh-hant.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mark85296341",
+ "Shinjiman",
+ "Tomchiukc",
+ "Cwlin0416"
+ ]
+ },
+ "imagemap_desc": "允許客戶端使用 <code>&lt;imagemap&gt;</code> 標籤製作可點選的影像地圖",
+ "imagemap_no_image": "錯誤:必須指定影像於第一行。",
+ "imagemap_invalid_image": "錯誤:影像不正確或不存在。",
+ "imagemap_bad_image": "錯誤:影像已被本頁列入封鎖清單。",
+ "imagemap_no_link": "錯誤:在第 $1 行結尾中找不到有效的連結。",
+ "imagemap_invalid_title": "錯誤:在第 $1 行中的連結標題無效。",
+ "imagemap_missing_coord": "錯誤:在第 $1 行中沒有足夠的座標組成一個形狀。",
+ "imagemap_unrecognised_shape": "錯誤:在第 $1 行中有無法辨識的形狀,每一行必須使用下列其中一組字開始:<code>default</code>, <code>rect</code>, <code>circle</code> 或 <code>poly</code>。",
+ "imagemap_invalid_coord": "錯誤:在第 $1 行中有不正確的座標,座標必須為數字。",
+ "imagemap_invalid_desc": "錯誤:不正確的 desc 規格,必須是下列其中之一:<code>$1</code>。",
+ "imagemap_description": "關於這個影像",
+ "imagemap_desc_types": "右上, 右下, 左下, 左上, 無",
+ "imagemap_poly_odd": "錯誤:在第 $1 行找到奇數的多邊型坐標"
+}
diff --git a/www/wiki/extensions/ImageMap/imageMapParserTests.txt b/www/wiki/extensions/ImageMap/imageMapParserTests.txt
new file mode 100644
index 00000000..be49a286
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/imageMapParserTests.txt
@@ -0,0 +1,10 @@
+!! test
+dummy test
+!! input
+<imagemap>
+Image:Foobar.jpg
+</imagemap>
+!! result
+<div class="noresize" style="height: 220px; width: 1941px; "><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" width="1941" height="220"></img><div style="margin-left: 1921px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/desc-20.png?15600" style="border: none;"></img></a></div></div>
+
+!! end
diff --git a/www/wiki/extensions/ImageMap/includes/ImageMap.php b/www/wiki/extensions/ImageMap/includes/ImageMap.php
new file mode 100644
index 00000000..05d6531b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/includes/ImageMap.php
@@ -0,0 +1,406 @@
+<?php
+/**
+ * Main file for extension ImageMap.
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * Syntax:
+ * <imagemap>
+ * Image:Foo.jpg | 100px | picture of a foo
+ *
+ * rect 0 0 50 50 [[Foo type A]]
+ * circle 50 50 20 [[Foo type B]]
+ *
+ * desc bottom-left
+ * </imagemap>
+ *
+ * Coordinates are relative to the source image, not the thumbnail.
+ */
+
+class ImageMap {
+ public static $id = 0;
+
+ const TOP_RIGHT = 0;
+ const BOTTOM_RIGHT = 1;
+ const BOTTOM_LEFT = 2;
+ const TOP_LEFT = 3;
+ const NONE = 4;
+
+ /**
+ * @param Parser &$parser
+ */
+ public static function onParserFirstCallInit( Parser &$parser ) {
+ $parser->setHook( 'imagemap', [ 'ImageMap', 'render' ] );
+ }
+
+ /**
+ * @param string $input
+ * @param array $params
+ * @param Parser $parser
+ * @return string HTML (Image map, or error message)
+ */
+ public static function render( $input, $params, $parser ) {
+ global $wgUrlProtocols, $wgNoFollowLinks;
+ $config = ConfigFactory::getDefaultInstance()->makeConfig( 'main' );
+
+ $lines = explode( "\n", $input );
+
+ $first = true;
+ $lineNum = 0;
+ $mapHTML = '';
+ $links = [];
+
+ // Define canonical desc types to allow i18n of 'imagemap_desc_types'
+ $descTypesCanonical = 'top-right, bottom-right, bottom-left, top-left, none';
+ $descType = self::BOTTOM_RIGHT;
+ $defaultLinkAttribs = false;
+ $realmap = true;
+ $extLinks = [];
+ foreach ( $lines as $line ) {
+ ++$lineNum;
+ $externLink = false;
+
+ $line = trim( $line );
+ if ( $line == '' || $line[0] == '#' ) {
+ continue;
+ }
+
+ if ( $first ) {
+ $first = false;
+
+ // The first line should have an image specification on it
+ // Extract it and render the HTML
+ $bits = explode( '|', $line, 2 );
+ if ( count( $bits ) == 1 ) {
+ $image = $bits[0];
+ $options = '';
+ } else {
+ list( $image, $options ) = $bits;
+ }
+ $imageTitle = Title::newFromText( $image );
+ if ( !$imageTitle || !$imageTitle->inNamespace( NS_FILE ) ) {
+ return self::error( 'imagemap_no_image' );
+ }
+ if ( wfIsBadImage( $imageTitle->getDBkey(), $parser->mTitle ) ) {
+ return self::error( 'imagemap_bad_image' );
+ }
+ // Parse the options so we can use links and the like in the caption
+ $parsedOptions = $parser->recursiveTagParse( $options );
+ $imageHTML = $parser->makeImage( $imageTitle, $parsedOptions );
+ $parser->replaceLinkHolders( $imageHTML );
+ $imageHTML = $parser->mStripState->unstripBoth( $imageHTML );
+ $imageHTML = Sanitizer::normalizeCharReferences( $imageHTML );
+
+ $domDoc = new DOMDocument();
+ wfSuppressWarnings();
+ $ok = $domDoc->loadXML( $imageHTML );
+ wfRestoreWarnings();
+ if ( !$ok ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $xpath = new DOMXPath( $domDoc );
+ $imgs = $xpath->query( '//img' );
+ if ( !$imgs->length ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $imageNode = $imgs->item( 0 );
+ $thumbWidth = $imageNode->getAttribute( 'width' );
+ $thumbHeight = $imageNode->getAttribute( 'height' );
+
+ $imageObj = wfFindFile( $imageTitle );
+ if ( !$imageObj || !$imageObj->exists() ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ // Add the linear dimensions to avoid inaccuracy in the scale
+ // factor when one is much larger than the other
+ // (sx+sy)/(x+y) = s
+ $denominator = $imageObj->getWidth() + $imageObj->getHeight();
+ $numerator = $thumbWidth + $thumbHeight;
+ if ( $denominator <= 0 || $numerator <= 0 ) {
+ return self::error( 'imagemap_invalid_image' );
+ }
+ $scale = $numerator / $denominator;
+ continue;
+ }
+
+ // Handle desc spec
+ $cmd = strtok( $line, " \t" );
+ if ( $cmd == 'desc' ) {
+ $typesText = wfMessage( 'imagemap_desc_types' )->inContentLanguage()->text();
+ if ( $descTypesCanonical != $typesText ) {
+ // i18n desc types exists
+ $typesText = $descTypesCanonical . ', ' . $typesText;
+ }
+ $types = array_map( 'trim', explode( ',', $typesText ) );
+ $type = trim( strtok( '' ) );
+ $descType = array_search( $type, $types );
+ if ( $descType > 4 ) {
+ // A localized descType is used. Subtract 5 to reach the canonical desc type.
+ $descType = $descType - 5;
+ }
+ // <0? In theory never, but paranoia...
+ if ( $descType === false || $descType < 0 ) {
+ return self::error( 'imagemap_invalid_desc', $typesText );
+ }
+ continue;
+ }
+
+ $title = false;
+ // Find the link
+ $link = trim( strstr( $line, '[' ) );
+ $m = [];
+ if ( preg_match( '/^ \[\[ ([^|]*+) \| ([^\]]*+) \]\] \w* $ /x', $link, $m ) ) {
+ $title = Title::newFromText( $m[1] );
+ $alt = trim( $m[2] );
+ } elseif ( preg_match( '/^ \[\[ ([^\]]*+) \]\] \w* $ /x', $link, $m ) ) {
+ $title = Title::newFromText( $m[1] );
+ if ( is_null( $title ) ) {
+ return self::error( 'imagemap_invalid_title', $lineNum );
+ }
+ $alt = $title->getFullText();
+ } elseif ( in_array( substr( $link, 1, strpos( $link, '//' ) + 1 ), $wgUrlProtocols )
+ || in_array( substr( $link, 1, strpos( $link, ':' ) ), $wgUrlProtocols )
+ ) {
+ if ( preg_match( '/^ \[ ([^\s]*+) \s ([^\]]*+) \] \w* $ /x', $link, $m ) ) {
+ $title = $m[1];
+ $alt = trim( $m[2] );
+ $externLink = true;
+ } elseif ( preg_match( '/^ \[ ([^\]]*+) \] \w* $ /x', $link, $m ) ) {
+ $title = $alt = trim( $m[1] );
+ $externLink = true;
+ }
+ } else {
+ return self::error( 'imagemap_no_link', $lineNum );
+ }
+ if ( !$title ) {
+ return self::error( 'imagemap_invalid_title', $lineNum );
+ }
+
+ $shapeSpec = substr( $line, 0, -strlen( $link ) );
+
+ // Tokenize shape spec
+ $shape = strtok( $shapeSpec, " \t" );
+ switch ( $shape ) {
+ case 'default':
+ $coords = [];
+ break;
+ case 'rect':
+ $coords = self::tokenizeCoords( 4, $lineNum );
+ if ( !is_array( $coords ) ) {
+ return $coords;
+ }
+ break;
+ case 'circle':
+ $coords = self::tokenizeCoords( 3, $lineNum );
+ if ( !is_array( $coords ) ) {
+ return $coords;
+ }
+ break;
+ case 'poly':
+ $coords = [];
+ $coord = strtok( " \t" );
+ while ( $coord !== false ) {
+ $coords[] = $coord;
+ $coord = strtok( " \t" );
+ }
+ if ( !count( $coords ) ) {
+ return self::error( 'imagemap_missing_coord', $lineNum );
+ }
+ if ( count( $coords ) % 2 !== 0 ) {
+ return self::error( 'imagemap_poly_odd', $lineNum );
+ }
+ break;
+ default:
+ return self::error( 'imagemap_unrecognised_shape', $lineNum );
+ }
+
+ // Scale the coords using the size of the source image
+ foreach ( $coords as $i => $c ) {
+ $coords[$i] = intval( round( $c * $scale ) );
+ }
+
+ // Construct the area tag
+ $attribs = [];
+ if ( $externLink ) {
+ $attribs['href'] = $title;
+ $attribs['class'] = 'plainlinks';
+ if ( $wgNoFollowLinks ) {
+ $attribs['rel'] = 'nofollow';
+ }
+ } elseif ( $title->getFragment() != '' && $title->getPrefixedDBkey() == '' ) {
+ // XXX: kluge to handle [[#Fragment]] links, should really fix getLocalURL()
+ // in Title.php to return an empty string in this case
+ $attribs['href'] = $title->getFragmentForURL();
+ } else {
+ $attribs['href'] = $title->getLocalURL() . $title->getFragmentForURL();
+ }
+ if ( $shape != 'default' ) {
+ $attribs['shape'] = $shape;
+ }
+ if ( $coords ) {
+ $attribs['coords'] = implode( ',', $coords );
+ }
+ if ( $alt != '' ) {
+ if ( $shape != 'default' ) {
+ $attribs['alt'] = $alt;
+ }
+ $attribs['title'] = $alt;
+ }
+ if ( $shape == 'default' ) {
+ $defaultLinkAttribs = $attribs;
+ } else {
+ $mapHTML .= Xml::element( 'area', $attribs ) . "\n";
+ }
+ if ( $externLink ) {
+ $extLinks[] = $title;
+ } else {
+ $links[] = $title;
+ }
+ }
+
+ if ( $first ) {
+ return self::error( 'imagemap_no_image' );
+ }
+
+ if ( $mapHTML == '' ) {
+ // no areas defined, default only. It's not a real imagemap, so we do not need some tags
+ $realmap = false;
+ }
+
+ if ( $realmap ) {
+ // Construct the map
+ // Add random number to avoid breaking cached HTML fragments that are
+ // later joined together on the one page (bug 16471)
+ $mapName = "ImageMap_" . ++self::$id . '_' . mt_rand( 0, 0x7fffffff );
+ $mapHTML = "<map name=\"$mapName\">\n$mapHTML</map>\n";
+
+ // Alter the image tag
+ $imageNode->setAttribute( 'usemap', "#$mapName" );
+ }
+
+ // Add a surrounding div, remove the default link to the description page
+ $anchor = $imageNode->parentNode;
+ $parent = $anchor->parentNode;
+ $div = $parent->insertBefore( new DOMElement( 'div' ), $anchor );
+ $div->setAttribute( 'class', 'noresize' );
+ if ( $defaultLinkAttribs ) {
+ $defaultAnchor = $div->appendChild( new DOMElement( 'a' ) );
+ foreach ( $defaultLinkAttribs as $name => $value ) {
+ $defaultAnchor->setAttribute( $name, $value );
+ }
+ $imageParent = $defaultAnchor;
+ } else {
+ $imageParent = $div;
+ }
+
+ // Add the map HTML to the div
+ // We used to add it before the div, but that made tidy unhappy
+ if ( $mapHTML != '' ) {
+ $mapDoc = new DOMDocument();
+ $mapDoc->loadXML( $mapHTML );
+ $mapNode = $domDoc->importNode( $mapDoc->documentElement, true );
+ $div->appendChild( $mapNode );
+ }
+
+ $imageParent->appendChild( $imageNode->cloneNode( true ) );
+ $parent->removeChild( $anchor );
+
+ // Determine whether a "magnify" link is present
+ $xpath = new DOMXPath( $domDoc );
+ $magnify = $xpath->query( '//div[@class="magnify"]' );
+ if ( !$magnify->length && $descType != self::NONE ) {
+ // Add image description link
+ if ( $descType == self::TOP_LEFT || $descType == self::BOTTOM_LEFT ) {
+ $marginLeft = 0;
+ } else {
+ $marginLeft = $thumbWidth - 20;
+ }
+ if ( $descType == self::TOP_LEFT || $descType == self::TOP_RIGHT ) {
+ $marginTop = -$thumbHeight;
+ // 1px hack for IE, to stop it poking out the top
+ $marginTop += 1;
+ } else {
+ $marginTop = -20;
+ }
+ $div->setAttribute( 'style', "height: {$thumbHeight}px; width: {$thumbWidth}px; " );
+ $descWrapper = $div->appendChild( new DOMElement( 'div' ) );
+ $descWrapper->setAttribute( 'style',
+ "margin-left: {$marginLeft}px; " .
+ "margin-top: {$marginTop}px; " .
+ "text-align: left;"
+ );
+
+ $descAnchor = $descWrapper->appendChild( new DOMElement( 'a' ) );
+ $descAnchor->setAttribute( 'href', $imageTitle->getLocalURL() );
+ $descAnchor->setAttribute(
+ 'title',
+ wfMessage( 'imagemap_description' )->inContentLanguage()->text()
+ );
+ $descImg = $descAnchor->appendChild( new DOMElement( 'img' ) );
+ $descImg->setAttribute(
+ 'alt',
+ wfMessage( 'imagemap_description' )->inContentLanguage()->text()
+ );
+ $url = $config->get( 'ExtensionAssetsPath' ) . '/ImageMap/desc-20.png';
+ $descImg->setAttribute(
+ 'src',
+ OutputPage::transformResourcePath( $config, $url )
+ );
+ $descImg->setAttribute( 'style', 'border: none;' );
+ }
+
+ // Output the result
+ // We use saveXML() not saveHTML() because then we get XHTML-compliant output.
+ // The disadvantage is that we have to strip out the DTD
+ $output = preg_replace( '/<\?xml[^?]*\?>/', '', $domDoc->saveXML( null, LIBXML_NOEMPTYTAG ) );
+
+ // Register links
+ foreach ( $links as $title ) {
+ if ( $title->isExternal() || $title->getNamespace() == NS_SPECIAL ) {
+ // Don't register special or interwiki links...
+ } elseif ( $title->getNamespace() == NS_MEDIA ) {
+ // Regular Media: links are recorded as image usages
+ $parser->mOutput->addImage( $title->getDBkey() );
+ } else {
+ // Plain ol' link
+ $parser->mOutput->addLink( $title );
+ }
+ }
+ foreach ( $extLinks as $title ) {
+ $parser->mOutput->addExternalLink( $title );
+ }
+ // Armour output against broken parser
+ $output = str_replace( "\n", '', $output );
+ return $output;
+ }
+
+ /**
+ * @param int $count
+ * @param int|string $lineNum
+ * @return array|string String with error (HTML), or array of coordinates
+ */
+ static function tokenizeCoords( $count, $lineNum ) {
+ $coords = [];
+ for ( $i = 0; $i < $count; $i++ ) {
+ $coord = strtok( " \t" );
+ if ( $coord === false ) {
+ return self::error( 'imagemap_missing_coord', $lineNum );
+ }
+ if ( !is_numeric( $coord ) || $coord > 1e9 || $coord < 0 ) {
+ return self::error( 'imagemap_invalid_coord', $lineNum );
+ }
+ $coords[$i] = $coord;
+ }
+ return $coords;
+ }
+
+ /**
+ * @param string $name
+ * @param string|int|bool $line
+ * @return string HTML
+ */
+ static function error( $name, $line = false ) {
+ return '<p class="error">' . wfMessage( $name, $line )->parse() . '</p>';
+ }
+}
diff --git a/www/wiki/extensions/ImageMap/phpcs.xml b/www/wiki/extensions/ImageMap/phpcs.xml
new file mode 100644
index 00000000..8e267bfb
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/phpcs.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ruleset>
+ <rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
+ <exclude name="MediaWiki.Commenting.FunctionComment.MissingParamComment" />
+ <exclude name="MediaWiki.Commenting.FunctionComment.MissingParamName" />
+ <exclude name="MediaWiki.Commenting.FunctionComment.MissingParamTag" />
+ <exclude name="MediaWiki.Commenting.FunctionComment.ParamNameNoMatch" />
+ <exclude name="MediaWiki.Files.ClassMatchesFilename.NotMatch" />
+ </rule>
+ <file>.</file>
+ <arg name="extensions" value="php,php5,inc"/>
+ <arg name="encoding" value="UTF-8"/>
+</ruleset>
diff --git a/www/wiki/extensions/ImageMap/tests/parser/imageMapParserTests.txt b/www/wiki/extensions/ImageMap/tests/parser/imageMapParserTests.txt
new file mode 100644
index 00000000..be49a286
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/tests/parser/imageMapParserTests.txt
@@ -0,0 +1,10 @@
+!! test
+dummy test
+!! input
+<imagemap>
+Image:Foobar.jpg
+</imagemap>
+!! result
+<div class="noresize" style="height: 220px; width: 1941px; "><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" width="1941" height="220"></img><div style="margin-left: 1921px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/desc-20.png?15600" style="border: none;"></img></a></div></div>
+
+!! end
diff --git a/www/wiki/extensions/ImageMap/tests/phan/config.php b/www/wiki/extensions/ImageMap/tests/phan/config.php
new file mode 100644
index 00000000..db22766b
--- /dev/null
+++ b/www/wiki/extensions/ImageMap/tests/phan/config.php
@@ -0,0 +1,11 @@
+<?php
+
+$cfg = require __DIR__ . '/../../vendor/mediawiki/mediawiki-phan-config/src/config.php';
+
+// Phan gets confused because DOMNode::setAttribute doesn't
+// exist, it's DOMElement::setAttribute, and some functions
+// are documented to return DOMNode but they actually return
+// DOMElement.
+$cfg['suppress_issue_types'][] = 'PhanUndeclaredMethod';
+
+return $cfg;