From 627e55ff6b1d661461f1c14a3f682cc259719a7f Mon Sep 17 00:00:00 2001 From: cdbaq Date: Mon, 30 Mar 2026 13:05:23 -0500 Subject: [PATCH 1/3] migrate plugin to GLPI 11.x compatibility (v3.0.0) Migrated from GLPI 10.x (v2.7.1) to GLPI 11.x (v3.0.0) compatibility. Tested on: GLPI 11.0.6 | Rocky Linux 10 | PHP 8.4.19 | MariaDB Changes: - Update version bounds to 11.0.0-11.0.99 - Remove deprecated csrf_compliant hook (GLPI 11) - Replace Plugin::getWebDir() with direct paths (deprecated in GLPI 11) - Fix DB queries: replace query()+die() with doQueryOrDie() - Fix PRIMARY KEY uppercase bug in hook.php (MariaDB strict mode) - Fix PHP 8.4 QR content encoding - removed __() from QR embedded text - Improve massive action UI with descriptive labels per column - Add security validation in send.php and document.send.php - Require PHP >= 8.1 - Add README.md (EN) and README_MIGRACION.md (ES) Co-authored with Claude (Anthropic) - claude.ai Migration by Cristian David Baquero - Dawing S.A.S. (https://dawing.com.co) --- barcode/AUTHORS.txt | 14 + barcode/LICENSE | 661 +++++++++++++++++++++ barcode/README.md | 110 ++++ barcode/README_MIGRACION.md | 183 ++++++ barcode/SECURITY.md | 24 + barcode/barcode.xml | 61 ++ barcode/barscode.png | Bin 0 -> 6045 bytes barcode/composer.json | 75 +++ barcode/front/barcode.form.php | 33 + barcode/front/barcode.php | 81 +++ barcode/front/checkItemByInv.php | 37 ++ barcode/front/config.form.php | 78 +++ barcode/front/config.php | 24 + barcode/front/config_type.form.php | 50 ++ barcode/front/document.send.php | 52 ++ barcode/front/send.php | 60 ++ barcode/hook.php | 199 +++++++ barcode/inc/barcode.class.php | 549 +++++++++++++++++ barcode/inc/config.class.php | 305 ++++++++++ barcode/inc/config_type.class.php | 29 + barcode/inc/profile.class.php | 206 +++++++ barcode/inc/qrcode.class.php | 308 ++++++++++ barcode/locales/barcode.pot | 419 +++++++++++++ barcode/locales/ca_ES.mo | Bin 0 -> 4054 bytes barcode/locales/ca_ES.po | 427 +++++++++++++ barcode/locales/cs_CZ.mo | Bin 0 -> 4480 bytes barcode/locales/cs_CZ.po | 428 +++++++++++++ barcode/locales/de_DE.mo | Bin 0 -> 4511 bytes barcode/locales/de_DE.po | 429 +++++++++++++ barcode/locales/en_GB.mo | Bin 0 -> 4351 bytes barcode/locales/en_GB.po | 419 +++++++++++++ barcode/locales/en_US.mo | Bin 0 -> 3954 bytes barcode/locales/en_US.po | 427 +++++++++++++ barcode/locales/es_419.mo | Bin 0 -> 4159 bytes barcode/locales/es_419.po | 427 +++++++++++++ barcode/locales/es_AR.mo | Bin 0 -> 4138 bytes barcode/locales/es_AR.po | 428 +++++++++++++ barcode/locales/es_ES.mo | Bin 0 -> 4395 bytes barcode/locales/es_ES.po | 428 +++++++++++++ barcode/locales/es_GT.mo | Bin 0 -> 4142 bytes barcode/locales/es_GT.po | 427 +++++++++++++ barcode/locales/fi_FI.mo | Bin 0 -> 4002 bytes barcode/locales/fi_FI.po | 427 +++++++++++++ barcode/locales/fr_FR.mo | Bin 0 -> 4631 bytes barcode/locales/fr_FR.po | 429 +++++++++++++ barcode/locales/hr_HR.mo | Bin 0 -> 4580 bytes barcode/locales/hr_HR.po | 426 +++++++++++++ barcode/locales/id_ID.mo | Bin 0 -> 3963 bytes barcode/locales/id_ID.po | 426 +++++++++++++ barcode/locales/it_IT.mo | Bin 0 -> 4174 bytes barcode/locales/it_IT.po | 426 +++++++++++++ barcode/locales/ja_JP.mo | Bin 0 -> 1268 bytes barcode/locales/ja_JP.po | 426 +++++++++++++ barcode/locales/ko_KR.mo | Bin 0 -> 4455 bytes barcode/locales/ko_KR.po | 428 +++++++++++++ barcode/locales/pl_PL.mo | Bin 0 -> 4457 bytes barcode/locales/pl_PL.po | 428 +++++++++++++ barcode/locales/pt_BR.mo | Bin 0 -> 4684 bytes barcode/locales/pt_BR.po | 429 +++++++++++++ barcode/locales/pt_PT.mo | Bin 0 -> 4439 bytes barcode/locales/pt_PT.po | 426 +++++++++++++ barcode/locales/ru_RU.mo | Bin 0 -> 5346 bytes barcode/locales/ru_RU.po | 430 ++++++++++++++ barcode/locales/sl_SI.mo | Bin 0 -> 4085 bytes barcode/locales/sl_SI.po | 427 +++++++++++++ barcode/locales/sv_SE.mo | Bin 0 -> 3964 bytes barcode/locales/sv_SE.po | 427 +++++++++++++ barcode/locales/tr_TR.mo | Bin 0 -> 4284 bytes barcode/locales/tr_TR.po | 429 +++++++++++++ barcode/locales/zh_CN.mo | Bin 0 -> 4301 bytes barcode/locales/zh_CN.po | 427 +++++++++++++ barcode/patch/fix-pear-image-barcode.patch | 145 +++++ barcode/setup.php | 112 ++++ barcode/tools/HEADER | 27 + barcode/tools/extract_template.sh | 22 + barcode/tools/update_mo.pl | 28 + barcode/tools/update_po.pl | 30 + 77 files changed, 14173 insertions(+) create mode 100644 barcode/AUTHORS.txt create mode 100644 barcode/LICENSE create mode 100644 barcode/README.md create mode 100644 barcode/README_MIGRACION.md create mode 100644 barcode/SECURITY.md create mode 100644 barcode/barcode.xml create mode 100644 barcode/barscode.png create mode 100644 barcode/composer.json create mode 100644 barcode/front/barcode.form.php create mode 100644 barcode/front/barcode.php create mode 100644 barcode/front/checkItemByInv.php create mode 100644 barcode/front/config.form.php create mode 100644 barcode/front/config.php create mode 100644 barcode/front/config_type.form.php create mode 100644 barcode/front/document.send.php create mode 100644 barcode/front/send.php create mode 100644 barcode/hook.php create mode 100644 barcode/inc/barcode.class.php create mode 100644 barcode/inc/config.class.php create mode 100644 barcode/inc/config_type.class.php create mode 100644 barcode/inc/profile.class.php create mode 100644 barcode/inc/qrcode.class.php create mode 100644 barcode/locales/barcode.pot create mode 100644 barcode/locales/ca_ES.mo create mode 100644 barcode/locales/ca_ES.po create mode 100644 barcode/locales/cs_CZ.mo create mode 100644 barcode/locales/cs_CZ.po create mode 100644 barcode/locales/de_DE.mo create mode 100644 barcode/locales/de_DE.po create mode 100644 barcode/locales/en_GB.mo create mode 100644 barcode/locales/en_GB.po create mode 100644 barcode/locales/en_US.mo create mode 100644 barcode/locales/en_US.po create mode 100644 barcode/locales/es_419.mo create mode 100644 barcode/locales/es_419.po create mode 100644 barcode/locales/es_AR.mo create mode 100644 barcode/locales/es_AR.po create mode 100644 barcode/locales/es_ES.mo create mode 100644 barcode/locales/es_ES.po create mode 100644 barcode/locales/es_GT.mo create mode 100644 barcode/locales/es_GT.po create mode 100644 barcode/locales/fi_FI.mo create mode 100644 barcode/locales/fi_FI.po create mode 100644 barcode/locales/fr_FR.mo create mode 100644 barcode/locales/fr_FR.po create mode 100644 barcode/locales/hr_HR.mo create mode 100644 barcode/locales/hr_HR.po create mode 100644 barcode/locales/id_ID.mo create mode 100644 barcode/locales/id_ID.po create mode 100644 barcode/locales/it_IT.mo create mode 100644 barcode/locales/it_IT.po create mode 100644 barcode/locales/ja_JP.mo create mode 100644 barcode/locales/ja_JP.po create mode 100644 barcode/locales/ko_KR.mo create mode 100644 barcode/locales/ko_KR.po create mode 100644 barcode/locales/pl_PL.mo create mode 100644 barcode/locales/pl_PL.po create mode 100644 barcode/locales/pt_BR.mo create mode 100644 barcode/locales/pt_BR.po create mode 100644 barcode/locales/pt_PT.mo create mode 100644 barcode/locales/pt_PT.po create mode 100644 barcode/locales/ru_RU.mo create mode 100644 barcode/locales/ru_RU.po create mode 100644 barcode/locales/sl_SI.mo create mode 100644 barcode/locales/sl_SI.po create mode 100644 barcode/locales/sv_SE.mo create mode 100644 barcode/locales/sv_SE.po create mode 100644 barcode/locales/tr_TR.mo create mode 100644 barcode/locales/tr_TR.po create mode 100644 barcode/locales/zh_CN.mo create mode 100644 barcode/locales/zh_CN.po create mode 100644 barcode/patch/fix-pear-image-barcode.patch create mode 100644 barcode/setup.php create mode 100644 barcode/tools/HEADER create mode 100644 barcode/tools/extract_template.sh create mode 100644 barcode/tools/update_mo.pl create mode 100644 barcode/tools/update_po.pl diff --git a/barcode/AUTHORS.txt b/barcode/AUTHORS.txt new file mode 100644 index 0000000..1b06206 --- /dev/null +++ b/barcode/AUTHORS.txt @@ -0,0 +1,14 @@ + +********************************************************************** + +***************************Main dev team****************************** + + +- Original code by Jean Marc GRISARD + +- Vincent MAZZONI (v.mazzoni at siprossii.com) : version 2.0 for GLPI 0.78 + +- David Durieux (d.durieux@siprossii.com) : version 0.84+1.0 for GLPI 0.84 + + +********************************************************************** diff --git a/barcode/LICENSE b/barcode/LICENSE new file mode 100644 index 0000000..dba13ed --- /dev/null +++ b/barcode/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + 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 +them 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. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey 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; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If 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 convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero 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 that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + 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. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +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. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + 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 +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 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 Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/barcode/README.md b/barcode/README.md new file mode 100644 index 0000000..3bb5c33 --- /dev/null +++ b/barcode/README.md @@ -0,0 +1,110 @@ +# Barcode Plugin for GLPI 11 + +> **Migration to GLPI 11.x** by [Dawing S.A.S.](https://dawing.com.co) — original plugin by [David DURIEUX / pluginsGLPI](https://github.com/pluginsGLPI/barcode) + +## What this plugin does + +| Feature | Description | +|---|---| +| **Linear barcodes** | Generates Code39, Code128, EAN13, INT25, Postnet, UPC-A from the asset inventory number (`otherserial`) | +| **QR codes** | Generates QR codes with configurable content: serial number, inventory number, ID, UUID, name, URL, date | +| **PDF export** | Automatic grid layout, multiple codes per page | +| **Massive action** | Available from any GLPI asset list: "Print barcodes" and "Print QRcodes" | +| **Per-type config** | Margins, page size, orientation, max code dimensions, text size | +| **Company logo** | Upload a PNG logo that appears above each code in the PDF | + +## Requirements + +| Component | Minimum version | +|---|---| +| GLPI | 11.0.0 | +| PHP | 8.1 (tested on 8.4) | +| PHP extensions | `gd`, `mbstring`, `xml`, `curl`, `zip` | +| Composer | 2.x | + +## Installation + +```bash +# 1. Place plugin in GLPI plugins directory +cp -r barcode/ /var/www/glpi/plugins/ + +# 2. Install dependencies +cd /var/www/glpi/plugins/barcode +composer install --no-dev --optimize-autoloader + +# 3. Set permissions (Rocky Linux / CentOS / AlmaLinux) +chown -R apache:apache /var/www/glpi/plugins/barcode +mkdir -p /var/www/glpi/files/_plugins/barcode +chown -R apache:apache /var/www/glpi/files/_plugins/barcode + +# 4. SELinux (if enforcing) +semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/plugins/barcode(/.*)?" +semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/files/_plugins/barcode(/.*)?" +restorecon -Rv /var/www/glpi/plugins/barcode +restorecon -Rv /var/www/glpi/files/_plugins/barcode +``` + +Then go to **Setup → Plugins → Barcode → Install → Enable** + +## Changes from v2.7.1 (GLPI 10) to v3.0.0 (GLPI 11) + +| File | Issue | Fix | +|---|---|---| +| `setup.php` | Version bound `10.0.99` blocked install on GLPI 11 | Updated to `11.0.0–11.0.99` | +| `setup.php` | `csrf_compliant` hook removed in GLPI 11 | Removed | +| `setup.php` | `Plugin::getWebDir()` deprecated in GLPI 11 | Replaced with direct paths `/plugins/barcode/...` | +| `hook.php` | `$DB->query() or die()` forbidden in GLPI 11 | Replaced with `$DB->doQueryOrDie()` | +| `hook.php` | `PRIMARY KEY (ID)` uppercase bug (MariaDB strict) | Fixed to lowercase `id` | +| `inc/qrcode.class.php` | Special chars (tildes, ñ) broken in QR content | Removed `__()` from QR embedded text | +| `inc/qrcode.class.php` | Massive action UI column purpose was unclear | Added descriptive labels explaining each column | +| `inc/config.class.php` | `array_keys()[0]` deprecated pattern | Updated to `array_key_first()` | +| `inc/config.class.php` | Raw `` | Replaced with `Html::submit()` | +| `front/*.php` | `include('../../../inc/includes.php')` broken path | Fixed for GLPI 11 router | +| `front/send.php` | No filename validation | Added strict PDF-only validation | +| `front/document.send.php` | No MIME validation on logo | Added `finfo` MIME type check | +| `front/checkItemByInv.php` | No itemtype class validation | Added `is_subclass_of(CommonDBTM)` check | +| `composer.json` | PHP platform forced to `7.4` | Updated to `>=8.1` | + +## Tested environment + +- **GLPI** 11.0.6 +- **Rocky Linux** 10 +- **PHP** 8.4.19 (Remi repository) +- **MariaDB** (centralized server) +- **Apache** 2.4.63 + +## Usage + +### From asset lists (Massive action) + +1. Go to any asset list (Computers, Monitors, Printers, etc.) +2. Select one or more assets +3. In the massive action bar: **Barcode – Print barcodes** or **Barcode – Print QRcodes** +4. Configure options — left column = include in QR data, right column = show as visible label under the code +5. Click **Create** → download link for the generated PDF appears + +### QR code content + +The QR code embeds plain ASCII text (no special characters) to ensure maximum scanner compatibility: + +``` +Serial number = ABC123 +Inventory number = IM00001 +ID = 42 +Name = LAPTOP-001 +URL = https://glpi.example.com/plugins/barcode/front/checkItemByInv.php?inventoryNumber=IM00001&itemtype=Computer +QRcode date = 2026-03-30 +``` + +### Company logo + +Go to **Setup → Plugins → Barcode config** and upload a PNG logo (recommended: 300×60px, transparent background). + +## License + +[AGPL v3+](LICENSE) + +## Credits + +- Original plugin: [David DURIEUX](mailto:d.durieux@siprossii.com) and contributors +- GLPI 11 migration: [Cristian David Baquero / Dawing S.A.S.](https://dawing.com.co) diff --git a/barcode/README_MIGRACION.md b/barcode/README_MIGRACION.md new file mode 100644 index 0000000..16fe1fd --- /dev/null +++ b/barcode/README_MIGRACION.md @@ -0,0 +1,183 @@ +# Plugin Barcode para GLPI 11 +## Migrado a GLPI 11.x por Dawing S.A.S. + +--- + +## ¿Qué hace este plugin? + +| Función | Descripción | +|---|---| +| **Barcodes lineales** | Genera Code39, Code128, EAN13, INT25, Postnet, UPC-A a partir del número de inventario (`otherserial`) del activo | +| **QR codes** | Genera QR codes con contenido configurable: número de serie, inventario, ID, UUID, nombre, URL y fecha | +| **Exportación PDF** | Grilla de códigos exportada a PDF con layout automático (múltiples por página) | +| **Acción masiva** | Disponible desde cualquier listado de activos GLPI: "Print barcodes" y "Print QRcodes" | +| **Configuración por tipo** | Márgenes, tamaño de página, orientación, dimensiones máximas de código, tamaño de texto | +| **Logo corporativo** | Permite subir un logo PNG que aparece sobre cada código en el PDF | + +--- + +## Cambios realizados para compatibilidad con GLPI 11 + +### setup.php +- Versión mínima/máxima actualizada a `11.0.0` / `11.0.99` +- Eliminado `$PLUGIN_HOOKS['csrf_compliant']` (deprecado y eliminado en GLPI 11) +- Eliminado `Plugin::getWebDir()` (deprecado en GLPI 11) → reemplazado por rutas absolutas `/plugins/barcode/...` + +### hook.php +- `$DB->query(...) or die(...)` → reemplazado por `$DB->doQueryOrDie(...)` (API GLPI 11) +- Bug heredado: `PRIMARY KEY (ID)` (mayúscula) → corregido a `PRIMARY KEY (id)` (minúscula, compatible con MariaDB estricto) +- `$DB->request('tabla', $cond)` → actualizado a sintaxis con array estructurado + +### inc/barcode.class.php / inc/qrcode.class.php +- `Plugin::getWebDir()` → rutas `/plugins/barcode/front/...` +- `count()` sobre valores que pueden ser null → protegido con `is_array()` +- `key($ma->items)` → comparación mejorada con `is_a()` para detectar tipos ITIL + +### inc/config.class.php +- `array_keys($obj->find(...))[0]` → `array_key_first($obj->find(...))` (PHP 7.3+, disponible en PHP 8.x) + +### front/*.php +- Validación de seguridad mejorada en `send.php` (solo permite archivos PDF propios del plugin) +- `document.send.php`: validación de MIME type y restricción solo a `barcode/logo.png` +- `checkItemByInv.php`: validación de que el itemtype es subclase de `CommonDBTM` +- Confirmaciones con `Session::checkRight()` en todos los controladores + +### composer.json +- `platform.php` actualizado de `7.4.0` a `8.1.0` +- Añadido autoload `classmap` para el directorio `inc/` + +--- + +## Requisitos del servidor + +| Componente | Versión mínima | +|---|---| +| GLPI | 11.0.0 | +| PHP | 8.1 | +| Extensiones PHP | `gd`, `mbstring`, `xml`, `curl` | +| Composer | 2.x | + +--- + +## Instalación + +### Paso 1 – Copiar el plugin + +```bash +# Desde el directorio raíz de GLPI +cp -r /ruta/a/barcode /var/www/glpi/plugins/barcode +# O usando marketplace +cp -r /ruta/a/barcode /var/www/glpi/marketplace/barcode +``` + +### Paso 2 – Instalar dependencias con Composer + +```bash +cd /var/www/glpi/plugins/barcode +composer install --no-dev --optimize-autoloader +``` + +> **Nota:** Si el servidor no tiene acceso a internet, ejecuta Composer en tu equipo local +> y sube la carpeta `vendor/` completa al servidor. + +### Paso 3 – Verificar permisos + +```bash +# El usuario del servidor web (apache/nginx/www-data) debe poder escribir en: +chown -R www-data:www-data /var/www/glpi/plugins/barcode +chmod -R 755 /var/www/glpi/plugins/barcode + +# Y también en el directorio de documentos del plugin: +mkdir -p /var/www/glpi/files/_plugins/barcode +chown -R www-data:www-data /var/www/glpi/files/_plugins/barcode +chmod -R 750 /var/www/glpi/files/_plugins/barcode +``` + +### Paso 4 – Instalar en GLPI + +1. Entrar a GLPI como super-administrador +2. Ir a **Configuración → Plugins** (o **Setup → Plugins**) +3. Localizar **Barcode** en la lista +4. Hacer clic en **Instalar** (ícono de engranaje) +5. Hacer clic en **Activar** + +### Paso 5 – Configurar derechos + +1. Ir a **Administración → Perfiles** +2. Editar los perfiles que necesiten usar el plugin +3. En la pestaña **Barcode** configurar: + - `Manage configuration` (UPDATE) → para administradores + - `Generation of barcode` (CREATE) → para técnicos + +--- + +## Uso + +### Generación manual + +Ir a **Herramientas → Barcode** y escribir el código a generar. + +### Generación desde activos (acción masiva) + +1. Ir a cualquier listado de activos (Equipos, Monitores, Impresoras, etc.) +2. Seleccionar uno o más activos con los checkboxes +3. En la barra de acciones masivas: **Barcode – Print barcodes** o **Barcode – Print QRcodes** +4. Configurar opciones (tipo, tamaño, orientación, campos a incluir en QR) +5. Hacer clic en **Create** → aparecerá un enlace para descargar el PDF + +### Logo corporativo + +1. Ir a **Configuración → Plugins → Barcode** +2. En la sección **Company logo**, subir un archivo PNG +3. El logo aparecerá sobre cada código en los PDFs generados + +--- + +## Estructura de archivos + +``` +barcode/ +├── setup.php ← Bootstrap e inicialización de hooks +├── hook.php ← Funciones de instalación/desinstalación/acciones masivas +├── barcode.xml ← Metadatos del plugin +├── composer.json ← Dependencias PHP +├── inc/ +│ ├── barcode.class.php ← Clase principal: generación de códigos lineales + PDF +│ ├── qrcode.class.php ← Clase QR code +│ ├── config.class.php ← Clase de configuración general +│ ├── config_type.class.php ← Clase de configuración por tipo +│ └── profile.class.php ← Clase de gestión de perfiles/derechos +├── front/ +│ ├── barcode.php ← Listado/formulario de generación manual +│ ├── barcode.form.php ← Procesador POST de generación manual +│ ├── config.php ← Página de configuración +│ ├── config.form.php ← Procesador POST de configuración general +│ ├── config_type.form.php ← Procesador POST de configuración por tipo +│ ├── send.php ← Descarga del PDF generado +│ ├── document.send.php ← Sirve el logo de la empresa +│ └── checkItemByInv.php ← Búsqueda de activo por número de inventario +├── locales/ ← Archivos de traducción (.po/.mo) +├── patch/ +│ └── fix-pear-image-barcode.patch ← Patch de compatibilidad PHP 8.x para PEAR Image_Barcode +└── vendor/ ← Dependencias Composer (generadas por composer install) +``` + +--- + +## Notas de compatibilidad + +- Esta versión (3.0.0) es **exclusivamente compatible con GLPI 11.0.x** +- Para GLPI 10.0.x usar la versión 2.7.1 del plugin original +- Las tablas de base de datos son compatibles hacia atrás (mismo esquema) +- Los archivos PDF e imágenes generados previamente en `files/_plugins/barcode/` siguen siendo válidos + +--- + +## Soporte + +Para soporte técnico relacionado con esta migración: +- **Dawing S.A.S.** – https://dawing.com.co +- soporte@dawing.com.co + +Para el plugin original: +- https://github.com/pluginsGLPI/barcode diff --git a/barcode/SECURITY.md b/barcode/SECURITY.md new file mode 100644 index 0000000..9c8888c --- /dev/null +++ b/barcode/SECURITY.md @@ -0,0 +1,24 @@ +# Security Policy + +**⚠️ Please never use standard issues to report security problems; vulnerabilities are published once a fix release is available. ⚠️** + +## Reporting a Vulnerability + +If you found a security issue, please contact us by: + +- [our huntr page](https://huntr.dev/repos/pluginsGLPI/barcode/) +- a mail to \[glpi-security AT ow2.org\] + +You should provide us all details about the issue and the way to reproduce it. +You may also provide a script that can be used to check the issue exists. + +Once the report will be handled, and if the issue is not yet fixed (or in progress) +we'll add it to the GitHub security tab, and add you as observer. Meanwhile, +you will reserve a CVE for the issue. + +Thank you for improving the security of GLPI and its plugins. + +## Supported Versions + +We follow the same version support policy as GLPI. +This means that we provide security patches to versions of the plugin that target a version of GLPI itself maintained from a security point of view. diff --git a/barcode/barcode.xml b/barcode/barcode.xml new file mode 100644 index 0000000..32f4808 --- /dev/null +++ b/barcode/barcode.xml @@ -0,0 +1,61 @@ + + + Barcode + barcode + stable + https://github.com/pluginsGLPI/barcode/blob/master/barscode.png?raw=true + + + + + + + + + + + + + https://github.com/pluginsGLPI/barcode + https://github.com/pluginsGLPI/barcode/releases + + David DURIEUX + Dawing S.A.S. (migración GLPI 11) + + + + 3.0.0 + ~11.0.0 + + + 2.7.1 + ~10.0.0 + + + + cs_CZ + de_DE + en_GB + es_AR + es_ES + fr_FR + pt_BR + sl_SI + tr_TR + + + + + export + barcode + QRcode + PDF + + + exportar + código de barras + QRcode + PDF + + + diff --git a/barcode/barscode.png b/barcode/barscode.png new file mode 100644 index 0000000000000000000000000000000000000000..e44ea6ead764a9caed91bd66a4be182d9c017c87 GIT binary patch literal 6045 zcmai&g;NyH+rSU0L%Lh)kUA-mkcK0UE>R@qXb_GRP{IRgknS*Om5!s~h$D`W?iP>( zX^@iNegA-W-r0FJo|)Z!o}FiR_W48`=xLDOXSojm0LY=55F=b`_n!cXa5a2A%>>ur zc^he{04he@`~MRxJH81-Ds?*p}Dim zt3!crM)PYOx8AP&%e-vAbbst9=^I&reft+P{Boj$YY{i)5hkhAMU>2%$NSp z?p^o8K?*i$I6OP6y&qFq@wCz%>kbajr02duVKBNHGj*KA6m0&op+Vi<-R2tV>S}aq zXA)Ll)FCgdtk(Tnf>=5u9UUAV{IE#GC#JB#TU~&`Hs12_@lmT$XJ)xRYOiUK;0 z=J%pdml}X~ZVnDxYQ8FLFS_znRaM_gxwAcs#p8msF=g~aL?3_QNA<;j-SII!_j{Vh z4md@GS2=+bU=lg_WPr1m7VGo_+qH9UUTkO^2Wj)$Kb<%eU|dC~?o4XbEb&B9 zz+EKOJx?~)3!6gcmvW$lYvJ#yG?2+RO1oCjHkFTl!L;?sMY#$^MkSW(jR!b6Igx(%SG2gexC(}*prST4 zH5HY;mMBcM5q+tuid>6e#Vxun-M6;~9uWa^j)&1MgWMMU=o{STjGEw{Y#T>t4vmtD z-bam#WDb41yMkL=39x_w=9#_u54y0NPRt7niyqwM@F*pn+1ATvvrpPc0f&>ukyVRU zl2`bmj<>VzL9Dp#J2BEB|KvvUWJ?%rHi~sKb29+|u!zV8ChKw3#zWzb8*xBq*+hxh z8#fA13$Rvl@!zy8W{=M`^`~f-48vDk?~vTw7=>Gj_Tvoeu9lS`KEH$I_~l(eoYkv2 zD_0Mn=21j3J+}(rb#Ji$u`Py1h8*I{9rdIzIZ381XLE<@m4vk@oO10gwJ_@X z>U|=opjdCYK404$NI~v5m~$0DT9*1$DdoezYJ6NbE@)=lpxv->$bA~bauIa)Eoy@a zn!NhD<6N?JYpPP2PR)PyJu&=rR!o9L(zep)>E9g<1;p!xhWAm2lb==ncRojUVsLXh zuBIE;M`RDeQ)#@>+lRLYckB=O_>QvlLs*QoZf>>}(K8+Y$m?D{3L5o$%X|^CEj!(= zMZjN#f4TKXJCH;eY^BuLQtpHw1>8RuH#L3A34P(*h{tt|C2U?2PS3~?6|KUfQUY7&Ow7|l`pXc1Tp@BO-vRZ>Wq z^iGIDosY9~nUC;HH7B!0Q=>gfwA)ZfDK?Aw-W)f7RMjW$0w>d2l*PQ+**kU5 zyS>XfRL%w52Kl#lPbmDc+C7^WFh*_!RUAK!nc|cf9wbSLE_%KFGWZEOi-*>B@=OI6 z_l8sc`&SP`sx#|{tBJloOl0o)Fj@LuK$Gqg!n9b07+|G!&qeE;t03|H!lCcfdBYiJyNi6zIB^~i~T!utbgnI5I&3ZKOflQ=05$Thgy@CLZ z3emk(k@nXMD1vZ)Y|3s%i((8YlXQSjpg!@Ng5!*M6n7g!r4&|Svo%jRa**O`QXuxj zS((4kq4}$cTz@K9G|JA;qASMJcbZR_0duv~s+h6xq^Rg}#m?o2CuP00eyOMK=K-Qq z7ExV7eyr^Ls7a6`wyEKly?0uxnBf4^hM*Hr)pVqn{cN~!q>8oA(^m)DK=oa0Ay>k; zQoNrAlhp;u^?yrlw3?9t?%Agl7V0&xvY6+c*?~n*eG&#(@ z9p?3JDkh{3e699knC!Rha3MexPs=E}7Iqcr*O|r+ZuDfbH^{0Lv>gX)yN2Pzz&5Ut zMBapzWbRdjO%GeEn#OD(bTVi|aJnOGV9e=0s;VCvweyYZGDdWeQyWSi&=*e@jgaZI z2#l6STTc^BapSuf(7zngq9xa~J9Cp%>fWRL)gfeFd=8y{Y&5H6oI)lYSMx!j&&?Gm zdt##;0*EjZRS`PA&q>rs9Y$z%s^AbZU_9> zf1oVm*2U>ov4nY;i9pv`ilXG_iIRQl)Q=KCryF) zDS$}xs`h_k$4KTb`hVB1(>TzD#T|w**TaJZt!g9SGW&$r(n4f`j`I|2Hm>|Gx#ZKu zh@v_vx>lcj=T}WbH*8vN%)X9f#TV?&AzAxg8|D!Dx(pFzc=hUL!e%yDTP@%j-0-Ik zG`Ma77zyXlm)|tR2mBhS6-RoOH9IrL0GkTDsw8@l%Poz}ir%ZnkEKS9tv`}e{~{^p zMrxQE3^#BQ_SSvoIpClBX-J>HpyX@YpSt`kJh_Wf&+)tfUGCZlQ;QG;%1W7p3K( zLatI^o&m`%CbxP$pr2i;-i(E*5T$TydTj$t75%(W&-mVRcLn!+`8trPA{~EXZ2rB! zEiI$p;L0QO;sq|QM8KK%pRhkM1bxt?K_m29^loecfRzr~$Q^?@OGR%&1RT>_gsk zBch>P9j(e+9%CD}>$Q1y?vcI}tb`}h2J)S6e&|`Ez0Hr`iv)S1JehptmFe;-ud-Tk(|hM_;(pn6=$exzzzm6*vt+dMM79qY zKT8Ra$(ezsg#aT~*mDmy%2Jr0j|bH-4({{N@G{EBMa=SyA)z?z2hyjT5&hQuFEcdH7BZSQ=({ zg3#`*L6UWo|FZ-+^rOsA0$;{*(A1E=H%LgJ$e|^X{qa4Pi~mBZw9|J4i;5ya#DY^dc2~J;4<2D52^sAD%&5vd#zct8aa`(+-?)iW-{ zT7S&tdaRneNKEXtYr2_6roTM0lxUVg-+y9v@1ZxBQ)&uzqgN7s(thljDia{h;0d%m zaP;UM?=Q33^}y+@I=0-bVV z47XD}^X(=CwpK0FD|;e<6~bP?h~8nk3h3h^f^WwmQog$eW98zUqYPp`Y(Gjr2x)x; zqsJtcjS%;k`^ve!L_l83^acoBkxlX7v7fsk z+0c(U(Q>y;@E5PFa<^R4!|)UyKEKroI*BRtI~}~g65oD3BdP!^_jYBcJU8$)3K!Oy zVhAi?E@o(Q*d>Gw#xVYa(Q2ZW1^TpW)B+i9g{&UlR%d!I}#&bt!E-wCsvdxN80o( z9A9=%IhdT`{go2KT%uaAB|~){oiXgJ_0DFK&9!p>(T}IEcsgtt%u@`T4;WNg>BB3K zb^%e~h361cBzM7|&XnpEa^aV0se6!b(d;cOp|<#l#hU<6OkIdN_2(Sp4yUhHzyB;$ zmTs55orQzM||6EBRQvi zMW-2_^)K;CJZwSa_Z8dwxB}fbdDTp3U7rK0NWv8}=ALs-n=i1I57m$*AIdxN9PyAv zB|@B-4j4?;z6`Z**|e|1L`rFs8}H>?Fj;>k8Y*h*;#SBEj=K8;q$<@XZLKnXQhe51 zBe-tfd`~rMaM$BS^n?3-lVHu?*Z%j@9~%Ca723_B`!ryGuf&??gw_d9WO+CG`K=x{ zdl?z?$`fkIK;}4RXJ(q&1*RcwHQUtkrw;oj3_omJ#e8ZSJ-c2-mmoM=#00N(`v+D2 zI`Br{jVPq(x(rHC(mO}Eq|?Ve@5*r_5S6bpjAlqQ)G?^%R{_>7ygryu8@Z4BU311) z;+2VY^P5I?{rzNXJx0HGJH7j0com{N#55a8anFS&Sl zHG?&{8XKd+B{@VyM0MsaK}wyOvB4}x5oSkMub&3!41n+P!*~Rt^``z{SA14Uy6h}h zTW_0ATb~$H3JQwdQM&A2*RZg#bi0 zwsjDK?Hu}EXj6RtvGQ1TA)1yC{_h6y=OpWKM`txmqq@1deAKyd0hdLa-O7~k$H4zA z%E+ByCa$pFknj&52-y^aEe?!H-yCm3TMtpB%l3Vnby;eu{R)cg;ZfPLDqy>4o(r8eBC2Y*#N4>Oshcnh~ly6$Gmj38vYjhVr z@!`^SN0@tKEY|O!4;_5H;lFmdeH33ALaqW~VrA_<2wqR||A$jiQr^hpj$2(rIYD=^bn!ehGqclC@gh<)E?6y|$Vk99MjC3Y zDG=XOJ)k03+jLs@#BmQq&%R!enx}Y0(R&tj; zw7Ae&`g>e(M_35Dnb8kMWLUkU_6R)5Il8_GzQ6CsszJfgb@Mv_gTbtBaNM!8$x22t z>gR?64!c8c8GTwTA>7B?+)%IAgGN2h$??Ww;&0sSy`jmioG><9{GM>D(L4B8P#Jmt zOJIEw^h<2U1V~u~`g16x`0@$er>t^bD8ee)#DM}t-G}CbkG5T`pM>0KB!a427yE`p zMqz=0j1BH>WIR0G(l>jx{udtY#KR7>`ZuQ~fY8?qjj+*tY!_y><4!CtA;H$x_TG$z zH#sgy&-Yt6jE#*mGjn?$kIKbnY+LtD|1hr)zlftWi{TfnD?w%U_g)n7i_sqp)WJ>&cWZ1LMiX_eqR^gVlS`N6$03DlHMR4G<#=EC;LwL3vg*lnBsPiD!BDd zY|#t*Ix~Oy18FSdVXdlSx3RuL^uo#|E0YWP+Tx`*E+|-~+)-LB@s|@PIJXRS;`CSd z=4yBRo=SWD6|F$74{~oX+dDTTB~g>rMS4oq-)exB|a>k_@7}zCnx?}za5Wz+0jYe8i$8rl(y(o zJ-4|U=980>qj7DKwQ7w!{29weR!^S3@pYPiw=2O>L&629(^H8D!GD$IE*3rG$Ufp+ zdW<7gI0&Qhk*(K0!?J=4suhicQAb&$?-;^VRW$>%I9t!_E4vx*PDj6gbk%}7MMX4n zVwBiOC2~iRXnVX?t8r4j)x$&4iiI{-Ncf-K@`xsOS-+Q;5qcw+cs5x3j0@j5I_Qg( z6G$BH%1$i{vcxmZ{8^6YkUs`ea0D|fG+M`3A9?Pz+O8!5AQvmeJ?>fvYS?8vKK_SuG87eHLdzmkw19EP*1b)t(z8&o%48g=zS9?mZkmo9f zSiQadVJdX3kRDZ4RRwTB&CdEW1R)_oqguQKAL}A|I+afLJ^Z^_AAIv7Gv)%MgJ=Xo zoI5%dCDVfn8XM;)#>?70Gf!#a65MM#WU{s2xH`@1B|uTL#bURO%^UzSa)*Y_#W&6j z1WuAH_a(-)`fazGq!T!tDSF<@YQNOQ-m$NZ|M)=8.1", + "cweagans/composer-patches": "^1.7", + "deltalab/phpqrcode": "^1.1", + "pear/image_barcode": "^1.1", + "pear/pear": "^1.9", + "rospdf/pdf-php": "^0.12" + }, + "require-dev": { + "glpi-project/tools": "^0.5" + }, + "config": { + "optimize-autoloader": true, + "sort-packages": true, + "allow-plugins": { + "cweagans/composer-patches": true + } + }, + "repositories": [ + { + "type": "package", + "package": { + "name": "deltalab/phpqrcode", + "version": "1.1.4", + "dist": { + "url": "https://sourceforge.net/projects/phpqrcode/files/releases/phpqrcode-2010100721_1.1.4.zip/download", + "type": "zip", + "reference": "1.1.4" + }, + "autoload": { + "classmap": [ + "phpqrcode.php" + ] + } + } + }, + { + "type": "package", + "package": { + "name": "pear/image_barcode", + "version": "1.1.2", + "dist": { + "url": "https://github.com/pear/Image_Barcode/archive/1.1.2.zip", + "type": "zip", + "reference": "1.1.2" + }, + "autoload": { + "psr-0": { + "Image": "./" + } + }, + "include-path": [ + "./" + ] + } + } + ], + "extra": { + "patches": { + "pear/image_barcode": { + "Fix PHP 8.x compatibility": "./patch/fix-pear-image-barcode.patch" + } + } + }, + "autoload": { + "classmap": [ + "inc/" + ] + } +} diff --git a/barcode/front/barcode.form.php b/barcode/front/barcode.form.php new file mode 100644 index 0000000..3676116 --- /dev/null +++ b/barcode/front/barcode.form.php @@ -0,0 +1,33 @@ +printPDF($_POST); + $filePath = explode('/', $file); + $filename = end($filePath); + + $msg = "" + . __('Generated file', 'barcode') . ""; + + Session::addMessageAfterRedirect($msg); +} + +Html::back(); diff --git a/barcode/front/barcode.php b/barcode/front/barcode.php new file mode 100644 index 0000000..40271c1 --- /dev/null +++ b/barcode/front/barcode.php @@ -0,0 +1,81 @@ +"; +echo "

" . __('Barcode generation', 'barcode') . "

"; + +echo "
"; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; + +echo "
" . __('Manual generation', 'barcode') . "
" . __('Code', 'barcode') . ""; +echo ""; +echo "" . __('Type', 'barcode') . ""; +$config = $pbConfig->getConfigType(); +$pbConfig->showTypeSelect($config['type']); +echo "
" . __('Page size', 'barcode') . ""; +$pbBarcode->showSizeSelect($config['size']); +echo "" . __('Orientation', 'barcode') . ""; +$pbBarcode->showOrientationSelect($config['orientation']); +echo "
" . __('Number of copies', 'barcode') . "" . __('Not use first xx barcodes', 'barcode') . ""; +Dropdown::showNumber("eliminate", ['width' => '100']); +echo "
" . __('Display border', 'barcode') . ""; +Dropdown::showYesNo("border", 1, -1, ['width' => '100']); +echo "" . __('Display labels', 'barcode') . ""; +Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); +echo "
"; +echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); +echo "
"; +Html::closeForm(); +echo ""; + +Html::footer(); diff --git a/barcode/front/checkItemByInv.php b/barcode/front/checkItemByInv.php new file mode 100644 index 0000000..1dbee93 --- /dev/null +++ b/barcode/front/checkItemByInv.php @@ -0,0 +1,37 @@ +getFromDBByCrit(['otherserial' => $inventoryNumber])) { + Html::redirect($item->getFormURLWithID($item->getID())); +} else { + Html::displayErrorAndDie( + sprintf(__('No item found with inventory number: %s', 'barcode'), htmlspecialchars($inventoryNumber)), + true + ); +} diff --git a/barcode/front/config.form.php b/barcode/front/config.form.php new file mode 100644 index 0000000..0bcd80d --- /dev/null +++ b/barcode/front/config.form.php @@ -0,0 +1,78 @@ +update(['id' => 1, 'type' => $_POST['type']]); +} + +Html::back(); diff --git a/barcode/front/config.php b/barcode/front/config.php new file mode 100644 index 0000000..6f91ae4 --- /dev/null +++ b/barcode/front/config.php @@ -0,0 +1,24 @@ + Plugins) +Plugin::load('barcode'); + +Html::header(__('Barcode', 'barcode'), $_SERVER['PHP_SELF'], "config", "plugins"); + +$pbConfig = new PluginBarcodeConfig(); +$pbConfig->showForm(''); + +Html::footer(); diff --git a/barcode/front/config_type.form.php b/barcode/front/config_type.form.php new file mode 100644 index 0000000..2b981c3 --- /dev/null +++ b/barcode/front/config_type.form.php @@ -0,0 +1,50 @@ +find(['type' => $_POST['type']]); + + $data = [ + 'type' => $_POST['type'], + 'size' => $_POST['size'] ?? 'A4', + 'orientation' => $_POST['orientation'] ?? 'Portrait', + 'marginTop' => (int)($_POST['marginTop'] ?? 30), + 'marginBottom' => (int)($_POST['marginBottom'] ?? 30), + 'marginLeft' => (int)($_POST['marginLeft'] ?? 30), + 'marginRight' => (int)($_POST['marginRight'] ?? 30), + 'marginHorizontal' => (int)($_POST['marginHorizontal'] ?? 25), + 'marginVertical' => (int)($_POST['marginVertical'] ?? 30), + 'maxCodeWidth' => (int)($_POST['maxCodeWidth'] ?? 110), + 'maxCodeHeight' => (int)($_POST['maxCodeHeight'] ?? 70), + 'txtSize' => (int)($_POST['txtSize'] ?? 8), + 'txtSpacing' => (int)($_POST['txtSpacing'] ?? 3), + ]; + + if (!empty($results)) { + $id = array_key_first($results); + $data['id'] = $id; + $pbcconf->update($data); + } else { + $pbcconf->add($data); + } + + Session::addMessageAfterRedirect(__('Configuration saved.', 'barcode')); +} + +Html::back(); diff --git a/barcode/front/document.send.php b/barcode/front/document.send.php new file mode 100644 index 0000000..32b084a --- /dev/null +++ b/barcode/front/document.send.php @@ -0,0 +1,52 @@ + 0) { + echo fread($f, $fsize); +} +fclose($f); diff --git a/barcode/hook.php b/barcode/hook.php new file mode 100644 index 0000000..69d4019 --- /dev/null +++ b/barcode/hook.php @@ -0,0 +1,199 @@ + ' . __('Barcode', 'barcode') . " - " . __('Print barcodes', 'barcode'); + + $generate_qrcode_action = 'PluginBarcodeQRcode' . MassiveAction::CLASS_ACTION_SEPARATOR . 'Generate'; + $generate_qrcode_label = ' ' . __('Barcode', 'barcode') . " - " . __('Print QRcodes', 'barcode'); + + if (!is_a($itemtype, CommonDBTM::class, true)) { + return []; + } + + // QR code siempre disponible (contiene campo ID) + $actions = [ + $generate_qrcode_action => $generate_qrcode_label, + ]; + + if (is_a($itemtype, CommonITILObject::class, true)) { + // Para objetos ITIL, el barcode se genera con el ID del ticket + $actions[$generate_barcode_action] = $generate_barcode_label; + } + + /** @var CommonDBTM $item */ + $item = new $itemtype(); + $item->getEmpty(); + + if (array_key_exists('otherserial', $item->fields)) { + // Barcode basado en número de inventario (otherserial) + $actions[$generate_barcode_action] = $generate_barcode_label; + } + + return $actions; +} + + +/** + * Instalación del plugin - debe retornar true si fue exitoso + */ +function plugin_barcode_install() { + global $DB; + + $migration = new Migration(PLUGIN_BARCODE_VERSION); + + // Obtener charset y collation por defecto (API GLPI 11) + $default_charset = DBConnection::getDefaultCharset(); + $default_collation = DBConnection::getDefaultCollation(); + + // Crear directorio de documentos del plugin si no existe + if (!file_exists(GLPI_PLUGIN_DOC_DIR . "/barcode")) { + @mkdir(GLPI_PLUGIN_DOC_DIR . "/barcode", 0750, true); + } + + // Renombrar tabla legacy si existe + $migration->renameTable("glpi_plugin_barcode_config", "glpi_plugin_barcode_configs"); + + // Crear tabla de configuración general si no existe + if (!$DB->tableExists("glpi_plugin_barcode_configs")) { + $query = "CREATE TABLE `glpi_plugin_barcode_configs` ( + `id` int NOT NULL AUTO_INCREMENT, + `type` varchar(20) DEFAULT NULL, + PRIMARY KEY (`id`) + ) ENGINE=InnoDB + DEFAULT CHARSET={$default_charset} + COLLATE={$default_collation} + ROW_FORMAT=DYNAMIC;"; + $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs"); + + $DB->doQueryOrDie( + "INSERT INTO `glpi_plugin_barcode_configs` (`id`, `type`) VALUES (1, 'code128')", + "Error al poblar glpi_plugin_barcode_configs" + ); + } + + // Renombrar tabla de tipos legacy si existe + $migration->renameTable("glpi_plugin_barcode_config_type", "glpi_plugin_barcode_configs_types"); + + // Crear tabla de configuración por tipo si no existe + if (!$DB->tableExists("glpi_plugin_barcode_configs_types")) { + $query = "CREATE TABLE `glpi_plugin_barcode_configs_types` ( + `id` int NOT NULL AUTO_INCREMENT, + `type` varchar(20) DEFAULT NULL, + `size` varchar(20) DEFAULT NULL, + `orientation` varchar(9) DEFAULT NULL, + `marginTop` int DEFAULT NULL, + `marginBottom` int DEFAULT NULL, + `marginLeft` int DEFAULT NULL, + `marginRight` int DEFAULT NULL, + `marginHorizontal` int DEFAULT NULL, + `marginVertical` int DEFAULT NULL, + `maxCodeWidth` int DEFAULT NULL, + `maxCodeHeight` int DEFAULT NULL, + `txtSize` int DEFAULT NULL, + `txtSpacing` int DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `type` (`type`) + ) ENGINE=InnoDB + DEFAULT CHARSET={$default_charset} + COLLATE={$default_collation} + ROW_FORMAT=DYNAMIC;"; + $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs_types"); + + $insert_query = "INSERT INTO `glpi_plugin_barcode_configs_types` + (`type`, `size`, `orientation`, + `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, + `marginHorizontal`, `marginVertical`, + `maxCodeWidth`, `maxCodeHeight`, + `txtSize`, `txtSpacing`) + VALUES + ('Code39', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 128, 50, 8, 3), + ('code128', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('ean13', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('int25', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('postnet', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('upca', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)"; + $DB->doQueryOrDie($insert_query, "Error al poblar glpi_plugin_barcode_configs_types"); + } + + // Agregar campos faltantes si la tabla ya existía sin ellos (migración de versión anterior) + if ($DB->tableExists("glpi_plugin_barcode_configs_types") + && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSize") + && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSpacing")) { + $migration->addField("glpi_plugin_barcode_configs_types", "txtSize", "integer"); + $migration->addField("glpi_plugin_barcode_configs_types", "txtSpacing", "integer"); + $migration->executeMigration(); + } + + // Insertar configuración de QRcode si no existe + if (!countElementsInTable("glpi_plugin_barcode_configs_types", ['type' => 'QRcode'])) { + $DB->doQueryOrDie( + "INSERT INTO `glpi_plugin_barcode_configs_types` + (`type`, `size`, `orientation`, + `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, + `marginHorizontal`, `marginVertical`, + `maxCodeWidth`, `maxCodeHeight`, `txtSize`, `txtSpacing`) + VALUES + ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)", + "Error al insertar configuración QRcode" + ); + } + + // Inicializar perfiles de derechos + include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; + include_once Plugin::getPhpDir('barcode') . '/inc/config.class.php'; + PluginBarcodeProfile::initProfile(); + + // Eliminar tabla de perfiles legacy si existe + if ($DB->tableExists("glpi_plugin_barcode_profiles")) { + $DB->doQueryOrDie( + "DROP TABLE `glpi_plugin_barcode_profiles`", + "Error al eliminar glpi_plugin_barcode_profiles" + ); + } + + return true; +} + + +/** + * Desinstalación del plugin - debe retornar true si fue exitoso + */ +function plugin_barcode_uninstall() { + global $DB; + + $tables = [ + 'glpi_plugin_barcode_configs', + 'glpi_plugin_barcode_configs_types', + 'glpi_plugin_barcode_profiles', + ]; + + foreach ($tables as $table) { + if ($DB->tableExists($table)) { + $DB->doQueryOrDie( + "DROP TABLE `{$table}`", + "Error al eliminar {$table}" + ); + } + } + + include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; + PluginBarcodeProfile::removeRights(); + + return true; +} diff --git a/barcode/inc/barcode.class.php b/barcode/inc/barcode.class.php new file mode 100644 index 0000000..5730d45 --- /dev/null +++ b/barcode/inc/barcode.class.php @@ -0,0 +1,549 @@ +docsPath = GLPI_PLUGIN_DOC_DIR . '/barcode/'; + } + + /** + * Retorna la lista de tipos de código disponibles + * + * @return array + */ + function getCodeTypes() { + return ['Code39', 'code128', 'ean13', 'int25', 'postnet', 'upca', 'QRcode']; + } + + /** + * Muestra un selector de tamaño de página + * + * @param string|null $p_size Valor por defecto + */ + function showSizeSelect($p_size = null) { + $sizes = [ + '4A0' => '4A0', '2A0' => '2A0', + 'A0' => 'A0', 'A1' => 'A1', 'A2' => 'A2', + 'A3' => 'A3', 'A4' => 'A4', 'A5' => 'A5', + 'A6' => 'A6', 'A7' => 'A7', 'A8' => 'A8', + 'A9' => 'A9', 'A10' => 'A10', + 'B0' => 'B0', 'B1' => 'B1', 'B2' => 'B2', + 'B3' => 'B3', 'B4' => 'B4', 'B5' => 'B5', + 'B6' => 'B6', 'B7' => 'B7', 'B8' => 'B8', + 'B9' => 'B9', 'B10' => 'B10', + 'C0' => 'C0', 'C1' => 'C1', 'C2' => 'C2', + 'C3' => 'C3', 'C4' => 'C4', 'C5' => 'C5', + 'C6' => 'C6', 'C7' => 'C7', 'C8' => 'C8', + 'C9' => 'C9', 'C10' => 'C10', + 'RA0' => 'RA0', 'RA1' => 'RA1', 'RA2' => 'RA2', + 'RA3' => 'RA3', 'RA4' => 'RA4', + 'SRA0' => 'SRA0', 'SRA1' => 'SRA1', 'SRA2' => 'SRA2', + 'SRA3' => 'SRA3', 'SRA4' => 'SRA4', + 'LETTER' => 'LETTER', + 'LEGAL' => 'LEGAL', + 'EXECUTIVE' => 'EXECUTIVE', + 'FOLIO' => 'FOLIO', + ]; + + $opts = ['width' => '100']; + if (!is_null($p_size)) { + $opts['value'] = $p_size; + } + Dropdown::showFromArray("size", $sizes, $opts); + } + + /** + * Muestra un selector de orientación de página + * + * @param string|null $p_orientation Valor por defecto + */ + function showOrientationSelect($p_orientation = null) { + $opts = ['width' => '100']; + if (!is_null($p_orientation)) { + $opts['value'] = $p_orientation; + } + Dropdown::showFromArray( + "orientation", + [ + 'Portrait' => __('Portrait', 'barcode'), + 'Landscape' => __('Landscape', 'barcode'), + ], + $opts + ); + } + + /** + * Muestra el formulario de generación de un código de barras individual + * + * @param string $p_type Tipo de objeto GLPI (ej: 'Computer') + * @param int $p_ID ID del objeto + */ + function showForm($p_type, $p_ID) { + + $pbConfig = new PluginBarcodeConfig(); + $config = $pbConfig->getConfigType(); + $ci = new $p_type(); + $ci->getFromDB($p_ID); + + // Intentar obtener el número de inventario (otherserial) + $code = ($ci->isField('otherserial')) ? $ci->getField('otherserial') : ''; + + // Ruta compatible con GLPI 11 + $action_url = '/plugins/barcode/front/barcode.form.php'; + + echo ""; + echo "
"; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo "
" . __('Generation', 'barcode') . "
" . __('Code', 'barcode') . ""; + echo ""; + echo "" . __('Type', 'barcode') . ""; + $pbConfig->showTypeSelect($config['type']); + echo "
" . __('Page size', 'barcode') . ""; + $this->showSizeSelect($config['size']); + echo "" . __('Orientation', 'barcode') . ""; + $this->showOrientationSelect($config['orientation']); + echo "
" . __('Number of copies', 'barcode') . "
"; + echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); + echo "
"; + echo "
"; + Html::closeForm(); + } + + /** + * Muestra el formulario de acción masiva para barcodes lineales + * + * @param MassiveAction $ma Objeto de acción masiva + */ + function showFormMassiveAction(MassiveAction $ma) { + + $pbConfig = new PluginBarcodeConfig(); + + echo '
'; + echo ''; + echo __('It will generate only elements have defined field:', 'barcode') . ' '; + if (key($ma->items) == 'Ticket') { + echo __('Ticket number', 'barcode'); + } else { + echo __('Inventory number'); + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
'; + $config = $pbConfig->getConfigType(); + echo __('Type', 'barcode') . " : "; + $pbConfig->showTypeSelect($config['type'], ['QRcode' => 'QRcode']); + echo '
'; + echo '
'; + + PluginBarcodeBarcode::commonShowMassiveAction(); + } + + /** + * Muestra las opciones comunes de acción masiva (tamaño, orientación, opciones de display) + * Reutilizado tanto por Barcode como por QRcode + */ + static function commonShowMassiveAction() { + + $pbBarcode = new PluginBarcodeBarcode(); + $pbConfig = new PluginBarcodeConfig(); + $config = $pbConfig->getConfigType(); + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
'; + echo "
" . __('Page size', 'barcode') . " :
"; + $pbBarcode->showSizeSelect($config['size']); + echo ''; + echo __('Not use first xx barcodes', 'barcode') . " : "; + Dropdown::showNumber("eliminate", ['width' => '100']); + echo '
'; + echo "
" . __('Orientation', 'barcode') . " :
"; + $pbBarcode->showOrientationSelect($config['orientation']); + echo ''; + echo __('Display border', 'barcode') . " : "; + Dropdown::showYesNo("border", 1, -1, ['width' => '100']); + echo '
  '; + echo __('Display labels', 'barcode') . " : "; + Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); + echo '
'; + echo '
'; + + echo "
"; + echo Html::submit(__('Create', 'barcode'), ['name' => 'massiveaction']); + } + + /** + * Genera el PDF con los códigos de barras y retorna la ruta relativa del archivo + * + * @param array $p_params Parámetros: type, size, orientation, codes, nb, border, displaylabels, displayData + * @return string|int Ruta relativa del PDF generado, o 0 si falla + */ + function printPDF($p_params) { + + $pbConfig = new PluginBarcodeConfig(); + $ext = 'png'; + $type = $p_params['type']; + $size = $p_params['size']; + $orientation = $p_params['orientation']; + $codes = []; + + $displayDataCollection = $p_params['displayData'] ?? []; + + if ($type == 'QRcode') { + $codes = $p_params['codes']; + } else { + if (isset($p_params['code'])) { + $nb = isset($p_params['nb']) ? (int)$p_params['nb'] : 1; + if ($nb > 1) { + $this->create($p_params['code'], $type, $ext); + for ($i = 1; $i <= $nb; $i++) { + $codes[] = $p_params['code']; + } + } else { + if (!$this->create($p_params['code'], $type, $ext)) { + Session::addMessageAfterRedirect( + __('The generation of some barcodes produced errors.', 'barcode') + ); + } + $codes[] = $p_params['code']; + } + } elseif (isset($p_params['codes'])) { + $codes = $p_params['codes']; + foreach ($codes as $code) { + if ($code !== '') { + $this->create($code, $type, $ext); + } + } + } else { + return 0; + } + } + + // Obtener configuración dimensional del tipo + $config = $pbConfig->getConfigType($type); + $width = $config['maxCodeWidth']; + $height = $config['maxCodeHeight']; + $marginH = $config['marginHorizontal']; + $marginV = $config['marginVertical']; + $txtSize = $config['txtSize']; + $txtSpacing = $config['txtSpacing']; + + // Crear el PDF con Cezpdf (rospdf/pdf-php) + $pdf = new Cezpdf($size, $orientation); + $pdf->tempPath = GLPI_TMP_DIR; + $pdf->selectFont(Plugin::getPhpDir('barcode') . "/lib/ezpdf/fonts/Helvetica.afm"); + $pdf->ezSetMargins( + $config['marginTop'], + $config['marginBottom'], + $config['marginLeft'], + $config['marginRight'] + ); + $pdf->ezStartPageNumbers( + $pdf->ez['pageWidth'] - 30, + 10, 10, 'left', + '{PAGENUM} / {TOTALPAGENUM}' + ); + + // Detectar si hay logo y calcular alturas + $heightimage = $height; + $logoWidth = 0; + $logoHeight = 0; + $heightyposText = $height; + + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { + $heightLogomax = 20; + $imgSize = getimagesize(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); + $logoWidth = $imgSize[0]; + $logoHeight = $imgSize[1]; + + if ($logoHeight > $heightLogomax) { + $ratio = (100 * $heightLogomax) / $logoHeight; + $logoHeight = $heightLogomax; + $logoWidth = $logoWidth * ($ratio / 100); + } + if ($logoWidth > $width) { + $ratio = (100 * $width) / $logoWidth; + $logoWidth = $width; + $logoHeight = $logoHeight * ($ratio / 100); + } + $heightyposText = $height - $logoHeight; + $heightimage = $heightyposText; + } + + // Posicionamiento y renderizado de cada código + $first = true; + $count = count($codes); + for ($ia = 0; $ia < $count; $ia++) { + $code = $codes[$ia]; + $displayData = $displayDataCollection[$ia] ?? []; + + if ($first) { + $x = $pdf->ez['leftMargin']; + $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; + $first = false; + } else { + if ($x + $width + $marginH > $pdf->ez['pageWidth']) { + // Nueva fila + $x = $pdf->ez['leftMargin']; + if ($y - $height - $marginV < $pdf->ez['bottomMargin']) { + // Nueva página + $pdf->ezNewPage(); + $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; + } else { + $y -= $height + $marginV; + } + } + } + + if ($code !== '') { + $imgFile = ($type == 'QRcode') + ? $code + : $this->docsPath . $code . '_' . $type . '.' . $ext; + + if (file_exists($imgFile)) { + $imgSize = getimagesize($imgFile); + $imgWidth = $imgSize[0]; + $imgHeight = $imgSize[1]; + + // Escalar manteniendo proporciones + if ($imgWidth > $width) { + $ratio = (100 * $width) / $imgWidth; + $imgWidth = $width; + $imgHeight = $imgHeight * ($ratio / 100); + } + if ($imgHeight > $heightimage) { + $ratio = (100 * $heightimage) / $imgHeight; + $imgHeight = $heightimage; + $imgWidth = $imgWidth * ($ratio / 100); + } + + $image = imagecreatefrompng($imgFile); + + $xOffset = ($imgWidth < $width) ? $x + (($width - $imgWidth) / 2) : $x; + $pdf->addImage($image, $xOffset, $y, $imgWidth, $imgHeight); + + // Agregar logo si existe + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { + $logoimg = imagecreatefrompng(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); + $pdf->addImage( + $logoimg, + $x + (($width - $logoWidth) / 2), + $y + $heightyposText, + $logoWidth, + $logoHeight + ); + } + + // Agregar texto bajo el código + $txtHeight = 0; + $displayCount = is_array($displayData) ? count($displayData) : 0; + for ($i = 0; $i < $displayCount; $i++) { + $pdf->addTextWrap( + $x, + $y - ($txtSpacing + $txtHeight), + $txtSize, + $displayData[$i], + $width, + 'center' + ); + $txtHeight += $txtSpacing / 2 + $txtSize; + } + + // Dibujar borde si se solicitó + if (!empty($p_params['border'])) { + $pdf->Rectangle( + $x, + $y - ($txtHeight + $txtSpacing * 2), + $width, + $height + ($txtHeight + $txtSpacing * 2) + ); + } + } + } + + $x += $width + $marginH; + } + + // Guardar el PDF en disco + $file = $pdf->ezOutput(); + $pdfFile = $_SESSION['glpiID'] . '_' . $type . '.pdf'; + file_put_contents($this->docsPath . $pdfFile, $file); + + return '/files/_plugins/barcode/' . $pdfFile; + } + + /** + * Genera la imagen PNG de un código de barras lineal + * + * @param string $p_code Valor a codificar + * @param string $p_type Tipo de código (Code39, code128, etc.) + * @param string $p_ext Extensión de la imagen (png) + * @return bool true si se generó correctamente + */ + function create($p_code, $p_type, $p_ext) { + $filePath = $this->docsPath . $p_code . '_' . $p_type . '.' . $p_ext; + + // Si ya existe en caché, no regenerar + if (file_exists($filePath)) { + return true; + } + + ob_start(); + $barcode = new Image_Barcode(); + $resImg = @imagepng( + @$barcode->draw($p_code, $p_type, $p_ext, false) + ); + $img = ob_get_clean(); + + file_put_contents($filePath, $img); + + return $resImg !== false; + } + + /** + * Retorna un array vacío (sin acciones masivas específicas en el item) + */ + function getSpecificMassiveActions($checkitem = null) { + return []; + } + + /** + * Muestra el subformulario de la acción masiva + * + * @param MassiveAction $ma + * @return bool + */ + static function showMassiveActionsSubForm(MassiveAction $ma) { + switch ($ma->getAction()) { + case 'Generate': + $barcode = new self(); + $barcode->showFormMassiveAction($ma); + return true; + } + return false; + } + + /** + * Procesa la acción masiva de generación de códigos de barras para cada item + * + * @param MassiveAction $ma + * @param CommonDBTM $item + * @param array $ids IDs de los items seleccionados + */ + static function processMassiveActionsForOneItemtype( + MassiveAction $ma, + CommonDBTM $item, + array $ids + ) { + switch ($ma->getAction()) { + + case 'Generate': + $pbQRcode = new PluginBarcodeQRcode(); + $rand = mt_rand(); + $number = 0; + $codes = []; + + // Agregar celdas vacías para desplazamiento si se solicitó + $eliminate = (int)($ma->POST['eliminate'] ?? 0); + for ($nb = 0; $nb < $eliminate; $nb++) { + $codes[] = ''; + } + + foreach ($ids as $key) { + $item->getFromDB($key); + if (key($ma->items) === 'CommonITILObject' || is_a($item, CommonITILObject::class)) { + $codes[] = (string)$item->getField('id'); + } elseif ($item->isField('otherserial')) { + $codes[] = $item->getField('otherserial'); + } + } + + if (count($codes) > 0) { + $params = [ + 'codes' => $codes, + 'type' => $ma->POST['type'], + 'size' => $ma->POST['size'], + 'border' => $ma->POST['border'], + 'orientation' => $ma->POST['orientation'], + 'displaylabels' => $ma->POST['displaylabels'], + ]; + + $barcode = new PluginBarcodeBarcode(); + $file = $barcode->printPDF($params); + $filePath = explode('/', $file); + $filename = end($filePath); + + $msg = "" + . __('Generated file', 'barcode') . ""; + + Session::addMessageAfterRedirect($msg); + $pbQRcode->cleanQRcodefiles($rand, $number); + } + + $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); + return; + } + } +} diff --git a/barcode/inc/config.class.php b/barcode/inc/config.class.php new file mode 100644 index 0000000..a13e59a --- /dev/null +++ b/barcode/inc/config.class.php @@ -0,0 +1,305 @@ +getConfig(); + + // Ruta base del plugin compatible con GLPI 11 + $action_url = '/plugins/barcode/front/config.form.php'; + + echo ""; + + echo "
"; + echo ""; + echo ""; + echo "
" . __('Barcode plugin configuration', 'barcode') . "

"; + + // --- Configuración general --- + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + + // --- Logo de empresa --- + echo ""; + echo ""; + echo ""; + + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + } + + echo ""; + echo ""; + echo ""; + echo ""; + + echo "
" . __('General configuration', 'barcode') . "
" . __('Type', 'barcode') . ""; + $this->showTypeSelect($defaultType); + echo ""; + echo Html::submit(__('Save'), ['name' => 'update_type']); + echo "
"; + echo Html::submit(__('Empty the cache', 'barcode'), ['name' => 'dropCache']); + echo "
" . __('Company logo', 'barcode') . "
"; + // Ruta compatible GLPI 11 - sin Plugin::getWebDir() + echo ""; + echo "
"; + echo Html::submit(__('Delete the logo', 'barcode'), ['name' => 'dropLogo']); + echo "
"; + echo Html::submit(__('Save'), ['name' => 'upload_logo']); + echo "
"; + echo "
"; + Html::closeForm(); + + // --- Formulario por cada tipo de código --- + foreach ($pbBarcode->getCodeTypes() as $type) { + echo '
'; + $this->showFormConfigType($type); + } + } + + /** + * Obtiene el tipo de código predeterminado desde la BD + * + * @return string Tipo de código (p.ej. 'code128') + */ + function getConfig() { + $pbconf = new PluginBarcodeConfig(); + if ($pbconf->getFromDB(1)) { + return $pbconf->fields['type']; + } + return 'code128'; + } + + /** + * Formulario de configuración para un tipo específico de código + * + * @param string|null $p_type Tipo de código (Code39, code128, QRcode, etc.) + */ + function showFormConfigType($p_type = null) { + + $pbBarcode = new PluginBarcodeBarcode(); + + if (is_null($p_type)) { + $type = $this->getConfig(); + } else { + $type = $p_type; + } + + $config = $this->getConfigType($type); + + $action_url = '/plugins/barcode/front/config_type.form.php'; + + echo ""; + echo ""; + echo "
"; + echo ""; + + echo ""; + + // Tamaño y orientación de página + echo ""; + echo ""; + echo ""; + echo ""; + + // Márgenes externos + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + + // Márgenes internos + echo ""; + echo ""; + echo ""; + echo ""; + + // Dimensiones del código + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + // Opciones de texto bajo el código + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo "
" . htmlspecialchars($type) . "
" . __('Page size', 'barcode') . ""; + $pbBarcode->showSizeSelect($config['size']); + echo "" . __('Orientation', 'barcode') . ""; + $pbBarcode->showOrientationSelect($config['orientation']); + echo "
" . __('Margins', 'barcode') . "
" . __('Top', 'barcode') . ""; + echo ""; + echo "" . __('Bottom', 'barcode') . ""; + echo ""; + echo "
" . __('Left', 'barcode') . ""; + echo ""; + echo "" . __('Right', 'barcode') . ""; + echo ""; + echo "
" . __('Inner horizontal', 'barcode') . ""; + echo ""; + echo "" . __('Inner vertical', 'barcode') . ""; + echo ""; + echo "
" . __('Barcodes sizes', 'barcode') . "
" . __('Maximum width', 'barcode') . ""; + echo ""; + echo "" . __('Maximum height', 'barcode') . ""; + echo ""; + echo "
" . __('Text display options', 'barcode') . "
" . __('Text size', 'barcode') . ""; + echo ""; + echo "" . __('Text spacing between lines', 'barcode') . ""; + echo ""; + echo "
"; + echo Html::submit(__('Save'), ['name' => 'update']); + echo "
"; + echo "
"; + Html::closeForm(); + } + + /** + * Obtiene la configuración de un tipo de código específico + * + * @param string|null $p_type Tipo de código + * @return array Array con todos los parámetros de configuración + */ + function getConfigType($p_type = null) { + if (is_null($p_type)) { + $p_type = $this->getConfig(); + } + + $pbcconf = new PluginBarcodeConfig_Type(); + + // API GLPI 11: usar find() con array estructurado + $results = $pbcconf->find(['type' => $p_type]); + + if (!empty($results)) { + $id = array_key_first($results); + $pbcconf->getFromDB($id); + return [ + 'type' => $pbcconf->fields['type'], + 'size' => $pbcconf->fields['size'], + 'orientation' => $pbcconf->fields['orientation'], + 'marginTop' => (int)$pbcconf->fields['marginTop'], + 'marginBottom' => (int)$pbcconf->fields['marginBottom'], + 'marginLeft' => (int)$pbcconf->fields['marginLeft'], + 'marginRight' => (int)$pbcconf->fields['marginRight'], + 'marginHorizontal' => (int)$pbcconf->fields['marginHorizontal'], + 'marginVertical' => (int)$pbcconf->fields['marginVertical'], + 'maxCodeWidth' => (int)$pbcconf->fields['maxCodeWidth'], + 'maxCodeHeight' => (int)$pbcconf->fields['maxCodeHeight'], + 'txtSize' => (int)$pbcconf->fields['txtSize'], + 'txtSpacing' => (int)$pbcconf->fields['txtSpacing'], + ]; + } + + // Valores por defecto si no hay configuración en BD + return [ + 'type' => 'code128', + 'size' => 'A4', + 'orientation' => 'Portrait', + 'marginTop' => 30, + 'marginBottom' => 30, + 'marginLeft' => 30, + 'marginRight' => 30, + 'marginHorizontal' => 25, + 'marginVertical' => 30, + 'maxCodeWidth' => 110, + 'maxCodeHeight' => 70, + 'txtSize' => 8, + 'txtSpacing' => 3, + ]; + } + + /** + * Muestra un selector de tipo de código + * + * @param string|null $p_type Valor seleccionado actualmente + * @param array $used Tipos a excluir del dropdown + */ + function showTypeSelect($p_type = null, $used = []) { + $options = [ + 'width' => '100', + 'used' => $used, + ]; + if (!is_null($p_type)) { + $options['value'] = $p_type; + } + Dropdown::showFromArray( + "type", + [ + 'Code39' => __('code39', 'barcode'), + 'code128' => __('code128', 'barcode'), + 'ean13' => __('ean13', 'barcode'), + 'int25' => __('int25', 'barcode'), + 'postnet' => __('postnet', 'barcode'), + 'upca' => __('upca', 'barcode'), + 'QRcode' => __('QRcode', 'barcode'), + ], + $options + ); + } +} diff --git a/barcode/inc/config_type.class.php b/barcode/inc/config_type.class.php new file mode 100644 index 0000000..c825a4f --- /dev/null +++ b/barcode/inc/config_type.class.php @@ -0,0 +1,29 @@ +getID() > 0 + && $item->fields['interface'] == 'central') { + return self::createTabEntry(__('Barcode', 'barcode')); + } + return ''; + } + + /** + * Contenido de la pestaña del perfil + */ + static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { + $pfProfile = new self(); + $pfProfile->showForm($item->getID()); + return true; + } + + /** + * Formulario de derechos del plugin en el perfil + * + * @param int $ID ID del perfil + * @param array $options Opciones adicionales + */ + function showForm($ID, array $options = []) { + + echo "
"; + $canedit = Session::haveRightsOr(self::$rightname, [CREATE, UPDATE, PURGE]); + + if ($canedit) { + $profile = new Profile(); + echo ""; + } + + $profile = new Profile(); + $profile->getFromDB($ID); + + $rights = $this->getAllRights(); + $profile->displayRightsChoiceMatrix($rights, [ + 'canedit' => $canedit, + 'default_class' => 'tab_bg_2', + 'title' => __('Barcode', 'barcode'), + ]); + + if ($canedit) { + echo "
"; + echo Html::hidden('id', ['value' => $ID]); + echo Html::submit(_sx('button', 'Save'), ['name' => 'update']); + echo "
\n"; + Html::closeForm(); + } + echo "
"; + } + + /** + * Elimina los derechos del plugin (para uninstall) + */ + static function uninstallProfile() { + $pfProfile = new self(); + $a_rights = $pfProfile->getAllRights(); + foreach ($a_rights as $data) { + ProfileRight::deleteProfileRights([$data['field']]); + } + } + + /** + * Lista de todos los derechos del plugin + * + * @return array + */ + function getAllRights() { + return [ + [ + 'rights' => [UPDATE => __('Update')], + 'label' => __('Manage configuration', 'barcode'), + 'field' => 'plugin_barcode_config', + ], + [ + 'rights' => [CREATE => __('Create')], + 'label' => __('Generation of barcode', 'barcode'), + 'field' => 'plugin_barcode_barcode', + ], + ]; + } + + /** + * Agrega derechos por defecto a un perfil + * + * @param int $profiles_id ID del perfil + * @param array $rights Mapa de derechos a agregar + */ + static function addDefaultProfileInfos($profiles_id, $rights) { + $profileRight = new ProfileRight(); + foreach ($rights as $right => $value) { + if (!countElementsInTable('glpi_profilerights', + ['profiles_id' => $profiles_id, 'name' => $right])) { + $myright = [ + 'profiles_id' => $profiles_id, + 'name' => $right, + 'rights' => $value, + ]; + $profileRight->add($myright); + // Actualizar sesión activa + $_SESSION['glpiactiveprofile'][$right] = $value; + } + } + } + + /** + * Crea accesos completos para el primer perfil administrador + * + * @param int $profiles_id ID del perfil + */ + static function createFirstAccess($profiles_id) { + include_once(Plugin::getPhpDir('barcode') . "/inc/profile.class.php"); + $profile = new self(); + foreach ($profile->getAllRights() as $right) { + self::addDefaultProfileInfos($profiles_id, [$right['field'] => ALLSTANDARDRIGHT]); + } + } + + /** + * Elimina los derechos del plugin de todos los perfiles y de la sesión + */ + static function removeRights() { + $profile = new self(); + foreach ($profile->getAllRights() as $right) { + if (isset($_SESSION['glpiactiveprofile'][$right['field']])) { + unset($_SESSION['glpiactiveprofile'][$right['field']]); + } + ProfileRight::deleteProfileRights([$right['field']]); + } + } + + /** + * Inicializa los perfiles del plugin durante la instalación + * - Registra los derechos en glpi_profilerights + * - El perfil activo del usuario instalador recibe todos los derechos + */ + static function initProfile() { + $pfProfile = new self(); + $profile = new Profile(); + $a_rights = $pfProfile->getAllRights(); + + foreach ($a_rights as $data) { + if (!countElementsInTable("glpi_profilerights", ['name' => $data['field']])) { + ProfileRight::addProfileRights([$data['field']]); + $_SESSION['glpiactiveprofile'][$data['field']] = 0; + } + } + + // Asignar todos los derechos al perfil activo del usuario instalador + if (isset($_SESSION['glpiactiveprofile'])) { + $dataprofile = []; + $dataprofile['id'] = $_SESSION['glpiactiveprofile']['id']; + $profile->getFromDB($_SESSION['glpiactiveprofile']['id']); + + foreach ($a_rights as $info) { + if (is_array($info) + && (!empty($info['itemtype']) || !empty($info['rights'])) + && !empty($info['label']) + && !empty($info['field'])) { + + $rights = isset($info['rights']) + ? $info['rights'] + : $profile->getRightsFor($info['itemtype']); + + foreach (array_keys($rights) as $right) { + $dataprofile['_' . $info['field']][$right] = 1; + $_SESSION['glpiactiveprofile'][$info['field']] = $right; + } + } + } + $profile->update($dataprofile); + } + } + + /** + * Limpia los perfiles al purgar un perfil GLPI + * (Callback del hook pre_item_purge) + * + * @param Profile $item Objeto Profile que se está purgando + */ + static function cleanProfiles(Profile $item) { + // No hay tabla local de perfiles en esta versión + // Los derechos están en glpi_profilerights manejados por GLPI core + } +} diff --git a/barcode/inc/qrcode.class.php b/barcode/inc/qrcode.class.php new file mode 100644 index 0000000..79177aa --- /dev/null +++ b/barcode/inc/qrcode.class.php @@ -0,0 +1,308 @@ +getFromDB($items_id); + + $itemByInvNumber = $item->fields['otherserial'] ?? ''; + + $URLById = 'URL = ' . $CFG_GLPI['url_base'] . $itemtype::getFormURLWithID($items_id, false); + $URLByInvNumber = 'URL = ' . $CFG_GLPI['url_base'] + . '/plugins/barcode/front/checkItemByInv.php?inventoryNumber=' + . urlencode($itemByInvNumber) + . '&itemtype=' . urlencode($itemtype); + + $a_content = []; + $b_content = []; + + if (!empty($data['serialnumber']) && isset($item->fields['serial'])) { + $a_content[] = 'Serial number = ' . $item->fields['serial']; + if (!empty($data['displayserialnumber'])) { + $label = !empty($data['displaylabels']) ? 'Serial: ' : ''; + $b_content[] = $label . $item->fields['serial']; + } + } + + if (!empty($data['inventorynumber']) && isset($item->fields['otherserial'])) { + $a_content[] = 'Inventory number = ' . $item->fields['otherserial']; + if (!empty($data['displayinventorynumber'])) { + $label = !empty($data['displaylabels']) ? 'Inventario: ' : ''; + $b_content[] = $label . $item->fields['otherserial']; + } + } + + if (!empty($data['id'])) { + $a_content[] = 'ID = ' . $item->fields['id']; + if (!empty($data['displayid'])) { + $label = !empty($data['displaylabels']) ? 'ID: ' : ''; + $b_content[] = $label . $item->fields['id']; + } + } + + if (!empty($data['uuid']) && isset($item->fields['uuid'])) { + $a_content[] = 'UUID = ' . $item->fields['uuid']; + if (!empty($data['displayuuid'])) { + $label = !empty($data['displaylabels']) ? 'UUID: ' : ''; + $b_content[] = $label . $item->fields['uuid']; + } + } + + if (!empty($data['name']) && isset($item->fields['name'])) { + $a_content[] = 'Name = ' . $item->fields['name']; + if (!empty($data['displayname'])) { + $label = !empty($data['displaylabels']) ? 'Nombre: ' : ''; + $b_content[] = $label . $item->fields['name']; + } + } + + if (!empty($data['url']) && !$item->no_form_page) { + $urlValue = !empty($data['inventorynumberURL']) ? $URLByInvNumber : $URLById; + $a_content[] = $urlValue; + if (!empty($data['displayurl'])) { + $label = !empty($data['displaylabels']) ? 'URL: ' : ''; + $b_content[] = $label . $urlValue; + } + } + + if (!empty($data['qrcodedate'])) { + $dateStr = date('Y-m-d'); + $a_content[] = 'QRcode date = ' . $dateStr; + if (!empty($data['displayqrcodedate'])) { + $label = !empty($data['displaylabels']) ? 'Fecha: ' : ''; + $b_content[] = $label . $dateStr; + } + } + + if (count($a_content) === 0) { + return false; + } + + $codeContents = implode("\n", $a_content); + $outputPath = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $number . '.png'; + + QRcode::png($codeContents, $outputPath, QR_ECLEVEL_L, 4); + + return [$outputPath, $b_content]; + } + + function cleanQRcodefiles($rand, $number) { + for ($i = 0; $i < $number; $i++) { + $tmpFile = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $i . '.png'; + if (file_exists($tmpFile)) { + @unlink($tmpFile); + } + } + } + + function showFormMassiveAction(MassiveAction $ma) { + + $fields = []; + $no_form_page = true; + + $itemtype = $ma->getItemtype(false); + if (is_a($itemtype, CommonDBTM::class, true)) { + $item = new $itemtype(); + $item->getEmpty(); + $fields = array_keys($item->fields); + $no_form_page = $item->no_form_page; + } + + echo ''; + echo '
'; + echo ''; + + if (in_array('serial', $fields, true)) { + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo Html::hidden('serialnumber', ['value' => 0]); + } + + if (in_array('otherserial', $fields, true)) { + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo Html::hidden('inventorynumber', ['value' => 0]); + } + + echo ''; + echo ''; + echo ''; + echo ''; + + if (in_array('uuid', $fields, true)) { + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo Html::hidden('uuid', ['value' => 0]); + } + + if (in_array('name', $fields, true)) { + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo Html::hidden('name', ['value' => 0]); + } + + echo ''; + echo ''; + echo ''; + + if (!$no_form_page) { + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo Html::hidden('url', ['value' => 0]); + } + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + + echo '
Numero de serial : '; + Dropdown::showYesNo("serialnumber", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayserialnumber", 0, -1, ['width' => '100']); + echo '
Numero de inventario : '; + Dropdown::showYesNo("inventorynumber", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayinventorynumber", 1, -1, ['width' => '100']); + echo '
ID : '; + Dropdown::showYesNo("id", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayid", 0, -1, ['width' => '100']); + echo '
UUID : '; + Dropdown::showYesNo("uuid", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayuuid", 0, -1, ['width' => '100']); + echo '
Nombre : '; + Dropdown::showYesNo("name", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayname", 1, -1, ['width' => '100']); + echo '
URL por numero de inventario : '; + Dropdown::showYesNo("inventorynumberURL", 1, -1, ['width' => '100']); + echo '
Pagina web del dispositivo : '; + Dropdown::showYesNo("url", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayurl", 0, -1, ['width' => '100']); + echo '
Fecha QRcode (' . date('Y-m-d') . ') : '; + Dropdown::showYesNo("qrcodedate", 1, -1, ['width' => '100']); + echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayqrcodedate", 0, -1, ['width' => '100']); + echo '
'; + echo 'Columna izquierda: incluir dato en el QR code. '; + echo 'Mostrar en etiqueta: mostrar texto visible bajo el codigo.'; + echo '
'; + echo '
'; + + PluginBarcodeBarcode::commonShowMassiveAction(); + } + + function getSpecificMassiveActions($checkitem = null) { + return []; + } + + static function showMassiveActionsSubForm(MassiveAction $ma) { + switch ($ma->getAction()) { + case 'Generate': + $pbQRcode = new self(); + $pbQRcode->showFormMassiveAction($ma); + return true; + } + return false; + } + + static function processMassiveActionsForOneItemtype( + MassiveAction $ma, + CommonDBTM $item, + array $ids + ) { + switch ($ma->getAction()) { + case 'Generate': + $pbQRcode = new PluginBarcodeQRcode(); + $rand = mt_rand(); + $number = 0; + $codes = []; + $displayDataCollection = []; + + $eliminate = (int)($ma->POST['eliminate'] ?? 0); + for ($nb = 0; $nb < $eliminate; $nb++) { + $codes[] = ''; + $displayDataCollection[] = []; + } + + if ($ma->POST['type'] === 'QRcode') { + foreach ($ids as $key) { + $values = $pbQRcode->generateQRcode( + $item->getType(), $key, $rand, $number, $ma->POST + ); + if ($values !== false) { + [$filename, $displayData] = $values; + $codes[] = $filename; + $displayDataCollection[] = $displayData; + $number++; + } + } + } else { + foreach ($ids as $key) { + $item->getFromDB($key); + if ($item->isField('otherserial')) { + $codes[] = $item->getField('otherserial'); + $displayDataCollection[] = []; + } + } + } + + if (count($codes) > 0) { + $params = [ + 'codes' => $codes, + 'displayData' => $displayDataCollection, + 'type' => $ma->POST['type'], + 'size' => $ma->POST['size'], + 'border' => $ma->POST['border'], + 'orientation' => $ma->POST['orientation'], + 'displaylabels' => $ma->POST['displaylabels'], + ]; + + $barcode = new PluginBarcodeBarcode(); + $file = $barcode->printPDF($params); + $filePath = explode('/', $file); + $filename = end($filePath); + + $msg = "" + . __('Generated file', 'barcode') . ""; + + Session::addMessageAfterRedirect($msg); + $pbQRcode->cleanQRcodefiles($rand, $number); + } + + $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); + return; + } + } +} diff --git a/barcode/locales/barcode.pot b/barcode/locales/barcode.pot new file mode 100644 index 0000000..778f998 --- /dev/null +++ b/barcode/locales/barcode.pot @@ -0,0 +1,419 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 inc/config.class.php:148 +msgid "Orientation" +msgstr "" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 inc/config.class.php:145 +msgid "Page size" +msgstr "" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "" diff --git a/barcode/locales/ca_ES.mo b/barcode/locales/ca_ES.mo new file mode 100644 index 0000000000000000000000000000000000000000..db2907e4db3fdc78a4f5653c37077ae37712e825 GIT binary patch literal 4054 zcmb`JTWnlM8OH})QtA?#CXhA|nn|E>Lb~3Y9oriWoL#TYHfwvkUYoWQ!FYGPJI$U8 zb7p-Bh=>YNgw%&hsgPQbEFn<>f`@Vuc_=T7kcxx^^o2@*C`9mp#6?0v3Ps}oo&7d( z142A-wBPxixqg@V=F|TA;BC(cJdZ(+LSB2L5SPGTz6mcpzqnn95%3k}uRu%@uQIQ3 z{~x&hN9LcHe`WrS`FG}Z=0BO@&4YbMnEOD|dk44oGY>EiF%L73Fpn~iF;9R{A?^ps zzZCdZ@Ii1N_y|b;e4Nu z0KX321%3ylkpB>TJNRRe=KTg71^>+b*TDm5AHZT7KMv-=3`pynAn7q6ej>t)?6?TN z4ZH+WJT8N@{!8F~@EhO}@G40AzYN|9UIXzHf58i?#dVP8kH9Eee>X__BuH@^W1eBA znR(_ENOqnB$u5sM&pgkpF;~HNV&0=*2HXTm|MMW}`z}cPTm{LmAAn@fk3iD%6Xwf2 z{t8I*Uj;YcAjI!M+UKJB#*%tOq> z%p=UB%wr(!e*&bqkAW2LG)Vb72~xhC2M>b{kmg_D@dzZlKL_Fn#4{k>&s~u6^hNM) z@aJF(yav+#2eF8FFG%~}#~cG`eFmiSUj*r1HJB~%B-#$7eV+p{WI=9KMBv-jjpjb~r#vv3JdOn!E zZ@yOeQ-Y5{<{=9Zisy$Q^i&2A4>He#6eo%;#g%dir7g)t$_reZB>p(|GoqLg z#Vme6P89Q^I3bFYqIgymr$ljD6fr~DX4uk0%Bb6Gn?N?hV8gU~Ryh*}!@*d_=Aw>8 zF?25UMJXdnS^R*UDCI?ILX;*&>8vPCiPE$v&4?21Tnhb21v|1EwnI^}S~)G|OdNI9 zj$99IOIuNXxLjIoRMyI(>_=`#x{j7j)$C|7zg(>>iv=BMtGc&XHRyG^B{xi0^Q6RH z9)amH+>q<+VkN*XvJ+Z!F$|pQib2Pww$3!E>ExE_c4a%!=Cllh?vB)5?d!nBvZFS& zZ0QXXBpP+MRS?zkf>*`6(J0qNRRyiMsUj_^dc%oD6{t4+cwHnHl|^`C3~n30=gW>Z z?GDWyG`CF4b;MHWWG~im%f?P_Zx20)#Zu2-hYxV78Ab+2v1|>D8=O*&)X@ovT44;-)aX4Zz=oWRPQ5|_yM-tVMMRlZ6J+W$qhVaVLD@U(9y(UCscs>Y9 zEZ4OTq{hJ+-5O8EID#DiIP~=m7i46^Rtz2KJEH91L zb%cnd7UQ;QrHZ|FoN9yxIa*sz)%B*KHK{qIWkKdL*{M_}pUUK9cCwJ4I+MXOT2--2 zHLMEau5zI*$Ws4G%bKS2kWmlNqG`+t+C3aVs-cyS843xe0(ojBQYJVpPj#G&;zByT zwY4>lvk79ep|{7Ip`RYyxOkyjtE3$k$LXp3M0O_KR39s^q)(47Ru;=QUCWMVMoUOv zoO+7lRFF<@J8S|q=VY^^Y^>evYGXb%eRCe^+t4;u4iHrnv3^I0 z2N9w#GJns^MT4{+_9q{_#e9f6_CM7pBdVxN&O}LRvSQv+aIKQ9F}>X}>xPUN7N}KG z?3tFbva6)8{r(HqD8#Opl&M?n9^8Shm^W@)+hI}RDwS+Hs8T~GZ*i?cR+w;5uN)UF zBzRJ)Bz1miZ1!K+TgV2w5MvsP`nxEWO4K!Ma-!l#NROD3Vp!3r%lO9rn}YvR+vY4v z2g=xgE^XDbNiGKkHP7Cb- literal 0 HcmV?d00001 diff --git a/barcode/locales/ca_ES.po b/barcode/locales/ca_ES.po new file mode 100644 index 0000000..38f0127 --- /dev/null +++ b/barcode/locales/ca_ES.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Catalan (Spain) (https://www.transifex.com/pluginsGLPI/teams/73419/ca_ES/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca_ES\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Codi de barres" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuració de plugin de codi de barres" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Mides de codis de barres" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Fons" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Codi" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logotip" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crear" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Frontera d'exhibició" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIU" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Buidar la memòria cau" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLI" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuració general" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Fitxer generat" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generació" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generació de codi de barres" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Interior horitzontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vertical interior" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Generarà només elements ha definit el camp:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "CARTA" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Paisatge" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Esquerra" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Administrar la configuració" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Marges" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Alçada màxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Amplada màxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "No utilitzar primer xx codis de barres" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Nombre de còpies" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientació" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Mida de pàgina" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Retrat" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Impressió QRcodes" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir codis de barres" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Dret" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "La memòria cau ha estat buidat." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "La generació d'alguns bacodes produir errors de." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Nombre d'entrades" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Part superior" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipus" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "CODE128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/cs_CZ.mo b/barcode/locales/cs_CZ.mo new file mode 100644 index 0000000000000000000000000000000000000000..dd872cde44784e05ca80e8acf614bdac3de39547 GIT binary patch literal 4480 zcmb`IYm6IL6~`~6K)aD5z->UL!yt5QvwATB%y-I z`T^zw^B}Xpyq|fL`2h0-v&38m>0FETI@4wP%qFwNe31DN^I`BE*yjr%`F93<7kB|A z7cYY3&rg|Mkk0)%>%U_DhWR_@ADDk){+0PR=Bwa!*ylCyo#5X=I`5w#o&O)^&<#T1 zCvL{=-QXSI+rR|)0dNwe_ZPt-@EDI<;CrAy#Pd&pap>OxY5ng(I`1zae&SW!$ew?I z?+4!iDK1;EDeZqFcoTRFcr&;ir2W(2jo=}W_Bjs1bYX$?z6a9!Qy`u96_Dch4dzqK zrIp&X;KViPiTnEYSUxH-EE8s2Q>)=PgEif_)-U^akIgso)2GagT z)+-?ST?5HpA0#{4%u_u72uSN52VZ}S5MKjnzX!27@f1jP^LgeMdHl<)KhFFr^GW76 znNKml&HOI&8RoOh^B|q~1J<8oKF@rCd6D@d^JV7Gm_3m4^b0Ts{u!k2;RXznpW8t4 zXD4$Qq;q4ek1;2hdzkx}DdseDhIt=I`_F?^-+7SoR|KiPZScL|!#w^Z_#x;|gOryS zz^&km%-@1Yg?J78IQRxgb#W6mr+sb*$G}mL)~|q+XBVV(t2}-hqfk>%md&&WPs5VctImPC^uft{sqJNSYMBc7vmkdsrt>?HqwjLp}-l z6eI_s8kvF|gwRE`lnD?kdF47YsjW?86GG#rWbnQmPa%9Ok%T}e~slYPMVA7Yq)z-d9 zn;)zq@Amn|neQQPIDn9I(j=5Q|*vUxG5oU&h1t`>88IS}*8Q5E=cMPTQZhiLnl zJZaS%by?L`rAqJi)m5t;RKrZkPDK`Vu&T8qZNv>P4Kj;x`k2FnM#?Q+9uDU? z_MAE2)b)n*()CQaQ9|&w=NZq(0;^Qhfpo&4h=OrNp@rxl&d&*QI2NA>nV1w>IkAL5 zEaGFrHGbgeKs4NvLP*StE(MXhjNRNylz^wCNhm0Ps(^SHXey4BGI^vjU^M~JEORU=9C{q3Z8O&TLs3$ z{wO3{rj4gdHB0VwNgc+ALFzq~y0YxylBw_8Mf*)+xl?H%vyp;U^`y+Sb*U=1_W{cq zMcXRvklU+4;QGmtk=51JVdUQNtz~_Z_8IAa;Qq{9ZgwQV9{$L9Vl*~6Qu2>yj*jdY znxCD|UUoh<939Hw^FUQaD4IzbAlcYNSa4T_vpN3?M1Q<;*O*z z0~~Zrdguc^4j_MR&-% zWmG05CihLrcz<&5lpMYKwOIHTExZj2C9RBOWn$0J|Fwm#Ki2JdrrEtDYu)F|VgU(8 z4xR3rY?dSB%NZ0~Ne!Xf1s1c6w*Sz-&YS zfgwK|VhQK;&Qj2trfd*SL~YZck1xxnk-kTG%{7g-MmU?b)-G8KwAVc^>uLov4UgP2 z4Oug`acYe>_2mU6d!6oD?`#dH+PZ1PA@a1THaoLe^VEv&H{x!`4(;k*>UC=BiZR|u zi3K!;M(?HWT2rs!uL5Ra36h9zJ@9o?PICqp2C&bykOgkqlrJs>=?AdLK|WwC3Jd2p z(BAwSdiS6%LiHMZ^Bd^fSNHKH*Hh&0MkBwXjV~Fy*pltAQc%tva+, YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# Pavel Borecki , 2019 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Pavel Borecki , 2019\n" +"Language-Team: Czech (Czech Republic) (https://www.transifex.com/pluginsGLPI/teams/73419/cs_CZ/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: cs_CZ\n" +"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Čárový kód" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Nastavení zásuvného modulu pro čárové kódy" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Velikosti čárových kódů" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Dole" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kód" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo organizace" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Vytvořit" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Zobrazit ohraničení" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Zobrazit štítky" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Vyprázdnit mezipaměť" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Obecná nastavení" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Vytvořený soubor" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Vytvoření" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Vytváření čárového kódu" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Vnitřní vodorovné" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vnitřní svislé" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Vytvoří pouze prvky, které mají určenou kolonku:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Na šířku" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Vlevo" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Správa nastavení" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Okraje" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maximální výška" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maximální šířka" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Nepoužívejte prvních xx čárových kódů" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Počet kopií" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientace" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Velikost stránky" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Na výšku" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Tisk QR kódů" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Tisk čárových kódů" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QR kód" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Vpravo" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "A2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Volby zobrazování textu" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Velikost textu" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Mezery mezi řádkami textu" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Mezipaměť byla vyprázdněna." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Při vytváření některých čárových kódů vznikly chyby." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Číslo požadavku" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Nahoře" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Typ" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/de_DE.mo b/barcode/locales/de_DE.mo new file mode 100644 index 0000000000000000000000000000000000000000..26a4f4e8f7d9811979a6b2246acb602b8b086ec6 GIT binary patch literal 4511 zcmcJQYm6jS701u6;A0dP5Oi5(y{m#VLe2DJp1nIjcTLZO?V0K6>6rzDU8}oqcNbe- z)mGh}S4@n2FaiCbBoNpTHUR_CNYITgM9{dINPGq2BN~h>iDr`xep0{q!KnXJeR_7* zVB!~V>eR39qwYQToO91Tf87<25{ia=6f*TLqK825-FTsV^}R%BqOS=b1^1%qUt_k=GAUl#rlS$MNF+r$N^940r?h63F9U1N*=?rTrqv`}n8y??Yz_^@AY) zzXbBS$3P6B;~?wR1g{5MAlvIfkmr9Gyb62*yb*j3jyu#hsXkXzSEeT`3%T$ z^qlaU(*C^Eza#vv@I~SGg+CDfNVqM0RrpikFF;=Jb*cYa_*>x{!aoS#68=$mL3k15 zeg7HcbMiNkC zgbp=8_G<`2CHg$bdOZxX-%o+;?-!*0Gm!Ot3)~N00ORuja(wQ?&s^URUIz|H{Ro&w zeIEP}_(kx;;Nu|c@okXjeOcPifvndXAf~22fq3YzcnyMku?X8K2_iJe23h|i$nzZs z@sKOr0y*Bk46+>`5k4k7C45TwG|1zh1=(KD3(p8&6uu%n2l9Si1rh3W9^`$#4YHl~ zK-rIj2S7gOlOXGR4CH-kko5|L5yY^x*SXCMj4 zIE2e8gzX1)V!wP4WdCxmV?B9o){}MGT{u?fAV(nzatQJX$R{B;LvDe53epc5fP5Ol zpAxWt(2yKvKf#ZZ@htDI&7M}-> zNj@i($|h(S!cP(pkfLmwvcr@eq3kGS$0$2a*$K)eD3``*&K)0FnK(aJP+w|UBq z+MctiDnVGo%)P4TRJ0dS{_ecJQl4AQQ@+(UoAGZ|r`pssy;zuAq#5n&5PDs{mu{=k zHC1;#Era4+N)I-yg1V}RVdi|yqMAYIZUw$^JnA;A>Cm`Ut{S!OdY)>;t3ms~_cj$a z($c<(RMT10s;29%AFrsrT80YwnQQ^?ayeh3g5%ess?*j~&~-!ej_)+|f9O2#gm6lP z&JDNKX{n}m8%-YDt**N@)1-yKs7|D@tuQibW23i&h!$eU@TRIk+l2!cLl??*eOu(^ z*soL!LK8Z!p%Fe0gmIU?#dQwhOWLiCjodL_hO3Bgy2wOZybypsG%@hi=* zVJhnlqiW*Ppv^Xqx{dMjad*^qs;=Kq6>ZkF_LT>_VGsf$_AJa9p${DzE_ZcpFzyrE zi|3-CrFS;3+F?-ZRAGD_hCvv0f8e0IG*_rw!CE|*TRo{wFObVYo64JT%u1<1Y>Q-S zJZ5@=wBsk!1T&>Zs2xPc*M>Unssn2U59q3~=4#fe4kM_PQN^r%G&_@5tNGIM+~PuC zNw;BYYd&hYH7nO?L{>S-sJ`N&RnluN|6@(zIAl~RksPxUX)BRZ$&pNY?A8QIU%`ot zRSq3L@*ER{8FkWe>p^fEhNn{K^&1`d)GBMIl~FS~Y&pK_?{afM^*4=aN136a_4V~Z z_}h=%y51P92Cbp)*^g!l#knDazoVhC^l)-wsHRU$<%b6P=I7?~mv)sLO!V0}5{M*= z&6H6F4#p&o>mOFtrV~cmOsu=YI6THrwSw$DaLYd)2nCWa`--$DXFJ*V+e zZTcOYn4QM_hOTyuyQX9FIYuSNhc{BAW33i4j1KYtvdbySS9Uj92A-=a>v;{NEF3p= z`EKK^=px%`#X;$k4!3kCUcH+kaj>Kz&Wu{k?&M0{O_o~WC>ZyogM6Eh)VfAC_i@TX zmG7oWt=58;n&K?!#%ZCBJSp=Uj&`RwA?gbsv{eoJpacn%zE&`(vk?3$@Gl5)6jJjDOUI>d*RH zPSYDua&<<^hYw6Vuf}AUHy!{Jhp;6Qt}h7}R)nW$ndkHy5g5@%dC1!r6)GHyP*u#<6%i_7JOe3@2?c9#APaQ1=E literal 0 HcmV?d00001 diff --git a/barcode/locales/de_DE.po b/barcode/locales/de_DE.po new file mode 100644 index 0000000..960d207 --- /dev/null +++ b/barcode/locales/de_DE.po @@ -0,0 +1,429 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Dieter Missal , 2020 +# Andreas Tschirpke, 2022 +# kaifoo, 2022 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: kaifoo, 2022\n" +"Language-Team: German (Germany) (https://www.transifex.com/pluginsGLPI/teams/73419/de_DE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de_DE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barcode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Barcode-Plugin-Konfiguration" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Barcode-Größe" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Unten" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "Nach ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "Nach Seriennummer" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Code" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Firmenlogo" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Erstellen" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Logo löschen" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Rahmen anzeigen" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Bezeichnung anzeigen" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "Executive-Format 184x267mm" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Leeren Sie den Cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "Folie" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Allgemeine Konfiguration" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Generierte Datei" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "erzeugen" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Barcode erzeugen" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Innere Horizontale" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Innere Vertikale" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Es werden nur Elemente vom Definitionsfeld erzeugt:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "Legal-Format 216x356mm" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "Letter-Format 216x219mm" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Querformat" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Links" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Konfiguration verwalten" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Abstände" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maximale Höhe" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maximale Breite" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Die ersten x (Anzahl) Barcodes nicht verwenden" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Anzahl der Kopien" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientierung" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Seitengröße" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Hochformat" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "QR-Codes drucken" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Barcodes drucken" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "TA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Rechts" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Anzeigeoption für Text" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Textgröße" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Zeilenabstand im Text " + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Der Cache wurde geleert." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Fehler beim Erstellen von Barcodes" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "Das Logo wurde gelöscht." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Ticket-Nummer" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Nach oben" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Typ" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/en_GB.mo b/barcode/locales/en_GB.mo new file mode 100644 index 0000000000000000000000000000000000000000..197120fd7a8294578b6c88399d9d1b355b85089f GIT binary patch literal 4351 zcmeIy|BD>u9S87FG-`X%Xf*LlYT}bd+oX1LyL)%JyG_oxJGZ%Pv-c&N&1vhm&h0+8 zJIUBJGcm~Q3sz2BJ z4{P}`^>OtH^-1-(`n39t`keZL`VwTjFKhV~^;PwE>IwCA^$qn+_0RAe)bkc(|NaJ7 z!!y1q!Y;0XXTeM11#lx|{|418WF8}09#?m&yVQbORQITR)fu=F_3VS^!gfI2hJb(+I{|YkCr{OyI9OU~a-~fC}@4pAxk5Bda`FNN`c_ZZa`ykuB4&oKL z88WXXTnk%}<8=pQ{m0;W@IiPP{0(INFT+*vkC64e4KcLx9_0HUL4N-kWP7XeGRJY9 zdYQUG-K1Uxnder>yav@_bzHqhbs+QJ1DVH7a6N3mZ^1iY8vau6{~j{G_aXE7FJwEP zXn6%Dhy6bbGVk*s^I5B|*XIWEyDe~Jg-8mrz8Wg04ajwLNDcJo9amao0Ead#X0XYtTg&c?XA?N=? z$o{RsOLQe<9_MIzmAYD8qpnpiQP-;*R0BD#n<0i&wm`N&0=W-%LYz`oZ-AWlgOJY? z$UN_a+$YB%PI&|uEJZo4_n(LC#~&b0c^4P%lMf-k-;B!G?pDb9(~x=PAlKV2$nmN| zet#pxkjNp(eXyYie138ZWQ2(iZp#EF^4`iPI zhsb!ZJa+VuZ>!tXaX5k)MqG!OL)?tG1i|C`h*<>J zd=0S&!DCGinNV+0U6|9~laOOQsO29+&OrfjEn)$|vD}C_^|&5|4Tv8gh7cCfKe*O- z?Cv3TxJ!Q*)qSvn*pH|p4j`^U@F*klh-t))2=0MV#CF6KqJO0NKTh!q{J!aw@(=a* zkKomajFx9q2XZZNop9}NA8;*lUviIdze_fsmSF_X3{H@h{E*~_B|jqh?UEmr{Fvm& zrI40F1}Df$VMq$YQW%lKb}5WXVN42m!;NZT-S#zYztivnQwxJduhEIz#0!J|!`Q^$ zQ5#DkOp>rAg=JHk0?YqlnA&ly%xnK0%1?$IByuRohsFvo7Qf#%8 zd$wGfl_?w82zhsnxDET2oTuFglM>_MlGp0AOw)ReCg1H9k9hT@DKlYWI2OZ^_iGSi(HcB&S(Jxt(iet6=q2u=FZedlf9cN;j+he1uDemn<(sybMd#E+wX}QyR88=5g<4xB2elxb4=w zpkWqla>Uxe_!u|5gay%^Sqx{4XLw*S<({o?>ps)5*O`mMmi?mhrX7X#P7Q-^qbQ8x z-UnQCC+muAD?Hq-%c~u-Nq-?%!?skHF);@!W#L$4vSVF`#>KipW=Jqh*%4`naT3@> zI_;W^(FzaRT9PW&Q}Z^8ky6gg<(<9xsiK)LR`!=>X9g;^jiF9W#|^KZDs&ogsv73Z zz}#%AVh?-#CN+uekTcnIHk(S1rZQtDJ(^38U7f};PBr>N+;iACW|&o6$12Rv literal 0 HcmV?d00001 diff --git a/barcode/locales/en_GB.po b/barcode/locales/en_GB.po new file mode 100644 index 0000000..cddffcd --- /dev/null +++ b/barcode/locales/en_GB.po @@ -0,0 +1,419 @@ +# English translations for PACKAGE package. +# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2022-07-18 07:08+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ASCII\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barcode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Barcode plugin configuration" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Barcodes sizes" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Bottom" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "By ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "By serial number" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Code" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Company logo" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Create" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Delete the logo" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Display border" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Display labels" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Empty the cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "General configuration" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Generated file" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generation" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generation of barcode" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Inner horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Inner vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "It will generate only elements have defined field:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Landscape" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Left" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Manage configuration" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margins" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maximum height" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maximum width" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Not use first xx barcodes" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Number of copies" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientation" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 inc/config.class.php:145 +msgid "Page size" +msgstr "Page size" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portrait" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Print QRcodes" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Print barcodes" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Right" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Text display options" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Text size" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Text spacing between lines" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "The cache has been emptied." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "The generation of some barcodes produced errors." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "The logo has been removed." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Ticket number" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Top" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Type" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/en_US.mo b/barcode/locales/en_US.mo new file mode 100644 index 0000000000000000000000000000000000000000..339f96e2158cc26476d3fdb0e0aa18cbfae9b5c2 GIT binary patch literal 3954 zcmeI!`)?Fg6bJAlFQEwXP!vVEphyv>`)a%GVwK%tTMI2+w%ZCwg45mG-ND_N&CF~c zh+;Isn3#|l_`!%VF)=<+6QjlujsAeq#DrfYQAyB9g7||*)cA-5qu;Z83h2KelR5L5 zJ9FngPdEK~(TqccV<%!6;=(kdeel#wTyT7OHPLi{3Y`|u$n)={{Jr?2__O${ z_=k92{7a$0HiMUi;CN39OLUci^AkWW$^Wi2q3vP!zp9jP| z$X~4D~80F7>7L0^^nJv6uZUEVn!T-H>2JT z7=~kz`+o^?fA2tU=P2ZPeE@kpA4BfvxOhU|pM+fhG<@VLqO*|O(by!`hMW%-u`17f zDUXYL#D~R4#mB|{;*;W2;sNn#$o(CX@-yOL@pS-p&EL-yXNz+ouj71(s-LuTuK1q#p?D1PI6r|r zuH)io;uqp6@igT8J_|X&r(vmwo5anK*NNAV*Om94 z^MG@a^MZ4l_W|2dKW-6QVIP9`3`<X3|3dBmpZHU_us}Oe}RwJ4bLx?ycf#4kJLQEYw+^mRM`_-~FsYYC{pgl@&OPfQv-r+Q*E7f391tqQWR=%XEd!Vm(fO@o} zJ*)hmQ8k_hx}ZkwvX)Bq@yZ(vUAd!bM5fs5pcPeeJ$sMq1Xh_E55}|?*m*7nYTPcD zRk7Y%pq1;CCzUSiigp5Dm8>zX3VPIb>OJamAwhlVo@5`cxm-F+eU?-3^Hx<;pB@dU z-*T)X=JBtU?6*8DuaB1#cBNKPC2bc=T(?miw+lguwzz?+`5M#m{6I}iOwGWjEw#!B z=734%-KveP81QTiuCYrQ?v8heGOibRmK{*WvzhEL)W&M4(qAyNCRXw** z%VP<(=eeGb5A6JdI#5o1YLs)Ul$*pF@{l9Zj=Hf<(v}m65oQx@qpIr%jt;0+&0Cn1 zyIbc2qqkrTYtKiY36)8jo0C0hHJr{4_6}@m%IYds#OU{ncEL#1ioTI^6RIgQU}W`} z&EFUsk(LP+4M*ZeIA(;SD$ce6 zP{%3OumMI+Ta|=LJH@i?msInRV{?WMVvn@HMm3j$pz0?=q4DwY7VMGZ+oO7-CGS>3 zjlVp82Cr8_1$rVtBbM!~ zSNW3V`8wzt%5@tZm+EnUquMjl4p!H8iV4**Vh0z;o>29^nlfel;g^kW*Q@vm8}6) literal 0 HcmV?d00001 diff --git a/barcode/locales/en_US.po b/barcode/locales/en_US.po new file mode 100644 index 0000000..90abb2b --- /dev/null +++ b/barcode/locales/en_US.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: English (United States) (https://www.transifex.com/pluginsGLPI/teams/73419/en_US/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: en_US\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barcode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Barcode plugin configuration" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Barcodes sizes" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Bottom" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Code" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Company logo" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Create" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Display border" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Empty the cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "General configuration" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Generated file" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generation" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generation of barcode" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Inner horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Inner vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "It will generate only elements have defined field:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Landscape" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Left" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Manage configuration" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margins" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maximum height" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maximum width" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Not use first xx barcodes" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Number of copies" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientation" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Page size" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portrait" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Print QRcodes" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Print barcodes" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Right" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "The cache has been emptied." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "The generation of some barcodes produced errors." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Ticket number" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Top" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Type" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/es_419.mo b/barcode/locales/es_419.mo new file mode 100644 index 0000000000000000000000000000000000000000..21018bc5a8c6fe96e1bc1a8f6ddc505da0e7d02b GIT binary patch literal 4159 zcmb`JYit}>6~_;xl-4wmrqI$-$W0+>LbCQg?AYGagx$^BalN)T>vd>KCAglw-o0UV zW_oAVFGWhlmm(yPs0s)XAu146p%Q`;iBPE@Fd)QBf+9f?MO3QbLnR&(0x3Mi|Lhz) zCPAnlxSDf+bLZZ<=W)-R-QVoJ;gf{+5ae#iKVD080sQsr(4qbE^+dbC7lbc@SVAue zUzX>;m+>pYKM4OU{EP5!!Yjgm3hAbF-(A8RLDqY-jCTw72yYYKF1%BCw{V~E9uO+% z0LcDjz&C>TgExX_LH6f^LJwrU%Q8ME>D4}-UWkAkf4aggx8MNyM|pk)+=KBRyv+0a!917+`F#&$Jr=}85jwVG z1AH@h0pxf*4)XgK!QJ3jz&pXqAn*S?_y+K05EuOk9aPg5kk{{mQT+a`AnQ{g$L(I> z5#f-qARGnR&f_54RT54LXM}a(BKS6}dl1ZmDS-kAa*IpAvpXo?n#l=Y?Moeo6S0@M+;!gAH*#E;I`!giWgRFN%#^b{K zgeQb$VO4laI3t_`Io_wiz2I4p_4yz!a_Bg39szFyKML~v=fK;+FM@3Mv%(*N3gZ_+ z&clC!cYtq2lD!Aaf_$za$os5-I668HvYto5yTDI?oTpEN*n%#BxM&mIA@FD5t>E85 zgo<|K<74~p0(qYd$o7tcY{v}9dJV{N^M#Qx5v~c(gB+JfK+dy|2tOu#O!#TxMUee` z0=y5r46=QH1=*gP5G3AbFUb4e0kS>&K#s#f;Zd2-gS@^7BE9?VEc(Nc_d_0pJOJT# zGzFEwBXWOC$Qasje**XKmhqgB};HmTaA4jlfg-_0BOjW{o-8R z+4{MP2ZIof3%B?7`>Wl8+$!)P$RuP6l7pOraGOp+_X}r0juXd_dL-@+!0`gQUP-&P-BUCy@ zrBN!4QE8mYSt{pn0eLDHs60&N5h@>}@+g(ZsEifbd11?JQAK{QZ3E?n!Ln`loK9>Q zY)!^0wi_mXD&s3?}jgobhbd2(}*D*9XUz?t%DH9l{{cEgBpC+cI zmaT7OQQuyff$1t-R!idIbbwt{CvA{VxL9ztlG3tfyCtoI?4sG#o}HN%LS z>xdznoXd~(Sr{jygIs~&O@4%;FirxKP%rW{oC?nwFUd@|GG~m7p|hy!rOHfcs;bUZ z8w=C(a{~<%AtIUCxNTdRa<3g{nqg55)aNq|vts$3%t@qWQRTC_(M-0G$>vpVq*xd| zl0_S+={U(WoepAOC!s5<%H~roXFXLyMjhps#;_)6_izB2rqSJ^T0qL%xT6l$a5jM| zbq&_*!|G5cNuszoG_<<9I*2n0V!LeC2EDL5lzw^fRINTelwgy1XtXe#8y_<92N;J3 zW~XPXSAEP4W(O+BV;p~m16EXtSxc~sw!v}bb+n63GO^g4%#2-K#|oE?%Txn|*9PsP z8e6i-w(&)kDjTT#`1JkEWazqaQ3Ws!!+4@_oa+N_CjvDwp>pbk$|}sO{S&x3co267 zRE}eo&GLdQ7UZxXkH3Wf&!Sb?e5PgFA-+b1`sFlgjFcrz~}!e%31m*)lkWJCtq{gI}^hI)HO%5NKB_)TGptFyzC`*B}8RN z%NfF(Xtkm}tEIACV|ZG)d@4DwgBPU~wZiQO=>j}RZ?@gN-YKp$_%89q7#D;)%ic9J z+x2fTK#Fp$LlrTi+QG%N0EV%OG=>lN3^FZfvrFBGPjfXd2s(!>gfi4`0rhXj%| czb*, YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Spanish (Latin America) (https://www.transifex.com/pluginsGLPI/teams/73419/es_419/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_419\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de Barra" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuración de plugin Barcode" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Medidas de código de barras" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Final" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo de la empresa" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crear" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Mostrar borde" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "Ejecutivo" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "La cache esta vacia" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuración General" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Archivo generado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Archivo Generado" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generación de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Margen interno horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Margen interno vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Unicamente se generara elementos para que tenga campo definido" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "Oficio" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "Carta" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Horizontal" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Izquierda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Administrar configuración" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margenes" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura maxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "anchura maxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "No utilizar código de barras xx primero" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de copias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientación" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamaño de página" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Vertical " + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir Código QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir Código de Barra" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Derecha" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Se ha limpiado la cache" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Se produjeron errores en la generación de código de barras" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de boleta" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Principio" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/es_AR.mo b/barcode/locales/es_AR.mo new file mode 100644 index 0000000000000000000000000000000000000000..a3ed002e49b1e230d35390231803fce8361e3849 GIT binary patch literal 4138 zcmb`JYltLQ6~~WmHoBwH$wsqAV{$ifH@oikOh4w?n{lnK?V0q>tGB0Tl8q5lQ+=oV zuGLj#RrNd;!$Lrk4}yY8J|s~b1Z6cMx(1Ahf*nN^MTwvh6$4R`fEoyji-P}CeR_7X z$p=4p>2rT|t8U$M?zyM_Gr!+|&7*{NAM9q>zu!o70sQS=bZEbR6VV>?!E3>@An)gXp$oF#H5s21wuPZE7Oo4ogdZ1P0I$J14}xz69|GCmBOv>K z0^A3F8GJkVO^{RmEcj0F#~{!912_QwP3~U?2QePR%l!Nxmqhp z555Du0CGMa0r~wW!Rx@UfH#59fV}>5;9I~KLHy|N=-`?zgFJr^g5vkD2iczjId69e zj|qo`1>rczah?D5Ixk^7Iy_;KN9g`XFGLHI@CMd4GzuL-{) zd>Ukb-;(ingx?c>U-$#zkAy!F{!I7_kk9Lv;QPTpg8RWiB#F=Kc98dTTsRD}-@J^+ zgp}4i5I+jgaos#1#mq)=H!6!kE`x3}?_AIEt zpMy7mFN4>Edr@Qs@Bql`&kE0gyuZ6a_H#e@Zt$FpKLO%LpF)SF=yM?F=P8ia{S}B* z(O*E0{~sW)w+|m9``-_8-5mx|B2)r7Z}Y-4!e!xE;fF!aivx0<8KEzXg`2_$zyp}~ zAb1jd9OS(G2IP2N0(qTRK+e;@K#pfGCUHIog$IPUfIR;Yi1JR`S@cI?AA;Qry9dVY zcn@TO$K-lU$Qa&r&9QO*xGnUM=9@38un)k_z*viH*zU%<+i!Q`VnPO|Kt9`=jCns? ztGgTLd=xeW<8$No!L+~9Ey<+HgFW_S#kYv&9J_*c5{96nZ66gnmP}gge}4{urjO!y9IVD>>%tm z*zK_Q!4AO=!|s3`fi1(vVMSOLHU;aqIxbGgUx7!-^jbpmj_)+Fk5^@K-ieUj z7!Nm1yVF)JZJI5f+Z%3}M$)2%AW@xIV_Q+2sLjp(4q{s9v{$hQY|0HngQHlC41(*O zQkC8D2~jnOlE^U$RU_jk>P(G~IF^y5Bc|SMs-cW(sG}N+sD>)4p^R#2R7?B_U5>jv zcLnZ7sNO#xBqdg>TKh`l;EZkzrOzaTlK(hp>zysAFbWzS7b(qaxOoSvM@>7@pA>jZt|lP265u+ggT+?U{k?4?IxK@BeSBT7(R=tYT2{a zOj)gzYfF{Ig@Kw5k&(=N+%%0$snd)z^`NK*s*9PLUN`(s<`l}ZsPfs|cqUuOWb-OF zS}cqo%c2d;IdPJyM~)wRP7*{#Wp^(&BI7Cx6?L3nn!p^t*}(y1>e^`+)e=hH#4UBi zija)N_|8#vq?IILTpS+W*w`4t`S`I})0;zX&>rr6b@9wxwKAMwfp~blFp`@b*6~NI z+VIhV`O19x%Jy zYy4(WO{|(^C+?z3eGODSeDq#sI*8hFQTYfA!+5H2f|UW6Q@)y-QaN=}Wfh*QgHyOT zd>B`URF1Qi&GLjSCgd<7kADXLpK@h)FEvavz<03%(Z*X=!n0w5(Oi2fHXlUL>-W9;5@xaK1rBL;|CMDwW1$ccKIM&;8zNn0cvLe{;g z)*ZL|)qobKD>fAEs<3+>j7L`Fw#<4U64VGp)Y84}zUBaA4?C%dv702_&8sy|?&0I; z$=s5b<)iMlio2J*ps#TOiyY?=8fO}O8!FrmgTBt$R;_N)&O(**AL|$$H5^11CzAdv zde;kjzPrs|0My6w5)_bXcekN+4q3k23S<;O@}PJ~o`)F1$h38Y3n-s#GTybzh3>cc zahd{%ptB=_J%_taIqYsjY~d<&Oza?=6&#ppo2b7ml<_t9cDw3V8>YRUN}ke@#@EK0 z`1(4DRJR;Hc?0iUG3g(*A;SGs2G1eKtbz&xil@CQ=ohkbyk^Ho8eWqF+LeMelSa@9 ldv#nlA^ylp<+FVDuOXpjoGmmIRiYrG)gWdKU9Q>|{THP;G%^4H literal 0 HcmV?d00001 diff --git a/barcode/locales/es_AR.po b/barcode/locales/es_AR.po new file mode 100644 index 0000000..d94f4d2 --- /dev/null +++ b/barcode/locales/es_AR.po @@ -0,0 +1,428 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Spanish (Argentina) (https://www.transifex.com/pluginsGLPI/teams/73419/es_AR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_AR\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de barra" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuración del plugin código de barra" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Tamaño de código" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Inferior" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo de la empresa" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crear" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Mostrar borde" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EJECUTIVO" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Caché vacío" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "OFICIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuración general" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Archivo generado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generación" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generación de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Interior horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Interior Vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Se generará sólo elementos han definido el campo:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "CARTA" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Vertical" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Izquierda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gestión de configuración" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Márgenes" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura máxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Ancho máximo" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "No usar los primeros xx códigos de barras" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de copias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientación" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamaño de página" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Apaisado" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir código QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir códigos de barras" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "Código QR" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Derecha" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Se ha vaciado la cache." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Se produjo error en la generación de algunos códigos de barra" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de ficha" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Superior" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Código 128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Código 39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "Ean 13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "Int 25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "Posnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/es_ES.mo b/barcode/locales/es_ES.mo new file mode 100644 index 0000000000000000000000000000000000000000..77d571fb9cae814bd58ae41a9ff0b1a2b2fd7ca6 GIT binary patch literal 4395 zcmb`IYm6IL6~_-v%VR@%1Oj~ky?up*#Jhg%W_O)#i|sgDH{M;x>m*GekJ<5E`=;Z$ z)4Ah)M3qvCfKL<N7s|{ViO@u|!a49J)JwvH(mpTs z!@@=35n)SsTzFD=N_bZ23s*tj*GRo5jD$|OCfpQ0A-o`b3VZ|B`54IO`y}`l@CA^M z_zjTH^DW^3`g>? z=ytr`3f>Fe0v5oX;4H}Fm%uUbw6q)WZKz+6{!fE>)Sm@;{*OW4@8=*Mx{Md=a|L`S z_-ByqvJH#!`rE-%OJ0F288NlKpr21JpW0M_xlvc_IpP7dEpm? z&k3IgS6PJqpd?(1~ya(ic_JSNgQ_|i5F@;Wm zc&Lk42HXI7-RD8R$6p8eUVazk^?n6%T>cK^ID8pINYYLmj_s#}_X&3k_X)Eg+h-Ew zczZxt5*`vB7B)b>pGQH~%Yv-eM?kjk)8I7tMd`l`vYvkhdHsKatk)}GdjGKq+h;q- z_Szx54dnj!fjn;)h-;AMm^AM3&1D`k1zCa|gKRBlw^ro)LE&L=0Wu@?x{!6>TF#(S zfv~T*Oh8UTmbrqWAooI!LRe2e1MAIaW2$zQ-&Gd^X2bScU@}(?ILiowy0rFHTP-&7%Q&iedrD-b7P-&LRSt{r7 z0C_4Gs60vKDJt)$@-&rasEiR_?Ax{;QAI(&V?yQIaMg7Bv6mPdjyj!k=Dc=Pwn<`p zRLN2$hX=@0r9hQQs!UO3KUJowGDDSFs_@Dc+l#z#Qw6qTsS;~1(R9$bDDXDbijCVk zzFG~u6&*OLK3c6DZPkudsoIN@O_g-D@;$$+>CjTWwnXzf)Ug-5O37hsqT6cK1X>2A z>Prt!qU@?#krUTKtfIO$Hs@`acmWL?)^wa0pR0*lH$k8}>28TuHVihE4s=h4iBnx~ zO{=zEHDS7=4%$VkSLaK0yj!hmlj>gBcD@&Bs_WH+7QE2w;2hT(cEO8bZHLYc)9d$C zSDQ|k#}2FOrk!+Y(I%?zG>#R!L~U%0PT**<-&?^Ma46qK2A)}p4U`)?t-;%|!>D27 zB=$@~jo5^VI?`m1JE@5|91WYPiKuEKteS|aCW5MosA{HKEpr!MIez8&Rp8eowe&`! z+Tv0hvCZAEG2K4xc9G|su%lLVvaWTg0@w|MMxKQ^9s1Cr;c}zf<7uDRUOeY)PhUN} zielUD`!K$aV;eh6F#cmYQDJHnYT1Zdo3Q@TW}W!Jx%^DZ!YpYo%oPZ>$WKvZT@vbq z`jPL!B=(&4lT59hIi_QWeT%A5svIuOSJkm%~qdb4Oc;GBel4@qVj1&QwF#6;3UxnH7^<)w!tBy~Y{=@<)(4WaFMIst}5y>gEau zILY91E>v@KDyJS&S%rRe_Z&WU?ZVgnD#y0UW_dss19BLUKQQ)x&3u)?rMBr<++mKX z*mKBKlJtBtxD=v;Q%o-!-gv8SoY3-m-r%e05`jhh4l|2GCV_d3jsKezIn;vc$d0T^ z;3*q-;O+CcFVG^*m@zH%wS%9Leug=d77(_v7b~5Z$NM^g_SdrJF-%1lmg1~A_>!c} zR~>J7w*o4~e%Gv7t>n$&-owN>vWD_+uviU|!w0=SjY`|qOgda99$Zw;26mJ} zVK5{^sMw46tf z;3D$5M@Sy>6Y25tCcd`vktWq{XxtKmVq*+@txSAS#~Qbi^X_Zs;!#}K$VVp9=}GuX zTe_xckX~|FmA%J_m`z+CMT^3(rt7IS4x+Xl=Z;~hT#W-S==4JvY!vTUF7BCda4B_Y bnvUUxErx?FkeO+@9}TZX%S85n%FF)&kEL_; literal 0 HcmV?d00001 diff --git a/barcode/locales/es_ES.po b/barcode/locales/es_ES.po new file mode 100644 index 0000000..1806374 --- /dev/null +++ b/barcode/locales/es_ES.po @@ -0,0 +1,428 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Alexander Salas Bastidas , 2017 +# Javier García, 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Javier García, 2021\n" +"Language-Team: Spanish (Spain) (https://www.transifex.com/pluginsGLPI/teams/73419/es_ES/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_ES\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de barras" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuración del complemento Código de barras" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Tamaño de los barcodes" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Inferior" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo de la organización" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crear" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Muestra el borde" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Mostrar etiquetas" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Vaciar la caché" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuración general" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Archivo creado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generación" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generación de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Interior horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Interior vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Generará solo elementos con campo definido" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Apaisado" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Izquierda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gestión de configuración" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margenes" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura máxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Anchura máxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "No utilice los primeros xx códigos de barras" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de copias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientación" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamaño de la página" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Vertical" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir códigos QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir códigos de barras" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "Código QR" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Derecha" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Mostrar opciones de texto" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Tamaño del texto" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Interlineado" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "La caché se ha vaciado." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "La generación de algunos barcodes terminó con errores" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de ticket" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Superior" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/es_GT.mo b/barcode/locales/es_GT.mo new file mode 100644 index 0000000000000000000000000000000000000000..bdbfa00f42583a09163c6c60b616fb479450960d GIT binary patch literal 4142 zcmb`Je~4UH6~|9ajdpEo+M3$fYHzAZ6VuuGwVU0YxYn7sv)f7b$8>hGHf^B2`{wS< zP2apXz3`ys8}c!Dfk0~LQwE~X3k{S z8pJ=myz@Tq{+N62`Ek$g@2|h|lZ18>atq`iuOd1N{`S>)q5bAHL_5G|g}(!_gq|0^ zAme|O{!79?3;!nkyYOY*MdjEo!|+O?Rh}xgRFN=`lp0#VMiDX*M*zH_X^K~S7M*{gI9we1X!}#h==})7gWOcuZIo9tUs6x_iM4xDK-ZFN3V_Ns#w>3S_&!5Au1Q23gO~ zh0nmpTao^P zuqs>@t_V*EPYUlBu7d1u1KtR>LH75<;2Xh@fSfm906CwYkooU{yuK&n&w-q0FM$et z8N43635RF94uN@a8sz;S5^jL3|9v3q`2hGP@Z%s{K#zlX=v#R4{dyXFEBI@W_q_=6 zx~nnC_iYcz`=vo1p8z@UWrWu-y$JF?S74COw-e;?YeDwMZsE-`zZc~72SKEFzn$Pdu1JF_7F_8VlK4iag%s7uw4*L1X zIe=8`=MX?|<`>!+WFEq~fzb40#rb*zgzGEk66ZJH0gfxz)CI^CWC@ajlp!Su-_u(m zdm*<$I6vP8*$3GVxgBxCk5(m0h4Q)z-qlT^YA?fj@=hE$!P+q9wbqj1eO zyG|!I3Wt-iitQN_Qz=T4s7+pmyeu9dM_!)1G4jUAJ51gLd6VQ#k;glGQM;qVO%+7V zh&*R>Vra(3oj`A@)yOrBqw+mv?|8kkQl@gdlWeM_Wt6Y|mZ90D`N|T_nb0^Lyy8@Y z(Zn>=nhlIB>YrC;aC8-|sZ}wt5@HwCikv+Yg^3PmFtBc1Vtwu=YQqMBYWB4yMnz$; zsZ3znCQM@0((6Vw%$g1R8conB(0qBWIFEO|Uarx+4jZwrJBH@XT0#pt)J@p&Z=PJx z4(^RHdD^zSZPhZi+2XZ>?uKn7En18c)r}3za&e+gpB`Ee(_**13L9XQA9XB3vE(cc zH;7V|)p3NV8o9)2n^4u+Fj05cIK;8^#2qmWhN*@$sv(bRNTM3DsD?DE^-s0TQ+Q?h zmE%{QUt?4s#s^M`)v7U}G6HoP zrcpiWP<<0Vmkr%n_np-HIQ@imN!P8mN*RT`-k<6`J6sA|zW zR-7xVm2z#lva~o-GaYy&wGcOLBUS1)<5WE=sFCVYs%F+L|0Xqqv@EDxCOeVJBNO}dShc_6!8gTyJk+0`cXSQxOMT|e6^BJutA)j$d6^G(k8xt zuAV+PvQSwlZ<&`J&5U?RVMIQ~zAC81oKCQbw&4-wx3r5*GJU*0o0{BO$NJWcOO-=- z)`rc3nq0NXrE?clU)M-Az@-mTvyp4Z1r_38=*H9eBU~BqIUTC$X_ZxXs*J+C+B=Pp z{rmB?Pi5I#nG7$;U_llOa`iQ-i3y3M!1KZQBKDwFH)&|+q)2AA{f>%tnvS2 zd0n@4?`u)aJIHMRTXw5zhl_7Rc*;iZe<^VT4K$DHme@}JWP#@E;7qLh_0G|(<7hd} zN->GtK=}zYm5&bU-V&{7-)hH`T=#nCrSQGNxWT;&sObEbU5}(vH6p2feGhE^-ex3! zij8+&s(>&Q#|ky!=JadeV1O-OHnO|xol|k|LJ$orA$-@;>}XU%+u&iGx!sAjRl{15 zs@lf-l%dL*hq~6dhQ_(#L_)Mx6bDCM=$&(H8%KhQL4rh6?cO=mL`}ueZ*A`{MyQPu z%7|^F5~4U>CW?!_?_jbY3$ByM5~-5|b&><@5{^di97?jLn!%k+BB~&Cwrw5C=JHnO zGFtvi{q!Q|P?RDrmzOW0@NY}2bq+gxcq#6q_$wlgALg^tL9-je>#Mq7#)lPjP(TeT q=r(iLEUrKD!`W4h%G$wS+@+Z^*HI?wXt}s}sg72qjvlXiMfw-GFEmvE literal 0 HcmV?d00001 diff --git a/barcode/locales/es_GT.po b/barcode/locales/es_GT.po new file mode 100644 index 0000000..e4dae51 --- /dev/null +++ b/barcode/locales/es_GT.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Spanish (Guatemala) (https://www.transifex.com/pluginsGLPI/teams/73419/es_GT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_GT\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de barras" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuración del plugin de código de barras" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Tamaños de códigos de barras" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Parte inferior" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logotipo de la empresa" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crear" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Frontera de la pantalla" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EJECUTIVO" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Vaciar la caché" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuración general" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Archivo generado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generación" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generación de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Horizontal interna" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vertical interior" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Se generará sólo elementos han definido el campo:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETRA" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Paisaje" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Izquierda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gestión de configuración" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Márgenes de" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura máxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Anchura máxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "No uso primer xx códigos de barras" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de copias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientación" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamaño de la página" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Retrato" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir QRS" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir códigos de barras" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Correcto" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Se ha vaciado la caché." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "La generación de algunos bacodes produce errores." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de ficha" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Arriba" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "CODE128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "CODE39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "Postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/fi_FI.mo b/barcode/locales/fi_FI.mo new file mode 100644 index 0000000000000000000000000000000000000000..868b531675ad41a8587c78c45fff03814df7d1fb GIT binary patch literal 4002 zcmb`JU2I%O6~|9Vno@^=n?NB@+DSjCL$bDa*N*KC26i`VP z;P=7zfG>a?@}Gn6178Ap-S5FZ@NY7I6YR&hADj98aWDlAgS@{2vK|BCp(Z-E<1+YO z@CwNBxC-+A=fK0@55QyKiy)u>GI$7l4a7r#M+en(6Xf;#VHEGb6J&h~n?)BU<+jZ-vwFUk3l}?MUegaDaiKx0%SeE6uvC) zUjcdjHL$&p=#L#k_+^mwJtO0* z!mkRyE_`12P2snN-w}QfgbVaT@P6^8VYfiPs+jIX{npJbw>(1bhHwy<;GMS6L7bok#ak@Dj-Tza;z$$a(!W zkk9)T$oBmRWP5%l?|%idf3FI!3I8Dcv+#A0?YRzep4||>DclF6c>bX95Xk=agQvj( z5KHM%c^`mmuLU{3FU$CGko9~)__Vx#7Uc7v2a(>Lwu1fy^ z1|fVe+&JoNyN8IB^U)uABp$H~cMe9^iB6W1EeUMrtAo1M=5)n zvSXATr|bmfhAEfC1EeUIrrZeSMk#lia$}SmryN#zQ6;SE9#zwi*G-@*VX$V_mlVM z?Kw?njcxi~TdjssRYz2KxRAe4o>?wXq0w}0 zimZ-rh>Bt4BF{J~Mka9Te2K5v%1FXtsXI+2q)`cZR6-J!kVPe=QK@6q62C&1&HQr%*g0vST(*$o)qtpzo3$&xSS@GahxS=a9F;h(}>&QZ9MisO9+3a*d zEf-2lGm8s-CEY|s67zQ5R1>*)-6qOmM)egJ6D8d;yeDxMX_--};pA9iIGq?yspM!T zJ$7;!t#8h=E>VuW!1|sGqm05W*6Xoa)=j&!eTsLDV^Odk;|3CC?KLuL$^?P2H8p@A zJ`&@E8mKwfw3(ry&CSh0Tu)%ln%)|$gpHx@M`x$!iZeqF+wIU;dL%h9v}PWini)FL zH$O99*!3wrRGIeyU7dXsl@p1I@Y(QqeLMO%*{h9EMaXZ^Vu(NF}a?FEYaUI>BHJGl4^^mf@_cjXBY)8XNWLz8P1l^i67l*X4 zv)zU&6?q$;+f$Fq?b?QB15|5g+s7wstTR%TR(uV!+#a)Vl8Y682guNnFbuGI*CE!} zom;}rM$>evk>zUS`KT)a_2xT8sotCI)U(j27H+s#keuG&+}j9IvOJV3)!5nI*@kD@ zM+L1TIpEJ*D%7&))jb=>&_~ONWIgNa7zy<^evnX1vTUYAQEUH!LXsN4u$+Y6mr4`%OwZ)!t>?3F% zidCYM2ab9(y9YVctnOP>ssFB8i>9tUu2BEGYAx^HpmN=N)y}o)TxhB~s3Wwynh+3& s%XD6YuSI#Lreo)D113VrhKF3YP`0oMg-b^vtsoevT, YEAR. +# +# Translators: +# Cédric Anne, 2018 +# Markku Vepsä, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Markku Vepsä, 2018\n" +"Language-Team: Finnish (Finland) (https://www.transifex.com/pluginsGLPI/teams/73419/fi_FI/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi_FI\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Viivakoodi" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Viivakoodi-liitännäisen asetukset" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Viivakoodien koko" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Ala" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Koodi" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Yrityksen logo" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Luo" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Näytä rajat" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Tyhjennä välimuisti" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Yleiset asetukset" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Luotu tiedosto" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Luonti" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Viivakoodien luonti" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Sisempi horisontaalinen" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Sisempi vertikaalinen" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Generoi vain elementtejä, joilla on määritelty kenttä:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Vaakasuunta" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Vasen" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Asetusten hallinta" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Reunukset" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maksimi korkeus" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maksimi leveys" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Älä käytä ensimmäistä xx viivakoodia" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Kopiot" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Suunta" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Sivukoko" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Pystysuunta" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Tulosta QR-koodit" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Tulosta viivakoodit" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QR-koodi" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Oikea" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Välimuisti tyhjennetty" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Joidenkin viivakoodien tuottaminen aiheutti virheitä." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Tiketin numero" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Ylä" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tyyppi" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/fr_FR.mo b/barcode/locales/fr_FR.mo new file mode 100644 index 0000000000000000000000000000000000000000..2c94f323f3065b6048fa98b66109bff0f2954555 GIT binary patch literal 4631 zcmcJQe~4UH6~}LC+S-jxn>4X$H1Vc2>Be++e(h#=C*8)G+1bsQ*&mrqw)IETzI}6N z=EgVgy}tWqe}sZk5NSa$VAY5}f`Q6lQ78%pL9Bxy3N4CIsJ7B#q^(MgP^>7??|JV` zb~lLVA70*hpLc(sd(OG%y|R7tlLAFS-Vd34mk^JG&JB2>eE!`+ph=u#J_%lj`g!J8 zx&0elzsP)w*=0V>{4Vnu=J%P;GJnAQAxQf^$Mv5uf6Dwh^Lgekn7?Aa$b1RB5$n7R z()lidTfysY5`vDn4ZI%Q1>Oqo1?hZAW(FiZMz}uCyq9^DSzwl!$C$^Nv*2c|a{_!1 zxB$}rHh2qo1|+@CG9L%=h%e(s{oe#h&u74$;Ikl&e;ynFU*`7LK|043?!N_{8PxZJ zH2(xh``!;?h&TZT7b&$qi z25J63LE3LC29q6kGVfsSVeVt@2T9L^AnBE44l~D@_c4ng>3s|&Jst#igH7;#;A3D4 z{5rS40Fr)hf~3zoAno%Hu5W^K==|4%r1#Ar>9d2moBJh5^9I50CLt0at@k1pC;l3w zIQlK~HEzGe^*5M*WWL4x3-fK}JIuc`uP`^kxU~LekoLQg>sy#xncJ8rRmR2SJ*b2jL=d65I+=;+9wI#1Li?m-vtp`;xpWT z4y1c>5u|fG4br{(5lH*J1d<(JWnN;w!Tb~RGDzd!2BY|8Zh{h2zk#`hc`HcyZzqT& zhzv;gqX5!*PJGuba?D7^!di)h6dt6~|-X8Z4fHZ$Q zh-(u0=w9&SkQ9V$PGtc?df^xXLnGUeUnthdj=6L zPC{ysQ;_>0R4R}>WCrpHNCq+rISiSG^h=`uv5u4{9$Z)dD1UzpJOoK|eU@1SDHbSB zD0b)`(A~u^BDy1VKSd^=62lOB(s+Q3$Y(`r7KK$= zo}{-?fwmm!cG`<75XF=zrttt7QOt_suqcj*;$cx76~!@892Z5}u;{gY%UzX@*Yrd& zP*$kKq;gcKWY|)1^Q1PuW39?XFQ{YXe$}xSm19Kdfl~2Qt-MeYrM4fgM$>G|ZYeP} zS1HelY2~T_dTl&Q+#0I7Y-mUEpy-s`g9A&iAs5*&Wf!Z+mKW%=o*P<@h#Qtv5NeyM zpG(uyiQq1MPt_*jJA)ujc?i7ZOTOzE-U3q2X@0C1VrRn znA4yS9SSbjsy-C;vF+J&#%rsqhnIff)jKwfuY$k}Ogw>tZf&hVwY{ZiEp2~Nh5bOT zdA_Kv!ZD|+6+yO0XT~CC$Az-obXLGjnGxZ8CUjLOI=*eeTHYCDhlz4Mv7iD2m2z@E zUp$_lF3E*b^<;T&cA%AcHr4WOz)V->%gGRvO>#6loE}d$f`_K6 z$%6wk<(bmj(b7Yyfgk4U>^1xAGvr)pD)v9)ouUqc0nk_)TC z+c`P5sKcu|=VY|kz`TR}<0PiMplx!}g<`0hiR=+dQuv%0bmhc^Ovy(dmC;xFpgf8y z#>#!ve&7JU_RBO`EtQJL9+hbf$Q&8?zhqIEVl8dTdZ(XG`&o8UBP)=DkrE7UBfW96 z0>pU1!d0^ZN~r`S(_T05FiskLXe7-4F0WQ7v@y%Er15Os>xR89@@ub)1bVXL`vFu4 zq{A6D-)LxLOf*E%k&kJS_4#(=;hVj#3&kzu*ePtG zF`k>C&op<&d3RlfG$*sj-i5wl$}Ua-13h6KfZ8HN}jh?4epMZwmS4TfwDntp^bkM%F0R{vpOMklWj`IblQrC ztGA(LR!JXus}pKR<6nu54drJac?V{>CJtu3_99MNf9=!f)e5p4ZW4vZ`jkyK!ooQs zC;O!7)zn>Xvx6zJI8|?G+YodAA(u}Ep2i;;iTmFt^SL;G%lh3`6hibDfkJfqm8e, YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Alexander Salas Bastidas , 2017 +# Benjamin Toffoli , 2020 +# Cédric Anne, 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2021\n" +"Language-Team: French (France) (https://www.transifex.com/pluginsGLPI/teams/73419/fr_FR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr_FR\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barcode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuration du plugin Barcode" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Dimension des codes barres" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Bas" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "Par ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "Par numéro de série" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Code" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo de la société" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Créer" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Supprimer le logo" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Afficher la bordure" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Afficher les étiquettes" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Vider le cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuration générale" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Fichier généré" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Génération" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Génération de code à barres" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Intérieure horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Intérieure vertical" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Il produira seulement éléments ont défini le champ :" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Paysage" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Gauche" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gérer la configuration" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Marge" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Hauteur maximale" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Longueur maximale" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Ne pas utiliser les xx premiers codes barres" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Nombre d’exemplaires" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientation" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Format de la page" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portrait" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimer des QRcode" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimer des codes barres" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Droite" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Options d'affichage de texte" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Taille du texte" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Espacement entre les lignes" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Le cache a été vidé." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "La génération de certains codes barres a émis des erreurs." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "Le logo a été supprimé." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Numéro du billet" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Haut" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Type" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/hr_HR.mo b/barcode/locales/hr_HR.mo new file mode 100644 index 0000000000000000000000000000000000000000..72d09c5ec44d53a659a12612700ee0788d155591 GIT binary patch literal 4580 zcmb`IZHQb~8OKlC#Oi8VQ&ZbU6Hi(bvnI3iwwv9Z>?WO=oovRPeaU2YTdi$9J9BpC z?A&|LaPOVj>{_JsONbyf9|~4%OD!mcqEH$L6e7{AR149RVxZV6g<>hF2o)5h_5a*? zX0r|b;0F)$+}}Ot+;h(JcAk0bwk=NxG!6M8Wa1_v&VbG*@Id?iCxyU}ILmwjyb=8; znLpz3XSn|y^C!&bnJ+MZ&U}%1j(MK>GV=mR=U(LgI`b9gtIW&HE6mrKSD9~sH)EeS zL9*{1@D}jKPYFRLZU?u5cY>bGd7L@LoB_9BpA+C` zzy*-buY$LN%OL5s#ykV!Cw_nj&HorAJzoTG2hW4_{bjHZe3QrD1<8&Nc>Y#QrqJIF z()tr1oqHdMPsBqY>D2&tfG$Y>dJLrfzYA^yp9Jp$e+tt67r{@1uYt7BTOeF3-UaFV ze}J_9Ly*q91s{_iZ)e`c+{N6(+zXPP{UGTTXAUw)nMas;kn}zdk{%C&JHa~m1@JL2 z0Y1&+zXM6X_dwF;Um%_HAMW3P;E?@WLDG90Nc!wx?&Nt1(z^ZNl^cYJfwbR;*qnG1 zjHf)hnb`-@_%`luXYOF$!Q9E*#gxo@nEROh%!4598|QwSd5Ag69Ah43=9mTMaggkt z0`CUP;OD?LNcNurDGwh9DgT}U$-Z;U^C0Q*GWUPM{3Uap`3mz@=4Iv;=IbE&^(wd> z{3A$u{SCxV{1XqjT5N$bq|bIdDDHbe((3?7`es4Wf0FqCh!6|Q{ckfL2kD&Wz$ADM zr1gIR>D<49wEz3u{{Xxb{jInJlqb7ETE7px4IBY?fm0xzXF$3aZJz%Q_s@c~?uX15 zK-%vDNPhe^^S8{)%-5KI07=g`K=Rk0neQ;)WB#4_K6nSd`!|T6*p9==Uw4C~?+BOx z7kK^cvU-WNgg*Ke4==kco`t^X5G*jFok@PDySuqjO)o;GAQG|%au4LokiC$7kgq`YL;4|Kg-|=( zMU?CGI>7x=a0oI8xeqc2c?d$jqjnH73!&VvLXJbI!Mv!AGaqIuFvIT?Al0Ne_rC>F zt;#{}g)BnIhr1!0+x_TJjJ^g*Lo}qYf9TwRUksTGegvcfF15zTF7P&!@8xpxgA~!5@ zBO-?{lwY+q-J@(d?Yi+~)p|>&-u6{!tk;_iWMI~GAaXVgtt)b?vN%D{K>J2H(rdem z+86nR$S3gwQX-!g`9YB%68S?SKP>ViB0nnfbYR}PE#<9B$JVXL`&xxsOlU`kT80hX z9iA{j%TcRx(fT#)-0M1OQ9FSs++WDgSBeV-QE*$~YP77XstqlU&6bL@Vp4nBhh87G zr8^qxnp`rD=8qyPc?JecyCfIcF+~r%$cFXJn)O2Ei0(i~`=O~)Hi| zf)ZfzlyTdxY-m$&(6`<0im8PSF=Ip74m8a2gHWD2)w3WFGf`m3sH$xl1aQ_jP_7%> zIXaHwD(0*o`pSf2&Np5tPn0P!0`9Rp0?{27Wh7r2*;hvDm63a8Bwsnw>Lg9!k)%h8 z9%*_Eii$oJ${L5%w#er}cQ86Wnhsj3YP`B!)ZvQOo^;?he1wFEA`5p0n8Sod$c?TI zM04zWj$B|}y!-`s4htUHF*#3pbZGBTA&4#yJdSRy5pLz(pOfdpD# zNd;l7;wvw3RA~K-oHmY?#g6gin5&F)uZw;N#RqEo$U$t9N@0yxZzIyNidJq$=6#Fk zD^Kp{w|=?55r(ZG6OXT~tPCIzyud8!Qv+4&#=A8km@Lf|;~~}u@!|Afax~uXA3k1= z_xDW~rwiAtO%5db^0+FE*Jbjqz7GB4_y~)J*cv9}$C+Rh@XFQpd zM`c3dYxIwdr+QOk(p`dY68%_{#G2IMzW;Z%ZQ7cc>Q&dOSyr-U zYbtCi`SznvqZ(uW?MI&y3)(T4zK86mOvae)C^2E3Wn5FFt3u_KcFn_O;Xc*i<)CR@ zxrhvG{|{Ao>Q^t-Llcjl+l$va zq(M_}D#XR0<*PNUYx%n7;#xteHkaes7Pgno&8By&uR-wP1>|z5o9fyaY>i4X%`f-- zpv1h_4wX+M9k|6;9nWqWvv7e4?Z(PbUOJ8Xrd->r$>?)7=R z8e5mlvhLsn7}jx?)$&Iyz`tO(HfyjM7*{zkh3>GYHjk`7Yfw{_n9*47n;;|)bxecH zG{-lG$YH*Pq(Cty1=R9JA}ATqtu$5CBl0qt4R;%CEl-rO3@M^FMtVu31o^2sNwOmtB7U5sRMQ#S6+N2T>l+~K6n$oPf`qJ69MC=s;iA3$?fRfk; zmET7WA#$D?*a#2>($h`&qNg)iN;!z4hPk@0*Pm_bfsItfSi9*gTiRzpL_YHr3OX{! e`dTdD-w#QGl1*kys@c&?w`j|5)t1+n?f(K7A(z(x literal 0 HcmV?d00001 diff --git a/barcode/locales/hr_HR.po b/barcode/locales/hr_HR.po new file mode 100644 index 0000000..3ff13ef --- /dev/null +++ b/barcode/locales/hr_HR.po @@ -0,0 +1,426 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Milo Ivir , 2022 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Milo Ivir , 2022\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/pluginsGLPI/teams/73419/hr_HR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hr_HR\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barkod" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Konfiguracija dodatka „Barkod”" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Veličine barkodova" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Dolje" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "Prema ID oznaci" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "Prema serijskom broju" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kôd" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logotip poduzeća" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Stvori" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Ukloni logotip" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Prikaži rub" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Prikaži oznake" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Isprazni predmemoriju" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Opća konfiguracija" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Generirana datoteka" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generiranje" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generiranje barkoda" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Unutarnje vodoravno" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Unutarnje okomito" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Generirat će samo elemente s definiranim poljem:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Položeno" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Lijevo" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Upravljaj konfiguracijom" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margine" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maksimalna visina" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maksimalna širina" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Ne koristi prvih xx barkodova" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Broj kopija" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Položaj" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Veličina stranice" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Uspravno" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Ispiši QR kodove" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Ispiši barkodove" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QR kôd" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Desno" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Opcije za prikaz teksta" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Veličina teksta" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Razmak između redaka" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Predmemorija je ispražnjena." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Generiranje nekih barkodova stvorilo je greške." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "Logotip je ukljonjen." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Broj naloga" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Gore" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Vrsta" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "kôd 128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "kôd 39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean 13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int 25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/id_ID.mo b/barcode/locales/id_ID.mo new file mode 100644 index 0000000000000000000000000000000000000000..f8301dd190f6017a2b89734d5c1c2bd4e3bb6ca2 GIT binary patch literal 3963 zcmcJRdx+du6~~Wmjb?3al0Iy-wYSyU#AJ3}yV>1Iw|3^2+0A5TcPEqC*q7+tnY%N$ z`+E$(-<^E~B`SrYMG&omS`bteAE1Z&9o!ws?y6)42_9*0b$SbcUx(NR4b?DH3`g)=<@UrmdAePV-;Z^zl zH!}X6@Fn3NgnttLMR-m4s*v6=JaoHwq64Zvi=uw}G6$cgQ#ea{lB%&KpnW7eTh?y)xedIUgO!dG%57Aoxj{|1!va zTmomn=Rn^7D#-UchDknu9ArCg1`mOUL7qPjvR!!)4|(YB1RFArLEisi89xcK9iIac z8u}6lRrGC;&wCc+xcxx*L*Wa;9}9m1vYnSfw(FO|tHR$3UlRTiybbIA3LXOw!f5{P z=0M(G5iWsz&*wn4=Mj+gtO~m_AA-DZ14Mcc+C%7%LLPxU40#a3?f4K>1X(w?6GII8 z^q%*3`2G=y7a2s$IIf*dD~A;*>PevnTf$Deb6?;qDPXm$hjyWFGF4y50E1-Pu?VXQ{Z<@Rr@@C27lf5YD>2O>5Q70lVHrg3FWs{z- zx7BJCw@pmt2g}|{vvR&n<)G)bmFpVS(ygwc`Q=(=nHEfFV(tHvRl{GMX{$Bs8(B24 zS7u?`!xJv!^Fl70a=Oal>1xvpT*Zsz+ zH#1;Ow}I$v&_t1K^# zH%t!^Ni8NF+fJ4Gog~$a3TnK*oNAa2%X?C%kd_6N%VeihnS3gfQ`xCPe)?DjZM>!v zmukj3OnmL4xS*P*)9lpK4}&k!%iQ!l4=?q6jUW_ zN1;iq4%LyJ_oM1a*STI&NT)Y9Hz#m!VPegve6g}v-gP@Wks0@p+Q^6$$FQKB*>X5U+wi1nb#W6Z3sq`UcmIp3ROPBvLp4%86ZaF{)fy$PuN^gY(6j!YBX4y0, YEAR. +# +# Translators: +# Teguh Umar , 2019 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Teguh Umar , 2019\n" +"Language-Team: Indonesian (Indonesia) (https://www.transifex.com/pluginsGLPI/teams/73419/id_ID/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: id_ID\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barcode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Konfigurasi plugin barcode" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Ukuran barcode" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Bawah" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kode" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo perusahaan" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Buat" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Tampilan barcode" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Kosongkan cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Konfigurasi umum" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "File yang dihasilkan" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generasi" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Pembuatan barcode" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Horisontal dalam" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vertikal dalam" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Hanya akan menghasilkan elemen yang telah didefinisikan:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Landscape" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Kiri" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Kelola konfigurasi" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margin" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Tinggi maksimum" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Lebar maksimum" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "barcode awal xx tidak digunakan" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Jumlah salinan" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "orientasi" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Ukuran halaman" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portrait" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Cetak CodeQR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Cetak barcode" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Kanan" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Cache sudah dikosongkan." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Ada beberapa kesalahan dalam hasil barcode." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Nomer tiket" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Atas" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "tipe" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/it_IT.mo b/barcode/locales/it_IT.mo new file mode 100644 index 0000000000000000000000000000000000000000..707f810d667bd263977be948acff77c9470b7124 GIT binary patch literal 4174 zcmb`JZHQb~8OI-++LzU8+GuMvwI^$nCZ@AHFT2^@Nw>|+WOh5r?CxZClD4s8@7_5( zbLyRYF87|zx(DLH-3q5JOSGc`{xZrXTaaS8z&sUzL{tT_=fOzAg0ho z;U&5MmW{FCqZ_wD#(7n0rEQM!D;X{xqmYr zB4u49NL-M)<7oi^4App9i_W z&w>^3Ja`Alo8bNI0(qT#K#p@1|##+R2Tzzm|hsT4s;5zVe6jp#Wd4PlC z;aJWXZH@M7P#^^htG`W+K0--fHE z(~mu8Y&d+FsKjjPgv!=A+oMXBDmnasJXH!*nV`xfRSr>QiYn7onV|}=T(P~#3pZ6@ zJC-W3_ME1pCW!)XQ?1yztz)V_R;`?D)lOBZ+Kb$#a$T)_&+lrQTdLQVXkLdp_JZqn zHMr|^TdkTv%cOL_@&sE~c2%uNh_w)_sIHC8mJOX3(BQ_Jj-By&=+wFi0@X>qIjw9M zY$_e-o(^52y55>rZM|y3)T0jCMXFclOLd%Et!k6%Uf522FVa-ktBw}D(CZ+MYcjdu z#Yk_0ha0BX@2Rdfoi5KE4A)KDb!pK$)lW3SiW8?cHii)-wAk;hAO-~G+sL34OR>S` z232aXJFXBlZ0ussIBLWubm~NtOPt6^(vi^MHZ{>kP4rO{P1HmeHPJ@RbXUv#2&WvM z@_Z`rX@XkA`XDKZTG2XG8ig~uJ(fO`3`+hJ+tb@2s3^AWzK;~@IJR+u7mWXD?NpeC zMlBmrYZE!-E$8ynDGM{Cy)aiGM3bMS$R;k-j{1@BAt?Kl_Fbmd&YaS50-r_IC{>P^ z=Bw&dwYgkdS{!NW2pP#NBpuVvl>40|)3QZ1(pbtg^_t;#GDp#tMU~IyrZU+=CYx8e z$zoyZU>3(n-Ai1i6?iMM-gde0_a=4CMxKGtu;|E3-Y75mX(dWjpBNcQw8Y9E0EGnlr92W6Rcv$&eFHW?Z zJ=vPeOkbJD{#JFIsfI|r2|GnKy<*(`1F>Z%q zwzE(}E5xByEPMmy(~!Qwy`lJteCqhZS?n{-g+Ua7RnQ?5;N0n>pIDZAkyRJIHc&$2 ztcYM$RItR7wC!dYUj@ewaZa2`d|vwMl0f)a4-J(9msX;O&&TvUXldN(UUO#=Vvei@ zSlo-TCkTn@88y1GF{)Mq>-$~Yf;MjNe%J)iOdX>z`~aFcluQnLxwQHfcXNZw&Fv zpCPF#su}owNQ`Vq{6l|L%&B#Klma#B1ZE(tW{m$>3XwPnK-jus ckxeh4venX}+LqbI(sFCD+M<(, YEAR. +# +# Translators: +# Pierfrancesco Passerini , 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Pierfrancesco Passerini , 2018\n" +"Language-Team: Italian (Italy) (https://www.transifex.com/pluginsGLPI/teams/73419/it_IT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: it_IT\n" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Codice a barre" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configurazione plugin Barcode" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Grandezza del codice a barre" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Inferiore" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Codice" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo della società" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Crea" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Mostra i bordi" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "Executive" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Svuota la cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "Folio (FC)" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configurazione generale" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "File creato" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Creazione" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Creazione del codici a barre" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Interno orizzontale" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Interno verticale" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Genererà i codici solo se il seguente campo è definito:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGALE" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTERA" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Orizzontale" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Sinistra" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gestisci configurazione" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margini" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altezza massima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Larghezza massima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Non utilizzare i primi \"xx\" blocchi per i codici a barre" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Numero di copie" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientamento" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Formato pagina" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Verticale" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Stampa codici QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Stampa codici a barre" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QR code" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Destra" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "La cache è stata svuotata." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "La generazione di alcuni codici a barre ha restituito degli errori." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Numero di chiamata" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Superiore" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Code 128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Code 39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN 13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPC-A" diff --git a/barcode/locales/ja_JP.mo b/barcode/locales/ja_JP.mo new file mode 100644 index 0000000000000000000000000000000000000000..7c77d37fa0a7cb46d6ff0f02f5d87759e9600170 GIT binary patch literal 1268 zcmZXRQEya56vszI#T6A$6B5PDBSdd^x78GGsY>g%DR%9$t~^SH-PyZCc4s#CPF-qD zbnjJDMPfDdp~OfU)L@_u21$WP;s?-=058L`@W7L=KKMV|r35|6>~GFJ=lsu^vp08a zUSzNxI4|K`z}bbf{}KGaE`m>hzk-j0SHZ2|AKRFUdX5~8xvvKR3sZS)|v(zH;tyybG&W> z!*Y$Lo#VD9d0CWel1)l2Ls92tqpK>I4TV)k_rF?M;Z;??pF|OEs{CkQep*&7%L^?6 zh&@!E7h#}u#AZSzwOyAiP+FuulB^IaZTX=h%^3B)zGlRVDyUgjGEG*RYf`Q`Cd<~F zs(6QG7-0gR7Y>ZSb6_&Z59f;SP0hTUD$1q_t(T7iRq@7VgUBlxpQj2lUQvFisK$F+ zSn2b@Om^7I40)MBo_*aP8h#}MOHGT&dZke4s4lDteXcaGm=@o!^bzo_nz0R`>H}rd zc;i*l*oP7w%;G&>Ns5Ng4+`v8Mw0LD-S+U^HEWxZpH8=0tpQ8Ysw$6@Lb_R>rPWMM z7pBq{)lqtQ=(X&=^f7VdU?IIHm7mJz9y~QWkV%ajZLvj<_Th6Yk6VZcrAK(VCc;SC z(f3Oe-rfg!)UPT-FQ>6#r30VuJ*w=+&_3_=N)_t(x9i@72^*2mH3owljb=yq`gJrj zl434daLMm3zC^#tm+aP+6Rdmrv+mVXuD$A#6&L@;T)g6vvo1+oyylXhT>M@4mus$l z-nExpd;%q(-kHB}=iEwX^)&0AI&*t|!L=7%{IzSJaS1NVF8J@+!z}pbxvOF%&+~g$3~#@ R%_U6w73-c`y}SGa`xgsEe8&I) literal 0 HcmV?d00001 diff --git a/barcode/locales/ja_JP.po b/barcode/locales/ja_JP.po new file mode 100644 index 0000000..1e67732 --- /dev/null +++ b/barcode/locales/ja_JP.po @@ -0,0 +1,426 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# in dow , 2019 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: in dow , 2019\n" +"Language-Team: Japanese (Japan) (https://www.transifex.com/pluginsGLPI/teams/73419/ja_JP/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ja_JP\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "バーコード" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "下" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "組織のロゴ" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "キャッシュを空にする" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "一般設定" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "生成されたファイル" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "バーコードの生成" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "左" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "設定の管理" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "余白" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "向き" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "ページ サイズ" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "QRコードを印刷" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "バーコードを印刷" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "右" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "上" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "種類" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "" diff --git a/barcode/locales/ko_KR.mo b/barcode/locales/ko_KR.mo new file mode 100644 index 0000000000000000000000000000000000000000..46e8940b76973fa7dc7ab7e82787febf9a12b3a7 GIT binary patch literal 4455 zcmb`IYit}>6~}K%!^5;GEiJT#gj=BCkgnIees3Pl?s}7$*s-&5(ojg-@$U6{(%qTW z%s7rCKIGw~PGYFj#LYIWQ@7*^u5jF>F%UpSDgse8q5^?HjX(kvJhO;Ol|ZOG{%7ZG zYzk7paJB#W&AE5x-gD16bNAXEH;)N41$`W9eUA_a!R&i+K^uL)5a<#|m}B5gu%BTT zx&K+Vzs@|vJkOkDev3KHyu_SgewX=ukk);f?N^vTX8x4<8uMq&pEG~S{5AMK%<~3F z`}+g92)yY7LeLg(2N!~OgC7EyfV96LGYpa+4Q#hCS1=!B#+V7_I_7%j2JmLgvk|-n z+yc`2DeyLMJ4k-*VjcwX69rso{CSZ4oCfa#XFz)XHLwbNgZr<8w2y!C_-z;r!(IZ? z`x`-8_aP9Eh(|#3s}H;r%z+fIy&%nh2)q@12D}G63)1{AgC7K62Wg&bAVMpygY^8H zAie)Dkk(s-hbfMCG4Ek6X5PoVA0$7Qg5+0_S-?xI~&z;PBd0c|@UNv}Nfe-jX)|{)2SHlz%OG45 z``A9hb^#>6&aizMB)?zb{;MGQ`CA_UBlo`r(!2}tG12?CfHePN<}$Dbb_+=F_kr}h z0V1`cpY6RMy?2o9<7}SF*Er5Yru?VF8CAiS{69g%a z&CC_d)y!7rI*{gV2dNG>F}E_eF?*O9kiL^Fh@aSl%M$P@kiM4-U=Vy2l;GPS?Pu}r z{yNpnAV~f-g7lq4xIYF`+}fC(AnkKANdEPJ_)Mt0#0uz(P%YF9QQHDhJg}^|1ELxu zf9b6I2t;e%4N>gpH#*bXp!JZ1?t?xBeHywSqFj6ys)m+ApM$6^_aQ#Xq})?$ff}HC z=pm>JdIb6?MC}2n6QbHrLF*uD*j~A%b*b38<=sBYJuv6YKQ8bzFn#_9KYpy5#ea9sE6nm!Vd_G zXq|}Gi)e$0Hi~GIh&GF8i-^^VSO`BLEMj#cRxe@=BGxEkO(NDTVt7KcQf69JDD&C= zjBd!3Y4qxueoJ$7)2IyE($;q=Tf|JqF>@j|DBD`;YAZ|EveM|!^(afkYehVS9}pJt zIuWlI@dgoZ6!9hzZx-1=Q76l;~CEco@Gd+~c6m6pAF zR`EmSUGfMvEX`io!+~itFpKOnEq#}1I9gWt9Xpie=qWNCIiP2=GE-g+-kU~tP+}uF zWjMC%({?DCR=v7WUQuP!5z(Gl8*Rt6yE~B-?V6FcQ(9h$cGc^M4$aUq>K#6JXcm%U zV{oUQ>(9wPrDyu+S>GJc(@vk*U^=qjR@jzhJ96jF$_{L?p_~}nRLacjNMNU>!#O{< zU9=qKRdkt_V`;i0x-8vr6-Ew$DT81n>lr3^D=Ll>HZXguPn>7Z2tu+y1BV5l{0sg=h9P;E2mP(-DX~N40dDC_b<%s@#N<*~F?JDI2+R}k7%Cg~7M0Q2v>!WKE za!Vq)sjYKERZ`^<>OhB`(bIugf5r}Un-N*n)fq^t9Xh=eXvOCck>T1H$m^4&z-T(~pb?x|NoT$n_>ZJVREOxl~s7IZob=1cL(u12w1x!`6G%PI^D+p9}Wd z_O7;|gLmynG) zWh-ap=I%9t=DFu+ykz38pCvB zLx`k%c7!J=jh%N754(p?z2jK)Cv>OIm!3W?yyr)}ndijp#oe?&4!3uF(w({>yh}xQ zWVdt=JmrmFtXQQdUl88(H!0NK*%>+v=Te72dMD0HZ)_OOoD(qJ7iXk5TtEWLtChZ5 zz*OGZ-LmB8(ccb_ZcO?)k={#1cjENCtaC@@0UU|{eMBPUv=f|%|ND$|Cuh8qqntG9 z6)t)E;g{b@j>E4r!@@f?gtV8f@q#Sv|B83$ROt{3acXFG`n>QnOmU|qe{I4$bjgo# zjc~v51b%bTaF3osVmKF67GB|$d%A!Jibyb?FV`57ffN>JFHE_k1@HLqya`K(r@Sji f%i;6(?V)n_iW8;6*t;E?r6(tSr`@5;{>k}o&sQsZ literal 0 HcmV?d00001 diff --git a/barcode/locales/ko_KR.po b/barcode/locales/ko_KR.po new file mode 100644 index 0000000..f249196 --- /dev/null +++ b/barcode/locales/ko_KR.po @@ -0,0 +1,428 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Cédric Anne, 2018 +# Han Seonghyeon , 2021 +# SeongHyeon Cho , 2022 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: SeongHyeon Cho , 2022\n" +"Language-Team: Korean (Korea) (https://www.transifex.com/pluginsGLPI/teams/73419/ko_KR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ko_KR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "바코드" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "바코드 플러그인 구성" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "바코드 크기" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "하단" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "ID로" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "시리얼 번호로" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "코드" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "회사 로고" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "생성" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "로고 삭제" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "테두리 표시" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "라벨 표시" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "캐시 비우기" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "일반 구성" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "생성된 파일" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "생성" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "바코드 생성" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "내부 가로" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "내부 세로" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "요소를 정의한 필드만 생성합니다:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "가로방향" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "좌측" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "관리 구성" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "여백" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "최대 높이" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "최대 폭" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "첫 번째 xx 바코드 사용 안 함" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "사본 수" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "방향" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "페이지 크기" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "세로방향" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "QR코드 출력" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "바코드 출력" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QR코드" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "우측" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "문자 표시 옵션" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "문자 사이즈" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "줄 사이의 텍스트 간격" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "캐시를 비웠습니다." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "몇몇 바코드들의 생성시 오류 발생." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "로고가 제거되었습니다." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "티켓 수" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "상단" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "유형" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "포스트넷" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/pl_PL.mo b/barcode/locales/pl_PL.mo new file mode 100644 index 0000000000000000000000000000000000000000..dba145af409510ecba26f62736a7585504df95dc GIT binary patch literal 4457 zcmb`JYit}>6~`~6<>8iBOMw~$Mz;pvb)}xt=HbodL5UfO?o|hy&muE z+|kTz*0YM#Dk$Xx;vu0Rg-Wf&2SELV6ji7YQBZ6|d5QN+&>}zzAQd4MA@PvP|ID6^ z-Krn>z}24l&AoT-J?EZt=FC2S%MBL=nu5F!^1(eqd=%XO23*jl-XsKu#58jTd_DR( z<}8oTaetn<$UM%hGgp`=nGZ1^W?IZOko4NzZ!f}=L0bP~ko5f$#813{ z3)%B$@SWgaLGsHUY)bpz1il5l1H2s^25J91coVn;(mrQEm@aIPp7%jo|0qcMJ_VBh zKFj&wiinO|i-%iIFV?&mkAoD~CqT-( zFM(v&Ga$VO&w}p&e+D8H;u`ZM@K*F+X5NZJO{0G=Nb40yac+W?w=PI=?Sk(C&w-@( zB1n3k1m6Wd4NCBPAo=Y@knH~#h@ZF-M$$QM1EE^n36dTALDF{=q;tK4)65x=?9cIh2_!qJ z%o9BSAV_vKz}JCPV<=BZ2emoK1f&8v0omOi-reE*!_0Yb0W!t?GINqSz!}^WAarJG zV~~@OCF-C_$lZ`-2-!(zpmR~IDXtVV$`^_uQa|=Z5*)Pq1~(wZ6>f|3l442qhH`@P z;oT6*7pjd9L5dJ+hamgoJ0ac=?uAf1J^+cor{F!1eUN)0!;l9dbw~z6Edg19oTd)9 zW8f*i|1h`+DM7N3`ymKNT=(t-Dc==@+6ZJ6lBW*01K>F1DEA4JvkyRKAs>Q#1X6`i zj?6%gL#Q2r)Z#lKQecknMLL%h;}H6#@B`8!ml3&fk(&^?10pvma#JEVE%Hf`PvHlo zMLr|)<03yH@&`nIQsk#Z9#1IWG7UYT^qfx9cBN(9HM`mIRcIS`Fd4|e?&(0}O&FTC zC?rK8g&&X>g^VbSi^7B`91w*`QJ4~iX;Gk^3#RQUHQ5)WnAm^Voj8l+XyV>X;Ic|p;%C^YT_KPaO{He;q3sEn|8a? zmh0MXuG6#qZr5&v>tfM_vJ+?=%MU`ixj8sNAQn6ARh$8bvW#aVG8Ny3as8lGNgV}D zRE;0{$__=SD4Su73GOyZK+gQ9I9y#{!A zZnAQyT1nLOS)0}*W|8ArnNFrA6Uj^>nU<-EY-aMlB-&6}1!1D@D>radX#A|aUs<{( z7vLV_$U__L_~xjuR#i9ZxoXsN4)4caX%Y~(T)A2r3$ZvDo6L--rZIk|S{@r2S|}|PcTSudO%4_C zP9T*M5C#4+QygRFF67`nmC_(7^XxSbhxXJ%6Jh)l|?9Cq(XB@fS}<-UEAZV%0jkI;QQ zo;;LF%X8=AiR9rFW{$`d7P)s}{otX)Gs&IBsS$dfH=WoSpWYdVHtfpkps&Ae8rx<@ z4i5caEAPB%$d<2zmgz=feoz*y4JEr_Wc6CM9MtBT>9uX;N3vxaS1)(Pta04ve<;7u zAj+t^R5{v_SPr{aFZ(@|gO=L9BF(C=+NP^qTZ@%w`|+-=Lr3Z`YT+i@RfH>^fA#YA z71!R7tDQCDa}|Dt$<6Kau*_B1DSl^Z-v}YKTm3@Jdg4ml*`R}n72S2WE`>gFTzaNw zn>JSO9>bf2W#S}WP~~o2klmfFwG1PtWd_walD)VR+oVRzF7|UeuPVn?!4j)*Q34ZS__adY)|$$~0mvIJVMLw5-#w)hI`^ey7!URD^=PtGkmk z$7==pzP?t$uKFk*RGeSCU{^eA18y1w9VwvjinoHWBUWq;$I?*;Bb7!FZe8;58IGTj zZF}odqZi@hhzi+LZCm6iD`b!2w0&NhLAn?uY1K5W9!mT5q<|(QTq{H-l7sr*AqR(B z7d(6WJpL1GpNE2Il)i5Gxb=`)2CjyUVh*dYDQZ$&)#>, YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Cédric Anne, 2018 +# Jacek Maciol , 2020 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Jacek Maciol , 2020\n" +"Language-Team: Polish (Poland) (https://www.transifex.com/pluginsGLPI/teams/73419/pl_PL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pl_PL\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Kod kreskowy" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Konfiguracja wtyczki Barcode" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Rozmiary kodów" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Dolny" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kod" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo firmy" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Utwórz" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Pokaż obramowanie" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Wyświetl etykiety" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Opróżnij bufor" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Konfiguracja główna" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Wygenerowany plik" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generowanie" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generuj kod" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Wewnętrzna pozioma" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Wewnętrzna pionowa" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Zostaną wygenerowane tylko elementy zdefiniowane w polu:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Panorama" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Lewy" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Zarządzaj konfiguracją" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Marginesy" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Maksymalna wysokość" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Maksymalna szerokość" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Nie używaj pierwszych xx kodów" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Liczba kopii" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientacja" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Rozmiar papieru" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portret" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Drukuj kody QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Drukuj kod kreskowy" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRCode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Prawy" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Opcje wyświetlania tekstu" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Wielkość tekstu" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Odstępy tekstu między wierszami" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Bufor został opróżniony" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Podczas generowania niektórych kodów wystąpiły błędy." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Numer zgłoszenia" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Górny" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Typ" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "INT25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/pt_BR.mo b/barcode/locales/pt_BR.mo new file mode 100644 index 0000000000000000000000000000000000000000..f56aa408f99f39a383521a4e200136ac95a68a06 GIT binary patch literal 4684 zcmb`Je~4UH6~}L5qjhV4rnNuPrZ?v2HksY|v76nUWRuLy&Thuc{>WsqZ8dFrXXftA zZQpx$a^IW%W&i4b6$C{J28t4kjRire6p96*tc8M7@dqeM`;Q2%iXw_A6zliAcV@GO zAPQdQywAHo-o59ZbMCqG?wvP2FHkh(0m#%xgm@10K8gp*7jF^*P2x+;=fQ2LUt+$% z?O)^ii_DjpFEhWz{5JCy=Bv!tn6ERx57N4CaQ#i@Tg)Fa-)8=V`E%wkn7;x)hI!rr zX@9>3Zw0q~TnO6Y9pHBGUhsBs7fAaXW@bUsW0dO?%wx?#*e&Q>5Q2*CK((@JYZtyjb#=i{?fbVeodm!!OpWJ^NIuC=Uot{74LyG z{?8zN{~<{0-HO3v$Ge&LF&|{^X6^$?&q0v%8fK0#Cz!{XC6M$!1(F_*gZG1Na3}aI zm=L4?a0O!#Dw}YhjEgN?*VL@ zC_##&z03pL{xH{vm>K2>bBvj1PBKq2OU!9z1*G+=Twh?GWiB!wW1eSTU^bW}Kn0uH9K$_I}f3lZ9+~#sK8utnPgsIDv<0-WeP&R9;OP) zlMsrfBIG2b0U=vbd~Pj|qVgc*(~ulQL;8hsGL`8Bq6MDd_cHSgSc9B})FI~}$01az zkOE{DavqX}j6se-W+45N>c4E^LwJ9DOZ_o^{|tBtlHvLsvjkEsP@GUq(Yc~Ci7O($ zOX!@4Y#}X1AoR=N2V_MdCki8?Fe(a1L}5%6#zkR56w{)Z!4JraVonrCL~&FUkBH)! zD2|IFMkv>`E#0T=dcC#@WYY#qrrmQYGB)UUhB7qkIuu14Mb;O^HCdUWXQ-V~o(y_^ zLpxDQi&6$ZAS+5aQ5q4YQBgV~N@JolE=m)kL<^Rz-&Mhy^laOTlG7^EVoG~D(lYAk zq+^>47p}kO)A1#;8)hml-QTDshTKrj4H9J~N&sQt+VnzqrL9c(` zOVS$YmRvHP=0Wi;xd$7Tc1bqaFqHta$c}Yp-3F2JMAERVU1XY6jpT~)JlT#{gZ4J? z)+9FK>mUkcM=fjF(n}_YSJYlBFRJC4LKV+?y<8Jj6|};p>S|HdOOcpWfokh(be>fX zP6^SuYW$urJKD56G&ZTOm{!ygb2gH_P-9yzjO6NSe+QwMiycFoYTB-W1LvKAa*1yj zXgTt$Sg(m=#iyI zjvgbTu2&=3Vwc)3**r`dCSLbwrQn`y>^(Y+q@iDm`~O8vY~HMQ#cNJnN4TLQt4bOot2rS*#@eL6LMbsVj?q+O~Uz%>Y&yc}-!g;p1gaP-cT@ZR{dn6aGi3U7IvIOH zW-uUobm0G*ic1^cZLu4Xm7NNaBRLCiT-kUL{P9Z;EJ66<{uY!&ZDF~X$MDaV$ zEzMN+8_KL&I^&eI3BktqeC^_>2{&FwM)+?scQUi6()mG{;S@R@D&%jYoG5fvTREwc z^k?|D%Uml06-&?bjmOmBRd^7l2nZ&NZC1$VJ$mN615 zw&>z8DmD%hxl7)*Sb$#H0H-z+xWuW|E>HsJGfv@~4P{SD<2EiMmpiCKc?3iIxjeQl z^0?{6iuzsK&*Y^-tzHld%7i#DKK6qxx|Sl9bkL-osjCS+(Uvm0M*1sw5u#A~8<&yF z6)poum+oeLj@;f0F+jSp}2lm2GIb=LV0H^7u}+C+--{q^qv4g=eTO0ViTLg}pAe*995Ck1shis zxgd`GxK*O&@aMn;xCq2NUkXdsNSy>x%MOV`931hUDFBq$?gim>43=CC>&7WRz8r8j l6yng8G+}%xAe9b@Ep}}fuY-RmI8L%j{;Hd<{hzLfe*yZZxnBSP literal 0 HcmV?d00001 diff --git a/barcode/locales/pt_BR.po b/barcode/locales/pt_BR.po new file mode 100644 index 0000000..a7231b2 --- /dev/null +++ b/barcode/locales/pt_BR.po @@ -0,0 +1,429 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# Rodrigo de Almeida Sottomaior Macedo , 2022 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Rodrigo de Almeida Sottomaior Macedo , 2022\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/pluginsGLPI/teams/73419/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de Barras" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuração do plug-in Código de Barra" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Tamanhos de códigos de barras" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Embaixo" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "Por ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "Por número de série" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logo da empresa" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Criar" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Apagar a logo" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Exibir bordas" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Exibir etiquetas" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVO" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Esvaziar o cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FÓLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuração geral" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Arquivo criado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Criação" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Geração de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Horizontal interna" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vertical interna" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Ele irá gerar somente elementos definiu o campo:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "CARTA" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Paisagem" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Esquerda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gerenciar a configuração" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margens" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura máxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Largura máxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Não usar primeiros os xx códigos de barras" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de cópias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientação" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamanho da página" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Retrato" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir QRcodes" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir códigos de barras" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Direita" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Exibir opções de texto" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Tamanho do texto" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Espaçamento do texto entre linhas" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "O cache foi esvaziado." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "A criação de alguns códigos de barras produziram erros." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "A logo foi removida." + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de bilhete" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Em cima" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/pt_PT.mo b/barcode/locales/pt_PT.mo new file mode 100644 index 0000000000000000000000000000000000000000..b94abbf20473aa169c46bafac96ffeb9b85f8a95 GIT binary patch literal 4439 zcmb`JS&Upq6^0M7Auxe}Lr922k_wKEP24lR%y?$no;cm@_N49E+-^G?wo}tx(_P8k zQnz|GEV8jkAVMMnNRe1V1d;N9kiZW_Vvz=rKthT@LLiYu0wLgmJn@ED{&V}x*h&1r z1EqWJS9NbKXS=8S)oZqYiO@9ULy+6H5j_F!e+O=86YnI#BbpRWfmdK$5gw7}(=t9T zoD-f9wuE;J?-QO8J|Juhmq0$($~Y7z!c@2{ToaxbJ|cV^yb}9-3S|2}4_*zv2(pPk z0NI|O2sc1J_vbSHrSMn6mxaF({#N*V;U9#rf!ndqAHjEne*yWte}H`cKZQf@BEm&C z;Pzf{7x;Ft1bzUV1bO~EI0T-R=N5b)#*fJRr@$h{Uk7>puR%WVcOWi$4L8>3Z{W4y z>md7O8#d+ruL9o#?gVcD_kz5C6}$>O3GzPYK&Va@-i$cdVN=TLHLsJ$HJe2toJWK*5g%hC-_(JMsORH%!9Xptk(j_dYlD$|3w*h zLALuLko8SL)?;1xsJ#C)$m^a2H{M3{MUeNq8=Eul2RU!f2^ZzLk+Bs9!dU2pec`I` z5CS--!7oQGFH8KflL46^_B33I}Na7;J}@_thw=UZKP zOgJxW3GW4O!@RQ~E_wntj^i`nb>Mfv3Gini>-}$#_uT;}Gp_^Le>Z|iY1$34z6Fr; z;E=EevR=nPUe^Ti8Duqv^Wz|d+cabhG7mWoxwJiS=|K8-2#XgPi06nu6?toPw~P9BbB_W6gH5ZEPpU4k@15m-Rv8Kt2k& z7qS51oSlN4fN(nuX=Xj-2w0Im6)Slfh459t1r(`LqRJ>$#;9_DD&tg{pvojw^HeS1 z0*X{EQFWB6V^lpr)p4p$P!%(@YsVe4NtFcsu8mYXj+Sh<@3gmZwD~essa-cIRb%ht zkZO6V6>tGXs+FiVO0_Yn9iZAc)h4JmNj2WN7Ke$B)>II8W2!l$y`dvEO#;297Gu{j zZfh9mMH8e{zo%Y1)oPrsQ$0-ln({rP+Pd8{baZ~EF;CMbGEN6?QgZOrn~qwtfssj> z`tk;rsCY>&ip7lxyQp65?0Ot|9nj#xvT@$FdFa)O4Fc88PV+{^QLv^=U_ul5RQ2?- zQ5~~nqwGWzbjmbSpRUZ{-fGpGG^3+V+SZAo8MEYRR!6!EJKo^fS?%EM6fak8*bi0D z*lv&K4u&hX<9jq0d(}@3%yOw$tE-z9q%_wL7hwa8YR8F1WagcPa)Y2P@Npb4T8N!@ z+Im`WHuCC3lOvwWNZgUq;4w9kRZXN-6FJpHQZ)I@okh^X4R{X zgfvdr=jq^Kc6|0aO?2BvUA1WZiZPK2;5SU#j4a%l;vHTXgxs3WaQ04oFOf^*&}QafImuB+4a=E=tV+)&db@Mmr|?b=SR+V7^hR$Nv? z3-h_AS+=|;cLX_JR>gc_JeM!!@O(IK>g4*hQ5ATRa~`a0OB_V&C_((=g2 z%F4Kex~t**7%Xn5|zlx-gs{s^POh zHs#ohW#tiMY@%&+P_=v7rN&R4Y8}l@T%5<}Eg6@qNANd-T~-r|)^BNER@qrY3jyj% zkUJW?FfFSHieZ>el@4<8L3e6zq^71+UY$R$vR+}II*cLas$2Q_o;~R8Rt5HFK0lay zSQRj#cyQ?dS{-W}-|N_JjPIQD&gm4@ObX-13meblMZ8%tF{S;M*)1LFs25-64QeRX z|1ULkuqn-;e0rPUNX_4fGpSZ6r&c@EV~2-Oz^vLun<+-KNNcB^GTuJiHy)bTS53R` z?Q%@@bXl)sp@L$AvKj{#y1db}F4tJ9xQF{#gDU8BCq`9udT_v2j}LyU$abjYgFq?9JpwMp25EY jlx(Pk9H)AOzXfLF1tg`ofvfjse^9~IpoFV8*YN)Wxb%m! literal 0 HcmV?d00001 diff --git a/barcode/locales/pt_PT.po b/barcode/locales/pt_PT.po new file mode 100644 index 0000000..c378b9c --- /dev/null +++ b/barcode/locales/pt_PT.po @@ -0,0 +1,426 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Rui Melo , 2020 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Rui Melo , 2020\n" +"Language-Team: Portuguese (Portugal) (https://www.transifex.com/pluginsGLPI/teams/73419/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Código de barras" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Configuração do plugin de código de barras" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Tamanho código de barras" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Botão" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Código" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logotipo da empresa " + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Criar" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Borda de exibição" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Mostrar etiquetas" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "Executivo" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Esvaziar o cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "Folio" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Configuração geral" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Arquivo gerado" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Geração" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Geração de código de barras" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Interior interno" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Vertical interna" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Gerará apenas elementos que tenham campo definido:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "Legal" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "Carta" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Panorama" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Esquerda" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Gerenciar configuração" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Margens" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Altura máxima" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Largura máxima" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Não use os primeiros códigos de barras xx" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Número de Cópias" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientação" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Tamanho" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Retrato" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Imprimir códigos QR" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Imprimir códigos de barras" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "Código QR" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Direita" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Opcções de visualização de texto" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Tamanho do Texto" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Espaçamento entre linhas" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Uma tarefa atualizada." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "A geração de alguns códigos de barras produziu erros." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Número de bilhete" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Topo" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tipo" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "Endereço" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Código 128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Código 39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean 13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int 25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/ru_RU.mo b/barcode/locales/ru_RU.mo new file mode 100644 index 0000000000000000000000000000000000000000..47d8e66de89c78f34ad1f67c260527c0f144a5db GIT binary patch literal 5346 zcma);Yiu0V6~}KV^x^U-G_;TwdefE=7dGBq+p)dzI_z#XiNUXI)`2$VG2Xpi58a*F z&WvLxLKU%r047Q(O%+}V300vjYMcZU$B7+LsR&dF?o>sUD#52#LjA@!D)se0ch4qH zYAUYw%x~`N+;h)4_wIan-Q@=aih_I-vf*<=JOP$Jj|a;BFA9Ms@ig-Qcp2)?GGE~K z!(4xv`Ag=nn6EL9F;6gOn6u0?%mt9veUt0IXTHt+1M^*G$ov!Y&&zQe0mbsaE7qbt%9D25ZSAyF> zTE75Z13n0nUAvf1fcS}ncu@aQknB7GUJuTKH2z(%0sMg5KLTkV|K|Q{&>2VlW{~D@ z0cqX4K@1W1fn?VRxE!p2k^gjt+1wISj2)+W6{x`udgMS1`&xasfD?S2g{Kp{8 z{|`v(U5&xy$LpClGH+t8WZnXjosA&b)x>OJb}+k`8IbJW43Zu9f-Arh_ziFZjDm-_ z{XLNE`#VVXd;-!s|K$2I1c&y21xR*Z1(H3>nJc(of;4Y6xB>|i0ZHFxY?{~uQXUO( zeJk^BZr{$lk7+TB%o0d?9^|^i{4q0Nj)6387uSEn+|7K1xrg~Ab1!p0^BM43==nL= z3cd<{8~hMN2*olaA^GJ>@Vnr0koMQX>;%b<^<2*|H!{1KJ2KfKys43agfF*K^nImq`a8q`XMle`deTG`~h54SWnlNX3ibb>Oc-(mM|}fp3G9@1KBV&oT@m-U?>GUXbj68l?O@4w5}@as96# z+4B#O{Ji|DwSBjN%nz@mAC$kSE`*I-V;r+}a(`GtMA6$!Z;~<^mV<7qE9gxn+ z$KV6tRWO$74oLod5~OvGf)tlyAldf@Nck|w?Y{%*oV>$)kNe*T$-WQ3Wgx|}6S5r= zg|tJcY=a<#=5B#Y1k5phqq~mcL2KRsp|iWVQ0%)QcR?g%CFDC0%2A5PDhTa!HKY;p zJqVR`H5lL1>l&_ifRz6&kh>uRkozFy3o5rm`XQA21;}Oy6{LYFNhakI6$_FuZ}@Ko z$+wh0R33m(4x}M>K!zaXkQkaQO^o&*Qs~<(zkahU!>h2a4RCcQ+98l zr>{KQDobayGNe3_iHb}NKOinL%_7qxGOZ%BR%F^lrd?z@M1~g3xRt8q?387<P>(#O~q{_a?-jmG?=DW9LMYd86cA9Agt1zO( z#{Qn}ez8e8%7a}O@1@onsG=OU%Zdk?U2+dLEZt!_#E$89phb?jp1sR;0;?=)4Lg(< z*afNva?CE5Wy!1t>s_b3Q(_|(v~? zU{#gqQNw}gwH&LYF0r}S@(>gso#S?8v?528T^gaWwd$B%3`Rts8^}>#VOyRb$no*| z4t&vP0z;cBxK$eg?DuRKSBvccEk|(`1Fjc%mK}%z&vpX2B}a+jbB*2Mi(0eDA^CF1 zz8q37huq5{`Etgpt<;4_j2>}%G}EI+02w^ebC>0{q>82H4CZZj(G>VW%^2(|tWNy^=ZOf6XYcGv*^+*s@{X|pK*x1+_ zq=Vzz!)lx~G}W#Ke^bvucT<4bep6d>ORS^G8@)d_*won2+ufVJu<6*EXhQ}k28k9S zFD7Jw_(O?hJL_a&#PWO*)HzYjU-7ODvj9#^kD1l3t@Lld+gwFQXE}QSVB|>s_767J4-^ zqMfn0eCVOtl&)AyBc{Z7N-`OxE;Ftx*?M7mN8|Z+=*2SiH9M2guwKTYpt*5f!{TdO z?_cuX*84yE#jRfrC&GvIZ1`wI&*=sIy3jA`>2SAcUC^h|I4kuzeMV2~lX_Oq>uDK2 ze#sm?E%Zwma7v%mGvUMG)Y3zaVD_v&6;29$STE46Zy4^TN$5F^{snzDoRqZ}qigar z{1fQsYL-6_oYV{91eBeVWKc!#C{wBhwgnpS`v9npKO1vzZE%YI% zSd|o$Y4hkL@`WI%xL462AV968M7A!yrE{+dv?4+^K_z?y!=o4nw^Wl^} zEyG7pIjzqK{mhc1pmlNAbodzT*taN#wag%`LjP3Hhm$7$6lq>^#t9Q#3e?=iqd(O|8SX`hW+=tX8n8wh@6u98U5T~N!HO9~b;gV&^Grx7 zffr!XzJ$=f)h{6cKZCr2ARIyJ9HbB&296*iFOakM8}pB2&ROH_edJ+U8(yWfp=G8~ zp(geKot=3&dKL*XN!{c`be}dkPHPM3p4M~WZnU4R?-}FvNqr)mLNnzp)PLHj@NqA%)wKGrY5>jO$@uEtSui69u&xg}?CsJ+LN}bZRL3_h2+7-wAReZR8wQf#HYD zay4&rQe1S-C8wb|U$x_abB*&)HwtAwWh(Z47?nM2+Lj#OGgt=Mw76?&EC0`j0)kSH z#58>yEd9N()O|*-zT|9E!cQPz2oQMjg?35L3mEoB{Rm=bwNplsAr06&9X_14=jaqm z9NZ~=2HA;`vpB=>=bFXGje-haU<#+wJXv9~fqXd?KDu=LOxhsqW-*iglp*>!=FVb) zi|@j4lJ7dKPRT==4NE2FBSg@FNtEQZWBDju(MO@|ocU;>4{iErA>yMYo9a9N(K67# OHQ$%bi@||RO8gg&^>`2f literal 0 HcmV?d00001 diff --git a/barcode/locales/ru_RU.po b/barcode/locales/ru_RU.po new file mode 100644 index 0000000..0c328dd --- /dev/null +++ b/barcode/locales/ru_RU.po @@ -0,0 +1,430 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Dmitry Moskalets , 2017 +# Cédric Anne, 2018 +# Ильшат Сайдуллин , 2020 +# Alexander Litvin , 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Alexander Litvin , 2021\n" +"Language-Team: Russian (Russia) (https://www.transifex.com/pluginsGLPI/teams/73419/ru_RU/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ru_RU\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "А1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "А7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Штрих-код" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Настройки плагина штрих-кода" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Размеры штрих-кода" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Снизу" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "По ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "По серийному номеру" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Код" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Логотип компании" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Создать" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "Удалить логотип" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Отображение границы" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Отображение этикеток" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "ИСПОЛНИТЕЛЬНЫЕ" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Очистить кэш" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "ФОЛИО" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Общие настройки" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Сгенерированный файл" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Генерирование" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Генерация штрихкодов" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Внутренние горизонтальные" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Внутренние вертикальные" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Генерирование элементов только определенного поля:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "ЮРИДИЧЕСКИЕ" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "ПИСЬМО" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Альбомная" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Слева" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Управление конфигурацией" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Поля" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Максимальная высота" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Максимальная ширина" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Не использовать первые xx штрих-кодов" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Количество копий" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Ориентация" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Размер страницы" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Портретная" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Печать QR-кодов" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Печать штрих-кодов" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Справа" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Настройки отображения текста" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Размер текста" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Межстрочный интервал" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Кэш был очищен." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Генерирование некоторых штрих-кодов вызвало ошибки." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "Логотип удален" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Номер заявки" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Сверху" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Тип" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "Code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "Code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "EAN13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "UPCA" diff --git a/barcode/locales/sl_SI.mo b/barcode/locales/sl_SI.mo new file mode 100644 index 0000000000000000000000000000000000000000..ef2bd8400aafbd001dc9159c1e1eed5894357094 GIT binary patch literal 4085 zcmb`JZD?dy8OI;Hwc6C$ZC9(++MZU|Chkt=Ew7Wtb!K*wPV+XMOkx`g^vAD2Sw-gnHT0u}21^>^?Gf65^ zzj&DE{O) zGXAsh4dGvfe-r*)ctiLvA-%hI?h)ZFAm4kdjBghn6&@4bExbo~uke21gCMS;;~?7? z1K$fi3f=-f0kS=x6;?sMcSFVvVN2)>Lt#g_BRnHK3*L-#J`cVJ{36KrJq_~xUjuIi zp9k*%UjW(Vd*J)QmqFh5J8%H}i_G5uk79fjFZ22XU2=e(?z}vvrLHy`Vbhw&sfV}?*l;ZdA1o=J%vfmyOo)E@` zY2i4?dQO3?S5`P9oD-IWE8vH*Zw*X<9gy$;Hput=5ae@S1lg{if~?O=Am4LYctzH) zg1rAa`2BYf{T}3VzKS3*p8+`^z9Bp>^WT*5bHWS4?+Je(d_njl;g5ws5&leg5#;+` zlJU#J%fep@uLxfeUKL&w{ubmoy#^}q4UqHa4mgR=KMt}zL&B3XAD3}jI3}DFJ}f*X z%n1v^M?m)X9LV{y404{-K-R|vIbU|c2f#0Y9FK2-cY_zeW8lw0gn(X=`Rm|a82>|f z8jKE|=fqCDhqwfD)33j3}hCPgggS_R_uWu70!X|C-yD-m2;KzmvfQx0-sU0&LADS?IXew za2~=n2`=vD66Y)DGUp3_dz{}NfN&f+Cl?@-kR?bAQh?+j_d)K5@b~c`kCGi7NluJ`?gmR;l8>8GfW)!0vtixtjmD{EXudF;okw4(6v{NO-C9`HzM*-u5z&HnbscuR#ghviHI-SPCqZ>qV)=*KvfX zxvSMOFQH3vm*OtX-3V3s z@qtr9wQh{73<76OZMeH89u)tFUd!y8p!~qAwX1NU2?8$&@q(>3O{CneX;kris_ejr zta36n(Pes)jCPZ0f;Fj8^1U!}O+;p?|pXR?0l&hk8na5A5V`YC*z^>)N(OCG_X)yC>+?A z98L`6k;4dmjGdKHk=c%Lh_>#Os&48aG|}`*WhORpu#fNCFhQ)~!nM||XVk>HjrJAK zsP0_@B?n)<6PxjZR+v#P6vHr_9+~3OfXC@U_jodqn4V6mQ!1gbr8i7rm^>J!)tNK> zr4cNpu#_IczlQ(M;Kv zt)Wo4wn_7-VUhKf@6{S6YG_&sqmB+NN*X@3rruR8(=b$ATPyxwxHg9Eh`xMkn*E}eHZOp&_FR>9B=QObu4ss8YV-fa&~pG zK&9gH!V=8|x`8r?I@j@N1txZ!M)$_U>KiJ1>t4swqHc7|-Z@02V=tYzu0Aw_F-jC> zjB4W>)yPPL649|-_6`M+E8uHUA_7h zaDU?P(Qi`+OEAq=J+6BHy%Og6uattX*R7+WTQ}U$N)OB5BMy{uO;a~e0=s3HD{ literal 0 HcmV?d00001 diff --git a/barcode/locales/sl_SI.po b/barcode/locales/sl_SI.po new file mode 100644 index 0000000..85a3470 --- /dev/null +++ b/barcode/locales/sl_SI.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/pluginsGLPI/teams/73419/sl_SI/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sl_SI\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Črtne kode" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Konfiguracija črtne kode plugin" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Velikosti črtne kode" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Dno" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Zbornik" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Logotip podjetja" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Ustvarite" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Prikaz meje" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "IZVRŠNI" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Izpraznitev zaèasnega pomnilnika" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Splošna konfiguracija" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Ustvarjene datoteke" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generacije" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generacija črtne kode" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Notranje vodoravne" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Notranje navpično" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "To bo ustvarilo samo elemente določili polje:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "PRAVNE" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "PISMO" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Krajine" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Levo" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Upravljanje konfiguracije" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Robovi" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Največja višina" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Največja širina" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Ne uporabite prvi xx črtne kode" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Število izvodov" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Usmerjenost" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Velikost strani" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Portret" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Tiskanje QRcodes" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Tiskanje črtne kode" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Pravico" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Cache je bila izpraznjena." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Generacije nekaj bacodes proizvaja napake." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Številka letalske karte" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Vrh" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Vrsta" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "POSTNET" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/sv_SE.mo b/barcode/locales/sv_SE.mo new file mode 100644 index 0000000000000000000000000000000000000000..890198a90184568f851d91bdcbbf5659ba1cac65 GIT binary patch literal 3964 zcmb`JZHQb~8ONWRw6&|LX{*(0wI{7<6Vut9m)-2{#I?>$X1Cj&%}!@0Yg_Bf-MMFG zPUg{0K>wglw z0elwx82CKMA^!#V3Gg={ulpl72L46fUjg@HydRr+{s5Q-(;)9}fUL)W_)!lxw&OJT zaqtYt@i+_e{vUz+z~{i*z!yM1|5flK;3W`0dJ8wGrYj(?-vgs~|4kt4Qy|Cf9^nz; zgfJ(Z2HDPIAlp?C&I^}>RpCkSGg$Wsm<9(R>wg+#eLn^HoEJd$>qU_5`4z}|UKYM8 z^RI!t{vx<>4bdAQpYwGjiMbAPJv4{O-}hzw z1K~O04~0((e=Pio@VxM8kn{5_$o2g^cr*A4$Z@y?vOkxFZ-T7%Z5h8K{G0Ia!hZ^{ zL9luMUg7n^F_6#M2PSm@a=aDDb#u48&w>as6=c2wa(&l8{HTo^&ksPh`*D!#^sJ1Z z0XgqK2iea*gPgy2L9WO5gxA7|TQR;7s}lw&N*~{rVZm{=OvqrSR9nmxZr@9QWUXZ0GC3i^4aAmxXVEpTxR%zznz#%>XXZ zeIV~&23caQnPY6FPtb$*HJP6@lRD$fjxGqQ67x6G7gX3ThQj;*GjR^>r~k3!}l3lNUy{SdwuhoA?9OCZOIW65#j+;hEfEpT0Mjc^{2mgM@Za1yLQ zxF;dRNv&|*-U8uz;o9ap&wp0a+^Ks4z)|DJmSL!Za0Ts4z># zG!--W0a+^Ms5nW*DJmYN;xrX!sE8F_+=zTVqUr_xmI+lO3Y(_Yk3DCia5QO^HK(_U z%)oRNHPyPfxESIT)sA9wItrZ^(D21T$Idi(=+uS@0@X^iIjy2F*it&sT^%~B+TK7b zUpGydXw-q9r%HLDP{F-kFW0Ezg}!ZgJxvwebhPY+UJHJ_FOth%jPP1aZklettJ>PM z+Pro++%Udt(}~EbzSVFmwoYwsjy$k*qTgMI4{)jx^$b$65*rvd%uvRW(GRu@-JjMa1x z5lJoEmhn@?e#@rnQC^KzS5h@SFuW&q9A%kT*>q+)mCmKoS(TZ}=cbROag9|x>r(aD z3vJ-JD9)?W_A`EL8mfSbx|cW2U`^QSBLS(p_PTksx}kkz+v*TM=xf$}6Wg9S-qKcuY0gUTn3SJ6WGk&0Jl_`kFdUl|zKpgsr@qSvPLS=)6jFja37D z@j+@nin}(iLKudjoy#8Mwt&aEL!mk_r!t4}7w`YsgjQXw8=X$%k2=k$4K2yXqfy5# z+F6E1gggWtv@NtE9sUokXbFeUZ(oSD^IBF_xEHNCs?Phq>7?7BKP7$W18oQsYR7OC@Bjz+rnS2dU45DK zq7Hh|u!F@)hdzpL)Pxj1C46%6unig3i7o+q9o4qaJ7)vaqGGHE!(IgcXbtKt`!;Mx zFlH3fVbd5kBrix-Y^wXWFP!qZ9Vr~+`&1a(tMK8mrVD6D9(N==${6+)xS8VEo{3^< zNRlt(CwbDHVMl_A2zqP=s?SXc`Nr;@7rT#4CeevL*qLBpi+BB})|8~HYw%&ZBvKAJ zbm%gYB$N@Fl{ZlM?2-3fI!BFZ7*ie4x(QBc=g^nBP>8;iG$w-8+?Ig<)|LJRmb(3h literal 0 HcmV?d00001 diff --git a/barcode/locales/sv_SE.po b/barcode/locales/sv_SE.po new file mode 100644 index 0000000..883205f --- /dev/null +++ b/barcode/locales/sv_SE.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Mattias Wass , 2018 +# Cédric Anne, 2018 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Cédric Anne, 2018\n" +"Language-Team: Swedish (Sweden) (https://www.transifex.com/pluginsGLPI/teams/73419/sv_SE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sv_SE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Streckkod" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Barcode plugin Konfigurering" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Streckkods storlke" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Botten" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kod" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Företags Logo" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Skapa" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Visa kanter" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "Verkställande" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Töm Cache" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "folio" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Allmän konfiguration" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Genererad fil" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Generation" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Generera Streckkod" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "invändig horizontal" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "invändig vertikal" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Generar endast element som har definierade fält" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "Rättslig" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "Brev" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Landskap" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Vänster" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Managera Konfiguration" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Marginaler" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "Max Höjd" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "Max Bredd" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "Använd inte första xx streckkoder" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Antal Kopior" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Orientering" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Sidstorlek" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Porträt" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "Skriv ut QRkoder" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Skriv ut streckkoder" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRkod" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Höger" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Cacheminnet har tömts." + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Genereringen av vissa streckkoder producerade fel" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "biljettnummer" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Topp" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Typ" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "kod128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "kod39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/tr_TR.mo b/barcode/locales/tr_TR.mo new file mode 100644 index 0000000000000000000000000000000000000000..c4092ebb54f96f3ce6b8612da3697603d09d84c5 GIT binary patch literal 4284 zcmb`IYm6IL6~`}4fwBb(g%(;Ky$~L|ZM^HpKAmic?Rb}Ey^q-5G<_w#YhT;99?zJW zJK6Pu)T-qnp%yApB7rJa0z^dl&@NJg3M&=WP6Y)j2%@3_HK+*jkbp1!#uxr)e4K16 zgg|2CGrzg7bI(2J+~b$7z49vpkAl1x@}Ye~JOCbe173KhuMz@XVum>jUV(Ood6fI- zxxL6-W*%dfnYS`;XWqrUn^|GjK-$-EyTxoX1LkRFhxuvdz0CW;H$u;6K|0?<;9J4R zKsw@6Af4w&%q~d#KFjUrm_KL!g83`v3(OapzhhnmuY{hL!8e0{0%^ZjK-&MG%%L|4 zfuFbmuWP{l;OoH@cpW$c()<;02t3LC27DXZ_wx9|U=rh?NYOn;7o>L%97Y3yHK1l2D18Ki6f#kn4%&#%O z&in@R+aTHb7)W+K!F-bW1Lo7r9!Pfo1SC6N0&fKW488~42P5O)O(5B|3X&ZsLDIj@ z?K(*3Zh~ZQ0FoVB%=>u!b0DqzBKXMbg!nQ@`i7yLcmSlli8E8&KgsPhbC!98nPbi| z7nlX+3bV*u18Kh#+`f}}in-3z%m%Z`beW$7>AV(vANVQo?ci5I(*IqM&ht3)d))sd zx1VC}GM{EX!#vOYG4rR)=Rwl{OOWotuR(-NybMzO{sz7ayb4J~ah2fp;LRY#B?DrL zm^mUV+Q^4)8jV+9M#1 z9|AE&+yTVC6r}TflldJU ze;lOs-v@CGq8dYaau7n#JcRtc0yz%Z``o>^!QY3Oi{KJun%f2D6mx)6_{c#hSLhjo z+zu&G1CNC4hpa)!PC5gfi)s|*1?3v9ZsaSvBsKV% z1MlGPkAusQ1xOn52?*U?s(W;oXCMkf&j@4`lBEVeli)by2)7B8(7*ZIT?F0{yo=bJ6hwaO9wj?>z=rb10CH;m)RdbFF>(sP}T)Q)ax*9Nko zPHS1!HRDD*YNwhOh5US`fOol^FN%V4t3gGzwJ7MC6-&xhb)4f>j$Kkdyd7Y0)3m~t zY-m$&(A<7=!&GfUEPGalfyS}?z{<_d!3hGf9JbbR1{|v5wGAS(;u{#(585hiM*$P7 zo^O3+tXTDpYvr*bMLggZyCV?&Zc#*56_Hj&ZfdIA8m|=Lc9|Dot&r8#zUky|yTK;Qh5?LC}E{$?1rx8KIS%ND25NIU(9! zU|nrR*sdtJ#JfjVY;2(#JFfiz`=;e;CbyWG&&%WaVrgMzd8nw{@Mml(sGDjm8`gtZ z*-Oiz)stqH5|46;R8^aOhAKM4-wp0S*uoBmP5a3f`%NX z58WA&!wqZOL3(U#V`Br$u#>6j&C!b28tdQgV7{=rFlMnj7@JCsCuYX1f2v#@8yQ+! zSjt~Md15p^l*8RXO2x>PX=xE@C{e~eC@T$^r|s-oc`i16c^>Uo(|#=P!s&>3T28MU zd&y|%puL7x9TXQQHs|@RAT3=OhGsCEJV+G?pR>cRJS-C<2Z#RO<*w;fsh|Ne?9@X? zwUpFNBUMNF4n<)wy6$yC+waLZ_P;21i_p9n`nbnb>w-|MIN|wiiyl`jYDClN?KEY* zd(Q9fy0*LPXoSWUd25ijj`q!~#`cuK?im+_(b2tagAlaLmZLjZc)1!n1M4qu=^&}9 zUeHl{x>{;*He5dAh})D!5jNeksK7{_=&Pivx}s(GTyGn-4mK&$WR=_7X*sIe+v#m1 zNqak6(i@!4e@*3!)QXZv8?<{nSdV3XO9jzF+3B9cg=^_%-zoSLIKSTOe5{P(4DNn8B8?o9!dv_N;y z;!mbY?iT$SY+gxO7$Oxe1X8E(p+Pb<2dUsz4eZ>4;i%>PbI9(lkDVNYir}KQS~ZB) ZsL0~qF{+Z#O3vv%8d%iM_Wx8U{{_Bwb$I{) literal 0 HcmV?d00001 diff --git a/barcode/locales/tr_TR.po b/barcode/locales/tr_TR.po new file mode 100644 index 0000000..6ac0d22 --- /dev/null +++ b/barcode/locales/tr_TR.po @@ -0,0 +1,429 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Johan Cwiklinski, 2017 +# Alexander Salas Bastidas , 2017 +# Cédric Anne, 2018 +# Sinan Sarıçınar , 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: Sinan Sarıçınar , 2021\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/pluginsGLPI/teams/73419/tr_TR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tr_TR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "Barkod" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "Barkod uygulama eki ayarları" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "Barkod boyutları" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "Alt" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Kod" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "Kurum logosu" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "Oluşturun" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "Kenarlık görüntülensin" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "Etiketleri görüntüle" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "Önbelleği temizleyin" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "Genel ayarlar" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "Oluşturulan dosya" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "Oluşturulma" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "Barkod nesil" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "Yatay iç" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "Dikey iç" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "Sadece öğeleri alan tanımladığınız oluşturur:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "Yatay" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "Sol" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "Yapılandırmasını yönetmek" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "Kenar boşlukları" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "En fazla yükseklik" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "En fazla genişlik" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "İlk xx barkod kullanılmasın" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "Kopya sayısı" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "Sayfa yönü" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "Sayfa boyutu" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "Dikey" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "QR kodlarını yazdırın" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "Barkodları yazdırın" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "QRcode" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "Sağ" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "Metin görüntüleme seçenekleri" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "Metin boyutu" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "Satır aralıkları" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr "Önbellek temizlendi" + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "Bazı barkodlar üretilirken hata oluştu." + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "Bilet numarası" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "Üst" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "Tip" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/locales/zh_CN.mo b/barcode/locales/zh_CN.mo new file mode 100644 index 0000000000000000000000000000000000000000..5ec965d0fef80066fecd546f0cc5fd0839194cf8 GIT binary patch literal 4301 zcmb`IYmgLI6~}L4@UfZ)F;Nl)JBcVH3_CNs%kB=3WM+0)Hq1U421ueL_Rid$X`Jbv zboa6>Rh9&Vun}Am-h?C&p5d{J1lVO4FsYOpODi!cQ}I#6Qn%+}EG;ZctW6&r*8Ka|=icsn&pqe#o%e3NVXHus(C4A1j|kBRWWlGTxk47ko-Ie-VP3f^!yuO6?l>Riy-ae10KH_gMQePKze@x zNb4>E@rZa7B)`(&ZD1Cpc&!F${-?kj!JXh8;31Iae-->B_%=xMyayt*q6pISmq2>| zUm&e_6CS2G-p;&(Igxo6b23PNP6f%YYGy67kvWGM2FdSvAo;Nryc0};p95EeUhsMD ze-kACeh-pAe+Oxuf3kfYl0*9+2a?}6g5=L_%sY8p0qMOd;5V)l!UNKLM=?2Z5TrVK znR$l$&$4}<`3mzj<`0-ZV*Z5rCi89PJItShwBE1S{x$QrOov%yzR&z4^AhtfAno^W z;H}^XAhsmNBZ<^Mi8&dhyiUV~_BWF`2P8j&Y)6>$nDd!!%mvIia|!bikm9-&MCpi5 zkk-$#ZG+_3H<=qi%KJ{X_konJ6KtPhz6R1fKV|z}w#S(7gZE`q|#b_C63lafJIvK-$L-L5kyB%y*c-U|wYY2Bdi% zkmB_R<|XD|ng3wYM@xAf2a^92n3KWJ!uErAfe(V81~WXq3Z!*5GPi)_=d&PvCkMFy zI7o3j#T?=BS3vUbbr7FPxproOUxB<(14L~x1Xs&v3;9Vt(05H|-De<*$pi>xc}=4; zy#<;NDG=@99_WkEWavxKm!T=pRETm+ZKexxH*-3(5v+r1p(RiU^e99zqBad`hp6@w z&^(CRco$+e^D(9h2Kc@Sq}r%v`)eSbRUzmBs1u@CPlB#)55brSJqXo65~?&hlc~*h zA(G(zd>>&h0AtWXC=M-x=0Mb9g7qTUAcBn| zvmzL@_Ra-Ok%AloK z+Dd7OkYU?KR)l($mL|Gd($v(9qIYLIr76N*5%%E+_(ixzglk2(PK0NOaJ>jOh;X9_ z(}H0mn^W~(C1a!v5jLf2OVK1V(w2&ymTq^GX5}(!uhMClNz7a^Gis;ISR(RJB)llz zvN$3l*__>5el4LU(o)QAkG8anW~oaPeqFm4x7U_QrAy05eyF@l9>Incqf6=Jz_jR? zMM)c`w$jjTH6z@P<-Z9eNC;ev3h0tv2a`U)T-8& z*2tBO`lfrU!uU#1Tpo&CK(Uc?OrmP~OeK+4O-tId7scm#8m>G?>vc)f6VVZ4i>E&=AYYJ*z<&Nk?((I zZ1hZN?Z(3S0q%14A97Cgi~NSZ(lhAW&_|~su&~V;>37y|clw7u>{;lnJ?8WeN86j* zg|q%yXLJPEQ`)(|+*7=8HoteB(?3`|1aEd+DC{38?me8}bMC4GFh9Ju@X|=(+-B$a z4nFm{YTuFoV7#w z-F?o$uCcRy&hhQ}fzyRu-*VQjDV*B#r*pfmJy2ir;0<*3B}EXGjy`};!!s@zgx9h5v4VUo%QR+Mh-cfpK$BS zjd5wq&f?%89ubsr_qD>IQB(l+IYS4WjayMpRE}fAPhl2O`0l9l{I}_3Ds8@y|IUFA HeLnpgs|MCp literal 0 HcmV?d00001 diff --git a/barcode/locales/zh_CN.po b/barcode/locales/zh_CN.po new file mode 100644 index 0000000..ffa498d --- /dev/null +++ b/barcode/locales/zh_CN.po @@ -0,0 +1,427 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +# Translators: +# Cédric Anne, 2018 +# liAnGjiA , 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-07-18 07:08+0000\n" +"PO-Revision-Date: 2017-03-02 15:37+0000\n" +"Last-Translator: liAnGjiA , 2021\n" +"Language-Team: Chinese (China) (https://www.transifex.com/pluginsGLPI/teams/73419/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: inc/barcode.class.php:78 +msgid "2A0" +msgstr "2A0" + +#: inc/barcode.class.php:77 +msgid "4A0" +msgstr "4A0" + +#: inc/barcode.class.php:79 +msgid "A0" +msgstr "A0" + +#: inc/barcode.class.php:80 +msgid "A1" +msgstr "A1" + +#: inc/barcode.class.php:89 +msgid "A10" +msgstr "A10" + +#: inc/barcode.class.php:81 +msgid "A2" +msgstr "A2" + +#: inc/barcode.class.php:82 +msgid "A3" +msgstr "A3" + +#: inc/barcode.class.php:83 +msgid "A4" +msgstr "A4" + +#: inc/barcode.class.php:84 +msgid "A5" +msgstr "A5" + +#: inc/barcode.class.php:85 +msgid "A6" +msgstr "A6" + +#: inc/barcode.class.php:86 +msgid "A7" +msgstr "A7" + +#: inc/barcode.class.php:87 +msgid "A8" +msgstr "A8" + +#: inc/barcode.class.php:88 +msgid "A9" +msgstr "A9" + +#: inc/barcode.class.php:90 +msgid "B0" +msgstr "B0" + +#: inc/barcode.class.php:91 +msgid "B1" +msgstr "B1" + +#: inc/barcode.class.php:100 +msgid "B10" +msgstr "B10" + +#: inc/barcode.class.php:92 +msgid "B2" +msgstr "B2" + +#: inc/barcode.class.php:93 +msgid "B3" +msgstr "B3" + +#: inc/barcode.class.php:94 +msgid "B4" +msgstr "B4" + +#: inc/barcode.class.php:95 +msgid "B5" +msgstr "B5" + +#: inc/barcode.class.php:96 +msgid "B6" +msgstr "B6" + +#: inc/barcode.class.php:97 +msgid "B7" +msgstr "B7" + +#: inc/barcode.class.php:98 +msgid "B8" +msgstr "B8" + +#: inc/barcode.class.php:99 +msgid "B9" +msgstr "B9" + +#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 +#: inc/profile.class.php:50 inc/profile.class.php:86 +msgid "Barcode" +msgstr "条码" + +#: inc/config.class.php:61 +msgid "Barcode plugin configuration" +msgstr "条码插件配置" + +#: inc/config.class.php:177 +msgid "Barcodes sizes" +msgstr "条码大小" + +#: inc/config.class.php:157 +msgid "Bottom" +msgstr "按钮" + +#: inc/config.class.php:190 +msgid "By ID" +msgstr "按 ID" + +#: inc/config.class.php:191 +msgid "By serial number" +msgstr "按SN序列号" + +#: inc/barcode.class.php:101 +msgid "C0" +msgstr "C0" + +#: inc/barcode.class.php:102 +msgid "C1" +msgstr "C1" + +#: inc/barcode.class.php:111 +msgid "C10" +msgstr "C10" + +#: inc/barcode.class.php:103 +msgid "C2" +msgstr "C2" + +#: inc/barcode.class.php:104 +msgid "C3" +msgstr "C3" + +#: inc/barcode.class.php:105 +msgid "C4" +msgstr "C4" + +#: inc/barcode.class.php:106 +msgid "C5" +msgstr "C5" + +#: inc/barcode.class.php:107 +msgid "C6" +msgstr "C6" + +#: inc/barcode.class.php:108 +msgid "C7" +msgstr "C7" + +#: inc/barcode.class.php:109 +msgid "C8" +msgstr "C8" + +#: inc/barcode.class.php:110 +msgid "C9" +msgstr "C9" + +#: inc/barcode.class.php:159 +msgid "Code" +msgstr "Code" + +#: inc/config.class.php:82 +msgid "Company logo" +msgstr "公司LOGO" + +#: inc/barcode.class.php:179 inc/barcode.class.php:257 +msgid "Create" +msgstr "创建" + +#: inc/config.class.php:94 +msgid "Delete the logo" +msgstr "删除LOGO" + +#: inc/barcode.class.php:240 +msgid "Display border" +msgstr "边框可见" + +#: inc/barcode.class.php:248 +msgid "Display labels" +msgstr "显示表格" + +#: inc/barcode.class.php:124 +msgid "EXECUTIVE" +msgstr "EXECUTIVE" + +#: inc/config.class.php:78 +msgid "Empty the cache" +msgstr "清空缓存" + +#: inc/barcode.class.php:125 +msgid "FOLIO" +msgstr "FOLIO" + +#: inc/config.class.php:66 +msgid "General configuration" +msgstr "一般设置" + +#: front/barcode.form.php:62 inc/barcode.class.php:514 +#: inc/qrcode.class.php:411 +msgid "Generated file" +msgstr "生成文件" + +#: inc/barcode.class.php:157 +msgid "Generation" +msgstr "生成" + +#: inc/profile.class.php:117 +msgid "Generation of barcode" +msgstr "生成条码" + +#: inc/config.class.php:170 +msgid "Inner horizontal" +msgstr "横向" + +#: inc/config.class.php:173 +msgid "Inner vertical" +msgstr "纵向" + +#: inc/barcode.class.php:194 +msgid "It will generate only elements have defined field:" +msgstr "它只生成具有定义字段的元素:" + +#: inc/barcode.class.php:123 +msgid "LEGAL" +msgstr "LEGAL" + +#: inc/barcode.class.php:122 +msgid "LETTER" +msgstr "LETTER" + +#: inc/barcode.class.php:136 +msgid "Landscape" +msgstr "横向" + +#: inc/config.class.php:162 +msgid "Left" +msgstr "左边" + +#: inc/profile.class.php:113 +msgid "Manage configuration" +msgstr "管理配置" + +#: inc/config.class.php:152 +msgid "Margins" +msgstr "边框" + +#: inc/config.class.php:182 +msgid "Maximum height" +msgstr "最大高度" + +#: inc/config.class.php:179 +msgid "Maximum width" +msgstr "最大宽度" + +#: inc/barcode.class.php:230 +msgid "Not use first xx barcodes" +msgstr "条码首字符不使用 xx" + +#: inc/barcode.class.php:174 +msgid "Number of copies" +msgstr "副本数量" + +#: inc/barcode.class.php:169 inc/barcode.class.php:236 +#: inc/config.class.php:148 +msgid "Orientation" +msgstr "方向" + +#: inc/barcode.class.php:166 inc/barcode.class.php:226 +#: inc/config.class.php:145 +msgid "Page size" +msgstr "纸张大小" + +#: inc/barcode.class.php:135 +msgid "Portrait" +msgstr "竖向" + +#: hook.php:49 +msgid "Print QRcodes" +msgstr "二维码打印" + +#: hook.php:46 +msgid "Print barcodes" +msgstr "条码打印" + +#: inc/config.class.php:269 +msgid "QRcode" +msgstr "二维码" + +#: inc/barcode.class.php:112 +msgid "RA0" +msgstr "RA0" + +#: inc/barcode.class.php:113 +msgid "RA1" +msgstr "RA1" + +#: inc/barcode.class.php:114 +msgid "RA2" +msgstr "RA2" + +#: inc/barcode.class.php:115 +msgid "RA3" +msgstr "RA3" + +#: inc/barcode.class.php:116 +msgid "RA4" +msgstr "RA4" + +#: inc/config.class.php:165 +msgid "Right" +msgstr "右边" + +#: inc/barcode.class.php:117 +msgid "SRA0" +msgstr "SRA0" + +#: inc/barcode.class.php:118 +msgid "SRA1" +msgstr "SRA1" + +#: inc/barcode.class.php:119 +msgid "SRA2" +msgstr "SRA2" + +#: inc/barcode.class.php:120 +msgid "SRA3" +msgstr "SRA3" + +#: inc/barcode.class.php:121 +msgid "SRA4" +msgstr "SRA4" + +#: inc/config.class.php:196 +msgid "Text display options" +msgstr "文本显示选项" + +#: inc/config.class.php:198 +msgid "Text size" +msgstr "文本大小" + +#: inc/config.class.php:201 +msgid "Text spacing between lines" +msgstr "文本间距" + +#: front/config.form.php:56 +msgid "The cache has been emptied." +msgstr " 缓存已被清空。 " + +#: inc/barcode.class.php:286 +msgid "The generation of some barcodes produced errors." +msgstr "部分产品条码生成错误。" + +#: front/config.form.php:61 +msgid "The logo has been removed." +msgstr "LOGO已被移除。" + +#: inc/barcode.class.php:196 +msgid "Ticket number" +msgstr "工单号码" + +#: inc/config.class.php:154 +msgid "Top" +msgstr "上部" + +#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 +msgid "Type" +msgstr "类型" + +#: inc/config.class.php:188 +msgid "URL" +msgstr "URL链接" + +#: inc/config.class.php:264 +msgid "code128" +msgstr "code128" + +#: inc/config.class.php:263 +msgid "code39" +msgstr "code39" + +#: inc/config.class.php:265 +msgid "ean13" +msgstr "ean13" + +#: inc/config.class.php:266 +msgid "int25" +msgstr "int25" + +#: inc/config.class.php:267 +msgid "postnet" +msgstr "postnet" + +#: inc/config.class.php:268 +msgid "upca" +msgstr "upca" diff --git a/barcode/patch/fix-pear-image-barcode.patch b/barcode/patch/fix-pear-image-barcode.patch new file mode 100644 index 0000000..fd6df96 --- /dev/null +++ b/barcode/patch/fix-pear-image-barcode.patch @@ -0,0 +1,145 @@ +--- Image/Barcode.php ++++ Image/Barcode.php +@@ -77,7 +77,7 @@ + return PEAR::raiseError("Unable to find draw method in '$classname' class"); + } + +- @$obj =& new $classname(); ++ @$obj = new $classname(); + + if (isset($obj->_barcodeheight)) $obj->_barcodeheight = $height; + if (isset($obj->_barwidth)) $obj->_barwidth = $barwidth; +--- Image/Barcode/code128.php ++++ Image/Barcode/code128.php +@@ -42,9 +42,7 @@ + * @link http://pear.php.net/package/Image_Barcode + */ + +-require_once "Image/Barcode.php"; +- +-class Image_Barcode_code128 extends Image_Barcode ++class Image_Barcode_code128 + { + var $_type = 'code128'; + var $_barcodeheight = 60; +--- Image/Barcode/Code39.php ++++ Image/Barcode/Code39.php +@@ -25,8 +25,6 @@ + */ + + +-require_once "Image/Barcode.php"; +- + + if (!function_exists('str_split')) { + require_once 'PHP/Compat.php'; +@@ -47,7 +45,7 @@ + * @link http://pear.php.net/package/Image_Barcode + * @since Image_Barcode 0.5 + */ +-class Image_Barcode_Code39 extends Image_Barcode ++class Image_Barcode_Code39 + { + /** + * Barcode type +--- Image/Barcode/ean13.php ++++ Image/Barcode/ean13.php +@@ -23,8 +23,6 @@ + * @link http://pear.php.net/package/Image_Barcode + */ + +-require_once 'Image/Barcode.php'; +- + /** + * Image_Barcode_ean13 class + * +@@ -39,7 +37,7 @@ + * @link http://pear.php.net/package/Image_Barcode + * @since Image_Barcode 0.4 + */ +-class Image_Barcode_ean13 extends Image_Barcode ++class Image_Barcode_ean13 + { + /** + * Barcode type +--- Image/Barcode/ean8.php ++++ Image/Barcode/ean8.php +@@ -24,8 +24,6 @@ + * @link http://pear.php.net/package/Image_Barcode + */ + +-require_once 'Image/Barcode.php'; +- + /** + * Image_Barcode_ean8 class + * +@@ -40,7 +28,7 @@ + * @version Release: @package_version@ + * @link http://pear.php.net/package/Image_Barcode + */ +-class Image_Barcode_ean8 extends Image_Barcode ++class Image_Barcode_ean8 + { + /** + * Barcode type +--- Image/Barcode/int25.php ++++ Image/Barcode/int25.php +@@ -23,9 +23,6 @@ + * @link http://pear.php.net/package/Image_Barcode + */ + +-require_once "PEAR.php"; +-require_once "Image/Barcode.php"; +- + + /** + * Image_Barcode_int25 class +@@ -40,7 +37,7 @@ + * @version Release: @package_version@ + * @link http://pear.php.net/package/Image_Barcode + */ +-class Image_Barcode_int25 extends Image_Barcode ++class Image_Barcode_int25 + { + /** + * Barcode type +--- Image/Barcode/postnet.php ++++ Image/Barcode/postnet.php +@@ -36,8 +36,6 @@ + * density: 22 bars/inch = 8.66 bars/cm + */ + +-require_once 'Image/Barcode.php'; +- + + /** + * Image_Barcode_postnet class +@@ -52,7 +50,7 @@ + * @version CVS: $Id$ + * @link http://pear.php.net/package/Image_Barcode + */ +-class Image_Barcode_postnet extends Image_Barcode ++class Image_Barcode_postnet + { + /** + * Barcode type +--- Image/Barcode/upca.php ++++ Image/Barcode/upca.php +@@ -24,8 +24,6 @@ + * @link http://pear.php.net/package/Image_Barcode + */ + +-require_once 'Image/Barcode.php'; +- + /** + * Image_Barcode_upca class + * +@@ -47,7 +45,7 @@ + * @version Release: @package_version@ + * @link http://pear.php.net/package/Image_Barcode + */ +-class Image_Barcode_upca extends Image_Barcode ++class Image_Barcode_upca + { + /** + * Barcode type diff --git a/barcode/setup.php b/barcode/setup.php new file mode 100644 index 0000000..ea08b8f --- /dev/null +++ b/barcode/setup.php @@ -0,0 +1,112 @@ + ['Profile']]); + Plugin::registerClass('PluginBarcodeBarcode'); + + if (Session::haveRight('plugin_barcode_barcode', CREATE) + || Session::haveRight('plugin_barcode_config', UPDATE)) { + + $PLUGIN_HOOKS['pre_item_purge']['barcode'] + = ['Profile' => ['PluginBarcodeProfile', 'cleanProfiles']]; + + // Acción masiva habilitada + $PLUGIN_HOOKS['use_massive_action']['barcode'] = 1; + + // Ruta base del plugin (sin Plugin::getWebDir - deprecado en GLPI 11) + $web_dir = '/plugins/barcode'; + + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['title'] = __('Search'); + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['page'] = $web_dir . '/front/barcode.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['search'] = $web_dir . '/front/barcode.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['add'] = $web_dir . '/front/barcode.form.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['config'] = $web_dir . '/index.php'; + + $PLUGIN_HOOKS['helpdesk_menu_entry']['barcode'] = true; + } + + // Página de configuración + if (Session::haveRight('config', UPDATE)) { + $PLUGIN_HOOKS['config_page']['barcode'] = 'front/config.php'; + } + + // Redirección por ID: /index.php?redirect=plugin_barcode_2 + $PLUGIN_HOOKS['redirect_page']['barcode'] = 'barcode.form.php'; +} + +/** + * Versión e información del plugin - Requerido + */ +function plugin_version_barcode() { + return [ + 'name' => 'Barcode', + 'shortname' => 'barcode', + 'version' => PLUGIN_BARCODE_VERSION, + 'license' => 'AGPLv3+', + 'author' => 'David DURIEUX & + Jean Marc GRISARD & Vincent MAZZONI + (Migrado a GLPI 11 por Dawing S.A.S.)', + 'homepage' => 'https://github.com/pluginsGLPI/barcode', + 'requirements' => [ + 'glpi' => [ + 'min' => PLUGIN_BARCODE_MIN_GLPI, + 'max' => PLUGIN_BARCODE_MAX_GLPI, + ], + 'php' => [ + 'min' => '8.1', + ], + ] + ]; +} + +/** + * Verificación de prerequisitos antes de instalar + */ +function plugin_barcode_check_prerequisites() { + if (version_compare(GLPI_VERSION, PLUGIN_BARCODE_MIN_GLPI, 'lt') + || version_compare(GLPI_VERSION, PLUGIN_BARCODE_MAX_GLPI, 'gt')) { + if (method_exists('Plugin', 'messageIncompatible')) { + Plugin::messageIncompatible('core', PLUGIN_BARCODE_MIN_GLPI, PLUGIN_BARCODE_MAX_GLPI); + } + return false; + } + return true; +} + +/** + * Verificación de configuración + */ +function plugin_barcode_check_config($verbose = false) { + return true; +} diff --git a/barcode/tools/HEADER b/barcode/tools/HEADER new file mode 100644 index 0000000..722122a --- /dev/null +++ b/barcode/tools/HEADER @@ -0,0 +1,27 @@ +LICENSE + +This file is part of barcode plugin project. + +Plugin Barcode is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +Plugin Barcode 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 Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with Plugin Barcode. If not, see . + +------------------------------------------------------------------------ + +@package Plugin Barcode +@author David Durieux +@co-author +@copyright Copyright (c) 2009-2017 Barcode plugin Development team +@license AGPL License 3.0 or (at your option) any later version + http://www.gnu.org/licenses/agpl-3.0-standalone.html +@link https://github.com/pluginsGLPI/barcode +@since 2009 diff --git a/barcode/tools/extract_template.sh b/barcode/tools/extract_template.sh new file mode 100644 index 0000000..b6e6819 --- /dev/null +++ b/barcode/tools/extract_template.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +soft='GLPI - Barcode plugin' +version='0.84' +email=glpi-translation@gna.org +copyright='Barcode plugin Development Team' + +#xgettext *.php */*.php -copyright-holder='$copyright' --package-name=$soft --package-version=$version --msgid-bugs-address=$email -o locales/en_GB.po -L PHP --from-code=UTF-8 --force-po -i --keyword=_n:1,2 --keyword=__ --keyword=_e + +# Only strings with domain specified are extracted (use Xt args of keyword param to set number of args needed) + +xgettext *.php */*.php -o locales/glpi.pot -L PHP --add-comments=TRANS --from-code=UTF-8 --force-po \ + --keyword=_n:1,2,4t --keyword=__s:1,2t --keyword=__:1,2t --keyword=_e:1,2t --keyword=_x:1c,2,3t --keyword=_ex:1c,2,3t \ + --keyword=_sx:1c,2,3t --keyword=_nx:1c,2,3,4t + + +### for using tx : +##tx set --execute --auto-local -r GLPI_example.glpi-084-current 'locales/.po' --source-lang en --source-file locales/glpi.pot +## tx push -s +## tx pull -a + + diff --git a/barcode/tools/update_mo.pl b/barcode/tools/update_mo.pl new file mode 100644 index 0000000..ca66dac --- /dev/null +++ b/barcode/tools/update_mo.pl @@ -0,0 +1,28 @@ +#!/usr/bin/perl +#!/usr/bin/perl -w + +if (@ARGV!=0){ +print "USAGE update_mo.pl\n\n"; + +exit(); +} + +opendir(DIRHANDLE,'../locales')||die "ERROR: can not read current directory\n"; +foreach (readdir(DIRHANDLE)){ + if ($_ ne '..' && $_ ne '.'){ + + if(!(-l "$dir/$_")){ + if (index($_,".po",0)==length($_)-3) { + $lang=$_; + $lang=~s/\.po//; + + `msgfmt ../locales/$_ -o ../locales/$lang.mo`; + } + } + + } +} +closedir DIRHANDLE; + +# +# diff --git a/barcode/tools/update_po.pl b/barcode/tools/update_po.pl new file mode 100644 index 0000000..5969e0e --- /dev/null +++ b/barcode/tools/update_po.pl @@ -0,0 +1,30 @@ +#!/usr/bin/perl +#!/usr/bin/perl -w + +if (@ARGV!=2){ +print "USAGE update_po.pl transifex_login transifex_password\n\n"; + +exit(); +} +$user = $ARGV[0]; +$password = $ARGV[1]; + +opendir(DIRHANDLE,'../locales')||die "ERROR: can not read current directory\n"; +foreach (readdir(DIRHANDLE)){ + if ($_ ne '..' && $_ ne '.'){ + + if(!(-l "$dir/$_")){ + if (index($_,".po",0)==length($_)-3) { + $lang=$_; + $lang=~s/\.po//; + + `wget --user=$user --password=$password --output-document=../locales/$_ http://www.transifex.net/api/2/project/glpi_barcode/resource/plugin-08410/translation/$lang/?file=$_`; + } + } + + } +} +closedir DIRHANDLE; + +# +# From b319171b861a4ed93cd6100774e4824eb79fd69d Mon Sep 17 00:00:00 2001 From: cdbaq Date: Mon, 30 Mar 2026 13:08:17 -0500 Subject: [PATCH 2/3] Delete barcode directory fix: remove nested barcode subdirectory --- barcode/AUTHORS.txt | 14 - barcode/LICENSE | 661 --------------------- barcode/README.md | 110 ---- barcode/README_MIGRACION.md | 183 ------ barcode/SECURITY.md | 24 - barcode/barcode.xml | 61 -- barcode/barscode.png | Bin 6045 -> 0 bytes barcode/composer.json | 75 --- barcode/front/barcode.form.php | 33 - barcode/front/barcode.php | 81 --- barcode/front/checkItemByInv.php | 37 -- barcode/front/config.form.php | 78 --- barcode/front/config.php | 24 - barcode/front/config_type.form.php | 50 -- barcode/front/document.send.php | 52 -- barcode/front/send.php | 60 -- barcode/hook.php | 199 ------- barcode/inc/barcode.class.php | 549 ----------------- barcode/inc/config.class.php | 305 ---------- barcode/inc/config_type.class.php | 29 - barcode/inc/profile.class.php | 206 ------- barcode/inc/qrcode.class.php | 308 ---------- barcode/locales/barcode.pot | 419 ------------- barcode/locales/ca_ES.mo | Bin 4054 -> 0 bytes barcode/locales/ca_ES.po | 427 ------------- barcode/locales/cs_CZ.mo | Bin 4480 -> 0 bytes barcode/locales/cs_CZ.po | 428 ------------- barcode/locales/de_DE.mo | Bin 4511 -> 0 bytes barcode/locales/de_DE.po | 429 ------------- barcode/locales/en_GB.mo | Bin 4351 -> 0 bytes barcode/locales/en_GB.po | 419 ------------- barcode/locales/en_US.mo | Bin 3954 -> 0 bytes barcode/locales/en_US.po | 427 ------------- barcode/locales/es_419.mo | Bin 4159 -> 0 bytes barcode/locales/es_419.po | 427 ------------- barcode/locales/es_AR.mo | Bin 4138 -> 0 bytes barcode/locales/es_AR.po | 428 ------------- barcode/locales/es_ES.mo | Bin 4395 -> 0 bytes barcode/locales/es_ES.po | 428 ------------- barcode/locales/es_GT.mo | Bin 4142 -> 0 bytes barcode/locales/es_GT.po | 427 ------------- barcode/locales/fi_FI.mo | Bin 4002 -> 0 bytes barcode/locales/fi_FI.po | 427 ------------- barcode/locales/fr_FR.mo | Bin 4631 -> 0 bytes barcode/locales/fr_FR.po | 429 ------------- barcode/locales/hr_HR.mo | Bin 4580 -> 0 bytes barcode/locales/hr_HR.po | 426 ------------- barcode/locales/id_ID.mo | Bin 3963 -> 0 bytes barcode/locales/id_ID.po | 426 ------------- barcode/locales/it_IT.mo | Bin 4174 -> 0 bytes barcode/locales/it_IT.po | 426 ------------- barcode/locales/ja_JP.mo | Bin 1268 -> 0 bytes barcode/locales/ja_JP.po | 426 ------------- barcode/locales/ko_KR.mo | Bin 4455 -> 0 bytes barcode/locales/ko_KR.po | 428 ------------- barcode/locales/pl_PL.mo | Bin 4457 -> 0 bytes barcode/locales/pl_PL.po | 428 ------------- barcode/locales/pt_BR.mo | Bin 4684 -> 0 bytes barcode/locales/pt_BR.po | 429 ------------- barcode/locales/pt_PT.mo | Bin 4439 -> 0 bytes barcode/locales/pt_PT.po | 426 ------------- barcode/locales/ru_RU.mo | Bin 5346 -> 0 bytes barcode/locales/ru_RU.po | 430 -------------- barcode/locales/sl_SI.mo | Bin 4085 -> 0 bytes barcode/locales/sl_SI.po | 427 ------------- barcode/locales/sv_SE.mo | Bin 3964 -> 0 bytes barcode/locales/sv_SE.po | 427 ------------- barcode/locales/tr_TR.mo | Bin 4284 -> 0 bytes barcode/locales/tr_TR.po | 429 ------------- barcode/locales/zh_CN.mo | Bin 4301 -> 0 bytes barcode/locales/zh_CN.po | 427 ------------- barcode/patch/fix-pear-image-barcode.patch | 145 ----- barcode/setup.php | 112 ---- barcode/tools/HEADER | 27 - barcode/tools/extract_template.sh | 22 - barcode/tools/update_mo.pl | 28 - barcode/tools/update_po.pl | 30 - 77 files changed, 14173 deletions(-) delete mode 100644 barcode/AUTHORS.txt delete mode 100644 barcode/LICENSE delete mode 100644 barcode/README.md delete mode 100644 barcode/README_MIGRACION.md delete mode 100644 barcode/SECURITY.md delete mode 100644 barcode/barcode.xml delete mode 100644 barcode/barscode.png delete mode 100644 barcode/composer.json delete mode 100644 barcode/front/barcode.form.php delete mode 100644 barcode/front/barcode.php delete mode 100644 barcode/front/checkItemByInv.php delete mode 100644 barcode/front/config.form.php delete mode 100644 barcode/front/config.php delete mode 100644 barcode/front/config_type.form.php delete mode 100644 barcode/front/document.send.php delete mode 100644 barcode/front/send.php delete mode 100644 barcode/hook.php delete mode 100644 barcode/inc/barcode.class.php delete mode 100644 barcode/inc/config.class.php delete mode 100644 barcode/inc/config_type.class.php delete mode 100644 barcode/inc/profile.class.php delete mode 100644 barcode/inc/qrcode.class.php delete mode 100644 barcode/locales/barcode.pot delete mode 100644 barcode/locales/ca_ES.mo delete mode 100644 barcode/locales/ca_ES.po delete mode 100644 barcode/locales/cs_CZ.mo delete mode 100644 barcode/locales/cs_CZ.po delete mode 100644 barcode/locales/de_DE.mo delete mode 100644 barcode/locales/de_DE.po delete mode 100644 barcode/locales/en_GB.mo delete mode 100644 barcode/locales/en_GB.po delete mode 100644 barcode/locales/en_US.mo delete mode 100644 barcode/locales/en_US.po delete mode 100644 barcode/locales/es_419.mo delete mode 100644 barcode/locales/es_419.po delete mode 100644 barcode/locales/es_AR.mo delete mode 100644 barcode/locales/es_AR.po delete mode 100644 barcode/locales/es_ES.mo delete mode 100644 barcode/locales/es_ES.po delete mode 100644 barcode/locales/es_GT.mo delete mode 100644 barcode/locales/es_GT.po delete mode 100644 barcode/locales/fi_FI.mo delete mode 100644 barcode/locales/fi_FI.po delete mode 100644 barcode/locales/fr_FR.mo delete mode 100644 barcode/locales/fr_FR.po delete mode 100644 barcode/locales/hr_HR.mo delete mode 100644 barcode/locales/hr_HR.po delete mode 100644 barcode/locales/id_ID.mo delete mode 100644 barcode/locales/id_ID.po delete mode 100644 barcode/locales/it_IT.mo delete mode 100644 barcode/locales/it_IT.po delete mode 100644 barcode/locales/ja_JP.mo delete mode 100644 barcode/locales/ja_JP.po delete mode 100644 barcode/locales/ko_KR.mo delete mode 100644 barcode/locales/ko_KR.po delete mode 100644 barcode/locales/pl_PL.mo delete mode 100644 barcode/locales/pl_PL.po delete mode 100644 barcode/locales/pt_BR.mo delete mode 100644 barcode/locales/pt_BR.po delete mode 100644 barcode/locales/pt_PT.mo delete mode 100644 barcode/locales/pt_PT.po delete mode 100644 barcode/locales/ru_RU.mo delete mode 100644 barcode/locales/ru_RU.po delete mode 100644 barcode/locales/sl_SI.mo delete mode 100644 barcode/locales/sl_SI.po delete mode 100644 barcode/locales/sv_SE.mo delete mode 100644 barcode/locales/sv_SE.po delete mode 100644 barcode/locales/tr_TR.mo delete mode 100644 barcode/locales/tr_TR.po delete mode 100644 barcode/locales/zh_CN.mo delete mode 100644 barcode/locales/zh_CN.po delete mode 100644 barcode/patch/fix-pear-image-barcode.patch delete mode 100644 barcode/setup.php delete mode 100644 barcode/tools/HEADER delete mode 100644 barcode/tools/extract_template.sh delete mode 100644 barcode/tools/update_mo.pl delete mode 100644 barcode/tools/update_po.pl diff --git a/barcode/AUTHORS.txt b/barcode/AUTHORS.txt deleted file mode 100644 index 1b06206..0000000 --- a/barcode/AUTHORS.txt +++ /dev/null @@ -1,14 +0,0 @@ - -********************************************************************** - -***************************Main dev team****************************** - - -- Original code by Jean Marc GRISARD - -- Vincent MAZZONI (v.mazzoni at siprossii.com) : version 2.0 for GLPI 0.78 - -- David Durieux (d.durieux@siprossii.com) : version 0.84+1.0 for GLPI 0.84 - - -********************************************************************** diff --git a/barcode/LICENSE b/barcode/LICENSE deleted file mode 100644 index dba13ed..0000000 --- a/barcode/LICENSE +++ /dev/null @@ -1,661 +0,0 @@ - GNU AFFERO GENERAL PUBLIC LICENSE - Version 3, 19 November 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU Affero General Public License is a free, copyleft license for -software and other kinds of works, specifically designed to ensure -cooperation with the community in the case of network server software. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -our General Public Licenses are intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. - - 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 -them 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. - - Developers that use our General Public Licenses protect your rights -with two steps: (1) assert copyright on the software, and (2) offer -you this License which gives you legal permission to copy, distribute -and/or modify the software. - - A secondary benefit of defending all users' freedom is that -improvements made in alternate versions of the program, if they -receive widespread use, become available for other developers to -incorporate. Many developers of free software are heartened and -encouraged by the resulting cooperation. However, in the case of -software used on network servers, this result may fail to come about. -The GNU General Public License permits making a modified version and -letting the public access it on a server without ever releasing its -source code to the public. - - The GNU Affero General Public License is designed specifically to -ensure that, in such cases, the modified source code becomes available -to the community. It requires the operator of a network server to -provide the source code of the modified version running there to the -users of that server. Therefore, public use of a modified version, on -a publicly accessible server, gives the public access to the source -code of the modified version. - - An older license, called the Affero General Public License and -published by Affero, was designed to accomplish similar goals. This is -a different license, not a version of the Affero GPL, but Affero has -released a new version of the Affero GPL which permits relicensing under -this license. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU Affero General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey 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; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If 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 convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Remote Network Interaction; Use with the GNU General Public License. - - Notwithstanding any other provision of this License, if you modify the -Program, your modified version must prominently offer all users -interacting with it remotely through a computer network (if your version -supports such interaction) an opportunity to receive the Corresponding -Source of your version by providing access to the Corresponding Source -from a network server at no charge, through some standard or customary -means of facilitating copying of software. This Corresponding Source -shall include the Corresponding Source for any work covered by version 3 -of the GNU General Public License that is incorporated pursuant to the -following paragraph. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the work with which it is combined will remain governed by version -3 of the GNU General Public License. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU Affero 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 that a certain numbered version of the GNU Affero General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU Affero General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU Affero General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - 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. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -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. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - 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 -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If your software can interact with users remotely through a computer -network, you should also make sure that it provides a way for users to -get its source. For example, if your program is a web application, its -interface could display a "Source" link that leads users to an archive -of the code. There are many ways you could offer source, and different -solutions will be better for different programs; see section 13 for the -specific requirements. - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU AGPL, see -. diff --git a/barcode/README.md b/barcode/README.md deleted file mode 100644 index 3bb5c33..0000000 --- a/barcode/README.md +++ /dev/null @@ -1,110 +0,0 @@ -# Barcode Plugin for GLPI 11 - -> **Migration to GLPI 11.x** by [Dawing S.A.S.](https://dawing.com.co) — original plugin by [David DURIEUX / pluginsGLPI](https://github.com/pluginsGLPI/barcode) - -## What this plugin does - -| Feature | Description | -|---|---| -| **Linear barcodes** | Generates Code39, Code128, EAN13, INT25, Postnet, UPC-A from the asset inventory number (`otherserial`) | -| **QR codes** | Generates QR codes with configurable content: serial number, inventory number, ID, UUID, name, URL, date | -| **PDF export** | Automatic grid layout, multiple codes per page | -| **Massive action** | Available from any GLPI asset list: "Print barcodes" and "Print QRcodes" | -| **Per-type config** | Margins, page size, orientation, max code dimensions, text size | -| **Company logo** | Upload a PNG logo that appears above each code in the PDF | - -## Requirements - -| Component | Minimum version | -|---|---| -| GLPI | 11.0.0 | -| PHP | 8.1 (tested on 8.4) | -| PHP extensions | `gd`, `mbstring`, `xml`, `curl`, `zip` | -| Composer | 2.x | - -## Installation - -```bash -# 1. Place plugin in GLPI plugins directory -cp -r barcode/ /var/www/glpi/plugins/ - -# 2. Install dependencies -cd /var/www/glpi/plugins/barcode -composer install --no-dev --optimize-autoloader - -# 3. Set permissions (Rocky Linux / CentOS / AlmaLinux) -chown -R apache:apache /var/www/glpi/plugins/barcode -mkdir -p /var/www/glpi/files/_plugins/barcode -chown -R apache:apache /var/www/glpi/files/_plugins/barcode - -# 4. SELinux (if enforcing) -semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/plugins/barcode(/.*)?" -semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/files/_plugins/barcode(/.*)?" -restorecon -Rv /var/www/glpi/plugins/barcode -restorecon -Rv /var/www/glpi/files/_plugins/barcode -``` - -Then go to **Setup → Plugins → Barcode → Install → Enable** - -## Changes from v2.7.1 (GLPI 10) to v3.0.0 (GLPI 11) - -| File | Issue | Fix | -|---|---|---| -| `setup.php` | Version bound `10.0.99` blocked install on GLPI 11 | Updated to `11.0.0–11.0.99` | -| `setup.php` | `csrf_compliant` hook removed in GLPI 11 | Removed | -| `setup.php` | `Plugin::getWebDir()` deprecated in GLPI 11 | Replaced with direct paths `/plugins/barcode/...` | -| `hook.php` | `$DB->query() or die()` forbidden in GLPI 11 | Replaced with `$DB->doQueryOrDie()` | -| `hook.php` | `PRIMARY KEY (ID)` uppercase bug (MariaDB strict) | Fixed to lowercase `id` | -| `inc/qrcode.class.php` | Special chars (tildes, ñ) broken in QR content | Removed `__()` from QR embedded text | -| `inc/qrcode.class.php` | Massive action UI column purpose was unclear | Added descriptive labels explaining each column | -| `inc/config.class.php` | `array_keys()[0]` deprecated pattern | Updated to `array_key_first()` | -| `inc/config.class.php` | Raw `` | Replaced with `Html::submit()` | -| `front/*.php` | `include('../../../inc/includes.php')` broken path | Fixed for GLPI 11 router | -| `front/send.php` | No filename validation | Added strict PDF-only validation | -| `front/document.send.php` | No MIME validation on logo | Added `finfo` MIME type check | -| `front/checkItemByInv.php` | No itemtype class validation | Added `is_subclass_of(CommonDBTM)` check | -| `composer.json` | PHP platform forced to `7.4` | Updated to `>=8.1` | - -## Tested environment - -- **GLPI** 11.0.6 -- **Rocky Linux** 10 -- **PHP** 8.4.19 (Remi repository) -- **MariaDB** (centralized server) -- **Apache** 2.4.63 - -## Usage - -### From asset lists (Massive action) - -1. Go to any asset list (Computers, Monitors, Printers, etc.) -2. Select one or more assets -3. In the massive action bar: **Barcode – Print barcodes** or **Barcode – Print QRcodes** -4. Configure options — left column = include in QR data, right column = show as visible label under the code -5. Click **Create** → download link for the generated PDF appears - -### QR code content - -The QR code embeds plain ASCII text (no special characters) to ensure maximum scanner compatibility: - -``` -Serial number = ABC123 -Inventory number = IM00001 -ID = 42 -Name = LAPTOP-001 -URL = https://glpi.example.com/plugins/barcode/front/checkItemByInv.php?inventoryNumber=IM00001&itemtype=Computer -QRcode date = 2026-03-30 -``` - -### Company logo - -Go to **Setup → Plugins → Barcode config** and upload a PNG logo (recommended: 300×60px, transparent background). - -## License - -[AGPL v3+](LICENSE) - -## Credits - -- Original plugin: [David DURIEUX](mailto:d.durieux@siprossii.com) and contributors -- GLPI 11 migration: [Cristian David Baquero / Dawing S.A.S.](https://dawing.com.co) diff --git a/barcode/README_MIGRACION.md b/barcode/README_MIGRACION.md deleted file mode 100644 index 16fe1fd..0000000 --- a/barcode/README_MIGRACION.md +++ /dev/null @@ -1,183 +0,0 @@ -# Plugin Barcode para GLPI 11 -## Migrado a GLPI 11.x por Dawing S.A.S. - ---- - -## ¿Qué hace este plugin? - -| Función | Descripción | -|---|---| -| **Barcodes lineales** | Genera Code39, Code128, EAN13, INT25, Postnet, UPC-A a partir del número de inventario (`otherserial`) del activo | -| **QR codes** | Genera QR codes con contenido configurable: número de serie, inventario, ID, UUID, nombre, URL y fecha | -| **Exportación PDF** | Grilla de códigos exportada a PDF con layout automático (múltiples por página) | -| **Acción masiva** | Disponible desde cualquier listado de activos GLPI: "Print barcodes" y "Print QRcodes" | -| **Configuración por tipo** | Márgenes, tamaño de página, orientación, dimensiones máximas de código, tamaño de texto | -| **Logo corporativo** | Permite subir un logo PNG que aparece sobre cada código en el PDF | - ---- - -## Cambios realizados para compatibilidad con GLPI 11 - -### setup.php -- Versión mínima/máxima actualizada a `11.0.0` / `11.0.99` -- Eliminado `$PLUGIN_HOOKS['csrf_compliant']` (deprecado y eliminado en GLPI 11) -- Eliminado `Plugin::getWebDir()` (deprecado en GLPI 11) → reemplazado por rutas absolutas `/plugins/barcode/...` - -### hook.php -- `$DB->query(...) or die(...)` → reemplazado por `$DB->doQueryOrDie(...)` (API GLPI 11) -- Bug heredado: `PRIMARY KEY (ID)` (mayúscula) → corregido a `PRIMARY KEY (id)` (minúscula, compatible con MariaDB estricto) -- `$DB->request('tabla', $cond)` → actualizado a sintaxis con array estructurado - -### inc/barcode.class.php / inc/qrcode.class.php -- `Plugin::getWebDir()` → rutas `/plugins/barcode/front/...` -- `count()` sobre valores que pueden ser null → protegido con `is_array()` -- `key($ma->items)` → comparación mejorada con `is_a()` para detectar tipos ITIL - -### inc/config.class.php -- `array_keys($obj->find(...))[0]` → `array_key_first($obj->find(...))` (PHP 7.3+, disponible en PHP 8.x) - -### front/*.php -- Validación de seguridad mejorada en `send.php` (solo permite archivos PDF propios del plugin) -- `document.send.php`: validación de MIME type y restricción solo a `barcode/logo.png` -- `checkItemByInv.php`: validación de que el itemtype es subclase de `CommonDBTM` -- Confirmaciones con `Session::checkRight()` en todos los controladores - -### composer.json -- `platform.php` actualizado de `7.4.0` a `8.1.0` -- Añadido autoload `classmap` para el directorio `inc/` - ---- - -## Requisitos del servidor - -| Componente | Versión mínima | -|---|---| -| GLPI | 11.0.0 | -| PHP | 8.1 | -| Extensiones PHP | `gd`, `mbstring`, `xml`, `curl` | -| Composer | 2.x | - ---- - -## Instalación - -### Paso 1 – Copiar el plugin - -```bash -# Desde el directorio raíz de GLPI -cp -r /ruta/a/barcode /var/www/glpi/plugins/barcode -# O usando marketplace -cp -r /ruta/a/barcode /var/www/glpi/marketplace/barcode -``` - -### Paso 2 – Instalar dependencias con Composer - -```bash -cd /var/www/glpi/plugins/barcode -composer install --no-dev --optimize-autoloader -``` - -> **Nota:** Si el servidor no tiene acceso a internet, ejecuta Composer en tu equipo local -> y sube la carpeta `vendor/` completa al servidor. - -### Paso 3 – Verificar permisos - -```bash -# El usuario del servidor web (apache/nginx/www-data) debe poder escribir en: -chown -R www-data:www-data /var/www/glpi/plugins/barcode -chmod -R 755 /var/www/glpi/plugins/barcode - -# Y también en el directorio de documentos del plugin: -mkdir -p /var/www/glpi/files/_plugins/barcode -chown -R www-data:www-data /var/www/glpi/files/_plugins/barcode -chmod -R 750 /var/www/glpi/files/_plugins/barcode -``` - -### Paso 4 – Instalar en GLPI - -1. Entrar a GLPI como super-administrador -2. Ir a **Configuración → Plugins** (o **Setup → Plugins**) -3. Localizar **Barcode** en la lista -4. Hacer clic en **Instalar** (ícono de engranaje) -5. Hacer clic en **Activar** - -### Paso 5 – Configurar derechos - -1. Ir a **Administración → Perfiles** -2. Editar los perfiles que necesiten usar el plugin -3. En la pestaña **Barcode** configurar: - - `Manage configuration` (UPDATE) → para administradores - - `Generation of barcode` (CREATE) → para técnicos - ---- - -## Uso - -### Generación manual - -Ir a **Herramientas → Barcode** y escribir el código a generar. - -### Generación desde activos (acción masiva) - -1. Ir a cualquier listado de activos (Equipos, Monitores, Impresoras, etc.) -2. Seleccionar uno o más activos con los checkboxes -3. En la barra de acciones masivas: **Barcode – Print barcodes** o **Barcode – Print QRcodes** -4. Configurar opciones (tipo, tamaño, orientación, campos a incluir en QR) -5. Hacer clic en **Create** → aparecerá un enlace para descargar el PDF - -### Logo corporativo - -1. Ir a **Configuración → Plugins → Barcode** -2. En la sección **Company logo**, subir un archivo PNG -3. El logo aparecerá sobre cada código en los PDFs generados - ---- - -## Estructura de archivos - -``` -barcode/ -├── setup.php ← Bootstrap e inicialización de hooks -├── hook.php ← Funciones de instalación/desinstalación/acciones masivas -├── barcode.xml ← Metadatos del plugin -├── composer.json ← Dependencias PHP -├── inc/ -│ ├── barcode.class.php ← Clase principal: generación de códigos lineales + PDF -│ ├── qrcode.class.php ← Clase QR code -│ ├── config.class.php ← Clase de configuración general -│ ├── config_type.class.php ← Clase de configuración por tipo -│ └── profile.class.php ← Clase de gestión de perfiles/derechos -├── front/ -│ ├── barcode.php ← Listado/formulario de generación manual -│ ├── barcode.form.php ← Procesador POST de generación manual -│ ├── config.php ← Página de configuración -│ ├── config.form.php ← Procesador POST de configuración general -│ ├── config_type.form.php ← Procesador POST de configuración por tipo -│ ├── send.php ← Descarga del PDF generado -│ ├── document.send.php ← Sirve el logo de la empresa -│ └── checkItemByInv.php ← Búsqueda de activo por número de inventario -├── locales/ ← Archivos de traducción (.po/.mo) -├── patch/ -│ └── fix-pear-image-barcode.patch ← Patch de compatibilidad PHP 8.x para PEAR Image_Barcode -└── vendor/ ← Dependencias Composer (generadas por composer install) -``` - ---- - -## Notas de compatibilidad - -- Esta versión (3.0.0) es **exclusivamente compatible con GLPI 11.0.x** -- Para GLPI 10.0.x usar la versión 2.7.1 del plugin original -- Las tablas de base de datos son compatibles hacia atrás (mismo esquema) -- Los archivos PDF e imágenes generados previamente en `files/_plugins/barcode/` siguen siendo válidos - ---- - -## Soporte - -Para soporte técnico relacionado con esta migración: -- **Dawing S.A.S.** – https://dawing.com.co -- soporte@dawing.com.co - -Para el plugin original: -- https://github.com/pluginsGLPI/barcode diff --git a/barcode/SECURITY.md b/barcode/SECURITY.md deleted file mode 100644 index 9c8888c..0000000 --- a/barcode/SECURITY.md +++ /dev/null @@ -1,24 +0,0 @@ -# Security Policy - -**⚠️ Please never use standard issues to report security problems; vulnerabilities are published once a fix release is available. ⚠️** - -## Reporting a Vulnerability - -If you found a security issue, please contact us by: - -- [our huntr page](https://huntr.dev/repos/pluginsGLPI/barcode/) -- a mail to \[glpi-security AT ow2.org\] - -You should provide us all details about the issue and the way to reproduce it. -You may also provide a script that can be used to check the issue exists. - -Once the report will be handled, and if the issue is not yet fixed (or in progress) -we'll add it to the GitHub security tab, and add you as observer. Meanwhile, -you will reserve a CVE for the issue. - -Thank you for improving the security of GLPI and its plugins. - -## Supported Versions - -We follow the same version support policy as GLPI. -This means that we provide security patches to versions of the plugin that target a version of GLPI itself maintained from a security point of view. diff --git a/barcode/barcode.xml b/barcode/barcode.xml deleted file mode 100644 index 32f4808..0000000 --- a/barcode/barcode.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - Barcode - barcode - stable - https://github.com/pluginsGLPI/barcode/blob/master/barscode.png?raw=true - - - - - - - - - - - - - https://github.com/pluginsGLPI/barcode - https://github.com/pluginsGLPI/barcode/releases - - David DURIEUX - Dawing S.A.S. (migración GLPI 11) - - - - 3.0.0 - ~11.0.0 - - - 2.7.1 - ~10.0.0 - - - - cs_CZ - de_DE - en_GB - es_AR - es_ES - fr_FR - pt_BR - sl_SI - tr_TR - - - - - export - barcode - QRcode - PDF - - - exportar - código de barras - QRcode - PDF - - - diff --git a/barcode/barscode.png b/barcode/barscode.png deleted file mode 100644 index e44ea6ead764a9caed91bd66a4be182d9c017c87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6045 zcmai&g;NyH+rSU0L%Lh)kUA-mkcK0UE>R@qXb_GRP{IRgknS*Om5!s~h$D`W?iP>( zX^@iNegA-W-r0FJo|)Z!o}FiR_W48`=xLDOXSojm0LY=55F=b`_n!cXa5a2A%>>ur zc^he{04he@`~MRxJH81-Ds?*p}Dim zt3!crM)PYOx8AP&%e-vAbbst9=^I&reft+P{Boj$YY{i)5hkhAMU>2%$NSp z?p^o8K?*i$I6OP6y&qFq@wCz%>kbajr02duVKBNHGj*KA6m0&op+Vi<-R2tV>S}aq zXA)Ll)FCgdtk(Tnf>=5u9UUAV{IE#GC#JB#TU~&`Hs12_@lmT$XJ)xRYOiUK;0 z=J%pdml}X~ZVnDxYQ8FLFS_znRaM_gxwAcs#p8msF=g~aL?3_QNA<;j-SII!_j{Vh z4md@GS2=+bU=lg_WPr1m7VGo_+qH9UUTkO^2Wj)$Kb<%eU|dC~?o4XbEb&B9 zz+EKOJx?~)3!6gcmvW$lYvJ#yG?2+RO1oCjHkFTl!L;?sMY#$^MkSW(jR!b6Igx(%SG2gexC(}*prST4 zH5HY;mMBcM5q+tuid>6e#Vxun-M6;~9uWa^j)&1MgWMMU=o{STjGEw{Y#T>t4vmtD z-bam#WDb41yMkL=39x_w=9#_u54y0NPRt7niyqwM@F*pn+1ATvvrpPc0f&>ukyVRU zl2`bmj<>VzL9Dp#J2BEB|KvvUWJ?%rHi~sKb29+|u!zV8ChKw3#zWzb8*xBq*+hxh z8#fA13$Rvl@!zy8W{=M`^`~f-48vDk?~vTw7=>Gj_Tvoeu9lS`KEH$I_~l(eoYkv2 zD_0Mn=21j3J+}(rb#Ji$u`Py1h8*I{9rdIzIZ381XLE<@m4vk@oO10gwJ_@X z>U|=opjdCYK404$NI~v5m~$0DT9*1$DdoezYJ6NbE@)=lpxv->$bA~bauIa)Eoy@a zn!NhD<6N?JYpPP2PR)PyJu&=rR!o9L(zep)>E9g<1;p!xhWAm2lb==ncRojUVsLXh zuBIE;M`RDeQ)#@>+lRLYckB=O_>QvlLs*QoZf>>}(K8+Y$m?D{3L5o$%X|^CEj!(= zMZjN#f4TKXJCH;eY^BuLQtpHw1>8RuH#L3A34P(*h{tt|C2U?2PS3~?6|KUfQUY7&Ow7|l`pXc1Tp@BO-vRZ>Wq z^iGIDosY9~nUC;HH7B!0Q=>gfwA)ZfDK?Aw-W)f7RMjW$0w>d2l*PQ+**kU5 zyS>XfRL%w52Kl#lPbmDc+C7^WFh*_!RUAK!nc|cf9wbSLE_%KFGWZEOi-*>B@=OI6 z_l8sc`&SP`sx#|{tBJloOl0o)Fj@LuK$Gqg!n9b07+|G!&qeE;t03|H!lCcfdBYiJyNi6zIB^~i~T!utbgnI5I&3ZKOflQ=05$Thgy@CLZ z3emk(k@nXMD1vZ)Y|3s%i((8YlXQSjpg!@Ng5!*M6n7g!r4&|Svo%jRa**O`QXuxj zS((4kq4}$cTz@K9G|JA;qASMJcbZR_0duv~s+h6xq^Rg}#m?o2CuP00eyOMK=K-Qq z7ExV7eyr^Ls7a6`wyEKly?0uxnBf4^hM*Hr)pVqn{cN~!q>8oA(^m)DK=oa0Ay>k; zQoNrAlhp;u^?yrlw3?9t?%Agl7V0&xvY6+c*?~n*eG&#(@ z9p?3JDkh{3e699knC!Rha3MexPs=E}7Iqcr*O|r+ZuDfbH^{0Lv>gX)yN2Pzz&5Ut zMBapzWbRdjO%GeEn#OD(bTVi|aJnOGV9e=0s;VCvweyYZGDdWeQyWSi&=*e@jgaZI z2#l6STTc^BapSuf(7zngq9xa~J9Cp%>fWRL)gfeFd=8y{Y&5H6oI)lYSMx!j&&?Gm zdt##;0*EjZRS`PA&q>rs9Y$z%s^AbZU_9> zf1oVm*2U>ov4nY;i9pv`ilXG_iIRQl)Q=KCryF) zDS$}xs`h_k$4KTb`hVB1(>TzD#T|w**TaJZt!g9SGW&$r(n4f`j`I|2Hm>|Gx#ZKu zh@v_vx>lcj=T}WbH*8vN%)X9f#TV?&AzAxg8|D!Dx(pFzc=hUL!e%yDTP@%j-0-Ik zG`Ma77zyXlm)|tR2mBhS6-RoOH9IrL0GkTDsw8@l%Poz}ir%ZnkEKS9tv`}e{~{^p zMrxQE3^#BQ_SSvoIpClBX-J>HpyX@YpSt`kJh_Wf&+)tfUGCZlQ;QG;%1W7p3K( zLatI^o&m`%CbxP$pr2i;-i(E*5T$TydTj$t75%(W&-mVRcLn!+`8trPA{~EXZ2rB! zEiI$p;L0QO;sq|QM8KK%pRhkM1bxt?K_m29^loecfRzr~$Q^?@OGR%&1RT>_gsk zBch>P9j(e+9%CD}>$Q1y?vcI}tb`}h2J)S6e&|`Ez0Hr`iv)S1JehptmFe;-ud-Tk(|hM_;(pn6=$exzzzm6*vt+dMM79qY zKT8Ra$(ezsg#aT~*mDmy%2Jr0j|bH-4({{N@G{EBMa=SyA)z?z2hyjT5&hQuFEcdH7BZSQ=({ zg3#`*L6UWo|FZ-+^rOsA0$;{*(A1E=H%LgJ$e|^X{qa4Pi~mBZw9|J4i;5ya#DY^dc2~J;4<2D52^sAD%&5vd#zct8aa`(+-?)iW-{ zT7S&tdaRneNKEXtYr2_6roTM0lxUVg-+y9v@1ZxBQ)&uzqgN7s(thljDia{h;0d%m zaP;UM?=Q33^}y+@I=0-bVV z47XD}^X(=CwpK0FD|;e<6~bP?h~8nk3h3h^f^WwmQog$eW98zUqYPp`Y(Gjr2x)x; zqsJtcjS%;k`^ve!L_l83^acoBkxlX7v7fsk z+0c(U(Q>y;@E5PFa<^R4!|)UyKEKroI*BRtI~}~g65oD3BdP!^_jYBcJU8$)3K!Oy zVhAi?E@o(Q*d>Gw#xVYa(Q2ZW1^TpW)B+i9g{&UlR%d!I}#&bt!E-wCsvdxN80o( z9A9=%IhdT`{go2KT%uaAB|~){oiXgJ_0DFK&9!p>(T}IEcsgtt%u@`T4;WNg>BB3K zb^%e~h361cBzM7|&XnpEa^aV0se6!b(d;cOp|<#l#hU<6OkIdN_2(Sp4yUhHzyB;$ zmTs55orQzM||6EBRQvi zMW-2_^)K;CJZwSa_Z8dwxB}fbdDTp3U7rK0NWv8}=ALs-n=i1I57m$*AIdxN9PyAv zB|@B-4j4?;z6`Z**|e|1L`rFs8}H>?Fj;>k8Y*h*;#SBEj=K8;q$<@XZLKnXQhe51 zBe-tfd`~rMaM$BS^n?3-lVHu?*Z%j@9~%Ca723_B`!ryGuf&??gw_d9WO+CG`K=x{ zdl?z?$`fkIK;}4RXJ(q&1*RcwHQUtkrw;oj3_omJ#e8ZSJ-c2-mmoM=#00N(`v+D2 zI`Br{jVPq(x(rHC(mO}Eq|?Ve@5*r_5S6bpjAlqQ)G?^%R{_>7ygryu8@Z4BU311) z;+2VY^P5I?{rzNXJx0HGJH7j0com{N#55a8anFS&Sl zHG?&{8XKd+B{@VyM0MsaK}wyOvB4}x5oSkMub&3!41n+P!*~Rt^``z{SA14Uy6h}h zTW_0ATb~$H3JQwdQM&A2*RZg#bi0 zwsjDK?Hu}EXj6RtvGQ1TA)1yC{_h6y=OpWKM`txmqq@1deAKyd0hdLa-O7~k$H4zA z%E+ByCa$pFknj&52-y^aEe?!H-yCm3TMtpB%l3Vnby;eu{R)cg;ZfPLDqy>4o(r8eBC2Y*#N4>Oshcnh~ly6$Gmj38vYjhVr z@!`^SN0@tKEY|O!4;_5H;lFmdeH33ALaqW~VrA_<2wqR||A$jiQr^hpj$2(rIYD=^bn!ehGqclC@gh<)E?6y|$Vk99MjC3Y zDG=XOJ)k03+jLs@#BmQq&%R!enx}Y0(R&tj; zw7Ae&`g>e(M_35Dnb8kMWLUkU_6R)5Il8_GzQ6CsszJfgb@Mv_gTbtBaNM!8$x22t z>gR?64!c8c8GTwTA>7B?+)%IAgGN2h$??Ww;&0sSy`jmioG><9{GM>D(L4B8P#Jmt zOJIEw^h<2U1V~u~`g16x`0@$er>t^bD8ee)#DM}t-G}CbkG5T`pM>0KB!a427yE`p zMqz=0j1BH>WIR0G(l>jx{udtY#KR7>`ZuQ~fY8?qjj+*tY!_y><4!CtA;H$x_TG$z zH#sgy&-Yt6jE#*mGjn?$kIKbnY+LtD|1hr)zlftWi{TfnD?w%U_g)n7i_sqp)WJ>&cWZ1LMiX_eqR^gVlS`N6$03DlHMR4G<#=EC;LwL3vg*lnBsPiD!BDd zY|#t*Ix~Oy18FSdVXdlSx3RuL^uo#|E0YWP+Tx`*E+|-~+)-LB@s|@PIJXRS;`CSd z=4yBRo=SWD6|F$74{~oX+dDTTB~g>rMS4oq-)exB|a>k_@7}zCnx?}za5Wz+0jYe8i$8rl(y(o zJ-4|U=980>qj7DKwQ7w!{29weR!^S3@pYPiw=2O>L&629(^H8D!GD$IE*3rG$Ufp+ zdW<7gI0&Qhk*(K0!?J=4suhicQAb&$?-;^VRW$>%I9t!_E4vx*PDj6gbk%}7MMX4n zVwBiOC2~iRXnVX?t8r4j)x$&4iiI{-Ncf-K@`xsOS-+Q;5qcw+cs5x3j0@j5I_Qg( z6G$BH%1$i{vcxmZ{8^6YkUs`ea0D|fG+M`3A9?Pz+O8!5AQvmeJ?>fvYS?8vKK_SuG87eHLdzmkw19EP*1b)t(z8&o%48g=zS9?mZkmo9f zSiQadVJdX3kRDZ4RRwTB&CdEW1R)_oqguQKAL}A|I+afLJ^Z^_AAIv7Gv)%MgJ=Xo zoI5%dCDVfn8XM;)#>?70Gf!#a65MM#WU{s2xH`@1B|uTL#bURO%^UzSa)*Y_#W&6j z1WuAH_a(-)`fazGq!T!tDSF<@YQNOQ-m$NZ|M)=8.1", - "cweagans/composer-patches": "^1.7", - "deltalab/phpqrcode": "^1.1", - "pear/image_barcode": "^1.1", - "pear/pear": "^1.9", - "rospdf/pdf-php": "^0.12" - }, - "require-dev": { - "glpi-project/tools": "^0.5" - }, - "config": { - "optimize-autoloader": true, - "sort-packages": true, - "allow-plugins": { - "cweagans/composer-patches": true - } - }, - "repositories": [ - { - "type": "package", - "package": { - "name": "deltalab/phpqrcode", - "version": "1.1.4", - "dist": { - "url": "https://sourceforge.net/projects/phpqrcode/files/releases/phpqrcode-2010100721_1.1.4.zip/download", - "type": "zip", - "reference": "1.1.4" - }, - "autoload": { - "classmap": [ - "phpqrcode.php" - ] - } - } - }, - { - "type": "package", - "package": { - "name": "pear/image_barcode", - "version": "1.1.2", - "dist": { - "url": "https://github.com/pear/Image_Barcode/archive/1.1.2.zip", - "type": "zip", - "reference": "1.1.2" - }, - "autoload": { - "psr-0": { - "Image": "./" - } - }, - "include-path": [ - "./" - ] - } - } - ], - "extra": { - "patches": { - "pear/image_barcode": { - "Fix PHP 8.x compatibility": "./patch/fix-pear-image-barcode.patch" - } - } - }, - "autoload": { - "classmap": [ - "inc/" - ] - } -} diff --git a/barcode/front/barcode.form.php b/barcode/front/barcode.form.php deleted file mode 100644 index 3676116..0000000 --- a/barcode/front/barcode.form.php +++ /dev/null @@ -1,33 +0,0 @@ -printPDF($_POST); - $filePath = explode('/', $file); - $filename = end($filePath); - - $msg = "" - . __('Generated file', 'barcode') . ""; - - Session::addMessageAfterRedirect($msg); -} - -Html::back(); diff --git a/barcode/front/barcode.php b/barcode/front/barcode.php deleted file mode 100644 index 40271c1..0000000 --- a/barcode/front/barcode.php +++ /dev/null @@ -1,81 +0,0 @@ -"; -echo "

" . __('Barcode generation', 'barcode') . "

"; - -echo ""; - -echo ""; -echo ""; -echo ""; -echo ""; - -echo ""; -echo ""; -echo ""; -echo ""; - -echo ""; -echo ""; -echo ""; -echo ""; - -echo ""; -echo ""; -echo ""; -echo ""; -echo ""; - -echo ""; -echo ""; -echo ""; -echo ""; - -echo ""; -echo ""; -echo ""; - -echo "
" . __('Manual generation', 'barcode') . "
" . __('Code', 'barcode') . ""; -echo ""; -echo "" . __('Type', 'barcode') . ""; -$config = $pbConfig->getConfigType(); -$pbConfig->showTypeSelect($config['type']); -echo "
" . __('Page size', 'barcode') . ""; -$pbBarcode->showSizeSelect($config['size']); -echo "" . __('Orientation', 'barcode') . ""; -$pbBarcode->showOrientationSelect($config['orientation']); -echo "
" . __('Number of copies', 'barcode') . "" . __('Not use first xx barcodes', 'barcode') . ""; -Dropdown::showNumber("eliminate", ['width' => '100']); -echo "
" . __('Display border', 'barcode') . ""; -Dropdown::showYesNo("border", 1, -1, ['width' => '100']); -echo "" . __('Display labels', 'barcode') . ""; -Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); -echo "
"; -echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); -echo "
"; -Html::closeForm(); -echo ""; - -Html::footer(); diff --git a/barcode/front/checkItemByInv.php b/barcode/front/checkItemByInv.php deleted file mode 100644 index 1dbee93..0000000 --- a/barcode/front/checkItemByInv.php +++ /dev/null @@ -1,37 +0,0 @@ -getFromDBByCrit(['otherserial' => $inventoryNumber])) { - Html::redirect($item->getFormURLWithID($item->getID())); -} else { - Html::displayErrorAndDie( - sprintf(__('No item found with inventory number: %s', 'barcode'), htmlspecialchars($inventoryNumber)), - true - ); -} diff --git a/barcode/front/config.form.php b/barcode/front/config.form.php deleted file mode 100644 index 0bcd80d..0000000 --- a/barcode/front/config.form.php +++ /dev/null @@ -1,78 +0,0 @@ -update(['id' => 1, 'type' => $_POST['type']]); -} - -Html::back(); diff --git a/barcode/front/config.php b/barcode/front/config.php deleted file mode 100644 index 6f91ae4..0000000 --- a/barcode/front/config.php +++ /dev/null @@ -1,24 +0,0 @@ - Plugins) -Plugin::load('barcode'); - -Html::header(__('Barcode', 'barcode'), $_SERVER['PHP_SELF'], "config", "plugins"); - -$pbConfig = new PluginBarcodeConfig(); -$pbConfig->showForm(''); - -Html::footer(); diff --git a/barcode/front/config_type.form.php b/barcode/front/config_type.form.php deleted file mode 100644 index 2b981c3..0000000 --- a/barcode/front/config_type.form.php +++ /dev/null @@ -1,50 +0,0 @@ -find(['type' => $_POST['type']]); - - $data = [ - 'type' => $_POST['type'], - 'size' => $_POST['size'] ?? 'A4', - 'orientation' => $_POST['orientation'] ?? 'Portrait', - 'marginTop' => (int)($_POST['marginTop'] ?? 30), - 'marginBottom' => (int)($_POST['marginBottom'] ?? 30), - 'marginLeft' => (int)($_POST['marginLeft'] ?? 30), - 'marginRight' => (int)($_POST['marginRight'] ?? 30), - 'marginHorizontal' => (int)($_POST['marginHorizontal'] ?? 25), - 'marginVertical' => (int)($_POST['marginVertical'] ?? 30), - 'maxCodeWidth' => (int)($_POST['maxCodeWidth'] ?? 110), - 'maxCodeHeight' => (int)($_POST['maxCodeHeight'] ?? 70), - 'txtSize' => (int)($_POST['txtSize'] ?? 8), - 'txtSpacing' => (int)($_POST['txtSpacing'] ?? 3), - ]; - - if (!empty($results)) { - $id = array_key_first($results); - $data['id'] = $id; - $pbcconf->update($data); - } else { - $pbcconf->add($data); - } - - Session::addMessageAfterRedirect(__('Configuration saved.', 'barcode')); -} - -Html::back(); diff --git a/barcode/front/document.send.php b/barcode/front/document.send.php deleted file mode 100644 index 32b084a..0000000 --- a/barcode/front/document.send.php +++ /dev/null @@ -1,52 +0,0 @@ - 0) { - echo fread($f, $fsize); -} -fclose($f); diff --git a/barcode/hook.php b/barcode/hook.php deleted file mode 100644 index 69d4019..0000000 --- a/barcode/hook.php +++ /dev/null @@ -1,199 +0,0 @@ -
' . __('Barcode', 'barcode') . " - " . __('Print barcodes', 'barcode'); - - $generate_qrcode_action = 'PluginBarcodeQRcode' . MassiveAction::CLASS_ACTION_SEPARATOR . 'Generate'; - $generate_qrcode_label = ' ' . __('Barcode', 'barcode') . " - " . __('Print QRcodes', 'barcode'); - - if (!is_a($itemtype, CommonDBTM::class, true)) { - return []; - } - - // QR code siempre disponible (contiene campo ID) - $actions = [ - $generate_qrcode_action => $generate_qrcode_label, - ]; - - if (is_a($itemtype, CommonITILObject::class, true)) { - // Para objetos ITIL, el barcode se genera con el ID del ticket - $actions[$generate_barcode_action] = $generate_barcode_label; - } - - /** @var CommonDBTM $item */ - $item = new $itemtype(); - $item->getEmpty(); - - if (array_key_exists('otherserial', $item->fields)) { - // Barcode basado en número de inventario (otherserial) - $actions[$generate_barcode_action] = $generate_barcode_label; - } - - return $actions; -} - - -/** - * Instalación del plugin - debe retornar true si fue exitoso - */ -function plugin_barcode_install() { - global $DB; - - $migration = new Migration(PLUGIN_BARCODE_VERSION); - - // Obtener charset y collation por defecto (API GLPI 11) - $default_charset = DBConnection::getDefaultCharset(); - $default_collation = DBConnection::getDefaultCollation(); - - // Crear directorio de documentos del plugin si no existe - if (!file_exists(GLPI_PLUGIN_DOC_DIR . "/barcode")) { - @mkdir(GLPI_PLUGIN_DOC_DIR . "/barcode", 0750, true); - } - - // Renombrar tabla legacy si existe - $migration->renameTable("glpi_plugin_barcode_config", "glpi_plugin_barcode_configs"); - - // Crear tabla de configuración general si no existe - if (!$DB->tableExists("glpi_plugin_barcode_configs")) { - $query = "CREATE TABLE `glpi_plugin_barcode_configs` ( - `id` int NOT NULL AUTO_INCREMENT, - `type` varchar(20) DEFAULT NULL, - PRIMARY KEY (`id`) - ) ENGINE=InnoDB - DEFAULT CHARSET={$default_charset} - COLLATE={$default_collation} - ROW_FORMAT=DYNAMIC;"; - $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs"); - - $DB->doQueryOrDie( - "INSERT INTO `glpi_plugin_barcode_configs` (`id`, `type`) VALUES (1, 'code128')", - "Error al poblar glpi_plugin_barcode_configs" - ); - } - - // Renombrar tabla de tipos legacy si existe - $migration->renameTable("glpi_plugin_barcode_config_type", "glpi_plugin_barcode_configs_types"); - - // Crear tabla de configuración por tipo si no existe - if (!$DB->tableExists("glpi_plugin_barcode_configs_types")) { - $query = "CREATE TABLE `glpi_plugin_barcode_configs_types` ( - `id` int NOT NULL AUTO_INCREMENT, - `type` varchar(20) DEFAULT NULL, - `size` varchar(20) DEFAULT NULL, - `orientation` varchar(9) DEFAULT NULL, - `marginTop` int DEFAULT NULL, - `marginBottom` int DEFAULT NULL, - `marginLeft` int DEFAULT NULL, - `marginRight` int DEFAULT NULL, - `marginHorizontal` int DEFAULT NULL, - `marginVertical` int DEFAULT NULL, - `maxCodeWidth` int DEFAULT NULL, - `maxCodeHeight` int DEFAULT NULL, - `txtSize` int DEFAULT NULL, - `txtSpacing` int DEFAULT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `type` (`type`) - ) ENGINE=InnoDB - DEFAULT CHARSET={$default_charset} - COLLATE={$default_collation} - ROW_FORMAT=DYNAMIC;"; - $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs_types"); - - $insert_query = "INSERT INTO `glpi_plugin_barcode_configs_types` - (`type`, `size`, `orientation`, - `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, - `marginHorizontal`, `marginVertical`, - `maxCodeWidth`, `maxCodeHeight`, - `txtSize`, `txtSpacing`) - VALUES - ('Code39', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 128, 50, 8, 3), - ('code128', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), - ('ean13', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), - ('int25', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), - ('postnet', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), - ('upca', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), - ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)"; - $DB->doQueryOrDie($insert_query, "Error al poblar glpi_plugin_barcode_configs_types"); - } - - // Agregar campos faltantes si la tabla ya existía sin ellos (migración de versión anterior) - if ($DB->tableExists("glpi_plugin_barcode_configs_types") - && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSize") - && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSpacing")) { - $migration->addField("glpi_plugin_barcode_configs_types", "txtSize", "integer"); - $migration->addField("glpi_plugin_barcode_configs_types", "txtSpacing", "integer"); - $migration->executeMigration(); - } - - // Insertar configuración de QRcode si no existe - if (!countElementsInTable("glpi_plugin_barcode_configs_types", ['type' => 'QRcode'])) { - $DB->doQueryOrDie( - "INSERT INTO `glpi_plugin_barcode_configs_types` - (`type`, `size`, `orientation`, - `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, - `marginHorizontal`, `marginVertical`, - `maxCodeWidth`, `maxCodeHeight`, `txtSize`, `txtSpacing`) - VALUES - ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)", - "Error al insertar configuración QRcode" - ); - } - - // Inicializar perfiles de derechos - include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; - include_once Plugin::getPhpDir('barcode') . '/inc/config.class.php'; - PluginBarcodeProfile::initProfile(); - - // Eliminar tabla de perfiles legacy si existe - if ($DB->tableExists("glpi_plugin_barcode_profiles")) { - $DB->doQueryOrDie( - "DROP TABLE `glpi_plugin_barcode_profiles`", - "Error al eliminar glpi_plugin_barcode_profiles" - ); - } - - return true; -} - - -/** - * Desinstalación del plugin - debe retornar true si fue exitoso - */ -function plugin_barcode_uninstall() { - global $DB; - - $tables = [ - 'glpi_plugin_barcode_configs', - 'glpi_plugin_barcode_configs_types', - 'glpi_plugin_barcode_profiles', - ]; - - foreach ($tables as $table) { - if ($DB->tableExists($table)) { - $DB->doQueryOrDie( - "DROP TABLE `{$table}`", - "Error al eliminar {$table}" - ); - } - } - - include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; - PluginBarcodeProfile::removeRights(); - - return true; -} diff --git a/barcode/inc/barcode.class.php b/barcode/inc/barcode.class.php deleted file mode 100644 index 5730d45..0000000 --- a/barcode/inc/barcode.class.php +++ /dev/null @@ -1,549 +0,0 @@ -docsPath = GLPI_PLUGIN_DOC_DIR . '/barcode/'; - } - - /** - * Retorna la lista de tipos de código disponibles - * - * @return array - */ - function getCodeTypes() { - return ['Code39', 'code128', 'ean13', 'int25', 'postnet', 'upca', 'QRcode']; - } - - /** - * Muestra un selector de tamaño de página - * - * @param string|null $p_size Valor por defecto - */ - function showSizeSelect($p_size = null) { - $sizes = [ - '4A0' => '4A0', '2A0' => '2A0', - 'A0' => 'A0', 'A1' => 'A1', 'A2' => 'A2', - 'A3' => 'A3', 'A4' => 'A4', 'A5' => 'A5', - 'A6' => 'A6', 'A7' => 'A7', 'A8' => 'A8', - 'A9' => 'A9', 'A10' => 'A10', - 'B0' => 'B0', 'B1' => 'B1', 'B2' => 'B2', - 'B3' => 'B3', 'B4' => 'B4', 'B5' => 'B5', - 'B6' => 'B6', 'B7' => 'B7', 'B8' => 'B8', - 'B9' => 'B9', 'B10' => 'B10', - 'C0' => 'C0', 'C1' => 'C1', 'C2' => 'C2', - 'C3' => 'C3', 'C4' => 'C4', 'C5' => 'C5', - 'C6' => 'C6', 'C7' => 'C7', 'C8' => 'C8', - 'C9' => 'C9', 'C10' => 'C10', - 'RA0' => 'RA0', 'RA1' => 'RA1', 'RA2' => 'RA2', - 'RA3' => 'RA3', 'RA4' => 'RA4', - 'SRA0' => 'SRA0', 'SRA1' => 'SRA1', 'SRA2' => 'SRA2', - 'SRA3' => 'SRA3', 'SRA4' => 'SRA4', - 'LETTER' => 'LETTER', - 'LEGAL' => 'LEGAL', - 'EXECUTIVE' => 'EXECUTIVE', - 'FOLIO' => 'FOLIO', - ]; - - $opts = ['width' => '100']; - if (!is_null($p_size)) { - $opts['value'] = $p_size; - } - Dropdown::showFromArray("size", $sizes, $opts); - } - - /** - * Muestra un selector de orientación de página - * - * @param string|null $p_orientation Valor por defecto - */ - function showOrientationSelect($p_orientation = null) { - $opts = ['width' => '100']; - if (!is_null($p_orientation)) { - $opts['value'] = $p_orientation; - } - Dropdown::showFromArray( - "orientation", - [ - 'Portrait' => __('Portrait', 'barcode'), - 'Landscape' => __('Landscape', 'barcode'), - ], - $opts - ); - } - - /** - * Muestra el formulario de generación de un código de barras individual - * - * @param string $p_type Tipo de objeto GLPI (ej: 'Computer') - * @param int $p_ID ID del objeto - */ - function showForm($p_type, $p_ID) { - - $pbConfig = new PluginBarcodeConfig(); - $config = $pbConfig->getConfigType(); - $ci = new $p_type(); - $ci->getFromDB($p_ID); - - // Intentar obtener el número de inventario (otherserial) - $code = ($ci->isField('otherserial')) ? $ci->getField('otherserial') : ''; - - // Ruta compatible con GLPI 11 - $action_url = '/plugins/barcode/front/barcode.form.php'; - - echo ""; - echo "
"; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo "
" . __('Generation', 'barcode') . "
" . __('Code', 'barcode') . ""; - echo ""; - echo "" . __('Type', 'barcode') . ""; - $pbConfig->showTypeSelect($config['type']); - echo "
" . __('Page size', 'barcode') . ""; - $this->showSizeSelect($config['size']); - echo "" . __('Orientation', 'barcode') . ""; - $this->showOrientationSelect($config['orientation']); - echo "
" . __('Number of copies', 'barcode') . "
"; - echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); - echo "
"; - echo "
"; - Html::closeForm(); - } - - /** - * Muestra el formulario de acción masiva para barcodes lineales - * - * @param MassiveAction $ma Objeto de acción masiva - */ - function showFormMassiveAction(MassiveAction $ma) { - - $pbConfig = new PluginBarcodeConfig(); - - echo '
'; - echo ''; - echo __('It will generate only elements have defined field:', 'barcode') . ' '; - if (key($ma->items) == 'Ticket') { - echo __('Ticket number', 'barcode'); - } else { - echo __('Inventory number'); - } - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo '
'; - $config = $pbConfig->getConfigType(); - echo __('Type', 'barcode') . " : "; - $pbConfig->showTypeSelect($config['type'], ['QRcode' => 'QRcode']); - echo '
'; - echo '
'; - - PluginBarcodeBarcode::commonShowMassiveAction(); - } - - /** - * Muestra las opciones comunes de acción masiva (tamaño, orientación, opciones de display) - * Reutilizado tanto por Barcode como por QRcode - */ - static function commonShowMassiveAction() { - - $pbBarcode = new PluginBarcodeBarcode(); - $pbConfig = new PluginBarcodeConfig(); - $config = $pbConfig->getConfigType(); - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo '
'; - echo "
" . __('Page size', 'barcode') . " :
"; - $pbBarcode->showSizeSelect($config['size']); - echo ''; - echo __('Not use first xx barcodes', 'barcode') . " : "; - Dropdown::showNumber("eliminate", ['width' => '100']); - echo '
'; - echo "
" . __('Orientation', 'barcode') . " :
"; - $pbBarcode->showOrientationSelect($config['orientation']); - echo ''; - echo __('Display border', 'barcode') . " : "; - Dropdown::showYesNo("border", 1, -1, ['width' => '100']); - echo '
  '; - echo __('Display labels', 'barcode') . " : "; - Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); - echo '
'; - echo '
'; - - echo "
"; - echo Html::submit(__('Create', 'barcode'), ['name' => 'massiveaction']); - } - - /** - * Genera el PDF con los códigos de barras y retorna la ruta relativa del archivo - * - * @param array $p_params Parámetros: type, size, orientation, codes, nb, border, displaylabels, displayData - * @return string|int Ruta relativa del PDF generado, o 0 si falla - */ - function printPDF($p_params) { - - $pbConfig = new PluginBarcodeConfig(); - $ext = 'png'; - $type = $p_params['type']; - $size = $p_params['size']; - $orientation = $p_params['orientation']; - $codes = []; - - $displayDataCollection = $p_params['displayData'] ?? []; - - if ($type == 'QRcode') { - $codes = $p_params['codes']; - } else { - if (isset($p_params['code'])) { - $nb = isset($p_params['nb']) ? (int)$p_params['nb'] : 1; - if ($nb > 1) { - $this->create($p_params['code'], $type, $ext); - for ($i = 1; $i <= $nb; $i++) { - $codes[] = $p_params['code']; - } - } else { - if (!$this->create($p_params['code'], $type, $ext)) { - Session::addMessageAfterRedirect( - __('The generation of some barcodes produced errors.', 'barcode') - ); - } - $codes[] = $p_params['code']; - } - } elseif (isset($p_params['codes'])) { - $codes = $p_params['codes']; - foreach ($codes as $code) { - if ($code !== '') { - $this->create($code, $type, $ext); - } - } - } else { - return 0; - } - } - - // Obtener configuración dimensional del tipo - $config = $pbConfig->getConfigType($type); - $width = $config['maxCodeWidth']; - $height = $config['maxCodeHeight']; - $marginH = $config['marginHorizontal']; - $marginV = $config['marginVertical']; - $txtSize = $config['txtSize']; - $txtSpacing = $config['txtSpacing']; - - // Crear el PDF con Cezpdf (rospdf/pdf-php) - $pdf = new Cezpdf($size, $orientation); - $pdf->tempPath = GLPI_TMP_DIR; - $pdf->selectFont(Plugin::getPhpDir('barcode') . "/lib/ezpdf/fonts/Helvetica.afm"); - $pdf->ezSetMargins( - $config['marginTop'], - $config['marginBottom'], - $config['marginLeft'], - $config['marginRight'] - ); - $pdf->ezStartPageNumbers( - $pdf->ez['pageWidth'] - 30, - 10, 10, 'left', - '{PAGENUM} / {TOTALPAGENUM}' - ); - - // Detectar si hay logo y calcular alturas - $heightimage = $height; - $logoWidth = 0; - $logoHeight = 0; - $heightyposText = $height; - - if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { - $heightLogomax = 20; - $imgSize = getimagesize(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); - $logoWidth = $imgSize[0]; - $logoHeight = $imgSize[1]; - - if ($logoHeight > $heightLogomax) { - $ratio = (100 * $heightLogomax) / $logoHeight; - $logoHeight = $heightLogomax; - $logoWidth = $logoWidth * ($ratio / 100); - } - if ($logoWidth > $width) { - $ratio = (100 * $width) / $logoWidth; - $logoWidth = $width; - $logoHeight = $logoHeight * ($ratio / 100); - } - $heightyposText = $height - $logoHeight; - $heightimage = $heightyposText; - } - - // Posicionamiento y renderizado de cada código - $first = true; - $count = count($codes); - for ($ia = 0; $ia < $count; $ia++) { - $code = $codes[$ia]; - $displayData = $displayDataCollection[$ia] ?? []; - - if ($first) { - $x = $pdf->ez['leftMargin']; - $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; - $first = false; - } else { - if ($x + $width + $marginH > $pdf->ez['pageWidth']) { - // Nueva fila - $x = $pdf->ez['leftMargin']; - if ($y - $height - $marginV < $pdf->ez['bottomMargin']) { - // Nueva página - $pdf->ezNewPage(); - $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; - } else { - $y -= $height + $marginV; - } - } - } - - if ($code !== '') { - $imgFile = ($type == 'QRcode') - ? $code - : $this->docsPath . $code . '_' . $type . '.' . $ext; - - if (file_exists($imgFile)) { - $imgSize = getimagesize($imgFile); - $imgWidth = $imgSize[0]; - $imgHeight = $imgSize[1]; - - // Escalar manteniendo proporciones - if ($imgWidth > $width) { - $ratio = (100 * $width) / $imgWidth; - $imgWidth = $width; - $imgHeight = $imgHeight * ($ratio / 100); - } - if ($imgHeight > $heightimage) { - $ratio = (100 * $heightimage) / $imgHeight; - $imgHeight = $heightimage; - $imgWidth = $imgWidth * ($ratio / 100); - } - - $image = imagecreatefrompng($imgFile); - - $xOffset = ($imgWidth < $width) ? $x + (($width - $imgWidth) / 2) : $x; - $pdf->addImage($image, $xOffset, $y, $imgWidth, $imgHeight); - - // Agregar logo si existe - if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { - $logoimg = imagecreatefrompng(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); - $pdf->addImage( - $logoimg, - $x + (($width - $logoWidth) / 2), - $y + $heightyposText, - $logoWidth, - $logoHeight - ); - } - - // Agregar texto bajo el código - $txtHeight = 0; - $displayCount = is_array($displayData) ? count($displayData) : 0; - for ($i = 0; $i < $displayCount; $i++) { - $pdf->addTextWrap( - $x, - $y - ($txtSpacing + $txtHeight), - $txtSize, - $displayData[$i], - $width, - 'center' - ); - $txtHeight += $txtSpacing / 2 + $txtSize; - } - - // Dibujar borde si se solicitó - if (!empty($p_params['border'])) { - $pdf->Rectangle( - $x, - $y - ($txtHeight + $txtSpacing * 2), - $width, - $height + ($txtHeight + $txtSpacing * 2) - ); - } - } - } - - $x += $width + $marginH; - } - - // Guardar el PDF en disco - $file = $pdf->ezOutput(); - $pdfFile = $_SESSION['glpiID'] . '_' . $type . '.pdf'; - file_put_contents($this->docsPath . $pdfFile, $file); - - return '/files/_plugins/barcode/' . $pdfFile; - } - - /** - * Genera la imagen PNG de un código de barras lineal - * - * @param string $p_code Valor a codificar - * @param string $p_type Tipo de código (Code39, code128, etc.) - * @param string $p_ext Extensión de la imagen (png) - * @return bool true si se generó correctamente - */ - function create($p_code, $p_type, $p_ext) { - $filePath = $this->docsPath . $p_code . '_' . $p_type . '.' . $p_ext; - - // Si ya existe en caché, no regenerar - if (file_exists($filePath)) { - return true; - } - - ob_start(); - $barcode = new Image_Barcode(); - $resImg = @imagepng( - @$barcode->draw($p_code, $p_type, $p_ext, false) - ); - $img = ob_get_clean(); - - file_put_contents($filePath, $img); - - return $resImg !== false; - } - - /** - * Retorna un array vacío (sin acciones masivas específicas en el item) - */ - function getSpecificMassiveActions($checkitem = null) { - return []; - } - - /** - * Muestra el subformulario de la acción masiva - * - * @param MassiveAction $ma - * @return bool - */ - static function showMassiveActionsSubForm(MassiveAction $ma) { - switch ($ma->getAction()) { - case 'Generate': - $barcode = new self(); - $barcode->showFormMassiveAction($ma); - return true; - } - return false; - } - - /** - * Procesa la acción masiva de generación de códigos de barras para cada item - * - * @param MassiveAction $ma - * @param CommonDBTM $item - * @param array $ids IDs de los items seleccionados - */ - static function processMassiveActionsForOneItemtype( - MassiveAction $ma, - CommonDBTM $item, - array $ids - ) { - switch ($ma->getAction()) { - - case 'Generate': - $pbQRcode = new PluginBarcodeQRcode(); - $rand = mt_rand(); - $number = 0; - $codes = []; - - // Agregar celdas vacías para desplazamiento si se solicitó - $eliminate = (int)($ma->POST['eliminate'] ?? 0); - for ($nb = 0; $nb < $eliminate; $nb++) { - $codes[] = ''; - } - - foreach ($ids as $key) { - $item->getFromDB($key); - if (key($ma->items) === 'CommonITILObject' || is_a($item, CommonITILObject::class)) { - $codes[] = (string)$item->getField('id'); - } elseif ($item->isField('otherserial')) { - $codes[] = $item->getField('otherserial'); - } - } - - if (count($codes) > 0) { - $params = [ - 'codes' => $codes, - 'type' => $ma->POST['type'], - 'size' => $ma->POST['size'], - 'border' => $ma->POST['border'], - 'orientation' => $ma->POST['orientation'], - 'displaylabels' => $ma->POST['displaylabels'], - ]; - - $barcode = new PluginBarcodeBarcode(); - $file = $barcode->printPDF($params); - $filePath = explode('/', $file); - $filename = end($filePath); - - $msg = "" - . __('Generated file', 'barcode') . ""; - - Session::addMessageAfterRedirect($msg); - $pbQRcode->cleanQRcodefiles($rand, $number); - } - - $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); - return; - } - } -} diff --git a/barcode/inc/config.class.php b/barcode/inc/config.class.php deleted file mode 100644 index a13e59a..0000000 --- a/barcode/inc/config.class.php +++ /dev/null @@ -1,305 +0,0 @@ -getConfig(); - - // Ruta base del plugin compatible con GLPI 11 - $action_url = '/plugins/barcode/front/config.form.php'; - - echo ""; - - echo "
"; - echo ""; - echo ""; - echo "
" . __('Barcode plugin configuration', 'barcode') . "

"; - - // --- Configuración general --- - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - - // --- Logo de empresa --- - echo ""; - echo ""; - echo ""; - - if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - } - - echo ""; - echo ""; - echo ""; - echo ""; - - echo "
" . __('General configuration', 'barcode') . "
" . __('Type', 'barcode') . ""; - $this->showTypeSelect($defaultType); - echo ""; - echo Html::submit(__('Save'), ['name' => 'update_type']); - echo "
"; - echo Html::submit(__('Empty the cache', 'barcode'), ['name' => 'dropCache']); - echo "
" . __('Company logo', 'barcode') . "
"; - // Ruta compatible GLPI 11 - sin Plugin::getWebDir() - echo ""; - echo "
"; - echo Html::submit(__('Delete the logo', 'barcode'), ['name' => 'dropLogo']); - echo "
"; - echo Html::submit(__('Save'), ['name' => 'upload_logo']); - echo "
"; - echo "
"; - Html::closeForm(); - - // --- Formulario por cada tipo de código --- - foreach ($pbBarcode->getCodeTypes() as $type) { - echo '
'; - $this->showFormConfigType($type); - } - } - - /** - * Obtiene el tipo de código predeterminado desde la BD - * - * @return string Tipo de código (p.ej. 'code128') - */ - function getConfig() { - $pbconf = new PluginBarcodeConfig(); - if ($pbconf->getFromDB(1)) { - return $pbconf->fields['type']; - } - return 'code128'; - } - - /** - * Formulario de configuración para un tipo específico de código - * - * @param string|null $p_type Tipo de código (Code39, code128, QRcode, etc.) - */ - function showFormConfigType($p_type = null) { - - $pbBarcode = new PluginBarcodeBarcode(); - - if (is_null($p_type)) { - $type = $this->getConfig(); - } else { - $type = $p_type; - } - - $config = $this->getConfigType($type); - - $action_url = '/plugins/barcode/front/config_type.form.php'; - - echo ""; - echo ""; - echo "
"; - echo ""; - - echo ""; - - // Tamaño y orientación de página - echo ""; - echo ""; - echo ""; - echo ""; - - // Márgenes externos - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo ""; - echo ""; - - // Márgenes internos - echo ""; - echo ""; - echo ""; - echo ""; - - // Dimensiones del código - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - // Opciones de texto bajo el código - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - echo ""; - echo ""; - echo "
" . htmlspecialchars($type) . "
" . __('Page size', 'barcode') . ""; - $pbBarcode->showSizeSelect($config['size']); - echo "" . __('Orientation', 'barcode') . ""; - $pbBarcode->showOrientationSelect($config['orientation']); - echo "
" . __('Margins', 'barcode') . "
" . __('Top', 'barcode') . ""; - echo ""; - echo "" . __('Bottom', 'barcode') . ""; - echo ""; - echo "
" . __('Left', 'barcode') . ""; - echo ""; - echo "" . __('Right', 'barcode') . ""; - echo ""; - echo "
" . __('Inner horizontal', 'barcode') . ""; - echo ""; - echo "" . __('Inner vertical', 'barcode') . ""; - echo ""; - echo "
" . __('Barcodes sizes', 'barcode') . "
" . __('Maximum width', 'barcode') . ""; - echo ""; - echo "" . __('Maximum height', 'barcode') . ""; - echo ""; - echo "
" . __('Text display options', 'barcode') . "
" . __('Text size', 'barcode') . ""; - echo ""; - echo "" . __('Text spacing between lines', 'barcode') . ""; - echo ""; - echo "
"; - echo Html::submit(__('Save'), ['name' => 'update']); - echo "
"; - echo "
"; - Html::closeForm(); - } - - /** - * Obtiene la configuración de un tipo de código específico - * - * @param string|null $p_type Tipo de código - * @return array Array con todos los parámetros de configuración - */ - function getConfigType($p_type = null) { - if (is_null($p_type)) { - $p_type = $this->getConfig(); - } - - $pbcconf = new PluginBarcodeConfig_Type(); - - // API GLPI 11: usar find() con array estructurado - $results = $pbcconf->find(['type' => $p_type]); - - if (!empty($results)) { - $id = array_key_first($results); - $pbcconf->getFromDB($id); - return [ - 'type' => $pbcconf->fields['type'], - 'size' => $pbcconf->fields['size'], - 'orientation' => $pbcconf->fields['orientation'], - 'marginTop' => (int)$pbcconf->fields['marginTop'], - 'marginBottom' => (int)$pbcconf->fields['marginBottom'], - 'marginLeft' => (int)$pbcconf->fields['marginLeft'], - 'marginRight' => (int)$pbcconf->fields['marginRight'], - 'marginHorizontal' => (int)$pbcconf->fields['marginHorizontal'], - 'marginVertical' => (int)$pbcconf->fields['marginVertical'], - 'maxCodeWidth' => (int)$pbcconf->fields['maxCodeWidth'], - 'maxCodeHeight' => (int)$pbcconf->fields['maxCodeHeight'], - 'txtSize' => (int)$pbcconf->fields['txtSize'], - 'txtSpacing' => (int)$pbcconf->fields['txtSpacing'], - ]; - } - - // Valores por defecto si no hay configuración en BD - return [ - 'type' => 'code128', - 'size' => 'A4', - 'orientation' => 'Portrait', - 'marginTop' => 30, - 'marginBottom' => 30, - 'marginLeft' => 30, - 'marginRight' => 30, - 'marginHorizontal' => 25, - 'marginVertical' => 30, - 'maxCodeWidth' => 110, - 'maxCodeHeight' => 70, - 'txtSize' => 8, - 'txtSpacing' => 3, - ]; - } - - /** - * Muestra un selector de tipo de código - * - * @param string|null $p_type Valor seleccionado actualmente - * @param array $used Tipos a excluir del dropdown - */ - function showTypeSelect($p_type = null, $used = []) { - $options = [ - 'width' => '100', - 'used' => $used, - ]; - if (!is_null($p_type)) { - $options['value'] = $p_type; - } - Dropdown::showFromArray( - "type", - [ - 'Code39' => __('code39', 'barcode'), - 'code128' => __('code128', 'barcode'), - 'ean13' => __('ean13', 'barcode'), - 'int25' => __('int25', 'barcode'), - 'postnet' => __('postnet', 'barcode'), - 'upca' => __('upca', 'barcode'), - 'QRcode' => __('QRcode', 'barcode'), - ], - $options - ); - } -} diff --git a/barcode/inc/config_type.class.php b/barcode/inc/config_type.class.php deleted file mode 100644 index c825a4f..0000000 --- a/barcode/inc/config_type.class.php +++ /dev/null @@ -1,29 +0,0 @@ -getID() > 0 - && $item->fields['interface'] == 'central') { - return self::createTabEntry(__('Barcode', 'barcode')); - } - return ''; - } - - /** - * Contenido de la pestaña del perfil - */ - static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { - $pfProfile = new self(); - $pfProfile->showForm($item->getID()); - return true; - } - - /** - * Formulario de derechos del plugin en el perfil - * - * @param int $ID ID del perfil - * @param array $options Opciones adicionales - */ - function showForm($ID, array $options = []) { - - echo "
"; - $canedit = Session::haveRightsOr(self::$rightname, [CREATE, UPDATE, PURGE]); - - if ($canedit) { - $profile = new Profile(); - echo ""; - } - - $profile = new Profile(); - $profile->getFromDB($ID); - - $rights = $this->getAllRights(); - $profile->displayRightsChoiceMatrix($rights, [ - 'canedit' => $canedit, - 'default_class' => 'tab_bg_2', - 'title' => __('Barcode', 'barcode'), - ]); - - if ($canedit) { - echo "
"; - echo Html::hidden('id', ['value' => $ID]); - echo Html::submit(_sx('button', 'Save'), ['name' => 'update']); - echo "
\n"; - Html::closeForm(); - } - echo "
"; - } - - /** - * Elimina los derechos del plugin (para uninstall) - */ - static function uninstallProfile() { - $pfProfile = new self(); - $a_rights = $pfProfile->getAllRights(); - foreach ($a_rights as $data) { - ProfileRight::deleteProfileRights([$data['field']]); - } - } - - /** - * Lista de todos los derechos del plugin - * - * @return array - */ - function getAllRights() { - return [ - [ - 'rights' => [UPDATE => __('Update')], - 'label' => __('Manage configuration', 'barcode'), - 'field' => 'plugin_barcode_config', - ], - [ - 'rights' => [CREATE => __('Create')], - 'label' => __('Generation of barcode', 'barcode'), - 'field' => 'plugin_barcode_barcode', - ], - ]; - } - - /** - * Agrega derechos por defecto a un perfil - * - * @param int $profiles_id ID del perfil - * @param array $rights Mapa de derechos a agregar - */ - static function addDefaultProfileInfos($profiles_id, $rights) { - $profileRight = new ProfileRight(); - foreach ($rights as $right => $value) { - if (!countElementsInTable('glpi_profilerights', - ['profiles_id' => $profiles_id, 'name' => $right])) { - $myright = [ - 'profiles_id' => $profiles_id, - 'name' => $right, - 'rights' => $value, - ]; - $profileRight->add($myright); - // Actualizar sesión activa - $_SESSION['glpiactiveprofile'][$right] = $value; - } - } - } - - /** - * Crea accesos completos para el primer perfil administrador - * - * @param int $profiles_id ID del perfil - */ - static function createFirstAccess($profiles_id) { - include_once(Plugin::getPhpDir('barcode') . "/inc/profile.class.php"); - $profile = new self(); - foreach ($profile->getAllRights() as $right) { - self::addDefaultProfileInfos($profiles_id, [$right['field'] => ALLSTANDARDRIGHT]); - } - } - - /** - * Elimina los derechos del plugin de todos los perfiles y de la sesión - */ - static function removeRights() { - $profile = new self(); - foreach ($profile->getAllRights() as $right) { - if (isset($_SESSION['glpiactiveprofile'][$right['field']])) { - unset($_SESSION['glpiactiveprofile'][$right['field']]); - } - ProfileRight::deleteProfileRights([$right['field']]); - } - } - - /** - * Inicializa los perfiles del plugin durante la instalación - * - Registra los derechos en glpi_profilerights - * - El perfil activo del usuario instalador recibe todos los derechos - */ - static function initProfile() { - $pfProfile = new self(); - $profile = new Profile(); - $a_rights = $pfProfile->getAllRights(); - - foreach ($a_rights as $data) { - if (!countElementsInTable("glpi_profilerights", ['name' => $data['field']])) { - ProfileRight::addProfileRights([$data['field']]); - $_SESSION['glpiactiveprofile'][$data['field']] = 0; - } - } - - // Asignar todos los derechos al perfil activo del usuario instalador - if (isset($_SESSION['glpiactiveprofile'])) { - $dataprofile = []; - $dataprofile['id'] = $_SESSION['glpiactiveprofile']['id']; - $profile->getFromDB($_SESSION['glpiactiveprofile']['id']); - - foreach ($a_rights as $info) { - if (is_array($info) - && (!empty($info['itemtype']) || !empty($info['rights'])) - && !empty($info['label']) - && !empty($info['field'])) { - - $rights = isset($info['rights']) - ? $info['rights'] - : $profile->getRightsFor($info['itemtype']); - - foreach (array_keys($rights) as $right) { - $dataprofile['_' . $info['field']][$right] = 1; - $_SESSION['glpiactiveprofile'][$info['field']] = $right; - } - } - } - $profile->update($dataprofile); - } - } - - /** - * Limpia los perfiles al purgar un perfil GLPI - * (Callback del hook pre_item_purge) - * - * @param Profile $item Objeto Profile que se está purgando - */ - static function cleanProfiles(Profile $item) { - // No hay tabla local de perfiles en esta versión - // Los derechos están en glpi_profilerights manejados por GLPI core - } -} diff --git a/barcode/inc/qrcode.class.php b/barcode/inc/qrcode.class.php deleted file mode 100644 index 79177aa..0000000 --- a/barcode/inc/qrcode.class.php +++ /dev/null @@ -1,308 +0,0 @@ -getFromDB($items_id); - - $itemByInvNumber = $item->fields['otherserial'] ?? ''; - - $URLById = 'URL = ' . $CFG_GLPI['url_base'] . $itemtype::getFormURLWithID($items_id, false); - $URLByInvNumber = 'URL = ' . $CFG_GLPI['url_base'] - . '/plugins/barcode/front/checkItemByInv.php?inventoryNumber=' - . urlencode($itemByInvNumber) - . '&itemtype=' . urlencode($itemtype); - - $a_content = []; - $b_content = []; - - if (!empty($data['serialnumber']) && isset($item->fields['serial'])) { - $a_content[] = 'Serial number = ' . $item->fields['serial']; - if (!empty($data['displayserialnumber'])) { - $label = !empty($data['displaylabels']) ? 'Serial: ' : ''; - $b_content[] = $label . $item->fields['serial']; - } - } - - if (!empty($data['inventorynumber']) && isset($item->fields['otherserial'])) { - $a_content[] = 'Inventory number = ' . $item->fields['otherserial']; - if (!empty($data['displayinventorynumber'])) { - $label = !empty($data['displaylabels']) ? 'Inventario: ' : ''; - $b_content[] = $label . $item->fields['otherserial']; - } - } - - if (!empty($data['id'])) { - $a_content[] = 'ID = ' . $item->fields['id']; - if (!empty($data['displayid'])) { - $label = !empty($data['displaylabels']) ? 'ID: ' : ''; - $b_content[] = $label . $item->fields['id']; - } - } - - if (!empty($data['uuid']) && isset($item->fields['uuid'])) { - $a_content[] = 'UUID = ' . $item->fields['uuid']; - if (!empty($data['displayuuid'])) { - $label = !empty($data['displaylabels']) ? 'UUID: ' : ''; - $b_content[] = $label . $item->fields['uuid']; - } - } - - if (!empty($data['name']) && isset($item->fields['name'])) { - $a_content[] = 'Name = ' . $item->fields['name']; - if (!empty($data['displayname'])) { - $label = !empty($data['displaylabels']) ? 'Nombre: ' : ''; - $b_content[] = $label . $item->fields['name']; - } - } - - if (!empty($data['url']) && !$item->no_form_page) { - $urlValue = !empty($data['inventorynumberURL']) ? $URLByInvNumber : $URLById; - $a_content[] = $urlValue; - if (!empty($data['displayurl'])) { - $label = !empty($data['displaylabels']) ? 'URL: ' : ''; - $b_content[] = $label . $urlValue; - } - } - - if (!empty($data['qrcodedate'])) { - $dateStr = date('Y-m-d'); - $a_content[] = 'QRcode date = ' . $dateStr; - if (!empty($data['displayqrcodedate'])) { - $label = !empty($data['displaylabels']) ? 'Fecha: ' : ''; - $b_content[] = $label . $dateStr; - } - } - - if (count($a_content) === 0) { - return false; - } - - $codeContents = implode("\n", $a_content); - $outputPath = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $number . '.png'; - - QRcode::png($codeContents, $outputPath, QR_ECLEVEL_L, 4); - - return [$outputPath, $b_content]; - } - - function cleanQRcodefiles($rand, $number) { - for ($i = 0; $i < $number; $i++) { - $tmpFile = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $i . '.png'; - if (file_exists($tmpFile)) { - @unlink($tmpFile); - } - } - } - - function showFormMassiveAction(MassiveAction $ma) { - - $fields = []; - $no_form_page = true; - - $itemtype = $ma->getItemtype(false); - if (is_a($itemtype, CommonDBTM::class, true)) { - $item = new $itemtype(); - $item->getEmpty(); - $fields = array_keys($item->fields); - $no_form_page = $item->no_form_page; - } - - echo ''; - echo '
'; - echo ''; - - if (in_array('serial', $fields, true)) { - echo ''; - echo ''; - echo ''; - echo ''; - } else { - echo Html::hidden('serialnumber', ['value' => 0]); - } - - if (in_array('otherserial', $fields, true)) { - echo ''; - echo ''; - echo ''; - echo ''; - } else { - echo Html::hidden('inventorynumber', ['value' => 0]); - } - - echo ''; - echo ''; - echo ''; - echo ''; - - if (in_array('uuid', $fields, true)) { - echo ''; - echo ''; - echo ''; - echo ''; - } else { - echo Html::hidden('uuid', ['value' => 0]); - } - - if (in_array('name', $fields, true)) { - echo ''; - echo ''; - echo ''; - echo ''; - } else { - echo Html::hidden('name', ['value' => 0]); - } - - echo ''; - echo ''; - echo ''; - - if (!$no_form_page) { - echo ''; - echo ''; - echo ''; - echo ''; - } else { - echo Html::hidden('url', ['value' => 0]); - } - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - - echo '
Numero de serial : '; - Dropdown::showYesNo("serialnumber", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayserialnumber", 0, -1, ['width' => '100']); - echo '
Numero de inventario : '; - Dropdown::showYesNo("inventorynumber", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayinventorynumber", 1, -1, ['width' => '100']); - echo '
ID : '; - Dropdown::showYesNo("id", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayid", 0, -1, ['width' => '100']); - echo '
UUID : '; - Dropdown::showYesNo("uuid", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayuuid", 0, -1, ['width' => '100']); - echo '
Nombre : '; - Dropdown::showYesNo("name", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayname", 1, -1, ['width' => '100']); - echo '
URL por numero de inventario : '; - Dropdown::showYesNo("inventorynumberURL", 1, -1, ['width' => '100']); - echo '
Pagina web del dispositivo : '; - Dropdown::showYesNo("url", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayurl", 0, -1, ['width' => '100']); - echo '
Fecha QRcode (' . date('Y-m-d') . ') : '; - Dropdown::showYesNo("qrcodedate", 1, -1, ['width' => '100']); - echo 'Mostrar en etiqueta : '; - Dropdown::showYesNo("displayqrcodedate", 0, -1, ['width' => '100']); - echo '
'; - echo 'Columna izquierda: incluir dato en el QR code. '; - echo 'Mostrar en etiqueta: mostrar texto visible bajo el codigo.'; - echo '
'; - echo '
'; - - PluginBarcodeBarcode::commonShowMassiveAction(); - } - - function getSpecificMassiveActions($checkitem = null) { - return []; - } - - static function showMassiveActionsSubForm(MassiveAction $ma) { - switch ($ma->getAction()) { - case 'Generate': - $pbQRcode = new self(); - $pbQRcode->showFormMassiveAction($ma); - return true; - } - return false; - } - - static function processMassiveActionsForOneItemtype( - MassiveAction $ma, - CommonDBTM $item, - array $ids - ) { - switch ($ma->getAction()) { - case 'Generate': - $pbQRcode = new PluginBarcodeQRcode(); - $rand = mt_rand(); - $number = 0; - $codes = []; - $displayDataCollection = []; - - $eliminate = (int)($ma->POST['eliminate'] ?? 0); - for ($nb = 0; $nb < $eliminate; $nb++) { - $codes[] = ''; - $displayDataCollection[] = []; - } - - if ($ma->POST['type'] === 'QRcode') { - foreach ($ids as $key) { - $values = $pbQRcode->generateQRcode( - $item->getType(), $key, $rand, $number, $ma->POST - ); - if ($values !== false) { - [$filename, $displayData] = $values; - $codes[] = $filename; - $displayDataCollection[] = $displayData; - $number++; - } - } - } else { - foreach ($ids as $key) { - $item->getFromDB($key); - if ($item->isField('otherserial')) { - $codes[] = $item->getField('otherserial'); - $displayDataCollection[] = []; - } - } - } - - if (count($codes) > 0) { - $params = [ - 'codes' => $codes, - 'displayData' => $displayDataCollection, - 'type' => $ma->POST['type'], - 'size' => $ma->POST['size'], - 'border' => $ma->POST['border'], - 'orientation' => $ma->POST['orientation'], - 'displaylabels' => $ma->POST['displaylabels'], - ]; - - $barcode = new PluginBarcodeBarcode(); - $file = $barcode->printPDF($params); - $filePath = explode('/', $file); - $filename = end($filePath); - - $msg = "" - . __('Generated file', 'barcode') . ""; - - Session::addMessageAfterRedirect($msg); - $pbQRcode->cleanQRcodefiles($rand, $number); - } - - $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); - return; - } - } -} diff --git a/barcode/locales/barcode.pot b/barcode/locales/barcode.pot deleted file mode 100644 index 778f998..0000000 --- a/barcode/locales/barcode.pot +++ /dev/null @@ -1,419 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 inc/config.class.php:148 -msgid "Orientation" -msgstr "" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 inc/config.class.php:145 -msgid "Page size" -msgstr "" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "" diff --git a/barcode/locales/ca_ES.mo b/barcode/locales/ca_ES.mo deleted file mode 100644 index db2907e4db3fdc78a4f5653c37077ae37712e825..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4054 zcmb`JTWnlM8OH})QtA?#CXhA|nn|E>Lb~3Y9oriWoL#TYHfwvkUYoWQ!FYGPJI$U8 zb7p-Bh=>YNgw%&hsgPQbEFn<>f`@Vuc_=T7kcxx^^o2@*C`9mp#6?0v3Ps}oo&7d( z142A-wBPxixqg@V=F|TA;BC(cJdZ(+LSB2L5SPGTz6mcpzqnn95%3k}uRu%@uQIQ3 z{~x&hN9LcHe`WrS`FG}Z=0BO@&4YbMnEOD|dk44oGY>EiF%L73Fpn~iF;9R{A?^ps zzZCdZ@Ii1N_y|b;e4Nu z0KX321%3ylkpB>TJNRRe=KTg71^>+b*TDm5AHZT7KMv-=3`pynAn7q6ej>t)?6?TN z4ZH+WJT8N@{!8F~@EhO}@G40AzYN|9UIXzHf58i?#dVP8kH9Eee>X__BuH@^W1eBA znR(_ENOqnB$u5sM&pgkpF;~HNV&0=*2HXTm|MMW}`z}cPTm{LmAAn@fk3iD%6Xwf2 z{t8I*Uj;YcAjI!M+UKJB#*%tOq> z%p=UB%wr(!e*&bqkAW2LG)Vb72~xhC2M>b{kmg_D@dzZlKL_Fn#4{k>&s~u6^hNM) z@aJF(yav+#2eF8FFG%~}#~cG`eFmiSUj*r1HJB~%B-#$7eV+p{WI=9KMBv-jjpjb~r#vv3JdOn!E zZ@yOeQ-Y5{<{=9Zisy$Q^i&2A4>He#6eo%;#g%dir7g)t$_reZB>p(|GoqLg z#Vme6P89Q^I3bFYqIgymr$ljD6fr~DX4uk0%Bb6Gn?N?hV8gU~Ryh*}!@*d_=Aw>8 zF?25UMJXdnS^R*UDCI?ILX;*&>8vPCiPE$v&4?21Tnhb21v|1EwnI^}S~)G|OdNI9 zj$99IOIuNXxLjIoRMyI(>_=`#x{j7j)$C|7zg(>>iv=BMtGc&XHRyG^B{xi0^Q6RH z9)amH+>q<+VkN*XvJ+Z!F$|pQib2Pww$3!E>ExE_c4a%!=Cllh?vB)5?d!nBvZFS& zZ0QXXBpP+MRS?zkf>*`6(J0qNRRyiMsUj_^dc%oD6{t4+cwHnHl|^`C3~n30=gW>Z z?GDWyG`CF4b;MHWWG~im%f?P_Zx20)#Zu2-hYxV78Ab+2v1|>D8=O*&)X@ovT44;-)aX4Zz=oWRPQ5|_yM-tVMMRlZ6J+W$qhVaVLD@U(9y(UCscs>Y9 zEZ4OTq{hJ+-5O8EID#DiIP~=m7i46^Rtz2KJEH91L zb%cnd7UQ;QrHZ|FoN9yxIa*sz)%B*KHK{qIWkKdL*{M_}pUUK9cCwJ4I+MXOT2--2 zHLMEau5zI*$Ws4G%bKS2kWmlNqG`+t+C3aVs-cyS843xe0(ojBQYJVpPj#G&;zByT zwY4>lvk79ep|{7Ip`RYyxOkyjtE3$k$LXp3M0O_KR39s^q)(47Ru;=QUCWMVMoUOv zoO+7lRFF<@J8S|q=VY^^Y^>evYGXb%eRCe^+t4;u4iHrnv3^I0 z2N9w#GJns^MT4{+_9q{_#e9f6_CM7pBdVxN&O}LRvSQv+aIKQ9F}>X}>xPUN7N}KG z?3tFbva6)8{r(HqD8#Opl&M?n9^8Shm^W@)+hI}RDwS+Hs8T~GZ*i?cR+w;5uN)UF zBzRJ)Bz1miZ1!K+TgV2w5MvsP`nxEWO4K!Ma-!l#NROD3Vp!3r%lO9rn}YvR+vY4v z2g=xgE^XDbNiGKkHP7Cb- diff --git a/barcode/locales/ca_ES.po b/barcode/locales/ca_ES.po deleted file mode 100644 index 38f0127..0000000 --- a/barcode/locales/ca_ES.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Catalan (Spain) (https://www.transifex.com/pluginsGLPI/teams/73419/ca_ES/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ca_ES\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Codi de barres" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuració de plugin de codi de barres" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Mides de codis de barres" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Fons" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Codi" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logotip" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crear" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Frontera d'exhibició" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIU" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Buidar la memòria cau" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLI" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuració general" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Fitxer generat" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generació" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generació de codi de barres" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Interior horitzontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vertical interior" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Generarà només elements ha definit el camp:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "CARTA" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Paisatge" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Esquerra" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Administrar la configuració" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Marges" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Alçada màxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Amplada màxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "No utilitzar primer xx codis de barres" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Nombre de còpies" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientació" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Mida de pàgina" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Retrat" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Impressió QRcodes" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir codis de barres" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Dret" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "La memòria cau ha estat buidat." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "La generació d'alguns bacodes produir errors de." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Nombre d'entrades" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Part superior" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipus" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "CODE128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/cs_CZ.mo b/barcode/locales/cs_CZ.mo deleted file mode 100644 index dd872cde44784e05ca80e8acf614bdac3de39547..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4480 zcmb`IYm6IL6~`~6K)aD5z->UL!yt5QvwATB%y-I z`T^zw^B}Xpyq|fL`2h0-v&38m>0FETI@4wP%qFwNe31DN^I`BE*yjr%`F93<7kB|A z7cYY3&rg|Mkk0)%>%U_DhWR_@ADDk){+0PR=Bwa!*ylCyo#5X=I`5w#o&O)^&<#T1 zCvL{=-QXSI+rR|)0dNwe_ZPt-@EDI<;CrAy#Pd&pap>OxY5ng(I`1zae&SW!$ew?I z?+4!iDK1;EDeZqFcoTRFcr&;ir2W(2jo=}W_Bjs1bYX$?z6a9!Qy`u96_Dch4dzqK zrIp&X;KViPiTnEYSUxH-EE8s2Q>)=PgEif_)-U^akIgso)2GagT z)+-?ST?5HpA0#{4%u_u72uSN52VZ}S5MKjnzX!27@f1jP^LgeMdHl<)KhFFr^GW76 znNKml&HOI&8RoOh^B|q~1J<8oKF@rCd6D@d^JV7Gm_3m4^b0Ts{u!k2;RXznpW8t4 zXD4$Qq;q4ek1;2hdzkx}DdseDhIt=I`_F?^-+7SoR|KiPZScL|!#w^Z_#x;|gOryS zz^&km%-@1Yg?J78IQRxgb#W6mr+sb*$G}mL)~|q+XBVV(t2}-hqfk>%md&&WPs5VctImPC^uft{sqJNSYMBc7vmkdsrt>?HqwjLp}-l z6eI_s8kvF|gwRE`lnD?kdF47YsjW?86GG#rWbnQmPa%9Ok%T}e~slYPMVA7Yq)z-d9 zn;)zq@Amn|neQQPIDn9I(j=5Q|*vUxG5oU&h1t`>88IS}*8Q5E=cMPTQZhiLnl zJZaS%by?L`rAqJi)m5t;RKrZkPDK`Vu&T8qZNv>P4Kj;x`k2FnM#?Q+9uDU? z_MAE2)b)n*()CQaQ9|&w=NZq(0;^Qhfpo&4h=OrNp@rxl&d&*QI2NA>nV1w>IkAL5 zEaGFrHGbgeKs4NvLP*StE(MXhjNRNylz^wCNhm0Ps(^SHXey4BGI^vjU^M~JEORU=9C{q3Z8O&TLs3$ z{wO3{rj4gdHB0VwNgc+ALFzq~y0YxylBw_8Mf*)+xl?H%vyp;U^`y+Sb*U=1_W{cq zMcXRvklU+4;QGmtk=51JVdUQNtz~_Z_8IAa;Qq{9ZgwQV9{$L9Vl*~6Qu2>yj*jdY znxCD|UUoh<939Hw^FUQaD4IzbAlcYNSa4T_vpN3?M1Q<;*O*z z0~~Zrdguc^4j_MR&-% zWmG05CihLrcz<&5lpMYKwOIHTExZj2C9RBOWn$0J|Fwm#Ki2JdrrEtDYu)F|VgU(8 z4xR3rY?dSB%NZ0~Ne!Xf1s1c6w*Sz-&YS zfgwK|VhQK;&Qj2trfd*SL~YZck1xxnk-kTG%{7g-MmU?b)-G8KwAVc^>uLov4UgP2 z4Oug`acYe>_2mU6d!6oD?`#dH+PZ1PA@a1THaoLe^VEv&H{x!`4(;k*>UC=BiZR|u zi3K!;M(?HWT2rs!uL5Ra36h9zJ@9o?PICqp2C&bykOgkqlrJs>=?AdLK|WwC3Jd2p z(BAwSdiS6%LiHMZ^Bd^fSNHKH*Hh&0MkBwXjV~Fy*pltAQc%tva+, YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# Pavel Borecki , 2019 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Pavel Borecki , 2019\n" -"Language-Team: Czech (Czech Republic) (https://www.transifex.com/pluginsGLPI/teams/73419/cs_CZ/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: cs_CZ\n" -"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Čárový kód" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Nastavení zásuvného modulu pro čárové kódy" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Velikosti čárových kódů" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Dole" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kód" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo organizace" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Vytvořit" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Zobrazit ohraničení" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Zobrazit štítky" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Vyprázdnit mezipaměť" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Obecná nastavení" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Vytvořený soubor" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Vytvoření" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Vytváření čárového kódu" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Vnitřní vodorovné" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vnitřní svislé" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Vytvoří pouze prvky, které mají určenou kolonku:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Na šířku" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Vlevo" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Správa nastavení" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Okraje" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maximální výška" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maximální šířka" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Nepoužívejte prvních xx čárových kódů" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Počet kopií" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientace" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Velikost stránky" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Na výšku" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Tisk QR kódů" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Tisk čárových kódů" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QR kód" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Vpravo" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "A2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Volby zobrazování textu" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Velikost textu" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Mezery mezi řádkami textu" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Mezipaměť byla vyprázdněna." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Při vytváření některých čárových kódů vznikly chyby." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Číslo požadavku" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Nahoře" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Typ" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/de_DE.mo b/barcode/locales/de_DE.mo deleted file mode 100644 index 26a4f4e8f7d9811979a6b2246acb602b8b086ec6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4511 zcmcJQYm6jS701u6;A0dP5Oi5(y{m#VLe2DJp1nIjcTLZO?V0K6>6rzDU8}oqcNbe- z)mGh}S4@n2FaiCbBoNpTHUR_CNYITgM9{dINPGq2BN~h>iDr`xep0{q!KnXJeR_7* zVB!~V>eR39qwYQToO91Tf87<25{ia=6f*TLqK825-FTsV^}R%BqOS=b1^1%qUt_k=GAUl#rlS$MNF+r$N^940r?h63F9U1N*=?rTrqv`}n8y??Yz_^@AY) zzXbBS$3P6B;~?wR1g{5MAlvIfkmr9Gyb62*yb*j3jyu#hsXkXzSEeT`3%T$ z^qlaU(*C^Eza#vv@I~SGg+CDfNVqM0RrpikFF;=Jb*cYa_*>x{!aoS#68=$mL3k15 zeg7HcbMiNkC zgbp=8_G<`2CHg$bdOZxX-%o+;?-!*0Gm!Ot3)~N00ORuja(wQ?&s^URUIz|H{Ro&w zeIEP}_(kx;;Nu|c@okXjeOcPifvndXAf~22fq3YzcnyMku?X8K2_iJe23h|i$nzZs z@sKOr0y*Bk46+>`5k4k7C45TwG|1zh1=(KD3(p8&6uu%n2l9Si1rh3W9^`$#4YHl~ zK-rIj2S7gOlOXGR4CH-kko5|L5yY^x*SXCMj4 zIE2e8gzX1)V!wP4WdCxmV?B9o){}MGT{u?fAV(nzatQJX$R{B;LvDe53epc5fP5Ol zpAxWt(2yKvKf#ZZ@htDI&7M}-> zNj@i($|h(S!cP(pkfLmwvcr@eq3kGS$0$2a*$K)eD3``*&K)0FnK(aJP+w|UBq z+MctiDnVGo%)P4TRJ0dS{_ecJQl4AQQ@+(UoAGZ|r`pssy;zuAq#5n&5PDs{mu{=k zHC1;#Era4+N)I-yg1V}RVdi|yqMAYIZUw$^JnA;A>Cm`Ut{S!OdY)>;t3ms~_cj$a z($c<(RMT10s;29%AFrsrT80YwnQQ^?ayeh3g5%ess?*j~&~-!ej_)+|f9O2#gm6lP z&JDNKX{n}m8%-YDt**N@)1-yKs7|D@tuQibW23i&h!$eU@TRIk+l2!cLl??*eOu(^ z*soL!LK8Z!p%Fe0gmIU?#dQwhOWLiCjodL_hO3Bgy2wOZybypsG%@hi=* zVJhnlqiW*Ppv^Xqx{dMjad*^qs;=Kq6>ZkF_LT>_VGsf$_AJa9p${DzE_ZcpFzyrE zi|3-CrFS;3+F?-ZRAGD_hCvv0f8e0IG*_rw!CE|*TRo{wFObVYo64JT%u1<1Y>Q-S zJZ5@=wBsk!1T&>Zs2xPc*M>Unssn2U59q3~=4#fe4kM_PQN^r%G&_@5tNGIM+~PuC zNw;BYYd&hYH7nO?L{>S-sJ`N&RnluN|6@(zIAl~RksPxUX)BRZ$&pNY?A8QIU%`ot zRSq3L@*ER{8FkWe>p^fEhNn{K^&1`d)GBMIl~FS~Y&pK_?{afM^*4=aN136a_4V~Z z_}h=%y51P92Cbp)*^g!l#knDazoVhC^l)-wsHRU$<%b6P=I7?~mv)sLO!V0}5{M*= z&6H6F4#p&o>mOFtrV~cmOsu=YI6THrwSw$DaLYd)2nCWa`--$DXFJ*V+e zZTcOYn4QM_hOTyuyQX9FIYuSNhc{BAW33i4j1KYtvdbySS9Uj92A-=a>v;{NEF3p= z`EKK^=px%`#X;$k4!3kCUcH+kaj>Kz&Wu{k?&M0{O_o~WC>ZyogM6Eh)VfAC_i@TX zmG7oWt=58;n&K?!#%ZCBJSp=Uj&`RwA?gbsv{eoJpacn%zE&`(vk?3$@Gl5)6jJjDOUI>d*RH zPSYDua&<<^hYw6Vuf}AUHy!{Jhp;6Qt}h7}R)nW$ndkHy5g5@%dC1!r6)GHyP*u#<6%i_7JOe3@2?c9#APaQ1=E diff --git a/barcode/locales/de_DE.po b/barcode/locales/de_DE.po deleted file mode 100644 index 960d207..0000000 --- a/barcode/locales/de_DE.po +++ /dev/null @@ -1,429 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Dieter Missal , 2020 -# Andreas Tschirpke, 2022 -# kaifoo, 2022 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: kaifoo, 2022\n" -"Language-Team: German (Germany) (https://www.transifex.com/pluginsGLPI/teams/73419/de_DE/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: de_DE\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barcode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Barcode-Plugin-Konfiguration" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Barcode-Größe" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Unten" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "Nach ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "Nach Seriennummer" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Code" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Firmenlogo" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Erstellen" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Logo löschen" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Rahmen anzeigen" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Bezeichnung anzeigen" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "Executive-Format 184x267mm" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Leeren Sie den Cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "Folie" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Allgemeine Konfiguration" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Generierte Datei" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "erzeugen" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Barcode erzeugen" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Innere Horizontale" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Innere Vertikale" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Es werden nur Elemente vom Definitionsfeld erzeugt:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "Legal-Format 216x356mm" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "Letter-Format 216x219mm" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Querformat" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Links" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Konfiguration verwalten" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Abstände" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maximale Höhe" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maximale Breite" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Die ersten x (Anzahl) Barcodes nicht verwenden" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Anzahl der Kopien" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientierung" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Seitengröße" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Hochformat" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "QR-Codes drucken" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Barcodes drucken" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "TA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Rechts" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Anzeigeoption für Text" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Textgröße" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Zeilenabstand im Text " - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Der Cache wurde geleert." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Fehler beim Erstellen von Barcodes" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "Das Logo wurde gelöscht." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Ticket-Nummer" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Nach oben" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Typ" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/en_GB.mo b/barcode/locales/en_GB.mo deleted file mode 100644 index 197120fd7a8294578b6c88399d9d1b355b85089f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4351 zcmeIy|BD>u9S87FG-`X%Xf*LlYT}bd+oX1LyL)%JyG_oxJGZ%Pv-c&N&1vhm&h0+8 zJIUBJGcm~Q3sz2BJ z4{P}`^>OtH^-1-(`n39t`keZL`VwTjFKhV~^;PwE>IwCA^$qn+_0RAe)bkc(|NaJ7 z!!y1q!Y;0XXTeM11#lx|{|418WF8}09#?m&yVQbORQITR)fu=F_3VS^!gfI2hJb(+I{|YkCr{OyI9OU~a-~fC}@4pAxk5Bda`FNN`c_ZZa`ykuB4&oKL z88WXXTnk%}<8=pQ{m0;W@IiPP{0(INFT+*vkC64e4KcLx9_0HUL4N-kWP7XeGRJY9 zdYQUG-K1Uxnder>yav@_bzHqhbs+QJ1DVH7a6N3mZ^1iY8vau6{~j{G_aXE7FJwEP zXn6%Dhy6bbGVk*s^I5B|*XIWEyDe~Jg-8mrz8Wg04ajwLNDcJo9amao0Ead#X0XYtTg&c?XA?N=? z$o{RsOLQe<9_MIzmAYD8qpnpiQP-;*R0BD#n<0i&wm`N&0=W-%LYz`oZ-AWlgOJY? z$UN_a+$YB%PI&|uEJZo4_n(LC#~&b0c^4P%lMf-k-;B!G?pDb9(~x=PAlKV2$nmN| zet#pxkjNp(eXyYie138ZWQ2(iZp#EF^4`iPI zhsb!ZJa+VuZ>!tXaX5k)MqG!OL)?tG1i|C`h*<>J zd=0S&!DCGinNV+0U6|9~laOOQsO29+&OrfjEn)$|vD}C_^|&5|4Tv8gh7cCfKe*O- z?Cv3TxJ!Q*)qSvn*pH|p4j`^U@F*klh-t))2=0MV#CF6KqJO0NKTh!q{J!aw@(=a* zkKomajFx9q2XZZNop9}NA8;*lUviIdze_fsmSF_X3{H@h{E*~_B|jqh?UEmr{Fvm& zrI40F1}Df$VMq$YQW%lKb}5WXVN42m!;NZT-S#zYztivnQwxJduhEIz#0!J|!`Q^$ zQ5#DkOp>rAg=JHk0?YqlnA&ly%xnK0%1?$IByuRohsFvo7Qf#%8 zd$wGfl_?w82zhsnxDET2oTuFglM>_MlGp0AOw)ReCg1H9k9hT@DKlYWI2OZ^_iGSi(HcB&S(Jxt(iet6=q2u=FZedlf9cN;j+he1uDemn<(sybMd#E+wX}QyR88=5g<4xB2elxb4=w zpkWqla>Uxe_!u|5gay%^Sqx{4XLw*S<({o?>ps)5*O`mMmi?mhrX7X#P7Q-^qbQ8x z-UnQCC+muAD?Hq-%c~u-Nq-?%!?skHF);@!W#L$4vSVF`#>KipW=Jqh*%4`naT3@> zI_;W^(FzaRT9PW&Q}Z^8ky6gg<(<9xsiK)LR`!=>X9g;^jiF9W#|^KZDs&ogsv73Z zz}#%AVh?-#CN+uekTcnIHk(S1rZQtDJ(^38U7f};PBr>N+;iACW|&o6$12Rv diff --git a/barcode/locales/en_GB.po b/barcode/locales/en_GB.po deleted file mode 100644 index cddffcd..0000000 --- a/barcode/locales/en_GB.po +++ /dev/null @@ -1,419 +0,0 @@ -# English translations for PACKAGE package. -# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# Automatically generated, 2022. -# -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2022-07-18 07:08+0000\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: en_GB\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ASCII\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barcode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Barcode plugin configuration" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Barcodes sizes" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Bottom" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "By ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "By serial number" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Code" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Company logo" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Create" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Delete the logo" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Display border" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Display labels" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Empty the cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "General configuration" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Generated file" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generation" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generation of barcode" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Inner horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Inner vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "It will generate only elements have defined field:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Landscape" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Left" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Manage configuration" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margins" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maximum height" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maximum width" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Not use first xx barcodes" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Number of copies" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientation" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 inc/config.class.php:145 -msgid "Page size" -msgstr "Page size" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portrait" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Print QRcodes" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Print barcodes" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Right" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Text display options" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Text size" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Text spacing between lines" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "The cache has been emptied." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "The generation of some barcodes produced errors." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "The logo has been removed." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Ticket number" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Top" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Type" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/en_US.mo b/barcode/locales/en_US.mo deleted file mode 100644 index 339f96e2158cc26476d3fdb0e0aa18cbfae9b5c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3954 zcmeI!`)?Fg6bJAlFQEwXP!vVEphyv>`)a%GVwK%tTMI2+w%ZCwg45mG-ND_N&CF~c zh+;Isn3#|l_`!%VF)=<+6QjlujsAeq#DrfYQAyB9g7||*)cA-5qu;Z83h2KelR5L5 zJ9FngPdEK~(TqccV<%!6;=(kdeel#wTyT7OHPLi{3Y`|u$n)={{Jr?2__O${ z_=k92{7a$0HiMUi;CN39OLUci^AkWW$^Wi2q3vP!zp9jP| z$X~4D~80F7>7L0^^nJv6uZUEVn!T-H>2JT z7=~kz`+o^?fA2tU=P2ZPeE@kpA4BfvxOhU|pM+fhG<@VLqO*|O(by!`hMW%-u`17f zDUXYL#D~R4#mB|{;*;W2;sNn#$o(CX@-yOL@pS-p&EL-yXNz+ouj71(s-LuTuK1q#p?D1PI6r|r zuH)io;uqp6@igT8J_|X&r(vmwo5anK*NNAV*Om94 z^MG@a^MZ4l_W|2dKW-6QVIP9`3`<X3|3dBmpZHU_us}Oe}RwJ4bLx?ycf#4kJLQEYw+^mRM`_-~FsYYC{pgl@&OPfQv-r+Q*E7f391tqQWR=%XEd!Vm(fO@o} zJ*)hmQ8k_hx}ZkwvX)Bq@yZ(vUAd!bM5fs5pcPeeJ$sMq1Xh_E55}|?*m*7nYTPcD zRk7Y%pq1;CCzUSiigp5Dm8>zX3VPIb>OJamAwhlVo@5`cxm-F+eU?-3^Hx<;pB@dU z-*T)X=JBtU?6*8DuaB1#cBNKPC2bc=T(?miw+lguwzz?+`5M#m{6I}iOwGWjEw#!B z=734%-KveP81QTiuCYrQ?v8heGOibRmK{*WvzhEL)W&M4(qAyNCRXw** z%VP<(=eeGb5A6JdI#5o1YLs)Ul$*pF@{l9Zj=Hf<(v}m65oQx@qpIr%jt;0+&0Cn1 zyIbc2qqkrTYtKiY36)8jo0C0hHJr{4_6}@m%IYds#OU{ncEL#1ioTI^6RIgQU}W`} z&EFUsk(LP+4M*ZeIA(;SD$ce6 zP{%3OumMI+Ta|=LJH@i?msInRV{?WMVvn@HMm3j$pz0?=q4DwY7VMGZ+oO7-CGS>3 zjlVp82Cr8_1$rVtBbM!~ zSNW3V`8wzt%5@tZm+EnUquMjl4p!H8iV4**Vh0z;o>29^nlfel;g^kW*Q@vm8}6) diff --git a/barcode/locales/en_US.po b/barcode/locales/en_US.po deleted file mode 100644 index 90abb2b..0000000 --- a/barcode/locales/en_US.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: English (United States) (https://www.transifex.com/pluginsGLPI/teams/73419/en_US/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: en_US\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barcode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Barcode plugin configuration" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Barcodes sizes" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Bottom" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Code" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Company logo" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Create" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Display border" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Empty the cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "General configuration" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Generated file" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generation" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generation of barcode" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Inner horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Inner vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "It will generate only elements have defined field:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Landscape" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Left" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Manage configuration" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margins" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maximum height" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maximum width" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Not use first xx barcodes" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Number of copies" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientation" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Page size" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portrait" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Print QRcodes" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Print barcodes" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Right" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "The cache has been emptied." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "The generation of some barcodes produced errors." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Ticket number" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Top" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Type" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/es_419.mo b/barcode/locales/es_419.mo deleted file mode 100644 index 21018bc5a8c6fe96e1bc1a8f6ddc505da0e7d02b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4159 zcmb`JYit}>6~_;xl-4wmrqI$-$W0+>LbCQg?AYGagx$^BalN)T>vd>KCAglw-o0UV zW_oAVFGWhlmm(yPs0s)XAu146p%Q`;iBPE@Fd)QBf+9f?MO3QbLnR&(0x3Mi|Lhz) zCPAnlxSDf+bLZZ<=W)-R-QVoJ;gf{+5ae#iKVD080sQsr(4qbE^+dbC7lbc@SVAue zUzX>;m+>pYKM4OU{EP5!!Yjgm3hAbF-(A8RLDqY-jCTw72yYYKF1%BCw{V~E9uO+% z0LcDjz&C>TgExX_LH6f^LJwrU%Q8ME>D4}-UWkAkf4aggx8MNyM|pk)+=KBRyv+0a!917+`F#&$Jr=}85jwVG z1AH@h0pxf*4)XgK!QJ3jz&pXqAn*S?_y+K05EuOk9aPg5kk{{mQT+a`AnQ{g$L(I> z5#f-qARGnR&f_54RT54LXM}a(BKS6}dl1ZmDS-kAa*IpAvpXo?n#l=Y?Moeo6S0@M+;!gAH*#E;I`!giWgRFN%#^b{K zgeQb$VO4laI3t_`Io_wiz2I4p_4yz!a_Bg39szFyKML~v=fK;+FM@3Mv%(*N3gZ_+ z&clC!cYtq2lD!Aaf_$za$os5-I668HvYto5yTDI?oTpEN*n%#BxM&mIA@FD5t>E85 zgo<|K<74~p0(qYd$o7tcY{v}9dJV{N^M#Qx5v~c(gB+JfK+dy|2tOu#O!#TxMUee` z0=y5r46=QH1=*gP5G3AbFUb4e0kS>&K#s#f;Zd2-gS@^7BE9?VEc(Nc_d_0pJOJT# zGzFEwBXWOC$Qasje**XKmhqgB};HmTaA4jlfg-_0BOjW{o-8R z+4{MP2ZIof3%B?7`>Wl8+$!)P$RuP6l7pOraGOp+_X}r0juXd_dL-@+!0`gQUP-&P-BUCy@ zrBN!4QE8mYSt{pn0eLDHs60&N5h@>}@+g(ZsEifbd11?JQAK{QZ3E?n!Ln`loK9>Q zY)!^0wi_mXD&s3?}jgobhbd2(}*D*9XUz?t%DH9l{{cEgBpC+cI zmaT7OQQuyff$1t-R!idIbbwt{CvA{VxL9ztlG3tfyCtoI?4sG#o}HN%LS z>xdznoXd~(Sr{jygIs~&O@4%;FirxKP%rW{oC?nwFUd@|GG~m7p|hy!rOHfcs;bUZ z8w=C(a{~<%AtIUCxNTdRa<3g{nqg55)aNq|vts$3%t@qWQRTC_(M-0G$>vpVq*xd| zl0_S+={U(WoepAOC!s5<%H~roXFXLyMjhps#;_)6_izB2rqSJ^T0qL%xT6l$a5jM| zbq&_*!|G5cNuszoG_<<9I*2n0V!LeC2EDL5lzw^fRINTelwgy1XtXe#8y_<92N;J3 zW~XPXSAEP4W(O+BV;p~m16EXtSxc~sw!v}bb+n63GO^g4%#2-K#|oE?%Txn|*9PsP z8e6i-w(&)kDjTT#`1JkEWazqaQ3Ws!!+4@_oa+N_CjvDwp>pbk$|}sO{S&x3co267 zRE}eo&GLdQ7UZxXkH3Wf&!Sb?e5PgFA-+b1`sFlgjFcrz~}!e%31m*)lkWJCtq{gI}^hI)HO%5NKB_)TGptFyzC`*B}8RN z%NfF(Xtkm}tEIACV|ZG)d@4DwgBPU~wZiQO=>j}RZ?@gN-YKp$_%89q7#D;)%ic9J z+x2fTK#Fp$LlrTi+QG%N0EV%OG=>lN3^FZfvrFBGPjfXd2s(!>gfi4`0rhXj%| czb*, YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Spanish (Latin America) (https://www.transifex.com/pluginsGLPI/teams/73419/es_419/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: es_419\n" -"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de Barra" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuración de plugin Barcode" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Medidas de código de barras" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Final" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo de la empresa" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crear" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Mostrar borde" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "Ejecutivo" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "La cache esta vacia" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuración General" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Archivo generado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Archivo Generado" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generación de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Margen interno horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Margen interno vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Unicamente se generara elementos para que tenga campo definido" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "Oficio" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "Carta" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Horizontal" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Izquierda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Administrar configuración" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margenes" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura maxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "anchura maxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "No utilizar código de barras xx primero" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de copias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientación" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamaño de página" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Vertical " - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir Código QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir Código de Barra" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Derecha" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Se ha limpiado la cache" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Se produjeron errores en la generación de código de barras" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de boleta" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Principio" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/es_AR.mo b/barcode/locales/es_AR.mo deleted file mode 100644 index a3ed002e49b1e230d35390231803fce8361e3849..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4138 zcmb`JYltLQ6~~WmHoBwH$wsqAV{$ifH@oikOh4w?n{lnK?V0q>tGB0Tl8q5lQ+=oV zuGLj#RrNd;!$Lrk4}yY8J|s~b1Z6cMx(1Ahf*nN^MTwvh6$4R`fEoyji-P}CeR_7X z$p=4p>2rT|t8U$M?zyM_Gr!+|&7*{NAM9q>zu!o70sQS=bZEbR6VV>?!E3>@An)gXp$oF#H5s21wuPZE7Oo4ogdZ1P0I$J14}xz69|GCmBOv>K z0^A3F8GJkVO^{RmEcj0F#~{!912_QwP3~U?2QePR%l!Nxmqhp z555Du0CGMa0r~wW!Rx@UfH#59fV}>5;9I~KLHy|N=-`?zgFJr^g5vkD2iczjId69e zj|qo`1>rczah?D5Ixk^7Iy_;KN9g`XFGLHI@CMd4GzuL-{) zd>Ukb-;(ingx?c>U-$#zkAy!F{!I7_kk9Lv;QPTpg8RWiB#F=Kc98dTTsRD}-@J^+ zgp}4i5I+jgaos#1#mq)=H!6!kE`x3}?_AIEt zpMy7mFN4>Edr@Qs@Bql`&kE0gyuZ6a_H#e@Zt$FpKLO%LpF)SF=yM?F=P8ia{S}B* z(O*E0{~sW)w+|m9``-_8-5mx|B2)r7Z}Y-4!e!xE;fF!aivx0<8KEzXg`2_$zyp}~ zAb1jd9OS(G2IP2N0(qTRK+e;@K#pfGCUHIog$IPUfIR;Yi1JR`S@cI?AA;Qry9dVY zcn@TO$K-lU$Qa&r&9QO*xGnUM=9@38un)k_z*viH*zU%<+i!Q`VnPO|Kt9`=jCns? ztGgTLd=xeW<8$No!L+~9Ey<+HgFW_S#kYv&9J_*c5{96nZ66gnmP}gge}4{urjO!y9IVD>>%tm z*zK_Q!4AO=!|s3`fi1(vVMSOLHU;aqIxbGgUx7!-^jbpmj_)+Fk5^@K-ieUj z7!Nm1yVF)JZJI5f+Z%3}M$)2%AW@xIV_Q+2sLjp(4q{s9v{$hQY|0HngQHlC41(*O zQkC8D2~jnOlE^U$RU_jk>P(G~IF^y5Bc|SMs-cW(sG}N+sD>)4p^R#2R7?B_U5>jv zcLnZ7sNO#xBqdg>TKh`l;EZkzrOzaTlK(hp>zysAFbWzS7b(qaxOoSvM@>7@pA>jZt|lP265u+ggT+?U{k?4?IxK@BeSBT7(R=tYT2{a zOj)gzYfF{Ig@Kw5k&(=N+%%0$snd)z^`NK*s*9PLUN`(s<`l}ZsPfs|cqUuOWb-OF zS}cqo%c2d;IdPJyM~)wRP7*{#Wp^(&BI7Cx6?L3nn!p^t*}(y1>e^`+)e=hH#4UBi zija)N_|8#vq?IILTpS+W*w`4t`S`I})0;zX&>rr6b@9wxwKAMwfp~blFp`@b*6~NI z+VIhV`O19x%Jy zYy4(WO{|(^C+?z3eGODSeDq#sI*8hFQTYfA!+5H2f|UW6Q@)y-QaN=}Wfh*QgHyOT zd>B`URF1Qi&GLjSCgd<7kADXLpK@h)FEvavz<03%(Z*X=!n0w5(Oi2fHXlUL>-W9;5@xaK1rBL;|CMDwW1$ccKIM&;8zNn0cvLe{;g z)*ZL|)qobKD>fAEs<3+>j7L`Fw#<4U64VGp)Y84}zUBaA4?C%dv702_&8sy|?&0I; z$=s5b<)iMlio2J*ps#TOiyY?=8fO}O8!FrmgTBt$R;_N)&O(**AL|$$H5^11CzAdv zde;kjzPrs|0My6w5)_bXcekN+4q3k23S<;O@}PJ~o`)F1$h38Y3n-s#GTybzh3>cc zahd{%ptB=_J%_taIqYsjY~d<&Oza?=6&#ppo2b7ml<_t9cDw3V8>YRUN}ke@#@EK0 z`1(4DRJR;Hc?0iUG3g(*A;SGs2G1eKtbz&xil@CQ=ohkbyk^Ho8eWqF+LeMelSa@9 ldv#nlA^ylp<+FVDuOXpjoGmmIRiYrG)gWdKU9Q>|{THP;G%^4H diff --git a/barcode/locales/es_AR.po b/barcode/locales/es_AR.po deleted file mode 100644 index d94f4d2..0000000 --- a/barcode/locales/es_AR.po +++ /dev/null @@ -1,428 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Spanish (Argentina) (https://www.transifex.com/pluginsGLPI/teams/73419/es_AR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: es_AR\n" -"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de barra" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuración del plugin código de barra" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Tamaño de código" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Inferior" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo de la empresa" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crear" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Mostrar borde" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EJECUTIVO" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Caché vacío" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "OFICIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuración general" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Archivo generado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generación" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generación de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Interior horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Interior Vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Se generará sólo elementos han definido el campo:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "CARTA" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Vertical" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Izquierda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gestión de configuración" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Márgenes" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura máxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Ancho máximo" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "No usar los primeros xx códigos de barras" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de copias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientación" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamaño de página" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Apaisado" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir código QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir códigos de barras" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "Código QR" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Derecha" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Se ha vaciado la cache." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Se produjo error en la generación de algunos códigos de barra" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de ficha" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Superior" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Código 128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Código 39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "Ean 13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "Int 25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "Posnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/es_ES.mo b/barcode/locales/es_ES.mo deleted file mode 100644 index 77d571fb9cae814bd58ae41a9ff0b1a2b2fd7ca6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4395 zcmb`IYm6IL6~_-v%VR@%1Oj~ky?up*#Jhg%W_O)#i|sgDH{M;x>m*GekJ<5E`=;Z$ z)4Ah)M3qvCfKL<N7s|{ViO@u|!a49J)JwvH(mpTs z!@@=35n)SsTzFD=N_bZ23s*tj*GRo5jD$|OCfpQ0A-o`b3VZ|B`54IO`y}`l@CA^M z_zjTH^DW^3`g>? z=ytr`3f>Fe0v5oX;4H}Fm%uUbw6q)WZKz+6{!fE>)Sm@;{*OW4@8=*Mx{Md=a|L`S z_-ByqvJH#!`rE-%OJ0F288NlKpr21JpW0M_xlvc_IpP7dEpm? z&k3IgS6PJqpd?(1~ya(ic_JSNgQ_|i5F@;Wm zc&Lk42HXI7-RD8R$6p8eUVazk^?n6%T>cK^ID8pINYYLmj_s#}_X&3k_X)Eg+h-Ew zczZxt5*`vB7B)b>pGQH~%Yv-eM?kjk)8I7tMd`l`vYvkhdHsKatk)}GdjGKq+h;q- z_Szx54dnj!fjn;)h-;AMm^AM3&1D`k1zCa|gKRBlw^ro)LE&L=0Wu@?x{!6>TF#(S zfv~T*Oh8UTmbrqWAooI!LRe2e1MAIaW2$zQ-&Gd^X2bScU@}(?ILiowy0rFHTP-&7%Q&iedrD-b7P-&LRSt{r7 z0C_4Gs60vKDJt)$@-&rasEiR_?Ax{;QAI(&V?yQIaMg7Bv6mPdjyj!k=Dc=Pwn<`p zRLN2$hX=@0r9hQQs!UO3KUJowGDDSFs_@Dc+l#z#Qw6qTsS;~1(R9$bDDXDbijCVk zzFG~u6&*OLK3c6DZPkudsoIN@O_g-D@;$$+>CjTWwnXzf)Ug-5O37hsqT6cK1X>2A z>Prt!qU@?#krUTKtfIO$Hs@`acmWL?)^wa0pR0*lH$k8}>28TuHVihE4s=h4iBnx~ zO{=zEHDS7=4%$VkSLaK0yj!hmlj>gBcD@&Bs_WH+7QE2w;2hT(cEO8bZHLYc)9d$C zSDQ|k#}2FOrk!+Y(I%?zG>#R!L~U%0PT**<-&?^Ma46qK2A)}p4U`)?t-;%|!>D27 zB=$@~jo5^VI?`m1JE@5|91WYPiKuEKteS|aCW5MosA{HKEpr!MIez8&Rp8eowe&`! z+Tv0hvCZAEG2K4xc9G|su%lLVvaWTg0@w|MMxKQ^9s1Cr;c}zf<7uDRUOeY)PhUN} zielUD`!K$aV;eh6F#cmYQDJHnYT1Zdo3Q@TW}W!Jx%^DZ!YpYo%oPZ>$WKvZT@vbq z`jPL!B=(&4lT59hIi_QWeT%A5svIuOSJkm%~qdb4Oc;GBel4@qVj1&QwF#6;3UxnH7^<)w!tBy~Y{=@<)(4WaFMIst}5y>gEau zILY91E>v@KDyJS&S%rRe_Z&WU?ZVgnD#y0UW_dss19BLUKQQ)x&3u)?rMBr<++mKX z*mKBKlJtBtxD=v;Q%o-!-gv8SoY3-m-r%e05`jhh4l|2GCV_d3jsKezIn;vc$d0T^ z;3*q-;O+CcFVG^*m@zH%wS%9Leug=d77(_v7b~5Z$NM^g_SdrJF-%1lmg1~A_>!c} zR~>J7w*o4~e%Gv7t>n$&-owN>vWD_+uviU|!w0=SjY`|qOgda99$Zw;26mJ} zVK5{^sMw46tf z;3D$5M@Sy>6Y25tCcd`vktWq{XxtKmVq*+@txSAS#~Qbi^X_Zs;!#}K$VVp9=}GuX zTe_xckX~|FmA%J_m`z+CMT^3(rt7IS4x+Xl=Z;~hT#W-S==4JvY!vTUF7BCda4B_Y bnvUUxErx?FkeO+@9}TZX%S85n%FF)&kEL_; diff --git a/barcode/locales/es_ES.po b/barcode/locales/es_ES.po deleted file mode 100644 index 1806374..0000000 --- a/barcode/locales/es_ES.po +++ /dev/null @@ -1,428 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Alexander Salas Bastidas , 2017 -# Javier García, 2021 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Javier García, 2021\n" -"Language-Team: Spanish (Spain) (https://www.transifex.com/pluginsGLPI/teams/73419/es_ES/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: es_ES\n" -"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de barras" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuración del complemento Código de barras" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Tamaño de los barcodes" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Inferior" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo de la organización" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crear" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Muestra el borde" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Mostrar etiquetas" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Vaciar la caché" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuración general" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Archivo creado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generación" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generación de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Interior horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Interior vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Generará solo elementos con campo definido" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Apaisado" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Izquierda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gestión de configuración" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margenes" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura máxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Anchura máxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "No utilice los primeros xx códigos de barras" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de copias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientación" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamaño de la página" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Vertical" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir códigos QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir códigos de barras" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "Código QR" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Derecha" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Mostrar opciones de texto" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Tamaño del texto" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Interlineado" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "La caché se ha vaciado." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "La generación de algunos barcodes terminó con errores" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de ticket" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Superior" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/es_GT.mo b/barcode/locales/es_GT.mo deleted file mode 100644 index bdbfa00f42583a09163c6c60b616fb479450960d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4142 zcmb`Je~4UH6~|9ajdpEo+M3$fYHzAZ6VuuGwVU0YxYn7sv)f7b$8>hGHf^B2`{wS< zP2apXz3`ys8}c!Dfk0~LQwE~X3k{S z8pJ=myz@Tq{+N62`Ek$g@2|h|lZ18>atq`iuOd1N{`S>)q5bAHL_5G|g}(!_gq|0^ zAme|O{!79?3;!nkyYOY*MdjEo!|+O?Rh}xgRFN=`lp0#VMiDX*M*zH_X^K~S7M*{gI9we1X!}#h==})7gWOcuZIo9tUs6x_iM4xDK-ZFN3V_Ns#w>3S_&!5Au1Q23gO~ zh0nmpTao^P zuqs>@t_V*EPYUlBu7d1u1KtR>LH75<;2Xh@fSfm906CwYkooU{yuK&n&w-q0FM$et z8N43635RF94uN@a8sz;S5^jL3|9v3q`2hGP@Z%s{K#zlX=v#R4{dyXFEBI@W_q_=6 zx~nnC_iYcz`=vo1p8z@UWrWu-y$JF?S74COw-e;?YeDwMZsE-`zZc~72SKEFzn$Pdu1JF_7F_8VlK4iag%s7uw4*L1X zIe=8`=MX?|<`>!+WFEq~fzb40#rb*zgzGEk66ZJH0gfxz)CI^CWC@ajlp!Su-_u(m zdm*<$I6vP8*$3GVxgBxCk5(m0h4Q)z-qlT^YA?fj@=hE$!P+q9wbqj1eO zyG|!I3Wt-iitQN_Qz=T4s7+pmyeu9dM_!)1G4jUAJ51gLd6VQ#k;glGQM;qVO%+7V zh&*R>Vra(3oj`A@)yOrBqw+mv?|8kkQl@gdlWeM_Wt6Y|mZ90D`N|T_nb0^Lyy8@Y z(Zn>=nhlIB>YrC;aC8-|sZ}wt5@HwCikv+Yg^3PmFtBc1Vtwu=YQqMBYWB4yMnz$; zsZ3znCQM@0((6Vw%$g1R8conB(0qBWIFEO|Uarx+4jZwrJBH@XT0#pt)J@p&Z=PJx z4(^RHdD^zSZPhZi+2XZ>?uKn7En18c)r}3za&e+gpB`Ee(_**13L9XQA9XB3vE(cc zH;7V|)p3NV8o9)2n^4u+Fj05cIK;8^#2qmWhN*@$sv(bRNTM3DsD?DE^-s0TQ+Q?h zmE%{QUt?4s#s^M`)v7U}G6HoP zrcpiWP<<0Vmkr%n_np-HIQ@imN!P8mN*RT`-k<6`J6sA|zW zR-7xVm2z#lva~o-GaYy&wGcOLBUS1)<5WE=sFCVYs%F+L|0Xqqv@EDxCOeVJBNO}dShc_6!8gTyJk+0`cXSQxOMT|e6^BJutA)j$d6^G(k8xt zuAV+PvQSwlZ<&`J&5U?RVMIQ~zAC81oKCQbw&4-wx3r5*GJU*0o0{BO$NJWcOO-=- z)`rc3nq0NXrE?clU)M-Az@-mTvyp4Z1r_38=*H9eBU~BqIUTC$X_ZxXs*J+C+B=Pp z{rmB?Pi5I#nG7$;U_llOa`iQ-i3y3M!1KZQBKDwFH)&|+q)2AA{f>%tnvS2 zd0n@4?`u)aJIHMRTXw5zhl_7Rc*;iZe<^VT4K$DHme@}JWP#@E;7qLh_0G|(<7hd} zN->GtK=}zYm5&bU-V&{7-)hH`T=#nCrSQGNxWT;&sObEbU5}(vH6p2feGhE^-ex3! zij8+&s(>&Q#|ky!=JadeV1O-OHnO|xol|k|LJ$orA$-@;>}XU%+u&iGx!sAjRl{15 zs@lf-l%dL*hq~6dhQ_(#L_)Mx6bDCM=$&(H8%KhQL4rh6?cO=mL`}ueZ*A`{MyQPu z%7|^F5~4U>CW?!_?_jbY3$ByM5~-5|b&><@5{^di97?jLn!%k+BB~&Cwrw5C=JHnO zGFtvi{q!Q|P?RDrmzOW0@NY}2bq+gxcq#6q_$wlgALg^tL9-je>#Mq7#)lPjP(TeT q=r(iLEUrKD!`W4h%G$wS+@+Z^*HI?wXt}s}sg72qjvlXiMfw-GFEmvE diff --git a/barcode/locales/es_GT.po b/barcode/locales/es_GT.po deleted file mode 100644 index e4dae51..0000000 --- a/barcode/locales/es_GT.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Spanish (Guatemala) (https://www.transifex.com/pluginsGLPI/teams/73419/es_GT/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: es_GT\n" -"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de barras" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuración del plugin de código de barras" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Tamaños de códigos de barras" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Parte inferior" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logotipo de la empresa" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crear" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Frontera de la pantalla" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EJECUTIVO" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Vaciar la caché" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuración general" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Archivo generado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generación" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generación de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Horizontal interna" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vertical interior" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Se generará sólo elementos han definido el campo:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETRA" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Paisaje" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Izquierda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gestión de configuración" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Márgenes de" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura máxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Anchura máxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "No uso primer xx códigos de barras" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de copias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientación" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamaño de la página" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Retrato" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir QRS" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir códigos de barras" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Correcto" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Se ha vaciado la caché." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "La generación de algunos bacodes produce errores." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de ficha" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Arriba" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "CODE128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "CODE39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "Postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/fi_FI.mo b/barcode/locales/fi_FI.mo deleted file mode 100644 index 868b531675ad41a8587c78c45fff03814df7d1fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4002 zcmb`JU2I%O6~|9Vno@^=n?NB@+DSjCL$bDa*N*KC26i`VP z;P=7zfG>a?@}Gn6178Ap-S5FZ@NY7I6YR&hADj98aWDlAgS@{2vK|BCp(Z-E<1+YO z@CwNBxC-+A=fK0@55QyKiy)u>GI$7l4a7r#M+en(6Xf;#VHEGb6J&h~n?)BU<+jZ-vwFUk3l}?MUegaDaiKx0%SeE6uvC) zUjcdjHL$&p=#L#k_+^mwJtO0* z!mkRyE_`12P2snN-w}QfgbVaT@P6^8VYfiPs+jIX{npJbw>(1bhHwy<;GMS6L7bok#ak@Dj-Tza;z$$a(!W zkk9)T$oBmRWP5%l?|%idf3FI!3I8Dcv+#A0?YRzep4||>DclF6c>bX95Xk=agQvj( z5KHM%c^`mmuLU{3FU$CGko9~)__Vx#7Uc7v2a(>Lwu1fy^ z1|fVe+&JoNyN8IB^U)uABp$H~cMe9^iB6W1EeUMrtAo1M=5)n zvSXATr|bmfhAEfC1EeUIrrZeSMk#lia$}SmryN#zQ6;SE9#zwi*G-@*VX$V_mlVM z?Kw?njcxi~TdjssRYz2KxRAe4o>?wXq0w}0 zimZ-rh>Bt4BF{J~Mka9Te2K5v%1FXtsXI+2q)`cZR6-J!kVPe=QK@6q62C&1&HQr%*g0vST(*$o)qtpzo3$&xSS@GahxS=a9F;h(}>&QZ9MisO9+3a*d zEf-2lGm8s-CEY|s67zQ5R1>*)-6qOmM)egJ6D8d;yeDxMX_--};pA9iIGq?yspM!T zJ$7;!t#8h=E>VuW!1|sGqm05W*6Xoa)=j&!eTsLDV^Odk;|3CC?KLuL$^?P2H8p@A zJ`&@E8mKwfw3(ry&CSh0Tu)%ln%)|$gpHx@M`x$!iZeqF+wIU;dL%h9v}PWini)FL zH$O99*!3wrRGIeyU7dXsl@p1I@Y(QqeLMO%*{h9EMaXZ^Vu(NF}a?FEYaUI>BHJGl4^^mf@_cjXBY)8XNWLz8P1l^i67l*X4 zv)zU&6?q$;+f$Fq?b?QB15|5g+s7wstTR%TR(uV!+#a)Vl8Y682guNnFbuGI*CE!} zom;}rM$>evk>zUS`KT)a_2xT8sotCI)U(j27H+s#keuG&+}j9IvOJV3)!5nI*@kD@ zM+L1TIpEJ*D%7&))jb=>&_~ONWIgNa7zy<^evnX1vTUYAQEUH!LXsN4u$+Y6mr4`%OwZ)!t>?3F% zidCYM2ab9(y9YVctnOP>ssFB8i>9tUu2BEGYAx^HpmN=N)y}o)TxhB~s3Wwynh+3& s%XD6YuSI#Lreo)D113VrhKF3YP`0oMg-b^vtsoevT, YEAR. -# -# Translators: -# Cédric Anne, 2018 -# Markku Vepsä, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Markku Vepsä, 2018\n" -"Language-Team: Finnish (Finland) (https://www.transifex.com/pluginsGLPI/teams/73419/fi_FI/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: fi_FI\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Viivakoodi" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Viivakoodi-liitännäisen asetukset" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Viivakoodien koko" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Ala" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Koodi" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Yrityksen logo" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Luo" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Näytä rajat" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Tyhjennä välimuisti" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Yleiset asetukset" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Luotu tiedosto" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Luonti" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Viivakoodien luonti" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Sisempi horisontaalinen" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Sisempi vertikaalinen" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Generoi vain elementtejä, joilla on määritelty kenttä:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Vaakasuunta" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Vasen" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Asetusten hallinta" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Reunukset" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maksimi korkeus" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maksimi leveys" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Älä käytä ensimmäistä xx viivakoodia" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Kopiot" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Suunta" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Sivukoko" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Pystysuunta" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Tulosta QR-koodit" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Tulosta viivakoodit" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QR-koodi" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Oikea" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Välimuisti tyhjennetty" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Joidenkin viivakoodien tuottaminen aiheutti virheitä." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Tiketin numero" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Ylä" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tyyppi" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/fr_FR.mo b/barcode/locales/fr_FR.mo deleted file mode 100644 index 2c94f323f3065b6048fa98b66109bff0f2954555..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4631 zcmcJQe~4UH6~}LC+S-jxn>4X$H1Vc2>Be++e(h#=C*8)G+1bsQ*&mrqw)IETzI}6N z=EgVgy}tWqe}sZk5NSa$VAY5}f`Q6lQ78%pL9Bxy3N4CIsJ7B#q^(MgP^>7??|JV` zb~lLVA70*hpLc(sd(OG%y|R7tlLAFS-Vd34mk^JG&JB2>eE!`+ph=u#J_%lj`g!J8 zx&0elzsP)w*=0V>{4Vnu=J%P;GJnAQAxQf^$Mv5uf6Dwh^Lgekn7?Aa$b1RB5$n7R z()lidTfysY5`vDn4ZI%Q1>Oqo1?hZAW(FiZMz}uCyq9^DSzwl!$C$^Nv*2c|a{_!1 zxB$}rHh2qo1|+@CG9L%=h%e(s{oe#h&u74$;Ikl&e;ynFU*`7LK|043?!N_{8PxZJ zH2(xh``!;?h&TZT7b&$qi z25J63LE3LC29q6kGVfsSVeVt@2T9L^AnBE44l~D@_c4ng>3s|&Jst#igH7;#;A3D4 z{5rS40Fr)hf~3zoAno%Hu5W^K==|4%r1#Ar>9d2moBJh5^9I50CLt0at@k1pC;l3w zIQlK~HEzGe^*5M*WWL4x3-fK}JIuc`uP`^kxU~LekoLQg>sy#xncJ8rRmR2SJ*b2jL=d65I+=;+9wI#1Li?m-vtp`;xpWT z4y1c>5u|fG4br{(5lH*J1d<(JWnN;w!Tb~RGDzd!2BY|8Zh{h2zk#`hc`HcyZzqT& zhzv;gqX5!*PJGuba?D7^!di)h6dt6~|-X8Z4fHZ$Q zh-(u0=w9&SkQ9V$PGtc?df^xXLnGUeUnthdj=6L zPC{ysQ;_>0R4R}>WCrpHNCq+rISiSG^h=`uv5u4{9$Z)dD1UzpJOoK|eU@1SDHbSB zD0b)`(A~u^BDy1VKSd^=62lOB(s+Q3$Y(`r7KK$= zo}{-?fwmm!cG`<75XF=zrttt7QOt_suqcj*;$cx76~!@892Z5}u;{gY%UzX@*Yrd& zP*$kKq;gcKWY|)1^Q1PuW39?XFQ{YXe$}xSm19Kdfl~2Qt-MeYrM4fgM$>G|ZYeP} zS1HelY2~T_dTl&Q+#0I7Y-mUEpy-s`g9A&iAs5*&Wf!Z+mKW%=o*P<@h#Qtv5NeyM zpG(uyiQq1MPt_*jJA)ujc?i7ZOTOzE-U3q2X@0C1VrRn znA4yS9SSbjsy-C;vF+J&#%rsqhnIff)jKwfuY$k}Ogw>tZf&hVwY{ZiEp2~Nh5bOT zdA_Kv!ZD|+6+yO0XT~CC$Az-obXLGjnGxZ8CUjLOI=*eeTHYCDhlz4Mv7iD2m2z@E zUp$_lF3E*b^<;T&cA%AcHr4WOz)V->%gGRvO>#6loE}d$f`_K6 z$%6wk<(bmj(b7Yyfgk4U>^1xAGvr)pD)v9)ouUqc0nk_)TC z+c`P5sKcu|=VY|kz`TR}<0PiMplx!}g<`0hiR=+dQuv%0bmhc^Ovy(dmC;xFpgf8y z#>#!ve&7JU_RBO`EtQJL9+hbf$Q&8?zhqIEVl8dTdZ(XG`&o8UBP)=DkrE7UBfW96 z0>pU1!d0^ZN~r`S(_T05FiskLXe7-4F0WQ7v@y%Er15Os>xR89@@ub)1bVXL`vFu4 zq{A6D-)LxLOf*E%k&kJS_4#(=;hVj#3&kzu*ePtG zF`k>C&op<&d3RlfG$*sj-i5wl$}Ua-13h6KfZ8HN}jh?4epMZwmS4TfwDntp^bkM%F0R{vpOMklWj`IblQrC ztGA(LR!JXus}pKR<6nu54drJac?V{>CJtu3_99MNf9=!f)e5p4ZW4vZ`jkyK!ooQs zC;O!7)zn>Xvx6zJI8|?G+YodAA(u}Ep2i;;iTmFt^SL;G%lh3`6hibDfkJfqm8e, YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Alexander Salas Bastidas , 2017 -# Benjamin Toffoli , 2020 -# Cédric Anne, 2021 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2021\n" -"Language-Team: French (France) (https://www.transifex.com/pluginsGLPI/teams/73419/fr_FR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: fr_FR\n" -"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barcode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuration du plugin Barcode" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Dimension des codes barres" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Bas" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "Par ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "Par numéro de série" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Code" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo de la société" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Créer" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Supprimer le logo" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Afficher la bordure" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Afficher les étiquettes" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Vider le cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuration générale" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Fichier généré" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Génération" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Génération de code à barres" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Intérieure horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Intérieure vertical" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Il produira seulement éléments ont défini le champ :" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Paysage" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Gauche" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gérer la configuration" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Marge" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Hauteur maximale" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Longueur maximale" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Ne pas utiliser les xx premiers codes barres" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Nombre d’exemplaires" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientation" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Format de la page" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portrait" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimer des QRcode" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimer des codes barres" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Droite" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Options d'affichage de texte" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Taille du texte" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Espacement entre les lignes" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Le cache a été vidé." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "La génération de certains codes barres a émis des erreurs." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "Le logo a été supprimé." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Numéro du billet" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Haut" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Type" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/hr_HR.mo b/barcode/locales/hr_HR.mo deleted file mode 100644 index 72d09c5ec44d53a659a12612700ee0788d155591..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4580 zcmb`IZHQb~8OKlC#Oi8VQ&ZbU6Hi(bvnI3iwwv9Z>?WO=oovRPeaU2YTdi$9J9BpC z?A&|LaPOVj>{_JsONbyf9|~4%OD!mcqEH$L6e7{AR149RVxZV6g<>hF2o)5h_5a*? zX0r|b;0F)$+}}Ot+;h(JcAk0bwk=NxG!6M8Wa1_v&VbG*@Id?iCxyU}ILmwjyb=8; znLpz3XSn|y^C!&bnJ+MZ&U}%1j(MK>GV=mR=U(LgI`b9gtIW&HE6mrKSD9~sH)EeS zL9*{1@D}jKPYFRLZU?u5cY>bGd7L@LoB_9BpA+C` zzy*-buY$LN%OL5s#ykV!Cw_nj&HorAJzoTG2hW4_{bjHZe3QrD1<8&Nc>Y#QrqJIF z()tr1oqHdMPsBqY>D2&tfG$Y>dJLrfzYA^yp9Jp$e+tt67r{@1uYt7BTOeF3-UaFV ze}J_9Ly*q91s{_iZ)e`c+{N6(+zXPP{UGTTXAUw)nMas;kn}zdk{%C&JHa~m1@JL2 z0Y1&+zXM6X_dwF;Um%_HAMW3P;E?@WLDG90Nc!wx?&Nt1(z^ZNl^cYJfwbR;*qnG1 zjHf)hnb`-@_%`luXYOF$!Q9E*#gxo@nEROh%!4598|QwSd5Ag69Ah43=9mTMaggkt z0`CUP;OD?LNcNurDGwh9DgT}U$-Z;U^C0Q*GWUPM{3Uap`3mz@=4Iv;=IbE&^(wd> z{3A$u{SCxV{1XqjT5N$bq|bIdDDHbe((3?7`es4Wf0FqCh!6|Q{ckfL2kD&Wz$ADM zr1gIR>D<49wEz3u{{Xxb{jInJlqb7ETE7px4IBY?fm0xzXF$3aZJz%Q_s@c~?uX15 zK-%vDNPhe^^S8{)%-5KI07=g`K=Rk0neQ;)WB#4_K6nSd`!|T6*p9==Uw4C~?+BOx z7kK^cvU-WNgg*Ke4==kco`t^X5G*jFok@PDySuqjO)o;GAQG|%au4LokiC$7kgq`YL;4|Kg-|=( zMU?CGI>7x=a0oI8xeqc2c?d$jqjnH73!&VvLXJbI!Mv!AGaqIuFvIT?Al0Ne_rC>F zt;#{}g)BnIhr1!0+x_TJjJ^g*Lo}qYf9TwRUksTGegvcfF15zTF7P&!@8xpxgA~!5@ zBO-?{lwY+q-J@(d?Yi+~)p|>&-u6{!tk;_iWMI~GAaXVgtt)b?vN%D{K>J2H(rdem z+86nR$S3gwQX-!g`9YB%68S?SKP>ViB0nnfbYR}PE#<9B$JVXL`&xxsOlU`kT80hX z9iA{j%TcRx(fT#)-0M1OQ9FSs++WDgSBeV-QE*$~YP77XstqlU&6bL@Vp4nBhh87G zr8^qxnp`rD=8qyPc?JecyCfIcF+~r%$cFXJn)O2Ei0(i~`=O~)Hi| zf)ZfzlyTdxY-m$&(6`<0im8PSF=Ip74m8a2gHWD2)w3WFGf`m3sH$xl1aQ_jP_7%> zIXaHwD(0*o`pSf2&Np5tPn0P!0`9Rp0?{27Wh7r2*;hvDm63a8Bwsnw>Lg9!k)%h8 z9%*_Eii$oJ${L5%w#er}cQ86Wnhsj3YP`B!)ZvQOo^;?he1wFEA`5p0n8Sod$c?TI zM04zWj$B|}y!-`s4htUHF*#3pbZGBTA&4#yJdSRy5pLz(pOfdpD# zNd;l7;wvw3RA~K-oHmY?#g6gin5&F)uZw;N#RqEo$U$t9N@0yxZzIyNidJq$=6#Fk zD^Kp{w|=?55r(ZG6OXT~tPCIzyud8!Qv+4&#=A8km@Lf|;~~}u@!|Afax~uXA3k1= z_xDW~rwiAtO%5db^0+FE*Jbjqz7GB4_y~)J*cv9}$C+Rh@XFQpd zM`c3dYxIwdr+QOk(p`dY68%_{#G2IMzW;Z%ZQ7cc>Q&dOSyr-U zYbtCi`SznvqZ(uW?MI&y3)(T4zK86mOvae)C^2E3Wn5FFt3u_KcFn_O;Xc*i<)CR@ zxrhvG{|{Ao>Q^t-Llcjl+l$va zq(M_}D#XR0<*PNUYx%n7;#xteHkaes7Pgno&8By&uR-wP1>|z5o9fyaY>i4X%`f-- zpv1h_4wX+M9k|6;9nWqWvv7e4?Z(PbUOJ8Xrd->r$>?)7=R z8e5mlvhLsn7}jx?)$&Iyz`tO(HfyjM7*{zkh3>GYHjk`7Yfw{_n9*47n;;|)bxecH zG{-lG$YH*Pq(Cty1=R9JA}ATqtu$5CBl0qt4R;%CEl-rO3@M^FMtVu31o^2sNwOmtB7U5sRMQ#S6+N2T>l+~K6n$oPf`qJ69MC=s;iA3$?fRfk; zmET7WA#$D?*a#2>($h`&qNg)iN;!z4hPk@0*Pm_bfsItfSi9*gTiRzpL_YHr3OX{! e`dTdD-w#QGl1*kys@c&?w`j|5)t1+n?f(K7A(z(x diff --git a/barcode/locales/hr_HR.po b/barcode/locales/hr_HR.po deleted file mode 100644 index 3ff13ef..0000000 --- a/barcode/locales/hr_HR.po +++ /dev/null @@ -1,426 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Milo Ivir , 2022 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Milo Ivir , 2022\n" -"Language-Team: Croatian (Croatia) (https://www.transifex.com/pluginsGLPI/teams/73419/hr_HR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: hr_HR\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barkod" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Konfiguracija dodatka „Barkod”" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Veličine barkodova" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Dolje" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "Prema ID oznaci" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "Prema serijskom broju" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kôd" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logotip poduzeća" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Stvori" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Ukloni logotip" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Prikaži rub" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Prikaži oznake" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Isprazni predmemoriju" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Opća konfiguracija" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Generirana datoteka" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generiranje" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generiranje barkoda" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Unutarnje vodoravno" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Unutarnje okomito" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Generirat će samo elemente s definiranim poljem:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Položeno" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Lijevo" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Upravljaj konfiguracijom" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margine" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maksimalna visina" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maksimalna širina" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Ne koristi prvih xx barkodova" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Broj kopija" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Položaj" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Veličina stranice" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Uspravno" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Ispiši QR kodove" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Ispiši barkodove" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QR kôd" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Desno" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Opcije za prikaz teksta" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Veličina teksta" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Razmak između redaka" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Predmemorija je ispražnjena." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Generiranje nekih barkodova stvorilo je greške." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "Logotip je ukljonjen." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Broj naloga" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Gore" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Vrsta" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "kôd 128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "kôd 39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean 13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int 25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/id_ID.mo b/barcode/locales/id_ID.mo deleted file mode 100644 index f8301dd190f6017a2b89734d5c1c2bd4e3bb6ca2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3963 zcmcJRdx+du6~~Wmjb?3al0Iy-wYSyU#AJ3}yV>1Iw|3^2+0A5TcPEqC*q7+tnY%N$ z`+E$(-<^E~B`SrYMG&omS`bteAE1Z&9o!ws?y6)42_9*0b$SbcUx(NR4b?DH3`g)=<@UrmdAePV-;Z^zl zH!}X6@Fn3NgnttLMR-m4s*v6=JaoHwq64Zvi=uw}G6$cgQ#ea{lB%&KpnW7eTh?y)xedIUgO!dG%57Aoxj{|1!va zTmomn=Rn^7D#-UchDknu9ArCg1`mOUL7qPjvR!!)4|(YB1RFArLEisi89xcK9iIac z8u}6lRrGC;&wCc+xcxx*L*Wa;9}9m1vYnSfw(FO|tHR$3UlRTiybbIA3LXOw!f5{P z=0M(G5iWsz&*wn4=Mj+gtO~m_AA-DZ14Mcc+C%7%LLPxU40#a3?f4K>1X(w?6GII8 z^q%*3`2G=y7a2s$IIf*dD~A;*>PevnTf$Deb6?;qDPXm$hjyWFGF4y50E1-Pu?VXQ{Z<@Rr@@C27lf5YD>2O>5Q70lVHrg3FWs{z- zx7BJCw@pmt2g}|{vvR&n<)G)bmFpVS(ygwc`Q=(=nHEfFV(tHvRl{GMX{$Bs8(B24 zS7u?`!xJv!^Fl70a=Oal>1xvpT*Zsz+ zH#1;Ow}I$v&_t1K^# zH%t!^Ni8NF+fJ4Gog~$a3TnK*oNAa2%X?C%kd_6N%VeihnS3gfQ`xCPe)?DjZM>!v zmukj3OnmL4xS*P*)9lpK4}&k!%iQ!l4=?q6jUW_ zN1;iq4%LyJ_oM1a*STI&NT)Y9Hz#m!VPegve6g}v-gP@Wks0@p+Q^6$$FQKB*>X5U+wi1nb#W6Z3sq`UcmIp3ROPBvLp4%86ZaF{)fy$PuN^gY(6j!YBX4y0, YEAR. -# -# Translators: -# Teguh Umar , 2019 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Teguh Umar , 2019\n" -"Language-Team: Indonesian (Indonesia) (https://www.transifex.com/pluginsGLPI/teams/73419/id_ID/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: id_ID\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barcode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Konfigurasi plugin barcode" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Ukuran barcode" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Bawah" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kode" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo perusahaan" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Buat" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Tampilan barcode" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Kosongkan cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Konfigurasi umum" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "File yang dihasilkan" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generasi" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Pembuatan barcode" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Horisontal dalam" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vertikal dalam" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Hanya akan menghasilkan elemen yang telah didefinisikan:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Landscape" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Kiri" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Kelola konfigurasi" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margin" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Tinggi maksimum" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Lebar maksimum" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "barcode awal xx tidak digunakan" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Jumlah salinan" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "orientasi" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Ukuran halaman" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portrait" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Cetak CodeQR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Cetak barcode" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Kanan" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Cache sudah dikosongkan." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Ada beberapa kesalahan dalam hasil barcode." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Nomer tiket" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Atas" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "tipe" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/it_IT.mo b/barcode/locales/it_IT.mo deleted file mode 100644 index 707f810d667bd263977be948acff77c9470b7124..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4174 zcmb`JZHQb~8OI-++LzU8+GuMvwI^$nCZ@AHFT2^@Nw>|+WOh5r?CxZClD4s8@7_5( zbLyRYF87|zx(DLH-3q5JOSGc`{xZrXTaaS8z&sUzL{tT_=fOzAg0ho z;U&5MmW{FCqZ_wD#(7n0rEQM!D;X{xqmYr zB4u49NL-M)<7oi^4App9i_W z&w>^3Ja`Alo8bNI0(qT#K#p@1|##+R2Tzzm|hsT4s;5zVe6jp#Wd4PlC z;aJWXZH@M7P#^^htG`W+K0--fHE z(~mu8Y&d+FsKjjPgv!=A+oMXBDmnasJXH!*nV`xfRSr>QiYn7onV|}=T(P~#3pZ6@ zJC-W3_ME1pCW!)XQ?1yztz)V_R;`?D)lOBZ+Kb$#a$T)_&+lrQTdLQVXkLdp_JZqn zHMr|^TdkTv%cOL_@&sE~c2%uNh_w)_sIHC8mJOX3(BQ_Jj-By&=+wFi0@X>qIjw9M zY$_e-o(^52y55>rZM|y3)T0jCMXFclOLd%Et!k6%Uf522FVa-ktBw}D(CZ+MYcjdu z#Yk_0ha0BX@2Rdfoi5KE4A)KDb!pK$)lW3SiW8?cHii)-wAk;hAO-~G+sL34OR>S` z232aXJFXBlZ0ussIBLWubm~NtOPt6^(vi^MHZ{>kP4rO{P1HmeHPJ@RbXUv#2&WvM z@_Z`rX@XkA`XDKZTG2XG8ig~uJ(fO`3`+hJ+tb@2s3^AWzK;~@IJR+u7mWXD?NpeC zMlBmrYZE!-E$8ynDGM{Cy)aiGM3bMS$R;k-j{1@BAt?Kl_Fbmd&YaS50-r_IC{>P^ z=Bw&dwYgkdS{!NW2pP#NBpuVvl>40|)3QZ1(pbtg^_t;#GDp#tMU~IyrZU+=CYx8e z$zoyZU>3(n-Ai1i6?iMM-gde0_a=4CMxKGtu;|E3-Y75mX(dWjpBNcQw8Y9E0EGnlr92W6Rcv$&eFHW?Z zJ=vPeOkbJD{#JFIsfI|r2|GnKy<*(`1F>Z%q zwzE(}E5xByEPMmy(~!Qwy`lJteCqhZS?n{-g+Ua7RnQ?5;N0n>pIDZAkyRJIHc&$2 ztcYM$RItR7wC!dYUj@ewaZa2`d|vwMl0f)a4-J(9msX;O&&TvUXldN(UUO#=Vvei@ zSlo-TCkTn@88y1GF{)Mq>-$~Yf;MjNe%J)iOdX>z`~aFcluQnLxwQHfcXNZw&Fv zpCPF#su}owNQ`Vq{6l|L%&B#Klma#B1ZE(tW{m$>3XwPnK-jus ckxeh4venX}+LqbI(sFCD+M<(, YEAR. -# -# Translators: -# Pierfrancesco Passerini , 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Pierfrancesco Passerini , 2018\n" -"Language-Team: Italian (Italy) (https://www.transifex.com/pluginsGLPI/teams/73419/it_IT/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: it_IT\n" -"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Codice a barre" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configurazione plugin Barcode" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Grandezza del codice a barre" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Inferiore" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Codice" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo della società" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Crea" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Mostra i bordi" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "Executive" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Svuota la cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "Folio (FC)" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configurazione generale" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "File creato" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Creazione" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Creazione del codici a barre" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Interno orizzontale" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Interno verticale" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Genererà i codici solo se il seguente campo è definito:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGALE" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTERA" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Orizzontale" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Sinistra" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gestisci configurazione" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margini" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altezza massima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Larghezza massima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Non utilizzare i primi \"xx\" blocchi per i codici a barre" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Numero di copie" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientamento" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Formato pagina" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Verticale" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Stampa codici QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Stampa codici a barre" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QR code" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Destra" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "La cache è stata svuotata." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "La generazione di alcuni codici a barre ha restituito degli errori." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Numero di chiamata" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Superiore" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Code 128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Code 39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN 13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPC-A" diff --git a/barcode/locales/ja_JP.mo b/barcode/locales/ja_JP.mo deleted file mode 100644 index 7c77d37fa0a7cb46d6ff0f02f5d87759e9600170..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1268 zcmZXRQEya56vszI#T6A$6B5PDBSdd^x78GGsY>g%DR%9$t~^SH-PyZCc4s#CPF-qD zbnjJDMPfDdp~OfU)L@_u21$WP;s?-=058L`@W7L=KKMV|r35|6>~GFJ=lsu^vp08a zUSzNxI4|K`z}bbf{}KGaE`m>hzk-j0SHZ2|AKRFUdX5~8xvvKR3sZS)|v(zH;tyybG&W> z!*Y$Lo#VD9d0CWel1)l2Ls92tqpK>I4TV)k_rF?M;Z;??pF|OEs{CkQep*&7%L^?6 zh&@!E7h#}u#AZSzwOyAiP+FuulB^IaZTX=h%^3B)zGlRVDyUgjGEG*RYf`Q`Cd<~F zs(6QG7-0gR7Y>ZSb6_&Z59f;SP0hTUD$1q_t(T7iRq@7VgUBlxpQj2lUQvFisK$F+ zSn2b@Om^7I40)MBo_*aP8h#}MOHGT&dZke4s4lDteXcaGm=@o!^bzo_nz0R`>H}rd zc;i*l*oP7w%;G&>Ns5Ng4+`v8Mw0LD-S+U^HEWxZpH8=0tpQ8Ysw$6@Lb_R>rPWMM z7pBq{)lqtQ=(X&=^f7VdU?IIHm7mJz9y~QWkV%ajZLvj<_Th6Yk6VZcrAK(VCc;SC z(f3Oe-rfg!)UPT-FQ>6#r30VuJ*w=+&_3_=N)_t(x9i@72^*2mH3owljb=yq`gJrj zl434daLMm3zC^#tm+aP+6Rdmrv+mVXuD$A#6&L@;T)g6vvo1+oyylXhT>M@4mus$l z-nExpd;%q(-kHB}=iEwX^)&0AI&*t|!L=7%{IzSJaS1NVF8J@+!z}pbxvOF%&+~g$3~#@ R%_U6w73-c`y}SGa`xgsEe8&I) diff --git a/barcode/locales/ja_JP.po b/barcode/locales/ja_JP.po deleted file mode 100644 index 1e67732..0000000 --- a/barcode/locales/ja_JP.po +++ /dev/null @@ -1,426 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# in dow , 2019 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: in dow , 2019\n" -"Language-Team: Japanese (Japan) (https://www.transifex.com/pluginsGLPI/teams/73419/ja_JP/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ja_JP\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "バーコード" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "下" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "組織のロゴ" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "キャッシュを空にする" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "一般設定" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "生成されたファイル" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "バーコードの生成" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "左" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "設定の管理" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "余白" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "向き" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "ページ サイズ" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "QRコードを印刷" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "バーコードを印刷" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "右" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "上" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "種類" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "" diff --git a/barcode/locales/ko_KR.mo b/barcode/locales/ko_KR.mo deleted file mode 100644 index 46e8940b76973fa7dc7ab7e82787febf9a12b3a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4455 zcmb`IYit}>6~}K%!^5;GEiJT#gj=BCkgnIees3Pl?s}7$*s-&5(ojg-@$U6{(%qTW z%s7rCKIGw~PGYFj#LYIWQ@7*^u5jF>F%UpSDgse8q5^?HjX(kvJhO;Ol|ZOG{%7ZG zYzk7paJB#W&AE5x-gD16bNAXEH;)N41$`W9eUA_a!R&i+K^uL)5a<#|m}B5gu%BTT zx&K+Vzs@|vJkOkDev3KHyu_SgewX=ukk);f?N^vTX8x4<8uMq&pEG~S{5AMK%<~3F z`}+g92)yY7LeLg(2N!~OgC7EyfV96LGYpa+4Q#hCS1=!B#+V7_I_7%j2JmLgvk|-n z+yc`2DeyLMJ4k-*VjcwX69rso{CSZ4oCfa#XFz)XHLwbNgZr<8w2y!C_-z;r!(IZ? z`x`-8_aP9Eh(|#3s}H;r%z+fIy&%nh2)q@12D}G63)1{AgC7K62Wg&bAVMpygY^8H zAie)Dkk(s-hbfMCG4Ek6X5PoVA0$7Qg5+0_S-?xI~&z;PBd0c|@UNv}Nfe-jX)|{)2SHlz%OG45 z``A9hb^#>6&aizMB)?zb{;MGQ`CA_UBlo`r(!2}tG12?CfHePN<}$Dbb_+=F_kr}h z0V1`cpY6RMy?2o9<7}SF*Er5Yru?VF8CAiS{69g%a z&CC_d)y!7rI*{gV2dNG>F}E_eF?*O9kiL^Fh@aSl%M$P@kiM4-U=Vy2l;GPS?Pu}r z{yNpnAV~f-g7lq4xIYF`+}fC(AnkKANdEPJ_)Mt0#0uz(P%YF9QQHDhJg}^|1ELxu zf9b6I2t;e%4N>gpH#*bXp!JZ1?t?xBeHywSqFj6ys)m+ApM$6^_aQ#Xq})?$ff}HC z=pm>JdIb6?MC}2n6QbHrLF*uD*j~A%b*b38<=sBYJuv6YKQ8bzFn#_9KYpy5#ea9sE6nm!Vd_G zXq|}Gi)e$0Hi~GIh&GF8i-^^VSO`BLEMj#cRxe@=BGxEkO(NDTVt7KcQf69JDD&C= zjBd!3Y4qxueoJ$7)2IyE($;q=Tf|JqF>@j|DBD`;YAZ|EveM|!^(afkYehVS9}pJt zIuWlI@dgoZ6!9hzZx-1=Q76l;~CEco@Gd+~c6m6pAF zR`EmSUGfMvEX`io!+~itFpKOnEq#}1I9gWt9Xpie=qWNCIiP2=GE-g+-kU~tP+}uF zWjMC%({?DCR=v7WUQuP!5z(Gl8*Rt6yE~B-?V6FcQ(9h$cGc^M4$aUq>K#6JXcm%U zV{oUQ>(9wPrDyu+S>GJc(@vk*U^=qjR@jzhJ96jF$_{L?p_~}nRLacjNMNU>!#O{< zU9=qKRdkt_V`;i0x-8vr6-Ew$DT81n>lr3^D=Ll>HZXguPn>7Z2tu+y1BV5l{0sg=h9P;E2mP(-DX~N40dDC_b<%s@#N<*~F?JDI2+R}k7%Cg~7M0Q2v>!WKE za!Vq)sjYKERZ`^<>OhB`(bIugf5r}Un-N*n)fq^t9Xh=eXvOCck>T1H$m^4&z-T(~pb?x|NoT$n_>ZJVREOxl~s7IZob=1cL(u12w1x!`6G%PI^D+p9}Wd z_O7;|gLmynG) zWh-ap=I%9t=DFu+ykz38pCvB zLx`k%c7!J=jh%N754(p?z2jK)Cv>OIm!3W?yyr)}ndijp#oe?&4!3uF(w({>yh}xQ zWVdt=JmrmFtXQQdUl88(H!0NK*%>+v=Te72dMD0HZ)_OOoD(qJ7iXk5TtEWLtChZ5 zz*OGZ-LmB8(ccb_ZcO?)k={#1cjENCtaC@@0UU|{eMBPUv=f|%|ND$|Cuh8qqntG9 z6)t)E;g{b@j>E4r!@@f?gtV8f@q#Sv|B83$ROt{3acXFG`n>QnOmU|qe{I4$bjgo# zjc~v51b%bTaF3osVmKF67GB|$d%A!Jibyb?FV`57ffN>JFHE_k1@HLqya`K(r@Sji f%i;6(?V)n_iW8;6*t;E?r6(tSr`@5;{>k}o&sQsZ diff --git a/barcode/locales/ko_KR.po b/barcode/locales/ko_KR.po deleted file mode 100644 index f249196..0000000 --- a/barcode/locales/ko_KR.po +++ /dev/null @@ -1,428 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Cédric Anne, 2018 -# Han Seonghyeon , 2021 -# SeongHyeon Cho , 2022 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: SeongHyeon Cho , 2022\n" -"Language-Team: Korean (Korea) (https://www.transifex.com/pluginsGLPI/teams/73419/ko_KR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ko_KR\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "바코드" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "바코드 플러그인 구성" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "바코드 크기" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "하단" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "ID로" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "시리얼 번호로" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "코드" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "회사 로고" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "생성" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "로고 삭제" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "테두리 표시" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "라벨 표시" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "캐시 비우기" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "일반 구성" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "생성된 파일" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "생성" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "바코드 생성" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "내부 가로" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "내부 세로" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "요소를 정의한 필드만 생성합니다:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "가로방향" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "좌측" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "관리 구성" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "여백" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "최대 높이" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "최대 폭" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "첫 번째 xx 바코드 사용 안 함" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "사본 수" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "방향" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "페이지 크기" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "세로방향" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "QR코드 출력" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "바코드 출력" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QR코드" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "우측" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "문자 표시 옵션" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "문자 사이즈" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "줄 사이의 텍스트 간격" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "캐시를 비웠습니다." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "몇몇 바코드들의 생성시 오류 발생." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "로고가 제거되었습니다." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "티켓 수" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "상단" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "유형" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "포스트넷" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/pl_PL.mo b/barcode/locales/pl_PL.mo deleted file mode 100644 index dba145af409510ecba26f62736a7585504df95dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4457 zcmb`JYit}>6~`~6<>8iBOMw~$Mz;pvb)}xt=HbodL5UfO?o|hy&muE z+|kTz*0YM#Dk$Xx;vu0Rg-Wf&2SELV6ji7YQBZ6|d5QN+&>}zzAQd4MA@PvP|ID6^ z-Krn>z}24l&AoT-J?EZt=FC2S%MBL=nu5F!^1(eqd=%XO23*jl-XsKu#58jTd_DR( z<}8oTaetn<$UM%hGgp`=nGZ1^W?IZOko4NzZ!f}=L0bP~ko5f$#813{ z3)%B$@SWgaLGsHUY)bpz1il5l1H2s^25J91coVn;(mrQEm@aIPp7%jo|0qcMJ_VBh zKFj&wiinO|i-%iIFV?&mkAoD~CqT-( zFM(v&Ga$VO&w}p&e+D8H;u`ZM@K*F+X5NZJO{0G=Nb40yac+W?w=PI=?Sk(C&w-@( zB1n3k1m6Wd4NCBPAo=Y@knH~#h@ZF-M$$QM1EE^n36dTALDF{=q;tK4)65x=?9cIh2_!qJ z%o9BSAV_vKz}JCPV<=BZ2emoK1f&8v0omOi-reE*!_0Yb0W!t?GINqSz!}^WAarJG zV~~@OCF-C_$lZ`-2-!(zpmR~IDXtVV$`^_uQa|=Z5*)Pq1~(wZ6>f|3l442qhH`@P z;oT6*7pjd9L5dJ+hamgoJ0ac=?uAf1J^+cor{F!1eUN)0!;l9dbw~z6Edg19oTd)9 zW8f*i|1h`+DM7N3`ymKNT=(t-Dc==@+6ZJ6lBW*01K>F1DEA4JvkyRKAs>Q#1X6`i zj?6%gL#Q2r)Z#lKQecknMLL%h;}H6#@B`8!ml3&fk(&^?10pvma#JEVE%Hf`PvHlo zMLr|)<03yH@&`nIQsk#Z9#1IWG7UYT^qfx9cBN(9HM`mIRcIS`Fd4|e?&(0}O&FTC zC?rK8g&&X>g^VbSi^7B`91w*`QJ4~iX;Gk^3#RQUHQ5)WnAm^Voj8l+XyV>X;Ic|p;%C^YT_KPaO{He;q3sEn|8a? zmh0MXuG6#qZr5&v>tfM_vJ+?=%MU`ixj8sNAQn6ARh$8bvW#aVG8Ny3as8lGNgV}D zRE;0{$__=SD4Su73GOyZK+gQ9I9y#{!A zZnAQyT1nLOS)0}*W|8ArnNFrA6Uj^>nU<-EY-aMlB-&6}1!1D@D>radX#A|aUs<{( z7vLV_$U__L_~xjuR#i9ZxoXsN4)4caX%Y~(T)A2r3$ZvDo6L--rZIk|S{@r2S|}|PcTSudO%4_C zP9T*M5C#4+QygRFF67`nmC_(7^XxSbhxXJ%6Jh)l|?9Cq(XB@fS}<-UEAZV%0jkI;QQ zo;;LF%X8=AiR9rFW{$`d7P)s}{otX)Gs&IBsS$dfH=WoSpWYdVHtfpkps&Ae8rx<@ z4i5caEAPB%$d<2zmgz=feoz*y4JEr_Wc6CM9MtBT>9uX;N3vxaS1)(Pta04ve<;7u zAj+t^R5{v_SPr{aFZ(@|gO=L9BF(C=+NP^qTZ@%w`|+-=Lr3Z`YT+i@RfH>^fA#YA z71!R7tDQCDa}|Dt$<6Kau*_B1DSl^Z-v}YKTm3@Jdg4ml*`R}n72S2WE`>gFTzaNw zn>JSO9>bf2W#S}WP~~o2klmfFwG1PtWd_walD)VR+oVRzF7|UeuPVn?!4j)*Q34ZS__adY)|$$~0mvIJVMLw5-#w)hI`^ey7!URD^=PtGkmk z$7==pzP?t$uKFk*RGeSCU{^eA18y1w9VwvjinoHWBUWq;$I?*;Bb7!FZe8;58IGTj zZF}odqZi@hhzi+LZCm6iD`b!2w0&NhLAn?uY1K5W9!mT5q<|(QTq{H-l7sr*AqR(B z7d(6WJpL1GpNE2Il)i5Gxb=`)2CjyUVh*dYDQZ$&)#>, YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Cédric Anne, 2018 -# Jacek Maciol , 2020 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Jacek Maciol , 2020\n" -"Language-Team: Polish (Poland) (https://www.transifex.com/pluginsGLPI/teams/73419/pl_PL/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pl_PL\n" -"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Kod kreskowy" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Konfiguracja wtyczki Barcode" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Rozmiary kodów" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Dolny" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kod" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo firmy" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Utwórz" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Pokaż obramowanie" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Wyświetl etykiety" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Opróżnij bufor" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Konfiguracja główna" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Wygenerowany plik" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generowanie" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generuj kod" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Wewnętrzna pozioma" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Wewnętrzna pionowa" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Zostaną wygenerowane tylko elementy zdefiniowane w polu:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Panorama" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Lewy" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Zarządzaj konfiguracją" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Marginesy" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Maksymalna wysokość" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Maksymalna szerokość" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Nie używaj pierwszych xx kodów" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Liczba kopii" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientacja" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Rozmiar papieru" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portret" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Drukuj kody QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Drukuj kod kreskowy" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRCode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Prawy" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Opcje wyświetlania tekstu" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Wielkość tekstu" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Odstępy tekstu między wierszami" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Bufor został opróżniony" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Podczas generowania niektórych kodów wystąpiły błędy." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Numer zgłoszenia" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Górny" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Typ" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "INT25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/pt_BR.mo b/barcode/locales/pt_BR.mo deleted file mode 100644 index f56aa408f99f39a383521a4e200136ac95a68a06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4684 zcmb`Je~4UH6~}L5qjhV4rnNuPrZ?v2HksY|v76nUWRuLy&Thuc{>WsqZ8dFrXXftA zZQpx$a^IW%W&i4b6$C{J28t4kjRire6p96*tc8M7@dqeM`;Q2%iXw_A6zliAcV@GO zAPQdQywAHo-o59ZbMCqG?wvP2FHkh(0m#%xgm@10K8gp*7jF^*P2x+;=fQ2LUt+$% z?O)^ii_DjpFEhWz{5JCy=Bv!tn6ERx57N4CaQ#i@Tg)Fa-)8=V`E%wkn7;x)hI!rr zX@9>3Zw0q~TnO6Y9pHBGUhsBs7fAaXW@bUsW0dO?%wx?#*e&Q>5Q2*CK((@JYZtyjb#=i{?fbVeodm!!OpWJ^NIuC=Uot{74LyG z{?8zN{~<{0-HO3v$Ge&LF&|{^X6^$?&q0v%8fK0#Cz!{XC6M$!1(F_*gZG1Na3}aI zm=L4?a0O!#Dw}YhjEgN?*VL@ zC_##&z03pL{xH{vm>K2>bBvj1PBKq2OU!9z1*G+=Twh?GWiB!wW1eSTU^bW}Kn0uH9K$_I}f3lZ9+~#sK8utnPgsIDv<0-WeP&R9;OP) zlMsrfBIG2b0U=vbd~Pj|qVgc*(~ulQL;8hsGL`8Bq6MDd_cHSgSc9B})FI~}$01az zkOE{DavqX}j6se-W+45N>c4E^LwJ9DOZ_o^{|tBtlHvLsvjkEsP@GUq(Yc~Ci7O($ zOX!@4Y#}X1AoR=N2V_MdCki8?Fe(a1L}5%6#zkR56w{)Z!4JraVonrCL~&FUkBH)! zD2|IFMkv>`E#0T=dcC#@WYY#qrrmQYGB)UUhB7qkIuu14Mb;O^HCdUWXQ-V~o(y_^ zLpxDQi&6$ZAS+5aQ5q4YQBgV~N@JolE=m)kL<^Rz-&Mhy^laOTlG7^EVoG~D(lYAk zq+^>47p}kO)A1#;8)hml-QTDshTKrj4H9J~N&sQt+VnzqrL9c(` zOVS$YmRvHP=0Wi;xd$7Tc1bqaFqHta$c}Yp-3F2JMAERVU1XY6jpT~)JlT#{gZ4J? z)+9FK>mUkcM=fjF(n}_YSJYlBFRJC4LKV+?y<8Jj6|};p>S|HdOOcpWfokh(be>fX zP6^SuYW$urJKD56G&ZTOm{!ygb2gH_P-9yzjO6NSe+QwMiycFoYTB-W1LvKAa*1yj zXgTt$Sg(m=#iyI zjvgbTu2&=3Vwc)3**r`dCSLbwrQn`y>^(Y+q@iDm`~O8vY~HMQ#cNJnN4TLQt4bOot2rS*#@eL6LMbsVj?q+O~Uz%>Y&yc}-!g;p1gaP-cT@ZR{dn6aGi3U7IvIOH zW-uUobm0G*ic1^cZLu4Xm7NNaBRLCiT-kUL{P9Z;EJ66<{uY!&ZDF~X$MDaV$ zEzMN+8_KL&I^&eI3BktqeC^_>2{&FwM)+?scQUi6()mG{;S@R@D&%jYoG5fvTREwc z^k?|D%Uml06-&?bjmOmBRd^7l2nZ&NZC1$VJ$mN615 zw&>z8DmD%hxl7)*Sb$#H0H-z+xWuW|E>HsJGfv@~4P{SD<2EiMmpiCKc?3iIxjeQl z^0?{6iuzsK&*Y^-tzHld%7i#DKK6qxx|Sl9bkL-osjCS+(Uvm0M*1sw5u#A~8<&yF z6)poum+oeLj@;f0F+jSp}2lm2GIb=LV0H^7u}+C+--{q^qv4g=eTO0ViTLg}pAe*995Ck1shis zxgd`GxK*O&@aMn;xCq2NUkXdsNSy>x%MOV`931hUDFBq$?gim>43=CC>&7WRz8r8j l6yng8G+}%xAe9b@Ep}}fuY-RmI8L%j{;Hd<{hzLfe*yZZxnBSP diff --git a/barcode/locales/pt_BR.po b/barcode/locales/pt_BR.po deleted file mode 100644 index a7231b2..0000000 --- a/barcode/locales/pt_BR.po +++ /dev/null @@ -1,429 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# Rodrigo de Almeida Sottomaior Macedo , 2022 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Rodrigo de Almeida Sottomaior Macedo , 2022\n" -"Language-Team: Portuguese (Brazil) (https://www.transifex.com/pluginsGLPI/teams/73419/pt_BR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pt_BR\n" -"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de Barras" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuração do plug-in Código de Barra" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Tamanhos de códigos de barras" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Embaixo" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "Por ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "Por número de série" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logo da empresa" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Criar" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Apagar a logo" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Exibir bordas" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Exibir etiquetas" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVO" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Esvaziar o cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FÓLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuração geral" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Arquivo criado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Criação" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Geração de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Horizontal interna" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vertical interna" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Ele irá gerar somente elementos definiu o campo:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "CARTA" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Paisagem" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Esquerda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gerenciar a configuração" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margens" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura máxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Largura máxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Não usar primeiros os xx códigos de barras" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de cópias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientação" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamanho da página" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Retrato" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir QRcodes" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir códigos de barras" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Direita" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Exibir opções de texto" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Tamanho do texto" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Espaçamento do texto entre linhas" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "O cache foi esvaziado." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "A criação de alguns códigos de barras produziram erros." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "A logo foi removida." - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de bilhete" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Em cima" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/pt_PT.mo b/barcode/locales/pt_PT.mo deleted file mode 100644 index b94abbf20473aa169c46bafac96ffeb9b85f8a95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4439 zcmb`JS&Upq6^0M7Auxe}Lr922k_wKEP24lR%y?$no;cm@_N49E+-^G?wo}tx(_P8k zQnz|GEV8jkAVMMnNRe1V1d;N9kiZW_Vvz=rKthT@LLiYu0wLgmJn@ED{&V}x*h&1r z1EqWJS9NbKXS=8S)oZqYiO@9ULy+6H5j_F!e+O=86YnI#BbpRWfmdK$5gw7}(=t9T zoD-f9wuE;J?-QO8J|Juhmq0$($~Y7z!c@2{ToaxbJ|cV^yb}9-3S|2}4_*zv2(pPk z0NI|O2sc1J_vbSHrSMn6mxaF({#N*V;U9#rf!ndqAHjEne*yWte}H`cKZQf@BEm&C z;Pzf{7x;Ft1bzUV1bO~EI0T-R=N5b)#*fJRr@$h{Uk7>puR%WVcOWi$4L8>3Z{W4y z>md7O8#d+ruL9o#?gVcD_kz5C6}$>O3GzPYK&Va@-i$cdVN=TLHLsJ$HJe2toJWK*5g%hC-_(JMsORH%!9Xptk(j_dYlD$|3w*h zLALuLko8SL)?;1xsJ#C)$m^a2H{M3{MUeNq8=Eul2RU!f2^ZzLk+Bs9!dU2pec`I` z5CS--!7oQGFH8KflL46^_B33I}Na7;J}@_thw=UZKP zOgJxW3GW4O!@RQ~E_wntj^i`nb>Mfv3Gini>-}$#_uT;}Gp_^Le>Z|iY1$34z6Fr; z;E=EevR=nPUe^Ti8Duqv^Wz|d+cabhG7mWoxwJiS=|K8-2#XgPi06nu6?toPw~P9BbB_W6gH5ZEPpU4k@15m-Rv8Kt2k& z7qS51oSlN4fN(nuX=Xj-2w0Im6)Slfh459t1r(`LqRJ>$#;9_DD&tg{pvojw^HeS1 z0*X{EQFWB6V^lpr)p4p$P!%(@YsVe4NtFcsu8mYXj+Sh<@3gmZwD~essa-cIRb%ht zkZO6V6>tGXs+FiVO0_Yn9iZAc)h4JmNj2WN7Ke$B)>II8W2!l$y`dvEO#;297Gu{j zZfh9mMH8e{zo%Y1)oPrsQ$0-ln({rP+Pd8{baZ~EF;CMbGEN6?QgZOrn~qwtfssj> z`tk;rsCY>&ip7lxyQp65?0Ot|9nj#xvT@$FdFa)O4Fc88PV+{^QLv^=U_ul5RQ2?- zQ5~~nqwGWzbjmbSpRUZ{-fGpGG^3+V+SZAo8MEYRR!6!EJKo^fS?%EM6fak8*bi0D z*lv&K4u&hX<9jq0d(}@3%yOw$tE-z9q%_wL7hwa8YR8F1WagcPa)Y2P@Npb4T8N!@ z+Im`WHuCC3lOvwWNZgUq;4w9kRZXN-6FJpHQZ)I@okh^X4R{X zgfvdr=jq^Kc6|0aO?2BvUA1WZiZPK2;5SU#j4a%l;vHTXgxs3WaQ04oFOf^*&}QafImuB+4a=E=tV+)&db@Mmr|?b=SR+V7^hR$Nv? z3-h_AS+=|;cLX_JR>gc_JeM!!@O(IK>g4*hQ5ATRa~`a0OB_V&C_((=g2 z%F4Kex~t**7%Xn5|zlx-gs{s^POh zHs#ohW#tiMY@%&+P_=v7rN&R4Y8}l@T%5<}Eg6@qNANd-T~-r|)^BNER@qrY3jyj% zkUJW?FfFSHieZ>el@4<8L3e6zq^71+UY$R$vR+}II*cLas$2Q_o;~R8Rt5HFK0lay zSQRj#cyQ?dS{-W}-|N_JjPIQD&gm4@ObX-13meblMZ8%tF{S;M*)1LFs25-64QeRX z|1ULkuqn-;e0rPUNX_4fGpSZ6r&c@EV~2-Oz^vLun<+-KNNcB^GTuJiHy)bTS53R` z?Q%@@bXl)sp@L$AvKj{#y1db}F4tJ9xQF{#gDU8BCq`9udT_v2j}LyU$abjYgFq?9JpwMp25EY jlx(Pk9H)AOzXfLF1tg`ofvfjse^9~IpoFV8*YN)Wxb%m! diff --git a/barcode/locales/pt_PT.po b/barcode/locales/pt_PT.po deleted file mode 100644 index c378b9c..0000000 --- a/barcode/locales/pt_PT.po +++ /dev/null @@ -1,426 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Rui Melo , 2020 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Rui Melo , 2020\n" -"Language-Team: Portuguese (Portugal) (https://www.transifex.com/pluginsGLPI/teams/73419/pt_PT/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pt_PT\n" -"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Código de barras" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Configuração do plugin de código de barras" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Tamanho código de barras" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Botão" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Código" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logotipo da empresa " - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Criar" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Borda de exibição" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Mostrar etiquetas" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "Executivo" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Esvaziar o cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "Folio" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Configuração geral" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Arquivo gerado" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Geração" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Geração de código de barras" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Interior interno" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Vertical interna" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Gerará apenas elementos que tenham campo definido:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "Legal" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "Carta" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Panorama" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Esquerda" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Gerenciar configuração" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Margens" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Altura máxima" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Largura máxima" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Não use os primeiros códigos de barras xx" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Número de Cópias" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientação" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Tamanho" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Retrato" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Imprimir códigos QR" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Imprimir códigos de barras" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "Código QR" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Direita" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Opcções de visualização de texto" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Tamanho do Texto" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Espaçamento entre linhas" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Uma tarefa atualizada." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "A geração de alguns códigos de barras produziu erros." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Número de bilhete" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Topo" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tipo" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "Endereço" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Código 128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Código 39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean 13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int 25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/ru_RU.mo b/barcode/locales/ru_RU.mo deleted file mode 100644 index 47d8e66de89c78f34ad1f67c260527c0f144a5db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5346 zcma);Yiu0V6~}KV^x^U-G_;TwdefE=7dGBq+p)dzI_z#XiNUXI)`2$VG2Xpi58a*F z&WvLxLKU%r047Q(O%+}V300vjYMcZU$B7+LsR&dF?o>sUD#52#LjA@!D)se0ch4qH zYAUYw%x~`N+;h)4_wIan-Q@=aih_I-vf*<=JOP$Jj|a;BFA9Ms@ig-Qcp2)?GGE~K z!(4xv`Ag=nn6EL9F;6gOn6u0?%mt9veUt0IXTHt+1M^*G$ov!Y&&zQe0mbsaE7qbt%9D25ZSAyF> zTE75Z13n0nUAvf1fcS}ncu@aQknB7GUJuTKH2z(%0sMg5KLTkV|K|Q{&>2VlW{~D@ z0cqX4K@1W1fn?VRxE!p2k^gjt+1wISj2)+W6{x`udgMS1`&xasfD?S2g{Kp{8 z{|`v(U5&xy$LpClGH+t8WZnXjosA&b)x>OJb}+k`8IbJW43Zu9f-Arh_ziFZjDm-_ z{XLNE`#VVXd;-!s|K$2I1c&y21xR*Z1(H3>nJc(of;4Y6xB>|i0ZHFxY?{~uQXUO( zeJk^BZr{$lk7+TB%o0d?9^|^i{4q0Nj)6387uSEn+|7K1xrg~Ab1!p0^BM43==nL= z3cd<{8~hMN2*olaA^GJ>@Vnr0koMQX>;%b<^<2*|H!{1KJ2KfKys43agfF*K^nImq`a8q`XMle`deTG`~h54SWnlNX3ibb>Oc-(mM|}fp3G9@1KBV&oT@m-U?>GUXbj68l?O@4w5}@as96# z+4B#O{Ji|DwSBjN%nz@mAC$kSE`*I-V;r+}a(`GtMA6$!Z;~<^mV<7qE9gxn+ z$KV6tRWO$74oLod5~OvGf)tlyAldf@Nck|w?Y{%*oV>$)kNe*T$-WQ3Wgx|}6S5r= zg|tJcY=a<#=5B#Y1k5phqq~mcL2KRsp|iWVQ0%)QcR?g%CFDC0%2A5PDhTa!HKY;p zJqVR`H5lL1>l&_ifRz6&kh>uRkozFy3o5rm`XQA21;}Oy6{LYFNhakI6$_FuZ}@Ko z$+wh0R33m(4x}M>K!zaXkQkaQO^o&*Qs~<(zkahU!>h2a4RCcQ+98l zr>{KQDobayGNe3_iHb}NKOinL%_7qxGOZ%BR%F^lrd?z@M1~g3xRt8q?387<P>(#O~q{_a?-jmG?=DW9LMYd86cA9Agt1zO( z#{Qn}ez8e8%7a}O@1@onsG=OU%Zdk?U2+dLEZt!_#E$89phb?jp1sR;0;?=)4Lg(< z*afNva?CE5Wy!1t>s_b3Q(_|(v~? zU{#gqQNw}gwH&LYF0r}S@(>gso#S?8v?528T^gaWwd$B%3`Rts8^}>#VOyRb$no*| z4t&vP0z;cBxK$eg?DuRKSBvccEk|(`1Fjc%mK}%z&vpX2B}a+jbB*2Mi(0eDA^CF1 zz8q37huq5{`Etgpt<;4_j2>}%G}EI+02w^ebC>0{q>82H4CZZj(G>VW%^2(|tWNy^=ZOf6XYcGv*^+*s@{X|pK*x1+_ zq=Vzz!)lx~G}W#Ke^bvucT<4bep6d>ORS^G8@)d_*won2+ufVJu<6*EXhQ}k28k9S zFD7Jw_(O?hJL_a&#PWO*)HzYjU-7ODvj9#^kD1l3t@Lld+gwFQXE}QSVB|>s_767J4-^ zqMfn0eCVOtl&)AyBc{Z7N-`OxE;Ftx*?M7mN8|Z+=*2SiH9M2guwKTYpt*5f!{TdO z?_cuX*84yE#jRfrC&GvIZ1`wI&*=sIy3jA`>2SAcUC^h|I4kuzeMV2~lX_Oq>uDK2 ze#sm?E%Zwma7v%mGvUMG)Y3zaVD_v&6;29$STE46Zy4^TN$5F^{snzDoRqZ}qigar z{1fQsYL-6_oYV{91eBeVWKc!#C{wBhwgnpS`v9npKO1vzZE%YI% zSd|o$Y4hkL@`WI%xL462AV968M7A!yrE{+dv?4+^K_z?y!=o4nw^Wl^} zEyG7pIjzqK{mhc1pmlNAbodzT*taN#wag%`LjP3Hhm$7$6lq>^#t9Q#3e?=iqd(O|8SX`hW+=tX8n8wh@6u98U5T~N!HO9~b;gV&^Grx7 zffr!XzJ$=f)h{6cKZCr2ARIyJ9HbB&296*iFOakM8}pB2&ROH_edJ+U8(yWfp=G8~ zp(geKot=3&dKL*XN!{c`be}dkPHPM3p4M~WZnU4R?-}FvNqr)mLNnzp)PLHj@NqA%)wKGrY5>jO$@uEtSui69u&xg}?CsJ+LN}bZRL3_h2+7-wAReZR8wQf#HYD zay4&rQe1S-C8wb|U$x_abB*&)HwtAwWh(Z47?nM2+Lj#OGgt=Mw76?&EC0`j0)kSH z#58>yEd9N()O|*-zT|9E!cQPz2oQMjg?35L3mEoB{Rm=bwNplsAr06&9X_14=jaqm z9NZ~=2HA;`vpB=>=bFXGje-haU<#+wJXv9~fqXd?KDu=LOxhsqW-*iglp*>!=FVb) zi|@j4lJ7dKPRT==4NE2FBSg@FNtEQZWBDju(MO@|ocU;>4{iErA>yMYo9a9N(K67# OHQ$%bi@||RO8gg&^>`2f diff --git a/barcode/locales/ru_RU.po b/barcode/locales/ru_RU.po deleted file mode 100644 index 0c328dd..0000000 --- a/barcode/locales/ru_RU.po +++ /dev/null @@ -1,430 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Dmitry Moskalets , 2017 -# Cédric Anne, 2018 -# Ильшат Сайдуллин , 2020 -# Alexander Litvin , 2021 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Alexander Litvin , 2021\n" -"Language-Team: Russian (Russia) (https://www.transifex.com/pluginsGLPI/teams/73419/ru_RU/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "А1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "А7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Штрих-код" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Настройки плагина штрих-кода" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Размеры штрих-кода" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Снизу" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "По ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "По серийному номеру" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Код" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Логотип компании" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Создать" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "Удалить логотип" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Отображение границы" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Отображение этикеток" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "ИСПОЛНИТЕЛЬНЫЕ" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Очистить кэш" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "ФОЛИО" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Общие настройки" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Сгенерированный файл" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Генерирование" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Генерация штрихкодов" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Внутренние горизонтальные" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Внутренние вертикальные" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Генерирование элементов только определенного поля:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "ЮРИДИЧЕСКИЕ" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "ПИСЬМО" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Альбомная" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Слева" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Управление конфигурацией" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Поля" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Максимальная высота" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Максимальная ширина" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Не использовать первые xx штрих-кодов" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Количество копий" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Ориентация" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Размер страницы" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Портретная" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Печать QR-кодов" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Печать штрих-кодов" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Справа" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Настройки отображения текста" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Размер текста" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Межстрочный интервал" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Кэш был очищен." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Генерирование некоторых штрих-кодов вызвало ошибки." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "Логотип удален" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Номер заявки" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Сверху" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Тип" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "Code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "Code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "EAN13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "UPCA" diff --git a/barcode/locales/sl_SI.mo b/barcode/locales/sl_SI.mo deleted file mode 100644 index ef2bd8400aafbd001dc9159c1e1eed5894357094..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4085 zcmb`JZD?dy8OI;Hwc6C$ZC9(++MZU|Chkt=Ew7Wtb!K*wPV+XMOkx`g^vAD2Sw-gnHT0u}21^>^?Gf65^ zzj&DE{O) zGXAsh4dGvfe-r*)ctiLvA-%hI?h)ZFAm4kdjBghn6&@4bExbo~uke21gCMS;;~?7? z1K$fi3f=-f0kS=x6;?sMcSFVvVN2)>Lt#g_BRnHK3*L-#J`cVJ{36KrJq_~xUjuIi zp9k*%UjW(Vd*J)QmqFh5J8%H}i_G5uk79fjFZ22XU2=e(?z}vvrLHy`Vbhw&sfV}?*l;ZdA1o=J%vfmyOo)E@` zY2i4?dQO3?S5`P9oD-IWE8vH*Zw*X<9gy$;Hput=5ae@S1lg{if~?O=Am4LYctzH) zg1rAa`2BYf{T}3VzKS3*p8+`^z9Bp>^WT*5bHWS4?+Je(d_njl;g5ws5&leg5#;+` zlJU#J%fep@uLxfeUKL&w{ubmoy#^}q4UqHa4mgR=KMt}zL&B3XAD3}jI3}DFJ}f*X z%n1v^M?m)X9LV{y404{-K-R|vIbU|c2f#0Y9FK2-cY_zeW8lw0gn(X=`Rm|a82>|f z8jKE|=fqCDhqwfD)33j3}hCPgggS_R_uWu70!X|C-yD-m2;KzmvfQx0-sU0&LADS?IXew za2~=n2`=vD66Y)DGUp3_dz{}NfN&f+Cl?@-kR?bAQh?+j_d)K5@b~c`kCGi7NluJ`?gmR;l8>8GfW)!0vtixtjmD{EXudF;okw4(6v{NO-C9`HzM*-u5z&HnbscuR#ghviHI-SPCqZ>qV)=*KvfX zxvSMOFQH3vm*OtX-3V3s z@qtr9wQh{73<76OZMeH89u)tFUd!y8p!~qAwX1NU2?8$&@q(>3O{CneX;kris_ejr zta36n(Pes)jCPZ0f;Fj8^1U!}O+;p?|pXR?0l&hk8na5A5V`YC*z^>)N(OCG_X)yC>+?A z98L`6k;4dmjGdKHk=c%Lh_>#Os&48aG|}`*WhORpu#fNCFhQ)~!nM||XVk>HjrJAK zsP0_@B?n)<6PxjZR+v#P6vHr_9+~3OfXC@U_jodqn4V6mQ!1gbr8i7rm^>J!)tNK> zr4cNpu#_IczlQ(M;Kv zt)Wo4wn_7-VUhKf@6{S6YG_&sqmB+NN*X@3rruR8(=b$ATPyxwxHg9Eh`xMkn*E}eHZOp&_FR>9B=QObu4ss8YV-fa&~pG zK&9gH!V=8|x`8r?I@j@N1txZ!M)$_U>KiJ1>t4swqHc7|-Z@02V=tYzu0Aw_F-jC> zjB4W>)yPPL649|-_6`M+E8uHUA_7h zaDU?P(Qi`+OEAq=J+6BHy%Og6uattX*R7+WTQ}U$N)OB5BMy{uO;a~e0=s3HD{ diff --git a/barcode/locales/sl_SI.po b/barcode/locales/sl_SI.po deleted file mode 100644 index 85a3470..0000000 --- a/barcode/locales/sl_SI.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/pluginsGLPI/teams/73419/sl_SI/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: sl_SI\n" -"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Črtne kode" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Konfiguracija črtne kode plugin" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Velikosti črtne kode" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Dno" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Zbornik" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Logotip podjetja" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Ustvarite" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Prikaz meje" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "IZVRŠNI" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Izpraznitev zaèasnega pomnilnika" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Splošna konfiguracija" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Ustvarjene datoteke" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generacije" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generacija črtne kode" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Notranje vodoravne" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Notranje navpično" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "To bo ustvarilo samo elemente določili polje:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "PRAVNE" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "PISMO" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Krajine" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Levo" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Upravljanje konfiguracije" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Robovi" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Največja višina" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Največja širina" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Ne uporabite prvi xx črtne kode" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Število izvodov" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Usmerjenost" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Velikost strani" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Portret" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Tiskanje QRcodes" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Tiskanje črtne kode" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Pravico" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Cache je bila izpraznjena." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Generacije nekaj bacodes proizvaja napake." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Številka letalske karte" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Vrh" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Vrsta" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "POSTNET" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/sv_SE.mo b/barcode/locales/sv_SE.mo deleted file mode 100644 index 890198a90184568f851d91bdcbbf5659ba1cac65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3964 zcmb`JZHQb~8ONWRw6&|LX{*(0wI{7<6Vut9m)-2{#I?>$X1Cj&%}!@0Yg_Bf-MMFG zPUg{0K>wglw z0elwx82CKMA^!#V3Gg={ulpl72L46fUjg@HydRr+{s5Q-(;)9}fUL)W_)!lxw&OJT zaqtYt@i+_e{vUz+z~{i*z!yM1|5flK;3W`0dJ8wGrYj(?-vgs~|4kt4Qy|Cf9^nz; zgfJ(Z2HDPIAlp?C&I^}>RpCkSGg$Wsm<9(R>wg+#eLn^HoEJd$>qU_5`4z}|UKYM8 z^RI!t{vx<>4bdAQpYwGjiMbAPJv4{O-}hzw z1K~O04~0((e=Pio@VxM8kn{5_$o2g^cr*A4$Z@y?vOkxFZ-T7%Z5h8K{G0Ia!hZ^{ zL9luMUg7n^F_6#M2PSm@a=aDDb#u48&w>as6=c2wa(&l8{HTo^&ksPh`*D!#^sJ1Z z0XgqK2iea*gPgy2L9WO5gxA7|TQR;7s}lw&N*~{rVZm{=OvqrSR9nmxZr@9QWUXZ0GC3i^4aAmxXVEpTxR%zznz#%>XXZ zeIV~&23caQnPY6FPtb$*HJP6@lRD$fjxGqQ67x6G7gX3ThQj;*GjR^>r~k3!}l3lNUy{SdwuhoA?9OCZOIW65#j+;hEfEpT0Mjc^{2mgM@Za1yLQ zxF;dRNv&|*-U8uz;o9ap&wp0a+^Ks4z)|DJmSL!Za0Ts4z># zG!--W0a+^Ms5nW*DJmYN;xrX!sE8F_+=zTVqUr_xmI+lO3Y(_Yk3DCia5QO^HK(_U z%)oRNHPyPfxESIT)sA9wItrZ^(D21T$Idi(=+uS@0@X^iIjy2F*it&sT^%~B+TK7b zUpGydXw-q9r%HLDP{F-kFW0Ezg}!ZgJxvwebhPY+UJHJ_FOth%jPP1aZklettJ>PM z+Pro++%Udt(}~EbzSVFmwoYwsjy$k*qTgMI4{)jx^$b$65*rvd%uvRW(GRu@-JjMa1x z5lJoEmhn@?e#@rnQC^KzS5h@SFuW&q9A%kT*>q+)mCmKoS(TZ}=cbROag9|x>r(aD z3vJ-JD9)?W_A`EL8mfSbx|cW2U`^QSBLS(p_PTksx}kkz+v*TM=xf$}6Wg9S-qKcuY0gUTn3SJ6WGk&0Jl_`kFdUl|zKpgsr@qSvPLS=)6jFja37D z@j+@nin}(iLKudjoy#8Mwt&aEL!mk_r!t4}7w`YsgjQXw8=X$%k2=k$4K2yXqfy5# z+F6E1gggWtv@NtE9sUokXbFeUZ(oSD^IBF_xEHNCs?Phq>7?7BKP7$W18oQsYR7OC@Bjz+rnS2dU45DK zq7Hh|u!F@)hdzpL)Pxj1C46%6unig3i7o+q9o4qaJ7)vaqGGHE!(IgcXbtKt`!;Mx zFlH3fVbd5kBrix-Y^wXWFP!qZ9Vr~+`&1a(tMK8mrVD6D9(N==${6+)xS8VEo{3^< zNRlt(CwbDHVMl_A2zqP=s?SXc`Nr;@7rT#4CeevL*qLBpi+BB})|8~HYw%&ZBvKAJ zbm%gYB$N@Fl{ZlM?2-3fI!BFZ7*ie4x(QBc=g^nBP>8;iG$w-8+?Ig<)|LJRmb(3h diff --git a/barcode/locales/sv_SE.po b/barcode/locales/sv_SE.po deleted file mode 100644 index 883205f..0000000 --- a/barcode/locales/sv_SE.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Mattias Wass , 2018 -# Cédric Anne, 2018 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Cédric Anne, 2018\n" -"Language-Team: Swedish (Sweden) (https://www.transifex.com/pluginsGLPI/teams/73419/sv_SE/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: sv_SE\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Streckkod" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Barcode plugin Konfigurering" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Streckkods storlke" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Botten" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kod" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Företags Logo" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Skapa" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Visa kanter" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "Verkställande" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Töm Cache" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "folio" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Allmän konfiguration" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Genererad fil" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Generation" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Generera Streckkod" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "invändig horizontal" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "invändig vertikal" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Generar endast element som har definierade fält" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "Rättslig" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "Brev" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Landskap" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Vänster" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Managera Konfiguration" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Marginaler" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "Max Höjd" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "Max Bredd" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "Använd inte första xx streckkoder" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Antal Kopior" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Orientering" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Sidstorlek" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Porträt" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "Skriv ut QRkoder" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Skriv ut streckkoder" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRkod" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Höger" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Cacheminnet har tömts." - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Genereringen av vissa streckkoder producerade fel" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "biljettnummer" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Topp" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Typ" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "kod128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "kod39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/tr_TR.mo b/barcode/locales/tr_TR.mo deleted file mode 100644 index c4092ebb54f96f3ce6b8612da3697603d09d84c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4284 zcmb`IYm6IL6~`}4fwBb(g%(;Ky$~L|ZM^HpKAmic?Rb}Ey^q-5G<_w#YhT;99?zJW zJK6Pu)T-qnp%yApB7rJa0z^dl&@NJg3M&=WP6Y)j2%@3_HK+*jkbp1!#uxr)e4K16 zgg|2CGrzg7bI(2J+~b$7z49vpkAl1x@}Ye~JOCbe173KhuMz@XVum>jUV(Ood6fI- zxxL6-W*%dfnYS`;XWqrUn^|GjK-$-EyTxoX1LkRFhxuvdz0CW;H$u;6K|0?<;9J4R zKsw@6Af4w&%q~d#KFjUrm_KL!g83`v3(OapzhhnmuY{hL!8e0{0%^ZjK-&MG%%L|4 zfuFbmuWP{l;OoH@cpW$c()<;02t3LC27DXZ_wx9|U=rh?NYOn;7o>L%97Y3yHK1l2D18Ki6f#kn4%&#%O z&in@R+aTHb7)W+K!F-bW1Lo7r9!Pfo1SC6N0&fKW488~42P5O)O(5B|3X&ZsLDIj@ z?K(*3Zh~ZQ0FoVB%=>u!b0DqzBKXMbg!nQ@`i7yLcmSlli8E8&KgsPhbC!98nPbi| z7nlX+3bV*u18Kh#+`f}}in-3z%m%Z`beW$7>AV(vANVQo?ci5I(*IqM&ht3)d))sd zx1VC}GM{EX!#vOYG4rR)=Rwl{OOWotuR(-NybMzO{sz7ayb4J~ah2fp;LRY#B?DrL zm^mUV+Q^4)8jV+9M#1 z9|AE&+yTVC6r}TflldJU ze;lOs-v@CGq8dYaau7n#JcRtc0yz%Z``o>^!QY3Oi{KJun%f2D6mx)6_{c#hSLhjo z+zu&G1CNC4hpa)!PC5gfi)s|*1?3v9ZsaSvBsKV% z1MlGPkAusQ1xOn52?*U?s(W;oXCMkf&j@4`lBEVeli)by2)7B8(7*ZIT?F0{yo=bJ6hwaO9wj?>z=rb10CH;m)RdbFF>(sP}T)Q)ax*9Nko zPHS1!HRDD*YNwhOh5US`fOol^FN%V4t3gGzwJ7MC6-&xhb)4f>j$Kkdyd7Y0)3m~t zY-m$&(A<7=!&GfUEPGalfyS}?z{<_d!3hGf9JbbR1{|v5wGAS(;u{#(585hiM*$P7 zo^O3+tXTDpYvr*bMLggZyCV?&Zc#*56_Hj&ZfdIA8m|=Lc9|Dot&r8#zUky|yTK;Qh5?LC}E{$?1rx8KIS%ND25NIU(9! zU|nrR*sdtJ#JfjVY;2(#JFfiz`=;e;CbyWG&&%WaVrgMzd8nw{@Mml(sGDjm8`gtZ z*-Oiz)stqH5|46;R8^aOhAKM4-wp0S*uoBmP5a3f`%NX z58WA&!wqZOL3(U#V`Br$u#>6j&C!b28tdQgV7{=rFlMnj7@JCsCuYX1f2v#@8yQ+! zSjt~Md15p^l*8RXO2x>PX=xE@C{e~eC@T$^r|s-oc`i16c^>Uo(|#=P!s&>3T28MU zd&y|%puL7x9TXQQHs|@RAT3=OhGsCEJV+G?pR>cRJS-C<2Z#RO<*w;fsh|Ne?9@X? zwUpFNBUMNF4n<)wy6$yC+waLZ_P;21i_p9n`nbnb>w-|MIN|wiiyl`jYDClN?KEY* zd(Q9fy0*LPXoSWUd25ijj`q!~#`cuK?im+_(b2tagAlaLmZLjZc)1!n1M4qu=^&}9 zUeHl{x>{;*He5dAh})D!5jNeksK7{_=&Pivx}s(GTyGn-4mK&$WR=_7X*sIe+v#m1 zNqak6(i@!4e@*3!)QXZv8?<{nSdV3XO9jzF+3B9cg=^_%-zoSLIKSTOe5{P(4DNn8B8?o9!dv_N;y z;!mbY?iT$SY+gxO7$Oxe1X8E(p+Pb<2dUsz4eZ>4;i%>PbI9(lkDVNYir}KQS~ZB) ZsL0~qF{+Z#O3vv%8d%iM_Wx8U{{_Bwb$I{) diff --git a/barcode/locales/tr_TR.po b/barcode/locales/tr_TR.po deleted file mode 100644 index 6ac0d22..0000000 --- a/barcode/locales/tr_TR.po +++ /dev/null @@ -1,429 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Johan Cwiklinski, 2017 -# Alexander Salas Bastidas , 2017 -# Cédric Anne, 2018 -# Sinan Sarıçınar , 2021 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: Sinan Sarıçınar , 2021\n" -"Language-Team: Turkish (Turkey) (https://www.transifex.com/pluginsGLPI/teams/73419/tr_TR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: tr_TR\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "Barkod" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "Barkod uygulama eki ayarları" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "Barkod boyutları" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "Alt" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Kod" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "Kurum logosu" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "Oluşturun" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "Kenarlık görüntülensin" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "Etiketleri görüntüle" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "Önbelleği temizleyin" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "Genel ayarlar" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "Oluşturulan dosya" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "Oluşturulma" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "Barkod nesil" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "Yatay iç" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "Dikey iç" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "Sadece öğeleri alan tanımladığınız oluşturur:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "Yatay" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "Sol" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "Yapılandırmasını yönetmek" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "Kenar boşlukları" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "En fazla yükseklik" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "En fazla genişlik" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "İlk xx barkod kullanılmasın" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "Kopya sayısı" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "Sayfa yönü" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "Sayfa boyutu" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "Dikey" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "QR kodlarını yazdırın" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "Barkodları yazdırın" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "QRcode" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "Sağ" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "Metin görüntüleme seçenekleri" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "Metin boyutu" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "Satır aralıkları" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr "Önbellek temizlendi" - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "Bazı barkodlar üretilirken hata oluştu." - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "Bilet numarası" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "Üst" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "Tip" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/locales/zh_CN.mo b/barcode/locales/zh_CN.mo deleted file mode 100644 index 5ec965d0fef80066fecd546f0cc5fd0839194cf8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4301 zcmb`IYmgLI6~}L4@UfZ)F;Nl)JBcVH3_CNs%kB=3WM+0)Hq1U421ueL_Rid$X`Jbv zboa6>Rh9&Vun}Am-h?C&p5d{J1lVO4FsYOpODi!cQ}I#6Qn%+}EG;ZctW6&r*8Ka|=icsn&pqe#o%e3NVXHus(C4A1j|kBRWWlGTxk47ko-Ie-VP3f^!yuO6?l>Riy-ae10KH_gMQePKze@x zNb4>E@rZa7B)`(&ZD1Cpc&!F${-?kj!JXh8;31Iae-->B_%=xMyayt*q6pISmq2>| zUm&e_6CS2G-p;&(Igxo6b23PNP6f%YYGy67kvWGM2FdSvAo;Nryc0};p95EeUhsMD ze-kACeh-pAe+Oxuf3kfYl0*9+2a?}6g5=L_%sY8p0qMOd;5V)l!UNKLM=?2Z5TrVK znR$l$&$4}<`3mzj<`0-ZV*Z5rCi89PJItShwBE1S{x$QrOov%yzR&z4^AhtfAno^W z;H}^XAhsmNBZ<^Mi8&dhyiUV~_BWF`2P8j&Y)6>$nDd!!%mvIia|!bikm9-&MCpi5 zkk-$#ZG+_3H<=qi%KJ{X_konJ6KtPhz6R1fKV|z}w#S(7gZE`q|#b_C63lafJIvK-$L-L5kyB%y*c-U|wYY2Bdi% zkmB_R<|XD|ng3wYM@xAf2a^92n3KWJ!uErAfe(V81~WXq3Z!*5GPi)_=d&PvCkMFy zI7o3j#T?=BS3vUbbr7FPxproOUxB<(14L~x1Xs&v3;9Vt(05H|-De<*$pi>xc}=4; zy#<;NDG=@99_WkEWavxKm!T=pRETm+ZKexxH*-3(5v+r1p(RiU^e99zqBad`hp6@w z&^(CRco$+e^D(9h2Kc@Sq}r%v`)eSbRUzmBs1u@CPlB#)55brSJqXo65~?&hlc~*h zA(G(zd>>&h0AtWXC=M-x=0Mb9g7qTUAcBn| zvmzL@_Ra-Ok%AloK z+Dd7OkYU?KR)l($mL|Gd($v(9qIYLIr76N*5%%E+_(ixzglk2(PK0NOaJ>jOh;X9_ z(}H0mn^W~(C1a!v5jLf2OVK1V(w2&ymTq^GX5}(!uhMClNz7a^Gis;ISR(RJB)llz zvN$3l*__>5el4LU(o)QAkG8anW~oaPeqFm4x7U_QrAy05eyF@l9>Incqf6=Jz_jR? zMM)c`w$jjTH6z@P<-Z9eNC;ev3h0tv2a`U)T-8& z*2tBO`lfrU!uU#1Tpo&CK(Uc?OrmP~OeK+4O-tId7scm#8m>G?>vc)f6VVZ4i>E&=AYYJ*z<&Nk?((I zZ1hZN?Z(3S0q%14A97Cgi~NSZ(lhAW&_|~su&~V;>37y|clw7u>{;lnJ?8WeN86j* zg|q%yXLJPEQ`)(|+*7=8HoteB(?3`|1aEd+DC{38?me8}bMC4GFh9Ju@X|=(+-B$a z4nFm{YTuFoV7#w z-F?o$uCcRy&hhQ}fzyRu-*VQjDV*B#r*pfmJy2ir;0<*3B}EXGjy`};!!s@zgx9h5v4VUo%QR+Mh-cfpK$BS zjd5wq&f?%89ubsr_qD>IQB(l+IYS4WjayMpRE}fAPhl2O`0l9l{I}_3Ds8@y|IUFA HeLnpgs|MCp diff --git a/barcode/locales/zh_CN.po b/barcode/locales/zh_CN.po deleted file mode 100644 index ffa498d..0000000 --- a/barcode/locales/zh_CN.po +++ /dev/null @@ -1,427 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -# Translators: -# Cédric Anne, 2018 -# liAnGjiA , 2021 -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-18 07:08+0000\n" -"PO-Revision-Date: 2017-03-02 15:37+0000\n" -"Last-Translator: liAnGjiA , 2021\n" -"Language-Team: Chinese (China) (https://www.transifex.com/pluginsGLPI/teams/73419/zh_CN/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: zh_CN\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: inc/barcode.class.php:78 -msgid "2A0" -msgstr "2A0" - -#: inc/barcode.class.php:77 -msgid "4A0" -msgstr "4A0" - -#: inc/barcode.class.php:79 -msgid "A0" -msgstr "A0" - -#: inc/barcode.class.php:80 -msgid "A1" -msgstr "A1" - -#: inc/barcode.class.php:89 -msgid "A10" -msgstr "A10" - -#: inc/barcode.class.php:81 -msgid "A2" -msgstr "A2" - -#: inc/barcode.class.php:82 -msgid "A3" -msgstr "A3" - -#: inc/barcode.class.php:83 -msgid "A4" -msgstr "A4" - -#: inc/barcode.class.php:84 -msgid "A5" -msgstr "A5" - -#: inc/barcode.class.php:85 -msgid "A6" -msgstr "A6" - -#: inc/barcode.class.php:86 -msgid "A7" -msgstr "A7" - -#: inc/barcode.class.php:87 -msgid "A8" -msgstr "A8" - -#: inc/barcode.class.php:88 -msgid "A9" -msgstr "A9" - -#: inc/barcode.class.php:90 -msgid "B0" -msgstr "B0" - -#: inc/barcode.class.php:91 -msgid "B1" -msgstr "B1" - -#: inc/barcode.class.php:100 -msgid "B10" -msgstr "B10" - -#: inc/barcode.class.php:92 -msgid "B2" -msgstr "B2" - -#: inc/barcode.class.php:93 -msgid "B3" -msgstr "B3" - -#: inc/barcode.class.php:94 -msgid "B4" -msgstr "B4" - -#: inc/barcode.class.php:95 -msgid "B5" -msgstr "B5" - -#: inc/barcode.class.php:96 -msgid "B6" -msgstr "B6" - -#: inc/barcode.class.php:97 -msgid "B7" -msgstr "B7" - -#: inc/barcode.class.php:98 -msgid "B8" -msgstr "B8" - -#: inc/barcode.class.php:99 -msgid "B9" -msgstr "B9" - -#: hook.php:46 hook.php:49 front/config.php:52 front/checkItemByInv.php:37 -#: inc/profile.class.php:50 inc/profile.class.php:86 -msgid "Barcode" -msgstr "条码" - -#: inc/config.class.php:61 -msgid "Barcode plugin configuration" -msgstr "条码插件配置" - -#: inc/config.class.php:177 -msgid "Barcodes sizes" -msgstr "条码大小" - -#: inc/config.class.php:157 -msgid "Bottom" -msgstr "按钮" - -#: inc/config.class.php:190 -msgid "By ID" -msgstr "按 ID" - -#: inc/config.class.php:191 -msgid "By serial number" -msgstr "按SN序列号" - -#: inc/barcode.class.php:101 -msgid "C0" -msgstr "C0" - -#: inc/barcode.class.php:102 -msgid "C1" -msgstr "C1" - -#: inc/barcode.class.php:111 -msgid "C10" -msgstr "C10" - -#: inc/barcode.class.php:103 -msgid "C2" -msgstr "C2" - -#: inc/barcode.class.php:104 -msgid "C3" -msgstr "C3" - -#: inc/barcode.class.php:105 -msgid "C4" -msgstr "C4" - -#: inc/barcode.class.php:106 -msgid "C5" -msgstr "C5" - -#: inc/barcode.class.php:107 -msgid "C6" -msgstr "C6" - -#: inc/barcode.class.php:108 -msgid "C7" -msgstr "C7" - -#: inc/barcode.class.php:109 -msgid "C8" -msgstr "C8" - -#: inc/barcode.class.php:110 -msgid "C9" -msgstr "C9" - -#: inc/barcode.class.php:159 -msgid "Code" -msgstr "Code" - -#: inc/config.class.php:82 -msgid "Company logo" -msgstr "公司LOGO" - -#: inc/barcode.class.php:179 inc/barcode.class.php:257 -msgid "Create" -msgstr "创建" - -#: inc/config.class.php:94 -msgid "Delete the logo" -msgstr "删除LOGO" - -#: inc/barcode.class.php:240 -msgid "Display border" -msgstr "边框可见" - -#: inc/barcode.class.php:248 -msgid "Display labels" -msgstr "显示表格" - -#: inc/barcode.class.php:124 -msgid "EXECUTIVE" -msgstr "EXECUTIVE" - -#: inc/config.class.php:78 -msgid "Empty the cache" -msgstr "清空缓存" - -#: inc/barcode.class.php:125 -msgid "FOLIO" -msgstr "FOLIO" - -#: inc/config.class.php:66 -msgid "General configuration" -msgstr "一般设置" - -#: front/barcode.form.php:62 inc/barcode.class.php:514 -#: inc/qrcode.class.php:411 -msgid "Generated file" -msgstr "生成文件" - -#: inc/barcode.class.php:157 -msgid "Generation" -msgstr "生成" - -#: inc/profile.class.php:117 -msgid "Generation of barcode" -msgstr "生成条码" - -#: inc/config.class.php:170 -msgid "Inner horizontal" -msgstr "横向" - -#: inc/config.class.php:173 -msgid "Inner vertical" -msgstr "纵向" - -#: inc/barcode.class.php:194 -msgid "It will generate only elements have defined field:" -msgstr "它只生成具有定义字段的元素:" - -#: inc/barcode.class.php:123 -msgid "LEGAL" -msgstr "LEGAL" - -#: inc/barcode.class.php:122 -msgid "LETTER" -msgstr "LETTER" - -#: inc/barcode.class.php:136 -msgid "Landscape" -msgstr "横向" - -#: inc/config.class.php:162 -msgid "Left" -msgstr "左边" - -#: inc/profile.class.php:113 -msgid "Manage configuration" -msgstr "管理配置" - -#: inc/config.class.php:152 -msgid "Margins" -msgstr "边框" - -#: inc/config.class.php:182 -msgid "Maximum height" -msgstr "最大高度" - -#: inc/config.class.php:179 -msgid "Maximum width" -msgstr "最大宽度" - -#: inc/barcode.class.php:230 -msgid "Not use first xx barcodes" -msgstr "条码首字符不使用 xx" - -#: inc/barcode.class.php:174 -msgid "Number of copies" -msgstr "副本数量" - -#: inc/barcode.class.php:169 inc/barcode.class.php:236 -#: inc/config.class.php:148 -msgid "Orientation" -msgstr "方向" - -#: inc/barcode.class.php:166 inc/barcode.class.php:226 -#: inc/config.class.php:145 -msgid "Page size" -msgstr "纸张大小" - -#: inc/barcode.class.php:135 -msgid "Portrait" -msgstr "竖向" - -#: hook.php:49 -msgid "Print QRcodes" -msgstr "二维码打印" - -#: hook.php:46 -msgid "Print barcodes" -msgstr "条码打印" - -#: inc/config.class.php:269 -msgid "QRcode" -msgstr "二维码" - -#: inc/barcode.class.php:112 -msgid "RA0" -msgstr "RA0" - -#: inc/barcode.class.php:113 -msgid "RA1" -msgstr "RA1" - -#: inc/barcode.class.php:114 -msgid "RA2" -msgstr "RA2" - -#: inc/barcode.class.php:115 -msgid "RA3" -msgstr "RA3" - -#: inc/barcode.class.php:116 -msgid "RA4" -msgstr "RA4" - -#: inc/config.class.php:165 -msgid "Right" -msgstr "右边" - -#: inc/barcode.class.php:117 -msgid "SRA0" -msgstr "SRA0" - -#: inc/barcode.class.php:118 -msgid "SRA1" -msgstr "SRA1" - -#: inc/barcode.class.php:119 -msgid "SRA2" -msgstr "SRA2" - -#: inc/barcode.class.php:120 -msgid "SRA3" -msgstr "SRA3" - -#: inc/barcode.class.php:121 -msgid "SRA4" -msgstr "SRA4" - -#: inc/config.class.php:196 -msgid "Text display options" -msgstr "文本显示选项" - -#: inc/config.class.php:198 -msgid "Text size" -msgstr "文本大小" - -#: inc/config.class.php:201 -msgid "Text spacing between lines" -msgstr "文本间距" - -#: front/config.form.php:56 -msgid "The cache has been emptied." -msgstr " 缓存已被清空。 " - -#: inc/barcode.class.php:286 -msgid "The generation of some barcodes produced errors." -msgstr "部分产品条码生成错误。" - -#: front/config.form.php:61 -msgid "The logo has been removed." -msgstr "LOGO已被移除。" - -#: inc/barcode.class.php:196 -msgid "Ticket number" -msgstr "工单号码" - -#: inc/config.class.php:154 -msgid "Top" -msgstr "上部" - -#: inc/barcode.class.php:162 inc/barcode.class.php:205 inc/config.class.php:70 -msgid "Type" -msgstr "类型" - -#: inc/config.class.php:188 -msgid "URL" -msgstr "URL链接" - -#: inc/config.class.php:264 -msgid "code128" -msgstr "code128" - -#: inc/config.class.php:263 -msgid "code39" -msgstr "code39" - -#: inc/config.class.php:265 -msgid "ean13" -msgstr "ean13" - -#: inc/config.class.php:266 -msgid "int25" -msgstr "int25" - -#: inc/config.class.php:267 -msgid "postnet" -msgstr "postnet" - -#: inc/config.class.php:268 -msgid "upca" -msgstr "upca" diff --git a/barcode/patch/fix-pear-image-barcode.patch b/barcode/patch/fix-pear-image-barcode.patch deleted file mode 100644 index fd6df96..0000000 --- a/barcode/patch/fix-pear-image-barcode.patch +++ /dev/null @@ -1,145 +0,0 @@ ---- Image/Barcode.php -+++ Image/Barcode.php -@@ -77,7 +77,7 @@ - return PEAR::raiseError("Unable to find draw method in '$classname' class"); - } - -- @$obj =& new $classname(); -+ @$obj = new $classname(); - - if (isset($obj->_barcodeheight)) $obj->_barcodeheight = $height; - if (isset($obj->_barwidth)) $obj->_barwidth = $barwidth; ---- Image/Barcode/code128.php -+++ Image/Barcode/code128.php -@@ -42,9 +42,7 @@ - * @link http://pear.php.net/package/Image_Barcode - */ - --require_once "Image/Barcode.php"; -- --class Image_Barcode_code128 extends Image_Barcode -+class Image_Barcode_code128 - { - var $_type = 'code128'; - var $_barcodeheight = 60; ---- Image/Barcode/Code39.php -+++ Image/Barcode/Code39.php -@@ -25,8 +25,6 @@ - */ - - --require_once "Image/Barcode.php"; -- - - if (!function_exists('str_split')) { - require_once 'PHP/Compat.php'; -@@ -47,7 +45,7 @@ - * @link http://pear.php.net/package/Image_Barcode - * @since Image_Barcode 0.5 - */ --class Image_Barcode_Code39 extends Image_Barcode -+class Image_Barcode_Code39 - { - /** - * Barcode type ---- Image/Barcode/ean13.php -+++ Image/Barcode/ean13.php -@@ -23,8 +23,6 @@ - * @link http://pear.php.net/package/Image_Barcode - */ - --require_once 'Image/Barcode.php'; -- - /** - * Image_Barcode_ean13 class - * -@@ -39,7 +37,7 @@ - * @link http://pear.php.net/package/Image_Barcode - * @since Image_Barcode 0.4 - */ --class Image_Barcode_ean13 extends Image_Barcode -+class Image_Barcode_ean13 - { - /** - * Barcode type ---- Image/Barcode/ean8.php -+++ Image/Barcode/ean8.php -@@ -24,8 +24,6 @@ - * @link http://pear.php.net/package/Image_Barcode - */ - --require_once 'Image/Barcode.php'; -- - /** - * Image_Barcode_ean8 class - * -@@ -40,7 +28,7 @@ - * @version Release: @package_version@ - * @link http://pear.php.net/package/Image_Barcode - */ --class Image_Barcode_ean8 extends Image_Barcode -+class Image_Barcode_ean8 - { - /** - * Barcode type ---- Image/Barcode/int25.php -+++ Image/Barcode/int25.php -@@ -23,9 +23,6 @@ - * @link http://pear.php.net/package/Image_Barcode - */ - --require_once "PEAR.php"; --require_once "Image/Barcode.php"; -- - - /** - * Image_Barcode_int25 class -@@ -40,7 +37,7 @@ - * @version Release: @package_version@ - * @link http://pear.php.net/package/Image_Barcode - */ --class Image_Barcode_int25 extends Image_Barcode -+class Image_Barcode_int25 - { - /** - * Barcode type ---- Image/Barcode/postnet.php -+++ Image/Barcode/postnet.php -@@ -36,8 +36,6 @@ - * density: 22 bars/inch = 8.66 bars/cm - */ - --require_once 'Image/Barcode.php'; -- - - /** - * Image_Barcode_postnet class -@@ -52,7 +50,7 @@ - * @version CVS: $Id$ - * @link http://pear.php.net/package/Image_Barcode - */ --class Image_Barcode_postnet extends Image_Barcode -+class Image_Barcode_postnet - { - /** - * Barcode type ---- Image/Barcode/upca.php -+++ Image/Barcode/upca.php -@@ -24,8 +24,6 @@ - * @link http://pear.php.net/package/Image_Barcode - */ - --require_once 'Image/Barcode.php'; -- - /** - * Image_Barcode_upca class - * -@@ -47,7 +45,7 @@ - * @version Release: @package_version@ - * @link http://pear.php.net/package/Image_Barcode - */ --class Image_Barcode_upca extends Image_Barcode -+class Image_Barcode_upca - { - /** - * Barcode type diff --git a/barcode/setup.php b/barcode/setup.php deleted file mode 100644 index ea08b8f..0000000 --- a/barcode/setup.php +++ /dev/null @@ -1,112 +0,0 @@ - ['Profile']]); - Plugin::registerClass('PluginBarcodeBarcode'); - - if (Session::haveRight('plugin_barcode_barcode', CREATE) - || Session::haveRight('plugin_barcode_config', UPDATE)) { - - $PLUGIN_HOOKS['pre_item_purge']['barcode'] - = ['Profile' => ['PluginBarcodeProfile', 'cleanProfiles']]; - - // Acción masiva habilitada - $PLUGIN_HOOKS['use_massive_action']['barcode'] = 1; - - // Ruta base del plugin (sin Plugin::getWebDir - deprecado en GLPI 11) - $web_dir = '/plugins/barcode'; - - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['title'] = __('Search'); - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['page'] = $web_dir . '/front/barcode.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['search'] = $web_dir . '/front/barcode.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['add'] = $web_dir . '/front/barcode.form.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['config'] = $web_dir . '/index.php'; - - $PLUGIN_HOOKS['helpdesk_menu_entry']['barcode'] = true; - } - - // Página de configuración - if (Session::haveRight('config', UPDATE)) { - $PLUGIN_HOOKS['config_page']['barcode'] = 'front/config.php'; - } - - // Redirección por ID: /index.php?redirect=plugin_barcode_2 - $PLUGIN_HOOKS['redirect_page']['barcode'] = 'barcode.form.php'; -} - -/** - * Versión e información del plugin - Requerido - */ -function plugin_version_barcode() { - return [ - 'name' => 'Barcode', - 'shortname' => 'barcode', - 'version' => PLUGIN_BARCODE_VERSION, - 'license' => 'AGPLv3+', - 'author' => 'David DURIEUX & - Jean Marc GRISARD & Vincent MAZZONI - (Migrado a GLPI 11 por Dawing S.A.S.)', - 'homepage' => 'https://github.com/pluginsGLPI/barcode', - 'requirements' => [ - 'glpi' => [ - 'min' => PLUGIN_BARCODE_MIN_GLPI, - 'max' => PLUGIN_BARCODE_MAX_GLPI, - ], - 'php' => [ - 'min' => '8.1', - ], - ] - ]; -} - -/** - * Verificación de prerequisitos antes de instalar - */ -function plugin_barcode_check_prerequisites() { - if (version_compare(GLPI_VERSION, PLUGIN_BARCODE_MIN_GLPI, 'lt') - || version_compare(GLPI_VERSION, PLUGIN_BARCODE_MAX_GLPI, 'gt')) { - if (method_exists('Plugin', 'messageIncompatible')) { - Plugin::messageIncompatible('core', PLUGIN_BARCODE_MIN_GLPI, PLUGIN_BARCODE_MAX_GLPI); - } - return false; - } - return true; -} - -/** - * Verificación de configuración - */ -function plugin_barcode_check_config($verbose = false) { - return true; -} diff --git a/barcode/tools/HEADER b/barcode/tools/HEADER deleted file mode 100644 index 722122a..0000000 --- a/barcode/tools/HEADER +++ /dev/null @@ -1,27 +0,0 @@ -LICENSE - -This file is part of barcode plugin project. - -Plugin Barcode is free software: you can redistribute it and/or modify -it under the terms of the GNU Affero General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Plugin Barcode 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 Affero General Public License for more details. - -You should have received a copy of the GNU Affero General Public License -along with Plugin Barcode. If not, see . - ------------------------------------------------------------------------- - -@package Plugin Barcode -@author David Durieux -@co-author -@copyright Copyright (c) 2009-2017 Barcode plugin Development team -@license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html -@link https://github.com/pluginsGLPI/barcode -@since 2009 diff --git a/barcode/tools/extract_template.sh b/barcode/tools/extract_template.sh deleted file mode 100644 index b6e6819..0000000 --- a/barcode/tools/extract_template.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -soft='GLPI - Barcode plugin' -version='0.84' -email=glpi-translation@gna.org -copyright='Barcode plugin Development Team' - -#xgettext *.php */*.php -copyright-holder='$copyright' --package-name=$soft --package-version=$version --msgid-bugs-address=$email -o locales/en_GB.po -L PHP --from-code=UTF-8 --force-po -i --keyword=_n:1,2 --keyword=__ --keyword=_e - -# Only strings with domain specified are extracted (use Xt args of keyword param to set number of args needed) - -xgettext *.php */*.php -o locales/glpi.pot -L PHP --add-comments=TRANS --from-code=UTF-8 --force-po \ - --keyword=_n:1,2,4t --keyword=__s:1,2t --keyword=__:1,2t --keyword=_e:1,2t --keyword=_x:1c,2,3t --keyword=_ex:1c,2,3t \ - --keyword=_sx:1c,2,3t --keyword=_nx:1c,2,3,4t - - -### for using tx : -##tx set --execute --auto-local -r GLPI_example.glpi-084-current 'locales/.po' --source-lang en --source-file locales/glpi.pot -## tx push -s -## tx pull -a - - diff --git a/barcode/tools/update_mo.pl b/barcode/tools/update_mo.pl deleted file mode 100644 index ca66dac..0000000 --- a/barcode/tools/update_mo.pl +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/perl -#!/usr/bin/perl -w - -if (@ARGV!=0){ -print "USAGE update_mo.pl\n\n"; - -exit(); -} - -opendir(DIRHANDLE,'../locales')||die "ERROR: can not read current directory\n"; -foreach (readdir(DIRHANDLE)){ - if ($_ ne '..' && $_ ne '.'){ - - if(!(-l "$dir/$_")){ - if (index($_,".po",0)==length($_)-3) { - $lang=$_; - $lang=~s/\.po//; - - `msgfmt ../locales/$_ -o ../locales/$lang.mo`; - } - } - - } -} -closedir DIRHANDLE; - -# -# diff --git a/barcode/tools/update_po.pl b/barcode/tools/update_po.pl deleted file mode 100644 index 5969e0e..0000000 --- a/barcode/tools/update_po.pl +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/perl -#!/usr/bin/perl -w - -if (@ARGV!=2){ -print "USAGE update_po.pl transifex_login transifex_password\n\n"; - -exit(); -} -$user = $ARGV[0]; -$password = $ARGV[1]; - -opendir(DIRHANDLE,'../locales')||die "ERROR: can not read current directory\n"; -foreach (readdir(DIRHANDLE)){ - if ($_ ne '..' && $_ ne '.'){ - - if(!(-l "$dir/$_")){ - if (index($_,".po",0)==length($_)-3) { - $lang=$_; - $lang=~s/\.po//; - - `wget --user=$user --password=$password --output-document=../locales/$_ http://www.transifex.net/api/2/project/glpi_barcode/resource/plugin-08410/translation/$lang/?file=$_`; - } - } - - } -} -closedir DIRHANDLE; - -# -# From 419d5a7d6c9c82dc00d3ec02339fdc3cab33f0ac Mon Sep 17 00:00:00 2001 From: cdbaq Date: Mon, 30 Mar 2026 13:09:17 -0500 Subject: [PATCH 3/3] migrate plugin to GLPI 11.x compatibility (v3.0.0) Migrated from GLPI 10.x (v2.7.1) to GLPI 11.x (v3.0.0) compatibility. Tested on: GLPI 11.0.6 | Rocky Linux 10 | PHP 8.4.19 | MariaDB Changes: - Update version bounds to 11.0.0-11.0.99 - Remove deprecated csrf_compliant hook (GLPI 11) - Replace Plugin::getWebDir() with direct paths (deprecated in GLPI 11) - Fix DB queries: replace query()+die() with doQueryOrDie() - Fix PRIMARY KEY uppercase bug in hook.php (MariaDB strict mode) - Fix PHP 8.4 QR content encoding - removed __() from QR embedded text - Improve massive action UI with descriptive labels per column - Add security validation in send.php and document.send.php - Require PHP >= 8.1 - Add README.md (EN) and README_MIGRACION.md (ES) Co-authored with Claude (Anthropic) - claude.ai Migration by Cristian David Baquero - Dawing S.A.S. (https://dawing.com.co) --- README.md | 116 ++++++- README_MIGRACION.md | 183 +++++++++++ barcode.xml | 157 ++-------- composer.json | 20 +- front/barcode.form.php | 70 ++--- front/barcode.php | 81 +++++ front/checkItemByInv.php | 71 ++--- front/config.form.php | 100 +++--- front/config.php | 44 +-- front/config_type.form.php | 78 +++-- front/document.send.php | 86 +++-- front/send.php | 112 +++---- hook.php | 257 +++++++-------- inc/barcode.class.php | 625 +++++++++++++++++++------------------ inc/config.class.php | 310 +++++++++--------- inc/config_type.class.php | 50 +-- inc/profile.class.php | 225 ++++++------- inc/qrcode.class.php | 399 +++++++++-------------- setup.php | 122 ++++---- 19 files changed, 1555 insertions(+), 1551 deletions(-) create mode 100644 README_MIGRACION.md create mode 100644 front/barcode.php diff --git a/README.md b/README.md index 40eb1c9..3bb5c33 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,110 @@ -# Barcode GLPI plugin +# Barcode Plugin for GLPI 11 -To use it, go in computer list, check the computers and in massive action, you have 2 possibilities : +> **Migration to GLPI 11.x** by [Dawing S.A.S.](https://dawing.com.co) — original plugin by [David DURIEUX / pluginsGLPI](https://github.com/pluginsGLPI/barcode) -* print a bar code -* print a QRcode +## What this plugin does -## Translations +| Feature | Description | +|---|---| +| **Linear barcodes** | Generates Code39, Code128, EAN13, INT25, Postnet, UPC-A from the asset inventory number (`otherserial`) | +| **QR codes** | Generates QR codes with configurable content: serial number, inventory number, ID, UUID, name, URL, date | +| **PDF export** | Automatic grid layout, multiple codes per page | +| **Massive action** | Available from any GLPI asset list: "Print barcodes" and "Print QRcodes" | +| **Per-type config** | Margins, page size, orientation, max code dimensions, text size | +| **Company logo** | Upload a PNG logo that appears above each code in the PDF | -If you want Tag to be available in your native language and have a little time , you can help us : +## Requirements -Join us on [Transifex](https://www.transifex.com/pluginsGLPI/glpi_barcode/) +| Component | Minimum version | +|---|---| +| GLPI | 11.0.0 | +| PHP | 8.1 (tested on 8.4) | +| PHP extensions | `gd`, `mbstring`, `xml`, `curl`, `zip` | +| Composer | 2.x | -## Contributing +## Installation -* Open a ticket for each bug/feature so it can be discussed -* Follow [development guidelines](http://glpi-developer-documentation.readthedocs.io/en/latest/plugins/index.html) -* Refer to [GitFlow](http://git-flow.readthedocs.io/) process for branching -* Work on a new branch on your own fork -* Open a PR that will be reviewed by a developer +```bash +# 1. Place plugin in GLPI plugins directory +cp -r barcode/ /var/www/glpi/plugins/ + +# 2. Install dependencies +cd /var/www/glpi/plugins/barcode +composer install --no-dev --optimize-autoloader + +# 3. Set permissions (Rocky Linux / CentOS / AlmaLinux) +chown -R apache:apache /var/www/glpi/plugins/barcode +mkdir -p /var/www/glpi/files/_plugins/barcode +chown -R apache:apache /var/www/glpi/files/_plugins/barcode + +# 4. SELinux (if enforcing) +semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/plugins/barcode(/.*)?" +semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/glpi/files/_plugins/barcode(/.*)?" +restorecon -Rv /var/www/glpi/plugins/barcode +restorecon -Rv /var/www/glpi/files/_plugins/barcode +``` + +Then go to **Setup → Plugins → Barcode → Install → Enable** + +## Changes from v2.7.1 (GLPI 10) to v3.0.0 (GLPI 11) + +| File | Issue | Fix | +|---|---|---| +| `setup.php` | Version bound `10.0.99` blocked install on GLPI 11 | Updated to `11.0.0–11.0.99` | +| `setup.php` | `csrf_compliant` hook removed in GLPI 11 | Removed | +| `setup.php` | `Plugin::getWebDir()` deprecated in GLPI 11 | Replaced with direct paths `/plugins/barcode/...` | +| `hook.php` | `$DB->query() or die()` forbidden in GLPI 11 | Replaced with `$DB->doQueryOrDie()` | +| `hook.php` | `PRIMARY KEY (ID)` uppercase bug (MariaDB strict) | Fixed to lowercase `id` | +| `inc/qrcode.class.php` | Special chars (tildes, ñ) broken in QR content | Removed `__()` from QR embedded text | +| `inc/qrcode.class.php` | Massive action UI column purpose was unclear | Added descriptive labels explaining each column | +| `inc/config.class.php` | `array_keys()[0]` deprecated pattern | Updated to `array_key_first()` | +| `inc/config.class.php` | Raw `` | Replaced with `Html::submit()` | +| `front/*.php` | `include('../../../inc/includes.php')` broken path | Fixed for GLPI 11 router | +| `front/send.php` | No filename validation | Added strict PDF-only validation | +| `front/document.send.php` | No MIME validation on logo | Added `finfo` MIME type check | +| `front/checkItemByInv.php` | No itemtype class validation | Added `is_subclass_of(CommonDBTM)` check | +| `composer.json` | PHP platform forced to `7.4` | Updated to `>=8.1` | + +## Tested environment + +- **GLPI** 11.0.6 +- **Rocky Linux** 10 +- **PHP** 8.4.19 (Remi repository) +- **MariaDB** (centralized server) +- **Apache** 2.4.63 + +## Usage + +### From asset lists (Massive action) + +1. Go to any asset list (Computers, Monitors, Printers, etc.) +2. Select one or more assets +3. In the massive action bar: **Barcode – Print barcodes** or **Barcode – Print QRcodes** +4. Configure options — left column = include in QR data, right column = show as visible label under the code +5. Click **Create** → download link for the generated PDF appears + +### QR code content + +The QR code embeds plain ASCII text (no special characters) to ensure maximum scanner compatibility: + +``` +Serial number = ABC123 +Inventory number = IM00001 +ID = 42 +Name = LAPTOP-001 +URL = https://glpi.example.com/plugins/barcode/front/checkItemByInv.php?inventoryNumber=IM00001&itemtype=Computer +QRcode date = 2026-03-30 +``` + +### Company logo + +Go to **Setup → Plugins → Barcode config** and upload a PNG logo (recommended: 300×60px, transparent background). + +## License + +[AGPL v3+](LICENSE) + +## Credits + +- Original plugin: [David DURIEUX](mailto:d.durieux@siprossii.com) and contributors +- GLPI 11 migration: [Cristian David Baquero / Dawing S.A.S.](https://dawing.com.co) diff --git a/README_MIGRACION.md b/README_MIGRACION.md new file mode 100644 index 0000000..16fe1fd --- /dev/null +++ b/README_MIGRACION.md @@ -0,0 +1,183 @@ +# Plugin Barcode para GLPI 11 +## Migrado a GLPI 11.x por Dawing S.A.S. + +--- + +## ¿Qué hace este plugin? + +| Función | Descripción | +|---|---| +| **Barcodes lineales** | Genera Code39, Code128, EAN13, INT25, Postnet, UPC-A a partir del número de inventario (`otherserial`) del activo | +| **QR codes** | Genera QR codes con contenido configurable: número de serie, inventario, ID, UUID, nombre, URL y fecha | +| **Exportación PDF** | Grilla de códigos exportada a PDF con layout automático (múltiples por página) | +| **Acción masiva** | Disponible desde cualquier listado de activos GLPI: "Print barcodes" y "Print QRcodes" | +| **Configuración por tipo** | Márgenes, tamaño de página, orientación, dimensiones máximas de código, tamaño de texto | +| **Logo corporativo** | Permite subir un logo PNG que aparece sobre cada código en el PDF | + +--- + +## Cambios realizados para compatibilidad con GLPI 11 + +### setup.php +- Versión mínima/máxima actualizada a `11.0.0` / `11.0.99` +- Eliminado `$PLUGIN_HOOKS['csrf_compliant']` (deprecado y eliminado en GLPI 11) +- Eliminado `Plugin::getWebDir()` (deprecado en GLPI 11) → reemplazado por rutas absolutas `/plugins/barcode/...` + +### hook.php +- `$DB->query(...) or die(...)` → reemplazado por `$DB->doQueryOrDie(...)` (API GLPI 11) +- Bug heredado: `PRIMARY KEY (ID)` (mayúscula) → corregido a `PRIMARY KEY (id)` (minúscula, compatible con MariaDB estricto) +- `$DB->request('tabla', $cond)` → actualizado a sintaxis con array estructurado + +### inc/barcode.class.php / inc/qrcode.class.php +- `Plugin::getWebDir()` → rutas `/plugins/barcode/front/...` +- `count()` sobre valores que pueden ser null → protegido con `is_array()` +- `key($ma->items)` → comparación mejorada con `is_a()` para detectar tipos ITIL + +### inc/config.class.php +- `array_keys($obj->find(...))[0]` → `array_key_first($obj->find(...))` (PHP 7.3+, disponible en PHP 8.x) + +### front/*.php +- Validación de seguridad mejorada en `send.php` (solo permite archivos PDF propios del plugin) +- `document.send.php`: validación de MIME type y restricción solo a `barcode/logo.png` +- `checkItemByInv.php`: validación de que el itemtype es subclase de `CommonDBTM` +- Confirmaciones con `Session::checkRight()` en todos los controladores + +### composer.json +- `platform.php` actualizado de `7.4.0` a `8.1.0` +- Añadido autoload `classmap` para el directorio `inc/` + +--- + +## Requisitos del servidor + +| Componente | Versión mínima | +|---|---| +| GLPI | 11.0.0 | +| PHP | 8.1 | +| Extensiones PHP | `gd`, `mbstring`, `xml`, `curl` | +| Composer | 2.x | + +--- + +## Instalación + +### Paso 1 – Copiar el plugin + +```bash +# Desde el directorio raíz de GLPI +cp -r /ruta/a/barcode /var/www/glpi/plugins/barcode +# O usando marketplace +cp -r /ruta/a/barcode /var/www/glpi/marketplace/barcode +``` + +### Paso 2 – Instalar dependencias con Composer + +```bash +cd /var/www/glpi/plugins/barcode +composer install --no-dev --optimize-autoloader +``` + +> **Nota:** Si el servidor no tiene acceso a internet, ejecuta Composer en tu equipo local +> y sube la carpeta `vendor/` completa al servidor. + +### Paso 3 – Verificar permisos + +```bash +# El usuario del servidor web (apache/nginx/www-data) debe poder escribir en: +chown -R www-data:www-data /var/www/glpi/plugins/barcode +chmod -R 755 /var/www/glpi/plugins/barcode + +# Y también en el directorio de documentos del plugin: +mkdir -p /var/www/glpi/files/_plugins/barcode +chown -R www-data:www-data /var/www/glpi/files/_plugins/barcode +chmod -R 750 /var/www/glpi/files/_plugins/barcode +``` + +### Paso 4 – Instalar en GLPI + +1. Entrar a GLPI como super-administrador +2. Ir a **Configuración → Plugins** (o **Setup → Plugins**) +3. Localizar **Barcode** en la lista +4. Hacer clic en **Instalar** (ícono de engranaje) +5. Hacer clic en **Activar** + +### Paso 5 – Configurar derechos + +1. Ir a **Administración → Perfiles** +2. Editar los perfiles que necesiten usar el plugin +3. En la pestaña **Barcode** configurar: + - `Manage configuration` (UPDATE) → para administradores + - `Generation of barcode` (CREATE) → para técnicos + +--- + +## Uso + +### Generación manual + +Ir a **Herramientas → Barcode** y escribir el código a generar. + +### Generación desde activos (acción masiva) + +1. Ir a cualquier listado de activos (Equipos, Monitores, Impresoras, etc.) +2. Seleccionar uno o más activos con los checkboxes +3. En la barra de acciones masivas: **Barcode – Print barcodes** o **Barcode – Print QRcodes** +4. Configurar opciones (tipo, tamaño, orientación, campos a incluir en QR) +5. Hacer clic en **Create** → aparecerá un enlace para descargar el PDF + +### Logo corporativo + +1. Ir a **Configuración → Plugins → Barcode** +2. En la sección **Company logo**, subir un archivo PNG +3. El logo aparecerá sobre cada código en los PDFs generados + +--- + +## Estructura de archivos + +``` +barcode/ +├── setup.php ← Bootstrap e inicialización de hooks +├── hook.php ← Funciones de instalación/desinstalación/acciones masivas +├── barcode.xml ← Metadatos del plugin +├── composer.json ← Dependencias PHP +├── inc/ +│ ├── barcode.class.php ← Clase principal: generación de códigos lineales + PDF +│ ├── qrcode.class.php ← Clase QR code +│ ├── config.class.php ← Clase de configuración general +│ ├── config_type.class.php ← Clase de configuración por tipo +│ └── profile.class.php ← Clase de gestión de perfiles/derechos +├── front/ +│ ├── barcode.php ← Listado/formulario de generación manual +│ ├── barcode.form.php ← Procesador POST de generación manual +│ ├── config.php ← Página de configuración +│ ├── config.form.php ← Procesador POST de configuración general +│ ├── config_type.form.php ← Procesador POST de configuración por tipo +│ ├── send.php ← Descarga del PDF generado +│ ├── document.send.php ← Sirve el logo de la empresa +│ └── checkItemByInv.php ← Búsqueda de activo por número de inventario +├── locales/ ← Archivos de traducción (.po/.mo) +├── patch/ +│ └── fix-pear-image-barcode.patch ← Patch de compatibilidad PHP 8.x para PEAR Image_Barcode +└── vendor/ ← Dependencias Composer (generadas por composer install) +``` + +--- + +## Notas de compatibilidad + +- Esta versión (3.0.0) es **exclusivamente compatible con GLPI 11.0.x** +- Para GLPI 10.0.x usar la versión 2.7.1 del plugin original +- Las tablas de base de datos son compatibles hacia atrás (mismo esquema) +- Los archivos PDF e imágenes generados previamente en `files/_plugins/barcode/` siguen siendo válidos + +--- + +## Soporte + +Para soporte técnico relacionado con esta migración: +- **Dawing S.A.S.** – https://dawing.com.co +- soporte@dawing.com.co + +Para el plugin original: +- https://github.com/pluginsGLPI/barcode diff --git a/barcode.xml b/barcode.xml index 136ff8f..32f4808 100644 --- a/barcode.xml +++ b/barcode.xml @@ -1,160 +1,61 @@ - Barcode + Barcode barcode stable https://github.com/pluginsGLPI/barcode/blob/master/barscode.png?raw=true - - - + + + - - - - + + + + https://github.com/pluginsGLPI/barcode https://github.com/pluginsGLPI/barcode/releases David DURIEUX + Dawing S.A.S. (migración GLPI 11) - 2.7.1 - ~10.0.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.7.1/glpi-barcode-2.7.1.tar.bz2 + 3.0.0 + ~11.0.0 - 2.7.0 + 2.7.1 ~10.0.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.7.0/glpi-barcode-2.7.0.tar.bz2 - - - 2.6.2 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.6.2/glpi-barcode-2.6.2.tar.bz2 - - - 2.6.1 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.6.1/glpi-barcode-2.6.1.tar.bz2 - - - 2.6.0 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.6.0/glpi-barcode-2.6.0.tar.bz2 - - - 2.5.2 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.5.2/glpi-barcode-2.5.2.tar.bz2 - - 2.5.1 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.5.1/glpi-barcode-2.5.1.tar.bz2 - - - 2.5.0 - ~9.5.0 - https://github.com/pluginsGLPI/barcode/releases/download/2.5.0/glpi-barcode-2.5.0.tar.bz2 - - - 2.4.1 - 9.4 - - - 2.4.0 - 9.4 - - - 2.3.0 - 9.4 - - - 2.2.1 - 9.2 - 9.3 - - - 2.2.0 - 9.2 - 9.3 - - - 2.1.1 - 9.2 - - - 2.1.0 - 9.2 - - - 0.90+1.0 - 0.90 - - - 0.85+1.0 - 0.85 - - - 0.84+1.0 - 0.84 - - - 2.1.0 - 0.80 - - - 1.4 - 0.71 - - - 1.3 - 0.70 - - - 1.2 - 0.68.1 - - - 1.1 - 0.68 - - + cs_CZ - en_GB - fr_FR de_DE + en_GB es_AR es_ES + fr_FR pt_BR sl_SI tr_TR - + - - - export - code barre - QRcode - données - - - export - barcode - QRcode - data - - - export - čárovýkód - QRkód - data - + + + export + barcode + QRcode + PDF + + + exportar + código de barras + QRcode + PDF + diff --git a/composer.json b/composer.json index 5c3c436..265a0aa 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,10 @@ { + "name": "glpi-project/barcode", + "description": "GLPI Barcode plugin - migrated to GLPI 11 by Dawing S.A.S.", + "type": "glpi-plugin", + "license": "AGPL-3.0-or-later", "require": { - "php": ">=7.4", + "php": ">=8.1", "cweagans/composer-patches": "^1.7", "deltalab/phpqrcode": "^1.1", "pear/image_barcode": "^1.1", @@ -12,9 +16,6 @@ }, "config": { "optimize-autoloader": true, - "platform": { - "php": "7.4.0" - }, "sort-packages": true, "allow-plugins": { "cweagans/composer-patches": true @@ -26,7 +27,7 @@ "package": { "name": "deltalab/phpqrcode", "version": "1.1.4", - "dist":{ + "dist": { "url": "https://sourceforge.net/projects/phpqrcode/files/releases/phpqrcode-2010100721_1.1.4.zip/download", "type": "zip", "reference": "1.1.4" @@ -43,7 +44,7 @@ "package": { "name": "pear/image_barcode", "version": "1.1.2", - "dist":{ + "dist": { "url": "https://github.com/pear/Image_Barcode/archive/1.1.2.zip", "type": "zip", "reference": "1.1.2" @@ -62,8 +63,13 @@ "extra": { "patches": { "pear/image_barcode": { - "Fix PHP 7.x / 8.x compatibility": "./patch/fix-pear-image-barcode.patch" + "Fix PHP 8.x compatibility": "./patch/fix-pear-image-barcode.patch" } } + }, + "autoload": { + "classmap": [ + "inc/" + ] } } diff --git a/front/barcode.form.php b/front/barcode.form.php index 386c788..3676116 100644 --- a/front/barcode.form.php +++ b/front/barcode.form.php @@ -2,64 +2,32 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ + */ - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 +include('../../../inc/includes.php'); - ------------------------------------------------------------------------ - */ +Session::checkRight('plugin_barcode_barcode', CREATE); -include ('../../../inc/includes.php'); +// Valores por defecto para los parámetros opcionales del formulario +$_POST['length'] = $_POST['length'] ?? ''; +$_POST['prefixe'] = $_POST['prefixe'] ?? ''; +$_POST['size'] = $_POST['size'] ?? ''; +$_POST['format'] = $_POST['format'] ?? ''; -if (!isset($_POST["length"])) { - $_POST["length"] = ""; -} -if (!isset($_POST["prefixe"])) { - $_POST["prefixe"] = ""; -} -if (!isset($_POST["size"])) { - $_POST["size"] = ""; -} -if (!isset($_POST["format"])) { - $_POST["format"] = ""; -} +if (isset($_POST['generate'])) { + $barcode = new PluginBarcodeBarcode(); + $file = $barcode->printPDF($_POST); + $filePath = explode('/', $file); + $filename = end($filePath); -$barcode = new PluginBarcodeBarcode(); -$file = $barcode->printPDF($_POST); -$filePath = explode('/', $file); -$filename = $filePath[count($filePath)-1]; + $msg = "" + . __('Generated file', 'barcode') . ""; -$msg = "".__('Generated file', 'barcode').""; -Session::addMessageAfterRedirect($msg); + Session::addMessageAfterRedirect($msg); +} Html::back(); diff --git a/front/barcode.php b/front/barcode.php new file mode 100644 index 0000000..40271c1 --- /dev/null +++ b/front/barcode.php @@ -0,0 +1,81 @@ +"; +echo "

" . __('Barcode generation', 'barcode') . "

"; + +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; +echo ""; + +echo ""; +echo ""; +echo ""; + +echo "
" . __('Manual generation', 'barcode') . "
" . __('Code', 'barcode') . ""; +echo ""; +echo "" . __('Type', 'barcode') . ""; +$config = $pbConfig->getConfigType(); +$pbConfig->showTypeSelect($config['type']); +echo "
" . __('Page size', 'barcode') . ""; +$pbBarcode->showSizeSelect($config['size']); +echo "" . __('Orientation', 'barcode') . ""; +$pbBarcode->showOrientationSelect($config['orientation']); +echo "
" . __('Number of copies', 'barcode') . "" . __('Not use first xx barcodes', 'barcode') . ""; +Dropdown::showNumber("eliminate", ['width' => '100']); +echo "
" . __('Display border', 'barcode') . ""; +Dropdown::showYesNo("border", 1, -1, ['width' => '100']); +echo "" . __('Display labels', 'barcode') . ""; +Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); +echo "
"; +echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); +echo "
"; +Html::closeForm(); +echo ""; + +Html::footer(); diff --git a/front/checkItemByInv.php b/front/checkItemByInv.php index b1023b9..1dbee93 100644 --- a/front/checkItemByInv.php +++ b/front/checkItemByInv.php @@ -1,48 +1,37 @@ . - ------------------------------------------------------------------------ - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -// Non menu entry case -//header("Location:../../central.php"); -include ('../../../inc/includes.php'); -Session::checkRight("config", UPDATE); -// To be available when plugin is not activated -Plugin::load('barcode'); -Html::header(__('Barcode', 'barcode'), $_SERVER['PHP_SELF'], "config", "plugins"); -$itemtype = $_GET['itemtype']; + +include('../../../inc/includes.php'); + +// Verificar que el usuario tiene sesión válida +Session::checkLoginUser(); + +if (!isset($_GET['inventoryNumber']) || !isset($_GET['itemtype'])) { + Html::displayErrorAndDie(__('Missing parameters.', 'barcode'), true); +} + +$inventoryNumber = $_GET['inventoryNumber']; +$itemtype = $_GET['itemtype']; + +// Validar que el itemtype es una clase GLPI válida +if (!class_exists($itemtype) || !is_subclass_of($itemtype, CommonDBTM::class)) { + Html::displayErrorAndDie(__('Invalid item type.', 'barcode'), true); +} + $item = new $itemtype(); -$itemInventoryNumber[] = $_GET['inventoryNumber']; -foreach ($itemInventoryNumber as $key => $value) { - if ($item->getFromDBByCrit(['otherserial' => $value])) { - Html::redirect($item->getFormURLWithID($item->getID())); - } else { - Html::displayErrorAndDie(__('No item found'), true); - } -}; -Html::footer(); + +if ($item->getFromDBByCrit(['otherserial' => $inventoryNumber])) { + Html::redirect($item->getFormURLWithID($item->getID())); +} else { + Html::displayErrorAndDie( + sprintf(__('No item found with inventory number: %s', 'barcode'), htmlspecialchars($inventoryNumber)), + true + ); +} diff --git a/front/config.form.php b/front/config.form.php index 67ca92a..0bcd80d 100644 --- a/front/config.form.php +++ b/front/config.form.php @@ -2,73 +2,77 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -include ('../../../inc/includes.php'); +include('../../../inc/includes.php'); + +Session::checkRight("config", UPDATE); +// --- Vaciar caché de imágenes generadas --- if (isset($_POST['dropCache'])) { - $dir = GLPI_PLUGIN_DOC_DIR.'/barcode'; + $dir = GLPI_PLUGIN_DOC_DIR . '/barcode'; if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { - if ($file != "." && $file != ".." && $file != "logo.png") { - unlink($dir.'/'.$file); + // No eliminar el logo ni los directorios de navegación + if ($file !== '.' && $file !== '..' && $file !== 'logo.png') { + @unlink($dir . '/' . $file); } } closedir($dh); } } Session::addMessageAfterRedirect(__('The cache has been emptied.', 'barcode')); -} else if (isset($_POST['dropLogo'])) { - if (is_file(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png')) { - unlink(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png'); + +// --- Eliminar logo --- +} elseif (isset($_POST['dropLogo'])) { + if (is_file(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { + @unlink(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); } Session::addMessageAfterRedirect(__('The logo has been removed.', 'barcode')); -} else if (!empty($_FILES['logo']['name'])) { - if (is_file(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png')) { - @unlink(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png'); + +// --- Subir nuevo logo --- +} elseif (!empty($_FILES['logo']['name'])) { + $logoPath = GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'; + + // Eliminar logo anterior si existe + if (is_file($logoPath)) { + @unlink($logoPath); } - // Move - rename($_FILES['logo']['tmp_name'], GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png'); -} else if (isset($_POST['type'])) { + // Validar que sea una imagen PNG válida antes de mover + $tmpName = $_FILES['logo']['tmp_name']; + $imgInfo = @getimagesize($tmpName); + if ($imgInfo && in_array($imgInfo['mime'], ['image/png', 'image/jpeg', 'image/gif'])) { + // Convertir a PNG si no lo es ya + if ($imgInfo['mime'] === 'image/jpeg') { + $img = imagecreatefromjpeg($tmpName); + imagepng($img, $logoPath); + imagedestroy($img); + } elseif ($imgInfo['mime'] === 'image/gif') { + $img = imagecreatefromgif($tmpName); + imagepng($img, $logoPath); + imagedestroy($img); + } else { + rename($tmpName, $logoPath); + } + Session::addMessageAfterRedirect(__('Logo uploaded successfully.', 'barcode')); + } else { + Session::addMessageAfterRedirect( + __('Invalid image file. Only PNG, JPG, and GIF are accepted.', 'barcode'), + false, + ERROR + ); + } + +// --- Actualizar tipo de código predeterminado --- +} elseif (isset($_POST['type'])) { $pbconf = new PluginBarcodeConfig(); - $_POST['id']=1; - $pbconf->update($_POST); + $pbconf->update(['id' => 1, 'type' => $_POST['type']]); } + Html::back(); diff --git a/front/config.php b/front/config.php index ccb54f7..6f91ae4 100644 --- a/front/config.php +++ b/front/config.php @@ -2,54 +2,22 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode - ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -// Non menu entry case -//header("Location:../../central.php"); - -include ('../../../inc/includes.php'); +// Bootstrap de GLPI 11 - la raíz web es public/, pero include sigue siendo desde la raíz del proyecto +include('../../../inc/includes.php'); Session::checkRight("config", UPDATE); -// To be available when plugin is not activated +// Cargar el plugin aunque no esté activado (para acceso desde Setup > Plugins) Plugin::load('barcode'); Html::header(__('Barcode', 'barcode'), $_SERVER['PHP_SELF'], "config", "plugins"); + $pbConfig = new PluginBarcodeConfig(); $pbConfig->showForm(''); diff --git a/front/config_type.form.php b/front/config_type.form.php index 784e810..2b981c3 100644 --- a/front/config_type.form.php +++ b/front/config_type.form.php @@ -2,55 +2,49 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -// ---------------------------------------------------------------------- -// Original Author of file: Vincent Mazzoni -// Purpose of file: -// ---------------------------------------------------------------------- +include('../../../inc/includes.php'); -include ('../../../inc/includes.php'); +Session::checkRight('plugin_barcode_config', UPDATE); if (isset($_POST['type'])) { - $pbcconf = new PluginBarcodeConfig_Type(); - if ($res = array_keys($pbcconf->find(['type' => $_POST['type']]))) { - $_POST['id'] = $res[0]; - $pbcconf->update($_POST); + + $pbConfig = new PluginBarcodeConfig(); + $pbcconf = new PluginBarcodeConfig_Type(); + + // Buscar el registro existente del tipo + $results = $pbcconf->find(['type' => $_POST['type']]); + + $data = [ + 'type' => $_POST['type'], + 'size' => $_POST['size'] ?? 'A4', + 'orientation' => $_POST['orientation'] ?? 'Portrait', + 'marginTop' => (int)($_POST['marginTop'] ?? 30), + 'marginBottom' => (int)($_POST['marginBottom'] ?? 30), + 'marginLeft' => (int)($_POST['marginLeft'] ?? 30), + 'marginRight' => (int)($_POST['marginRight'] ?? 30), + 'marginHorizontal' => (int)($_POST['marginHorizontal'] ?? 25), + 'marginVertical' => (int)($_POST['marginVertical'] ?? 30), + 'maxCodeWidth' => (int)($_POST['maxCodeWidth'] ?? 110), + 'maxCodeHeight' => (int)($_POST['maxCodeHeight'] ?? 70), + 'txtSize' => (int)($_POST['txtSize'] ?? 8), + 'txtSpacing' => (int)($_POST['txtSpacing'] ?? 3), + ]; + + if (!empty($results)) { + $id = array_key_first($results); + $data['id'] = $id; + $pbcconf->update($data); + } else { + $pbcconf->add($data); } + + Session::addMessageAfterRedirect(__('Configuration saved.', 'barcode')); } + Html::back(); diff --git a/front/document.send.php b/front/document.send.php index 79cbd20..32b084a 100644 --- a/front/document.send.php +++ b/front/document.send.php @@ -2,67 +2,51 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ + */ - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 +include('../../../inc/includes.php'); - ------------------------------------------------------------------------ - */ +Session::checkRight('config', UPDATE); -include ('../../../inc/includes.php'); +if (!isset($_GET['file'])) { + http_response_code(400); + exit; +} + +$requestedFile = $_GET['file']; -if (!$CFG_GLPI["use_public_faq"]) { - Session::checkLoginUser(); +// Validación de seguridad: solo permitir acceso a barcode/logo.png +if ($requestedFile !== 'barcode/logo.png') { + Toolbox::logWarning( + "[Plugin barcode][security][document.send] Intento de acceso no permitido: " . $requestedFile + ); + http_response_code(403); + exit; } -$doc = new Document; +$filePath = GLPI_PLUGIN_DOC_DIR . '/' . $requestedFile; -if (isset($_GET["file"])) { // for other file - $splitter = explode("/", $_GET["file"]); - if (count($splitter) == 2) { - $send = false; +if (!file_exists($filePath)) { + http_response_code(404); + exit; +} - if ($splitter[0] == "barcode") { - $send = true; - } +// Detectar tipo MIME real +$finfo = finfo_open(FILEINFO_MIME_TYPE); +$mimeType = finfo_file($finfo, $filePath); +finfo_close($finfo); - if (file_exists(GLPI_PLUGIN_DOC_DIR."/".$_GET["file"])) { - Toolbox::sendFile(GLPI_PLUGIN_DOC_DIR."/".$_GET["file"], $splitter[1]); - } else { - Html::displayErrorAndDie(__('Unauthorized access to this file'), true); - } - } else { - Html::displayErrorAndDie(__('Invalid Filename'), true); - } +// Solo servir imágenes +if (!in_array($mimeType, ['image/png', 'image/jpeg', 'image/gif'])) { + http_response_code(403); + exit; } +header('Content-Type: ' . $mimeType); +header('Content-Length: ' . filesize($filePath)); +header('Cache-Control: max-age=3600, public'); +readfile($filePath); diff --git a/front/send.php b/front/send.php index 937c971..5fd528f 100644 --- a/front/send.php +++ b/front/send.php @@ -2,85 +2,59 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI - Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -include ('../../../inc/includes.php'); +include('../../../inc/includes.php'); -if (!defined("GLPI_PLUGIN_DOC_DIR")) { - define("GLPI_PLUGIN_DOC_DIR", GLPI_ROOT . "/files/_plugins"); +Session::checkRight('plugin_barcode_barcode', CREATE); + +if (!isset($_GET['file'])) { + Html::displayErrorAndDie(__('No file specified.', 'barcode'), true); } -$docDir = GLPI_PLUGIN_DOC_DIR.'/barcode'; -if (isset($_GET['file'])) { - $filename = $_GET['file']; +$docDir = GLPI_PLUGIN_DOC_DIR . '/barcode'; +$filename = $_GET['file']; + +// Validación de seguridad: evitar path traversal +if (strpos($filename, '../') !== false || strpos($filename, '..\\') !== false) { + Toolbox::logWarning( + "[Plugin barcode][security][sendfile] " . + ($_SESSION['glpiname'] ?? 'unknown') . + " intentó acceder a un archivo fuera del directorio permitido: " . $filename + ); + Html::displayErrorAndDie(__('Security error.', 'barcode'), true); +} - // Security test : document in $docDir - if (strstr($filename, "../") || strstr($filename, "..\\")) { - echo "Security attack !!!"; - Toolbox::logDebug("[Plugin barcode][security][sendfile] ". - $_SESSION["glpiname"]." try to get a non standard file : ".$filename); - exit; - } +// Solo permitir archivos PDF (los generados por el plugin) +if (!preg_match('/^[a-zA-Z0-9_\-]+\.(pdf)$/', $filename)) { + Html::displayErrorAndDie(__('Invalid file name.', 'barcode'), true); +} - $file = $docDir.'/'.$filename; - if (!file_exists($file)) { - echo "Error file $filename does not exist"; //TODO : traduire - } else { - // Now send the file with header() magic - header("Expires: Mon, 26 Nov 1962 00:00:00 GMT"); - header('Pragma: private'); /// IE BUG + SSL - //header('Pragma: no-cache'); - header('Cache-control: private, must-revalidate'); /// IE BUG + SSL - header("Content-disposition: filename=\"$filename\""); - header("Content-type: application/pdf"); +$file = $docDir . '/' . $filename; - $f=fopen($file, "r"); +if (!file_exists($file)) { + Html::displayErrorAndDie(sprintf(__('File %s does not exist.', 'barcode'), $filename), true); +} - if (!$f) { - echo "Error opening file $filename"; - } else { - $fsize=filesize($file); +// Enviar el archivo PDF al navegador +header("Expires: Mon, 26 Nov 1962 00:00:00 GMT"); +header('Pragma: private'); +header('Cache-control: private, must-revalidate'); +header('Content-disposition: attachment; filename="' . $filename . '"'); +header('Content-type: application/pdf'); +header('Content-Length: ' . filesize($file)); + +$f = fopen($file, 'r'); +if (!$f) { + Html::displayErrorAndDie(__('Error opening file.', 'barcode'), true); +} - if ($fsize) { - echo fread($f, filesize($file)); - } else { - echo 'error'; - } - } - } +$fsize = filesize($file); +if ($fsize > 0) { + echo fread($f, $fsize); } +fclose($f); diff --git a/hook.php b/hook.php index 2170550..69d4019 100644 --- a/hook.php +++ b/hook.php @@ -2,63 +2,36 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. + Original: Copyright (C) 2009-2016 by the Barcode plugin Development Team. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -// Define actions : +/** + * Define las acciones masivas disponibles por tipo de objeto + */ function plugin_barcode_MassiveActions($itemtype) { $generate_barcode_action = 'PluginBarcodeBarcode' . MassiveAction::CLASS_ACTION_SEPARATOR . 'Generate'; - $generate_barcode_label = ' ' . __('Barcode', 'barcode')." - ".__('Print barcodes', 'barcode'); + $generate_barcode_label = ' ' . __('Barcode', 'barcode') . " - " . __('Print barcodes', 'barcode'); $generate_qrcode_action = 'PluginBarcodeQRcode' . MassiveAction::CLASS_ACTION_SEPARATOR . 'Generate'; - $generate_qrcode_label = ' ' . __('Barcode', 'barcode')." - ".__('Print QRcodes', 'barcode'); + $generate_qrcode_label = ' ' . __('Barcode', 'barcode') . " - " . __('Print QRcodes', 'barcode'); if (!is_a($itemtype, CommonDBTM::class, true)) { return []; } + // QR code siempre disponible (contiene campo ID) $actions = [ - // QR code is always available as it contains ID field value $generate_qrcode_action => $generate_qrcode_label, ]; if (is_a($itemtype, CommonITILObject::class, true)) { - // CommonITILObject specific case, barcode is generated based on ticket ID + // Para objetos ITIL, el barcode se genera con el ID del ticket $actions[$generate_barcode_action] = $generate_barcode_label; } @@ -67,7 +40,7 @@ function plugin_barcode_MassiveActions($itemtype) { $item->getEmpty(); if (array_key_exists('otherserial', $item->fields)) { - // Barcode is based on otherserial field value + // Barcode basado en número de inventario (otherserial) $actions[$generate_barcode_action] = $generate_barcode_label; } @@ -75,145 +48,151 @@ function plugin_barcode_MassiveActions($itemtype) { } - -// Install process for plugin : need to return true if succeeded +/** + * Instalación del plugin - debe retornar true si fue exitoso + */ function plugin_barcode_install() { global $DB; $migration = new Migration(PLUGIN_BARCODE_VERSION); - $default_charset = DBConnection::getDefaultCharset(); + // Obtener charset y collation por defecto (API GLPI 11) + $default_charset = DBConnection::getDefaultCharset(); $default_collation = DBConnection::getDefaultCollation(); - if (!file_exists(GLPI_PLUGIN_DOC_DIR."/barcode")) { - mkdir(GLPI_PLUGIN_DOC_DIR."/barcode"); + // Crear directorio de documentos del plugin si no existe + if (!file_exists(GLPI_PLUGIN_DOC_DIR . "/barcode")) { + @mkdir(GLPI_PLUGIN_DOC_DIR . "/barcode", 0750, true); } + + // Renombrar tabla legacy si existe $migration->renameTable("glpi_plugin_barcode_config", "glpi_plugin_barcode_configs"); + + // Crear tabla de configuración general si no existe if (!$DB->tableExists("glpi_plugin_barcode_configs")) { $query = "CREATE TABLE `glpi_plugin_barcode_configs` ( - `id` int NOT NULL auto_increment, - `type` varchar(20) default NULL, - PRIMARY KEY (`ID`) - ) ENGINE=InnoDB DEFAULT CHARSET={$default_charset} COLLATE={$default_collation} ROW_FORMAT=DYNAMIC;"; - $DB->query($query) or die("error creating glpi_plugin_barcode_configs ". $DB->error()); - - $query = "INSERT INTO `glpi_plugin_barcode_configs` - (`id`, `type`) - VALUES - ('1', 'code128')"; - $DB->query($query) or die("error populate glpi_plugin_barcode_configs ". $DB->error()); + `id` int NOT NULL AUTO_INCREMENT, + `type` varchar(20) DEFAULT NULL, + PRIMARY KEY (`id`) + ) ENGINE=InnoDB + DEFAULT CHARSET={$default_charset} + COLLATE={$default_collation} + ROW_FORMAT=DYNAMIC;"; + $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs"); + + $DB->doQueryOrDie( + "INSERT INTO `glpi_plugin_barcode_configs` (`id`, `type`) VALUES (1, 'code128')", + "Error al poblar glpi_plugin_barcode_configs" + ); } + // Renombrar tabla de tipos legacy si existe $migration->renameTable("glpi_plugin_barcode_config_type", "glpi_plugin_barcode_configs_types"); + + // Crear tabla de configuración por tipo si no existe if (!$DB->tableExists("glpi_plugin_barcode_configs_types")) { $query = "CREATE TABLE `glpi_plugin_barcode_configs_types` ( - `id` int NOT NULL auto_increment, - `type` varchar(20) default NULL, - `size` varchar(20) default NULL, - `orientation` varchar(9) default NULL, - `marginTop` int NULL, - `marginBottom` int NULL, - `marginLeft` int NULL, - `marginRight` int NULL, - `marginHorizontal` int NULL, - `marginVertical` int NULL, - `maxCodeWidth` int NULL, - `maxCodeHeight` int NULL, - `txtSize` int NULL, - `txtSpacing` int NULL, - PRIMARY KEY (`ID`), - UNIQUE (`type`) - ) ENGINE=InnoDB DEFAULT CHARSET={$default_charset} COLLATE={$default_collation} ROW_FORMAT=DYNAMIC;"; - $DB->query($query) or die("error creating glpi_plugin_barcode_configs_types ". $DB->error()); - - $query = "INSERT INTO `glpi_plugin_barcode_configs_types` - (`type`, `size`, `orientation`, - `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, - `marginHorizontal`, `marginVertical`, `maxCodeWidth`, `maxCodeHeight`, `txtSize`, `txtSpacing`) - VALUES - ('Code39', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '128', '50', - '8','3'), - ('code128', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '70', - '8','3'), - ('ean13', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '70', - '8','3'), - ('int25', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '70', - '8','3'), - ('postnet', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '70', - '8','3'), - ('upca', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '70', - '8','3'), - ('QRcode', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '100', - '8','3')"; - $DB->query($query) or die("error populate glpi_plugin_barcode_configs_types ". $DB->error()); + `id` int NOT NULL AUTO_INCREMENT, + `type` varchar(20) DEFAULT NULL, + `size` varchar(20) DEFAULT NULL, + `orientation` varchar(9) DEFAULT NULL, + `marginTop` int DEFAULT NULL, + `marginBottom` int DEFAULT NULL, + `marginLeft` int DEFAULT NULL, + `marginRight` int DEFAULT NULL, + `marginHorizontal` int DEFAULT NULL, + `marginVertical` int DEFAULT NULL, + `maxCodeWidth` int DEFAULT NULL, + `maxCodeHeight` int DEFAULT NULL, + `txtSize` int DEFAULT NULL, + `txtSpacing` int DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `type` (`type`) + ) ENGINE=InnoDB + DEFAULT CHARSET={$default_charset} + COLLATE={$default_collation} + ROW_FORMAT=DYNAMIC;"; + $DB->doQueryOrDie($query, "Error al crear glpi_plugin_barcode_configs_types"); + + $insert_query = "INSERT INTO `glpi_plugin_barcode_configs_types` + (`type`, `size`, `orientation`, + `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, + `marginHorizontal`, `marginVertical`, + `maxCodeWidth`, `maxCodeHeight`, + `txtSize`, `txtSpacing`) + VALUES + ('Code39', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 128, 50, 8, 3), + ('code128', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('ean13', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('int25', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('postnet', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('upca', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 70, 8, 3), + ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)"; + $DB->doQueryOrDie($insert_query, "Error al poblar glpi_plugin_barcode_configs_types"); } + // Agregar campos faltantes si la tabla ya existía sin ellos (migración de versión anterior) if ($DB->tableExists("glpi_plugin_barcode_configs_types") && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSize") - && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSpacing") - ) { - $migration->addField("glpi_plugin_barcode_configs_types", "txtSize", "integer"); + && !$DB->fieldExists("glpi_plugin_barcode_configs_types", "txtSpacing")) { + $migration->addField("glpi_plugin_barcode_configs_types", "txtSize", "integer"); $migration->addField("glpi_plugin_barcode_configs_types", "txtSpacing", "integer"); $migration->executeMigration(); } + // Insertar configuración de QRcode si no existe if (!countElementsInTable("glpi_plugin_barcode_configs_types", ['type' => 'QRcode'])) { - $query = "INSERT INTO `glpi_plugin_barcode_configs_types` - (`type`, `size`, `orientation`, - `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, - `marginHorizontal`, `marginVertical`, `maxCodeWidth`, `maxCodeHeight`,`txtSize`, `txtSpacing`) - VALUES - ('QRcode', 'A4', 'Portrait', - '30', '30', '30', '30', - '25', '30', '110', '100', - '8','3')"; - $DB->query($query) or die("error populate glpi_plugin_barcode_configs_types ". $DB->error()); + $DB->doQueryOrDie( + "INSERT INTO `glpi_plugin_barcode_configs_types` + (`type`, `size`, `orientation`, + `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, + `marginHorizontal`, `marginVertical`, + `maxCodeWidth`, `maxCodeHeight`, `txtSize`, `txtSpacing`) + VALUES + ('QRcode', 'A4', 'Portrait', 30, 30, 30, 30, 25, 30, 110, 100, 8, 3)", + "Error al insertar configuración QRcode" + ); } - include_once Plugin::getPhpDir('barcode').'/inc/profile.class.php'; - include_once Plugin::getPhpDir('barcode').'/inc/config.class.php'; + // Inicializar perfiles de derechos + include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; + include_once Plugin::getPhpDir('barcode') . '/inc/config.class.php'; PluginBarcodeProfile::initProfile(); + + // Eliminar tabla de perfiles legacy si existe if ($DB->tableExists("glpi_plugin_barcode_profiles")) { - $query = "DROP TABLE `glpi_plugin_barcode_profiles`"; - $DB->query($query) or die("error deleting glpi_plugin_barcode_profiles"); + $DB->doQueryOrDie( + "DROP TABLE `glpi_plugin_barcode_profiles`", + "Error al eliminar glpi_plugin_barcode_profiles" + ); } + return true; } - -// Uninstall process for plugin : need to return true if succeeded +/** + * Desinstalación del plugin - debe retornar true si fue exitoso + */ function plugin_barcode_uninstall() { global $DB; - if ($DB->tableExists("glpi_plugin_barcode_configs")) { - $query = "DROP TABLE `glpi_plugin_barcode_configs`"; - $DB->query($query) or die("error deleting glpi_plugin_barcode_configs"); - } - if ($DB->tableExists("glpi_plugin_barcode_configs_types")) { - $query = "DROP TABLE `glpi_plugin_barcode_configs_types`"; - $DB->query($query) or die("error deleting glpi_plugin_barcode_configs_types"); - } - if ($DB->tableExists("glpi_plugin_barcode_profiles")) { - $query = "DROP TABLE `glpi_plugin_barcode_profiles`"; - $DB->query($query) or die("error deleting glpi_plugin_barcode_profiles"); + $tables = [ + 'glpi_plugin_barcode_configs', + 'glpi_plugin_barcode_configs_types', + 'glpi_plugin_barcode_profiles', + ]; + + foreach ($tables as $table) { + if ($DB->tableExists($table)) { + $DB->doQueryOrDie( + "DROP TABLE `{$table}`", + "Error al eliminar {$table}" + ); + } } - include_once Plugin::getPhpDir('barcode').'/inc/profile.class.php'; + include_once Plugin::getPhpDir('barcode') . '/inc/profile.class.php'; PluginBarcodeProfile::removeRights(); return true; diff --git a/inc/barcode.class.php b/inc/barcode.class.php index c599578..5730d45 100644 --- a/inc/barcode.class.php +++ b/inc/barcode.class.php @@ -2,196 +2,170 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. + Original: Copyright (C) 2009-2016 by the Barcode plugin Development Team. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ if (!defined('GLPI_ROOT')) { - die("Sorry. You can't access directly to this file"); + die("Sorry. You can't access directly to this file"); } /** - * Class to generate barcodes using PEAR Image_Barcode - **/ + * Clase principal para generar códigos de barras (tipos lineales) + * y exportar PDFs usando rospdf/Cezpdf + */ class PluginBarcodeBarcode { + + /** @var string Ruta al directorio de documentos del plugin */ private $docsPath; static $rightname = 'plugin_barcode_barcode'; - /** - * Constructor - **/ + * Constructor + */ function __construct() { - $this->docsPath = GLPI_PLUGIN_DOC_DIR.'/barcode/'; + $this->docsPath = GLPI_PLUGIN_DOC_DIR . '/barcode/'; } - - + /** + * Retorna la lista de tipos de código disponibles + * + * @return array + */ function getCodeTypes() { - $types = ['Code39', 'code128', 'ean13', 'int25', 'postnet', 'upca', - 'QRcode' - ]; - return $types; + return ['Code39', 'code128', 'ean13', 'int25', 'postnet', 'upca', 'QRcode']; } - - + /** + * Muestra un selector de tamaño de página + * + * @param string|null $p_size Valor por defecto + */ function showSizeSelect($p_size = null) { - //TODO : utiliser fonction du coeur - - Dropdown::showFromArray("size", - ['4A0' => __('4A0', 'barcode'), - '2A0' => __('2A0', 'barcode'), - 'A0' => __('A0', 'barcode'), - 'A1' => __('A1', 'barcode'), - 'A2' => __('A2', 'barcode'), - 'A3' => __('A3', 'barcode'), - 'A4' => __('A4', 'barcode'), - 'A5' => __('A5', 'barcode'), - 'A6' => __('A6', 'barcode'), - 'A7' => __('A7', 'barcode'), - 'A8' => __('A8', 'barcode'), - 'A9' => __('A9', 'barcode'), - 'A10' => __('A10', 'barcode'), - 'B0' => __('B0', 'barcode'), - 'B1' => __('B1', 'barcode'), - 'B2' => __('B2', 'barcode'), - 'B3' => __('B3', 'barcode'), - 'B4' => __('B4', 'barcode'), - 'B5' => __('B5', 'barcode'), - 'B6' => __('B6', 'barcode'), - 'B7' => __('B7', 'barcode'), - 'B8' => __('B8', 'barcode'), - 'B9' => __('B9', 'barcode'), - 'B10' => __('B10', 'barcode'), - 'C0' => __('C0', 'barcode'), - 'C1' => __('C1', 'barcode'), - 'C2' => __('C2', 'barcode'), - 'C3' => __('C3', 'barcode'), - 'C4' => __('C4', 'barcode'), - 'C5' => __('C5', 'barcode'), - 'C6' => __('C6', 'barcode'), - 'C7' => __('C7', 'barcode'), - 'C8' => __('C8', 'barcode'), - 'C9' => __('C9', 'barcode'), - 'C10' => __('C10', 'barcode'), - 'RA0' => __('RA0', 'barcode'), - 'RA1' => __('RA1', 'barcode'), - 'RA2' => __('RA2', 'barcode'), - 'RA3' => __('RA3', 'barcode'), - 'RA4' => __('RA4', 'barcode'), - 'SRA0' => __('SRA0', 'barcode'), - 'SRA1' => __('SRA1', 'barcode'), - 'SRA2' => __('SRA2', 'barcode'), - 'SRA3' => __('SRA3', 'barcode'), - 'SRA4' => __('SRA4', 'barcode'), - 'LETTER' => __('LETTER', 'barcode'), - 'LEGAL' => __('LEGAL', 'barcode'), - 'EXECUTIVE' => __('EXECUTIVE', 'barcode'), - 'FOLIO' => __('FOLIO', 'barcode')], - (is_null($p_size)?['width' => '100']:['value' => $p_size, 'width' => '100'])); + $sizes = [ + '4A0' => '4A0', '2A0' => '2A0', + 'A0' => 'A0', 'A1' => 'A1', 'A2' => 'A2', + 'A3' => 'A3', 'A4' => 'A4', 'A5' => 'A5', + 'A6' => 'A6', 'A7' => 'A7', 'A8' => 'A8', + 'A9' => 'A9', 'A10' => 'A10', + 'B0' => 'B0', 'B1' => 'B1', 'B2' => 'B2', + 'B3' => 'B3', 'B4' => 'B4', 'B5' => 'B5', + 'B6' => 'B6', 'B7' => 'B7', 'B8' => 'B8', + 'B9' => 'B9', 'B10' => 'B10', + 'C0' => 'C0', 'C1' => 'C1', 'C2' => 'C2', + 'C3' => 'C3', 'C4' => 'C4', 'C5' => 'C5', + 'C6' => 'C6', 'C7' => 'C7', 'C8' => 'C8', + 'C9' => 'C9', 'C10' => 'C10', + 'RA0' => 'RA0', 'RA1' => 'RA1', 'RA2' => 'RA2', + 'RA3' => 'RA3', 'RA4' => 'RA4', + 'SRA0' => 'SRA0', 'SRA1' => 'SRA1', 'SRA2' => 'SRA2', + 'SRA3' => 'SRA3', 'SRA4' => 'SRA4', + 'LETTER' => 'LETTER', + 'LEGAL' => 'LEGAL', + 'EXECUTIVE' => 'EXECUTIVE', + 'FOLIO' => 'FOLIO', + ]; + + $opts = ['width' => '100']; + if (!is_null($p_size)) { + $opts['value'] = $p_size; + } + Dropdown::showFromArray("size", $sizes, $opts); } - - + /** + * Muestra un selector de orientación de página + * + * @param string|null $p_orientation Valor por defecto + */ function showOrientationSelect($p_orientation = null) { - //TODO : utiliser fonction du coeur - - Dropdown::showFromArray("orientation", - ['Portrait' => __('Portrait', 'barcode'), - 'Landscape' => __('Landscape', 'barcode')], - (is_null($p_orientation)?['width' => '100']:['value' => $p_orientation, 'width' => '100'])); + $opts = ['width' => '100']; + if (!is_null($p_orientation)) { + $opts['value'] = $p_orientation; + } + Dropdown::showFromArray( + "orientation", + [ + 'Portrait' => __('Portrait', 'barcode'), + 'Landscape' => __('Landscape', 'barcode'), + ], + $opts + ); } - - + /** + * Muestra el formulario de generación de un código de barras individual + * + * @param string $p_type Tipo de objeto GLPI (ej: 'Computer') + * @param int $p_ID ID del objeto + */ function showForm($p_type, $p_ID) { - global $CFG_GLPI; - $config = $this->getConfigType(); - $ci = new $p_type(); + $pbConfig = new PluginBarcodeConfig(); + $config = $pbConfig->getConfigType(); + $ci = new $p_type(); $ci->getFromDB($p_ID); - if ($ci->isField('otherserial')) { - $code = $ci->getField('otherserial'); - } else { - $code = ''; - } - echo ""; - echo "
"; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo "
".__('Generation', 'barcode')."
".__('Code', 'barcode').""; - echo ""; - echo "".__('Type', 'barcode').""; - $this->showTypeSelect($config['type']); - echo "
".__('Page size', 'barcode').""; - $this->showSizeSelect($config['size']); - echo "".__('Orientation', 'barcode').""; - $this->showOrientationSelect($config['orientation']); - echo "
".__('Number of copies', 'barcode')."
-
"; - echo "
"; - Html::closeForm(); - } - + // Intentar obtener el número de inventario (otherserial) + $code = ($ci->isField('otherserial')) ? $ci->getField('otherserial') : ''; + + // Ruta compatible con GLPI 11 + $action_url = '/plugins/barcode/front/barcode.form.php'; + + echo ""; + echo "
"; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + echo "
" . __('Generation', 'barcode') . "
" . __('Code', 'barcode') . ""; + echo ""; + echo "" . __('Type', 'barcode') . ""; + $pbConfig->showTypeSelect($config['type']); + echo "
" . __('Page size', 'barcode') . ""; + $this->showSizeSelect($config['size']); + echo "" . __('Orientation', 'barcode') . ""; + $this->showOrientationSelect($config['orientation']); + echo "
" . __('Number of copies', 'barcode') . "
"; + echo Html::submit(__('Create', 'barcode'), ['name' => 'generate']); + echo "
"; + echo "
"; + Html::closeForm(); + } + /** + * Muestra el formulario de acción masiva para barcodes lineales + * + * @param MassiveAction $ma Objeto de acción masiva + */ function showFormMassiveAction(MassiveAction $ma) { $pbConfig = new PluginBarcodeConfig(); echo '
'; echo ''; - echo __('It will generate only elements have defined field:', 'barcode').' '; + echo __('It will generate only elements have defined field:', 'barcode') . ' '; if (key($ma->items) == 'Ticket') { echo __('Ticket number', 'barcode'); } else { @@ -202,8 +176,8 @@ function showFormMassiveAction(MassiveAction $ma) { echo ''; echo ''; $config = $pbConfig->getConfigType(); - echo __('Type', 'barcode')." : "; - $pbConfig->showTypeSelect($config['type'], ['QRcode' => 'QRcode']); + echo __('Type', 'barcode') . " : "; + $pbConfig->showTypeSelect($config['type'], ['QRcode' => 'QRcode']); echo ''; echo ''; echo ''; @@ -212,8 +186,10 @@ function showFormMassiveAction(MassiveAction $ma) { PluginBarcodeBarcode::commonShowMassiveAction(); } - - + /** + * Muestra las opciones comunes de acción masiva (tamaño, orientación, opciones de display) + * Reutilizado tanto por Barcode como por QRcode + */ static function commonShowMassiveAction() { $pbBarcode = new PluginBarcodeBarcode(); @@ -223,52 +199,55 @@ static function commonShowMassiveAction() { echo ''; echo ''; echo ''; echo ''; echo ''; + echo ''; echo ''; echo ''; echo ''; + echo ''; echo ''; echo ''; echo ''; echo ''; echo '
'; - echo "
".__('Page size', 'barcode')." :
"; - $pbBarcode->showSizeSelect($config['size']); + echo "
" . __('Page size', 'barcode') . " :
"; + $pbBarcode->showSizeSelect($config['size']); echo ''; - echo __('Not use first xx barcodes', 'barcode')." : "; - Dropdown::showNumber("eliminate", ['width'=>'100']); + echo __('Not use first xx barcodes', 'barcode') . " : "; + Dropdown::showNumber("eliminate", ['width' => '100']); echo '
'; - echo "
".__('Orientation', 'barcode')." :
"; - $pbBarcode->showOrientationSelect($config['orientation']); + echo "
" . __('Orientation', 'barcode') . " :
"; + $pbBarcode->showOrientationSelect($config['orientation']); echo ''; - echo __('Display border', 'barcode')." : "; + echo __('Display border', 'barcode') . " : "; Dropdown::showYesNo("border", 1, -1, ['width' => '100']); echo '
  '; - echo __('Display labels', 'barcode')." : "; + echo __('Display labels', 'barcode') . " : "; Dropdown::showYesNo("displaylabels", 0, -1, ['width' => '100']); echo '
'; echo '
'; - //echo "
"; echo "
"; - echo Html::submit(__('Create', 'barcode'), ['value' => 'create']); + echo Html::submit(__('Create', 'barcode'), ['name' => 'massiveaction']); } - - + /** + * Genera el PDF con los códigos de barras y retorna la ruta relativa del archivo + * + * @param array $p_params Parámetros: type, size, orientation, codes, nb, border, displaylabels, displayData + * @return string|int Ruta relativa del PDF generado, o 0 si falla + */ function printPDF($p_params) { - $pbConfig = new PluginBarcodeConfig(); - - // create barcodes - $ext = 'png'; - $type = $p_params['type']; - $size = $p_params['size']; + $pbConfig = new PluginBarcodeConfig(); + $ext = 'png'; + $type = $p_params['type']; + $size = $p_params['size']; $orientation = $p_params['orientation']; - $codes = []; + $codes = []; $displayDataCollection = $p_params['displayData'] ?? []; @@ -276,63 +255,76 @@ function printPDF($p_params) { $codes = $p_params['codes']; } else { if (isset($p_params['code'])) { - if (isset($p_params['nb']) AND $p_params['nb']>1) { + $nb = isset($p_params['nb']) ? (int)$p_params['nb'] : 1; + if ($nb > 1) { $this->create($p_params['code'], $type, $ext); - for ($i=1; $i<=$p_params['nb']; $i++) { + for ($i = 1; $i <= $nb; $i++) { $codes[] = $p_params['code']; } } else { if (!$this->create($p_params['code'], $type, $ext)) { - Session::addMessageAfterRedirect(__('The generation of some barcodes produced errors.', 'barcode')); + Session::addMessageAfterRedirect( + __('The generation of some barcodes produced errors.', 'barcode') + ); } $codes[] = $p_params['code']; } - } else if (isset($p_params['codes'])) { + } elseif (isset($p_params['codes'])) { $codes = $p_params['codes']; foreach ($codes as $code) { - if ($code != '') { + if ($code !== '') { $this->create($code, $type, $ext); } } } else { - // TODO : erreur ? - // print_r($p_params); return 0; } } - // create pdf - // x is horizontal axis and y is vertical - // x=0 and y=0 in bottom left hand corner - $config = $pbConfig->getConfigType($type); - - $pdf= new Cezpdf($size, $orientation); - $pdf->tempPath = GLPI_TMP_DIR; - $pdf->selectFont(Plugin::getPhpDir('barcode')."/lib/ezpdf/fonts/Helvetica.afm"); - $pdf->ezSetMargins($config['marginTop'], $config['marginBottom'], $config['marginLeft'], $config['marginRight']); - $pdf->ezStartPageNumbers($pdf->ez['pageWidth']-30, 10, 10, 'left', '{PAGENUM} / {TOTALPAGENUM}'). - $width = $config['maxCodeWidth']; - $height = $config['maxCodeHeight']; - $marginH = $config['marginHorizontal']; - $marginV = $config['marginVertical']; - $txtSize = $config['txtSize']; + // Obtener configuración dimensional del tipo + $config = $pbConfig->getConfigType($type); + $width = $config['maxCodeWidth']; + $height = $config['maxCodeHeight']; + $marginH = $config['marginHorizontal']; + $marginV = $config['marginVertical']; + $txtSize = $config['txtSize']; $txtSpacing = $config['txtSpacing']; + // Crear el PDF con Cezpdf (rospdf/pdf-php) + $pdf = new Cezpdf($size, $orientation); + $pdf->tempPath = GLPI_TMP_DIR; + $pdf->selectFont(Plugin::getPhpDir('barcode') . "/lib/ezpdf/fonts/Helvetica.afm"); + $pdf->ezSetMargins( + $config['marginTop'], + $config['marginBottom'], + $config['marginLeft'], + $config['marginRight'] + ); + $pdf->ezStartPageNumbers( + $pdf->ez['pageWidth'] - 30, + 10, 10, 'left', + '{PAGENUM} / {TOTALPAGENUM}' + ); + + // Detectar si hay logo y calcular alturas $heightimage = $height; + $logoWidth = 0; + $logoHeight = 0; + $heightyposText = $height; - if (file_exists(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png')) { - // Add logo to barcode + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { $heightLogomax = 20; - $imgSize = getimagesize(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png'); + $imgSize = getimagesize(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); $logoWidth = $imgSize[0]; $logoHeight = $imgSize[1]; + if ($logoHeight > $heightLogomax) { - $ratio = (100 * $heightLogomax ) / $logoHeight; + $ratio = (100 * $heightLogomax) / $logoHeight; $logoHeight = $heightLogomax; $logoWidth = $logoWidth * ($ratio / 100); } if ($logoWidth > $width) { - $ratio = (100 * $width ) / $logoWidth; + $ratio = (100 * $width) / $logoWidth; $logoWidth = $width; $logoHeight = $logoHeight * ($ratio / 100); } @@ -340,18 +332,23 @@ function printPDF($p_params) { $heightimage = $heightyposText; } - $first=true; - for ($ia = 0; $ia < count($codes); $ia++) { - $code = $codes[$ia]; + // Posicionamiento y renderizado de cada código + $first = true; + $count = count($codes); + for ($ia = 0; $ia < $count; $ia++) { + $code = $codes[$ia]; $displayData = $displayDataCollection[$ia] ?? []; + if ($first) { - $x = $pdf->ez['leftMargin']; - $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; + $x = $pdf->ez['leftMargin']; + $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; $first = false; } else { - if ($x + $width + $marginH > $pdf->ez['pageWidth']) { // new line + if ($x + $width + $marginH > $pdf->ez['pageWidth']) { + // Nueva fila $x = $pdf->ez['leftMargin']; - if ($y - $height - $marginV < $pdf->ez['bottomMargin']) { // new page + if ($y - $height - $marginV < $pdf->ez['bottomMargin']) { + // Nueva página $pdf->ezNewPage(); $y = $pdf->ez['pageHeight'] - $pdf->ez['topMargin'] - $height; } else { @@ -359,168 +356,194 @@ function printPDF($p_params) { } } } - if ($code != '') { - if ($type == 'QRcode') { - $imgFile = $code; - } else { - $imgFile = $this->docsPath.$code.'_'.$type.'.'.$ext; - } + + if ($code !== '') { + $imgFile = ($type == 'QRcode') + ? $code + : $this->docsPath . $code . '_' . $type . '.' . $ext; + if (file_exists($imgFile)) { $imgSize = getimagesize($imgFile); $imgWidth = $imgSize[0]; $imgHeight = $imgSize[1]; + + // Escalar manteniendo proporciones if ($imgWidth > $width) { - $ratio = (100 * $width ) / $imgWidth; + $ratio = (100 * $width) / $imgWidth; $imgWidth = $width; $imgHeight = $imgHeight * ($ratio / 100); } if ($imgHeight > $heightimage) { - $ratio = (100 * $heightimage ) / $imgHeight; + $ratio = (100 * $heightimage) / $imgHeight; $imgHeight = $heightimage; $imgWidth = $imgWidth * ($ratio / 100); } $image = imagecreatefrompng($imgFile); - if ($imgWidth < $width) { - $pdf->addImage($image, - $x + (($width - $imgWidth) / 2), - $y, - $imgWidth, - $imgHeight); - } else { - $pdf->addImage($image, - $x, - $y, - $imgWidth, - $imgHeight); - } - if (file_exists(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png')) { - $logoimg = imagecreatefrompng(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png'); - $pdf->addImage($logoimg, - $x + (($width - $logoWidth) / 2), - $y + $heightyposText, - $logoWidth, - $logoHeight); + $xOffset = ($imgWidth < $width) ? $x + (($width - $imgWidth) / 2) : $x; + $pdf->addImage($image, $xOffset, $y, $imgWidth, $imgHeight); + + // Agregar logo si existe + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { + $logoimg = imagecreatefrompng(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png'); + $pdf->addImage( + $logoimg, + $x + (($width - $logoWidth) / 2), + $y + $heightyposText, + $logoWidth, + $logoHeight + ); } + + // Agregar texto bajo el código $txtHeight = 0; - for ($i = 0; $i < count($displayData); $i++) { - $pdf->addTextWrap( - $x, - $y - ($txtSpacing + $txtHeight), - $txtSize, - $displayData[$i], - $width, - 'center'); - $txtHeight += $txtSpacing/2 + $txtSize; + $displayCount = is_array($displayData) ? count($displayData) : 0; + for ($i = 0; $i < $displayCount; $i++) { + $pdf->addTextWrap( + $x, + $y - ($txtSpacing + $txtHeight), + $txtSize, + $displayData[$i], + $width, + 'center' + ); + $txtHeight += $txtSpacing / 2 + $txtSize; } - if ($p_params['border']) { - $pdf->Rectangle($x, $y - ($txtHeight + $txtSpacing*2), - $width, $height + ($txtHeight + $txtSpacing*2)); + + // Dibujar borde si se solicitó + if (!empty($p_params['border'])) { + $pdf->Rectangle( + $x, + $y - ($txtHeight + $txtSpacing * 2), + $width, + $height + ($txtHeight + $txtSpacing * 2) + ); } } } + $x += $width + $marginH; - $y -= 0; } - $file = $pdf->ezOutput(); - $pdfFile = $_SESSION['glpiID'].'_'.$type.'.pdf'; - file_put_contents($this->docsPath.$pdfFile, $file); - return '/files/_plugins/barcode/'.$pdfFile; - } + // Guardar el PDF en disco + $file = $pdf->ezOutput(); + $pdfFile = $_SESSION['glpiID'] . '_' . $type . '.pdf'; + file_put_contents($this->docsPath . $pdfFile, $file); + return '/files/_plugins/barcode/' . $pdfFile; + } + /** + * Genera la imagen PNG de un código de barras lineal + * + * @param string $p_code Valor a codificar + * @param string $p_type Tipo de código (Code39, code128, etc.) + * @param string $p_ext Extensión de la imagen (png) + * @return bool true si se generó correctamente + */ function create($p_code, $p_type, $p_ext) { - //TODO : filtre sur le type - if (!file_exists($this->docsPath.$p_code.'_'.$p_type.'.'.$p_ext)) { - ob_start(); - $barcode = new Image_Barcode(); - $resImg = @imagepng( - @$barcode->draw($p_code, $p_type, $p_ext, false) - ); - $img = ob_get_clean(); - file_put_contents($this->docsPath.$p_code.'_'.$p_type.'.'.$p_ext, $img); - if (!$resImg) { - return false; - } + $filePath = $this->docsPath . $p_code . '_' . $p_type . '.' . $p_ext; + + // Si ya existe en caché, no regenerar + if (file_exists($filePath)) { + return true; } - return true; - } + ob_start(); + $barcode = new Image_Barcode(); + $resImg = @imagepng( + @$barcode->draw($p_code, $p_type, $p_ext, false) + ); + $img = ob_get_clean(); + + file_put_contents($filePath, $img); + return $resImg !== false; + } + /** + * Retorna un array vacío (sin acciones masivas específicas en el item) + */ function getSpecificMassiveActions($checkitem = null) { return []; } - - /** - * @since version 0.85 + * Muestra el subformulario de la acción masiva * - * @see CommonDBTM::showMassiveActionsSubForm() - **/ + * @param MassiveAction $ma + * @return bool + */ static function showMassiveActionsSubForm(MassiveAction $ma) { switch ($ma->getAction()) { case 'Generate': $barcode = new self(); $barcode->showFormMassiveAction($ma); return true; - } return false; } - - - static function processMassiveActionsForOneItemtype(MassiveAction $ma, CommonDBTM $item, array $ids) { - global $CFG_GLPI; - + /** + * Procesa la acción masiva de generación de códigos de barras para cada item + * + * @param MassiveAction $ma + * @param CommonDBTM $item + * @param array $ids IDs de los items seleccionados + */ + static function processMassiveActionsForOneItemtype( + MassiveAction $ma, + CommonDBTM $item, + array $ids + ) { switch ($ma->getAction()) { - case 'Generate' : + case 'Generate': $pbQRcode = new PluginBarcodeQRcode(); $rand = mt_rand(); $number = 0; $codes = []; - if ($ma->POST['eliminate'] > 0) { - for ($nb=0; $nb < $ma->POST['eliminate']; $nb++) { - $codes[] = ''; - } + + // Agregar celdas vacías para desplazamiento si se solicitó + $eliminate = (int)($ma->POST['eliminate'] ?? 0); + for ($nb = 0; $nb < $eliminate; $nb++) { + $codes[] = ''; } + foreach ($ids as $key) { $item->getFromDB($key); - if (key($ma->items) == 'CommonITILObject') { - $codes[] = $item->getField('id'); - } else if ($item->isField('otherserial')) { + if (key($ma->items) === 'CommonITILObject' || is_a($item, CommonITILObject::class)) { + $codes[] = (string)$item->getField('id'); + } elseif ($item->isField('otherserial')) { $codes[] = $item->getField('otherserial'); } } + if (count($codes) > 0) { - $params['codes'] = $codes; - $params['type'] = $ma->POST['type']; - $params['size'] = $ma->POST['size']; - $params['border'] = $ma->POST['border']; - $params['orientation'] = $ma->POST['orientation']; - $params['displaylabels'] = $ma->POST['displaylabels']; + $params = [ + 'codes' => $codes, + 'type' => $ma->POST['type'], + 'size' => $ma->POST['size'], + 'border' => $ma->POST['border'], + 'orientation' => $ma->POST['orientation'], + 'displaylabels' => $ma->POST['displaylabels'], + ]; $barcode = new PluginBarcodeBarcode(); $file = $barcode->printPDF($params); $filePath = explode('/', $file); - $filename = $filePath[count($filePath)-1]; + $filename = end($filePath); - $msg = "".__('Generated file', 'barcode').""; + $msg = "" + . __('Generated file', 'barcode') . ""; Session::addMessageAfterRedirect($msg); $pbQRcode->cleanQRcodefiles($rand, $number); } + $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); return; - } - return; } - } diff --git a/inc/config.class.php b/inc/config.class.php index 2996bf1..a13e59a 100644 --- a/inc/config.class.php +++ b/inc/config.class.php @@ -2,128 +2,132 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode - ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. + Original: Copyright (C) 2009-2016 by the Barcode plugin Development Team. ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ if (!defined('GLPI_ROOT')) { - die("Sorry. You can't access directly to this file"); + die("Sorry. You can't access directly to this file"); } class PluginBarcodeConfig extends CommonDBTM { static $rightname = 'plugin_barcode_config'; + /** + * Nombre del tipo + */ + static function getTypeName($nb = 0) { + return __('Barcode configuration', 'barcode'); + } + + /** + * Formulario de configuración general + configuración por tipo + * + * @param int $ID ID del registro (no usado actualmente) + * @param array $options Opciones adicionales + */ function showForm($ID, array $options = []) { - global $CFG_GLPI; $pbBarcode = new PluginBarcodeBarcode(); $defaultType = $this->getConfig(); + + // Ruta base del plugin compatible con GLPI 11 + $action_url = '/plugins/barcode/front/config.form.php'; + echo ""; echo "
"; echo ""; - echo ""; + echo ""; echo "
".__('Barcode plugin configuration', 'barcode')."
" . __('Barcode plugin configuration', 'barcode') . "

"; + // --- Configuración general --- echo ""; echo ""; - echo ""; + echo ""; echo ""; echo ""; - echo ""; + echo ""; echo ""; - echo ""; + echo ""; echo ""; echo ""; - echo ""; + echo ""; echo ""; + // --- Logo de empresa --- echo ""; - echo ""; + echo ""; echo ""; - if (file_exists(GLPI_PLUGIN_DOC_DIR.'/barcode/logo.png')) { + if (file_exists(GLPI_PLUGIN_DOC_DIR . '/barcode/logo.png')) { echo ""; echo ""; echo ""; echo ""; - echo ""; + echo ""; echo ""; } echo ""; echo ""; - echo ""; + echo ""; echo ""; echo "
".__('General configuration', 'barcode')."" . __('General configuration', 'barcode') . "
".__('Type', 'barcode')."" . __('Type', 'barcode') . ""; $this->showTypeSelect($defaultType); echo ""; + echo Html::submit(__('Save'), ['name' => 'update_type']); + echo "
"; + echo Html::submit(__('Empty the cache', 'barcode'), ['name' => 'dropCache']); + echo "
".__('Company logo', 'barcode')."" . __('Company logo', 'barcode') . "
"; - echo ""; echo "
"; + echo Html::submit(__('Delete the logo', 'barcode'), ['name' => 'dropLogo']); + echo "
"; + echo Html::submit(__('Save'), ['name' => 'upload_logo']); + echo "
"; echo "
"; Html::closeForm(); + // --- Formulario por cada tipo de código --- foreach ($pbBarcode->getCodeTypes() as $type) { echo '
'; $this->showFormConfigType($type); } } + /** + * Obtiene el tipo de código predeterminado desde la BD + * + * @return string Tipo de código (p.ej. 'code128') + */ function getConfig() { $pbconf = new PluginBarcodeConfig(); if ($pbconf->getFromDB(1)) { - $type = $pbconf->fields['type']; - } else { - $type = 'code128'; + return $pbconf->fields['type']; } - return $type; + return 'code128'; } - - + /** + * Formulario de configuración para un tipo específico de código + * + * @param string|null $p_type Tipo de código (Code39, code128, QRcode, etc.) + */ function showFormConfigType($p_type = null) { - global $CFG_GLPI; $pbBarcode = new PluginBarcodeBarcode(); @@ -134,140 +138,168 @@ function showFormConfigType($p_type = null) { } $config = $this->getConfigType($type); + + $action_url = '/plugins/barcode/front/config_type.form.php'; + echo ""; - echo ""; + action='" . htmlspecialchars($action_url) . "'>"; + echo ""; echo "
"; - echo ""; + echo "
"; + + echo ""; - echo ""; + // Tamaño y orientación de página echo ""; - echo ""; - echo ""; echo ""; - echo ""; + + // Márgenes externos + echo ""; echo ""; - echo ""; - echo ""; echo ""; + echo ""; - echo ""; - echo ""; echo ""; + + // Márgenes internos echo ""; - echo ""; - echo ""; echo ""; - echo ""; + + // Dimensiones del código + echo ""; echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; echo ""; - echo ""; + // Opciones de texto bajo el código + echo ""; echo ""; - echo ""; - echo ""; echo ""; - echo ""; + echo ""; + echo ""; echo "
" . htmlspecialchars($type) . "
".$type."
".__('Page size', 'barcode').""; + echo "" . __('Page size', 'barcode') . ""; $pbBarcode->showSizeSelect($config['size']); echo "".__('Orientation', 'barcode').""; + echo "" . __('Orientation', 'barcode') . ""; $pbBarcode->showOrientationSelect($config['orientation']); echo "
".__('Margins', 'barcode')."
" . __('Margins', 'barcode') . "
".__('Top', 'barcode').""; - echo ""; + echo "" . __('Top', 'barcode') . ""; + echo ""; echo "".__('Bottom', 'barcode').""; - echo ""; + echo "" . __('Bottom', 'barcode') . ""; + echo ""; echo "
".__('Left', 'barcode').""; - echo ""; + echo "" . __('Left', 'barcode') . ""; + echo ""; echo "".__('Right', 'barcode').""; - echo ""; + echo "" . __('Right', 'barcode') . ""; + echo ""; echo "
".__('Inner horizontal', 'barcode').""; - echo ""; + echo "" . __('Inner horizontal', 'barcode') . ""; + echo ""; echo "".__('Inner vertical', 'barcode').""; - echo ""; + echo "" . __('Inner vertical', 'barcode') . ""; + echo ""; echo "
".__('Barcodes sizes', 'barcode')."
" . __('Barcodes sizes', 'barcode') . "
".__('Maximum width', 'barcode').""; - echo ""; - echo "".__('Maximum height', 'barcode').""; - echo ""; - echo ""; + echo "" . __('Maximum width', 'barcode') . ""; + echo ""; echo "
" . __('URL', 'barcode') . ""; - echo ""; + echo "" . __('Maximum height', 'barcode') . ""; + echo ""; echo "
".__('Text display options', 'barcode')."
" . __('Text display options', 'barcode') . "
".__('Text size', 'barcode').""; - echo ""; + echo "" . __('Text size', 'barcode') . ""; + echo ""; echo "".__('Text spacing between lines', 'barcode').""; - echo ""; + echo "" . __('Text spacing between lines', 'barcode') . ""; + echo ""; echo "
"; + echo Html::submit(__('Save'), ['name' => 'update']); + echo "
"; echo "
"; Html::closeForm(); } + /** + * Obtiene la configuración de un tipo de código específico + * + * @param string|null $p_type Tipo de código + * @return array Array con todos los parámetros de configuración + */ function getConfigType($p_type = null) { if (is_null($p_type)) { - $p_type=$this->getConfig(); + $p_type = $this->getConfig(); } + $pbcconf = new PluginBarcodeConfig_Type(); - if ($res = array_keys($pbcconf->find(['type' => $p_type]))) { - $id = $res[0]; + + // API GLPI 11: usar find() con array estructurado + $results = $pbcconf->find(['type' => $p_type]); + + if (!empty($results)) { + $id = array_key_first($results); $pbcconf->getFromDB($id); - $config['type'] = $pbcconf->fields['type']; - $config['size'] = $pbcconf->fields['size']; - $config['orientation'] = $pbcconf->fields['orientation']; - $config['marginTop'] = $pbcconf->fields['marginTop']; - $config['marginBottom'] = $pbcconf->fields['marginBottom']; - $config['marginLeft'] = $pbcconf->fields['marginLeft']; - $config['marginRight'] = $pbcconf->fields['marginRight']; - $config['marginHorizontal'] = $pbcconf->fields['marginHorizontal']; - $config['marginVertical'] = $pbcconf->fields['marginVertical']; - $config['maxCodeWidth'] = $pbcconf->fields['maxCodeWidth']; - $config['maxCodeHeight'] = $pbcconf->fields['maxCodeHeight']; - $config['txtSize'] = $pbcconf->fields['txtSize']; - $config['txtSpacing'] = $pbcconf->fields['txtSpacing']; - } else { - $config['type'] = 'code128'; - $config['size'] = 'A4'; - $config['orientation'] = 'Portrait'; - $config['marginTop'] = 30; - $config['marginBottom'] = 30; - $config['marginLeft'] = 30; - $config['marginRight'] = 30; - $config['marginHorizontal'] = 25; - $config['marginVertical'] = 30; - $config['maxCodeWidth'] = 110; - $config['maxCodeHeight'] = 70; - $config['txtSize'] = 8; - $config['txtSpacing'] = 3; + return [ + 'type' => $pbcconf->fields['type'], + 'size' => $pbcconf->fields['size'], + 'orientation' => $pbcconf->fields['orientation'], + 'marginTop' => (int)$pbcconf->fields['marginTop'], + 'marginBottom' => (int)$pbcconf->fields['marginBottom'], + 'marginLeft' => (int)$pbcconf->fields['marginLeft'], + 'marginRight' => (int)$pbcconf->fields['marginRight'], + 'marginHorizontal' => (int)$pbcconf->fields['marginHorizontal'], + 'marginVertical' => (int)$pbcconf->fields['marginVertical'], + 'maxCodeWidth' => (int)$pbcconf->fields['maxCodeWidth'], + 'maxCodeHeight' => (int)$pbcconf->fields['maxCodeHeight'], + 'txtSize' => (int)$pbcconf->fields['txtSize'], + 'txtSpacing' => (int)$pbcconf->fields['txtSpacing'], + ]; } - return $config; - } - + // Valores por defecto si no hay configuración en BD + return [ + 'type' => 'code128', + 'size' => 'A4', + 'orientation' => 'Portrait', + 'marginTop' => 30, + 'marginBottom' => 30, + 'marginLeft' => 30, + 'marginRight' => 30, + 'marginHorizontal' => 25, + 'marginVertical' => 30, + 'maxCodeWidth' => 110, + 'maxCodeHeight' => 70, + 'txtSize' => 8, + 'txtSpacing' => 3, + ]; + } + /** + * Muestra un selector de tipo de código + * + * @param string|null $p_type Valor seleccionado actualmente + * @param array $used Tipos a excluir del dropdown + */ function showTypeSelect($p_type = null, $used = []) { - $options = [ - 'width' => '100', - 'used' => $used - ]; + 'width' => '100', + 'used' => $used, + ]; if (!is_null($p_type)) { $options['value'] = $p_type; } - Dropdown::showFromArray("type", - ['Code39' => __('code39', 'barcode'), - 'code128' => __('code128', 'barcode'), - 'ean13' => __('ean13', 'barcode'), - 'int25' => __('int25', 'barcode'), - 'postnet' => __('postnet', 'barcode'), - 'upca' => __('upca', 'barcode'), - 'QRcode' => __('QRcode', 'barcode')], - $options - ); + Dropdown::showFromArray( + "type", + [ + 'Code39' => __('code39', 'barcode'), + 'code128' => __('code128', 'barcode'), + 'ean13' => __('ean13', 'barcode'), + 'int25' => __('int25', 'barcode'), + 'postnet' => __('postnet', 'barcode'), + 'upca' => __('upca', 'barcode'), + 'QRcode' => __('QRcode', 'barcode'), + ], + $options + ); } } diff --git a/inc/config_type.class.php b/inc/config_type.class.php index 8807da5..c825a4f 100644 --- a/inc/config_type.class.php +++ b/inc/config_type.class.php @@ -2,48 +2,28 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ if (!defined('GLPI_ROOT')) { - die("Sorry. You can't access directly to this file"); + die("Sorry. You can't access directly to this file"); } +/** + * Clase de configuración por tipo de código de barras + */ class PluginBarcodeConfig_Type extends CommonDBTM { -} + static $rightname = 'plugin_barcode_config'; + /** + * Nombre del tipo de item + */ + static function getTypeName($nb = 0) { + return __('Barcode configuration type', 'barcode'); + } +} diff --git a/inc/profile.class.php b/inc/profile.class.php index 54a707d..ffd95de 100644 --- a/inc/profile.class.php +++ b/inc/profile.class.php @@ -2,40 +2,11 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode - ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. + Original: Copyright (C) 2009-2016 by the Barcode plugin Development Team. ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ @@ -43,48 +14,52 @@ class PluginBarcodeProfile extends Profile { static $rightname = "config"; - + /** + * Nombre de la pestaña que se agrega al formulario de Perfil + */ function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) { if ($item->getID() > 0 && $item->fields['interface'] == 'central') { return self::createTabEntry(__('Barcode', 'barcode')); } + return ''; } - - + /** + * Contenido de la pestaña del perfil + */ static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { $pfProfile = new self(); $pfProfile->showForm($item->getID()); return true; } - - - /** - * Show profile form - * - * @param $items_id integer id of the profile - * @param $target value url of target + /** + * Formulario de derechos del plugin en el perfil * - * @return nothing - **/ + * @param int $ID ID del perfil + * @param array $options Opciones adicionales + */ function showForm($ID, array $options = []) { echo "
"; - if (($canedit = Session::haveRightsOr(self::$rightname, [CREATE, UPDATE, PURGE]))) { + $canedit = Session::haveRightsOr(self::$rightname, [CREATE, UPDATE, PURGE]); + + if ($canedit) { $profile = new Profile(); - echo ""; + echo ""; } $profile = new Profile(); $profile->getFromDB($ID); $rights = $this->getAllRights(); - $profile->displayRightsChoiceMatrix($rights, ['canedit' => $canedit, - 'default_class' => 'tab_bg_2', - 'title' => __('Barcode', 'barcode') - ]); + $profile->displayRightsChoiceMatrix($rights, [ + 'canedit' => $canedit, + 'default_class' => 'tab_bg_2', + 'title' => __('Barcode', 'barcode'), + ]); + if ($canedit) { echo "
"; echo Html::hidden('id', ['value' => $ID]); @@ -95,62 +70,76 @@ function showForm($ID, array $options = []) { echo "
"; } - - + /** + * Elimina los derechos del plugin (para uninstall) + */ static function uninstallProfile() { - $pfProfile = new self(); - $a_rights = $pfProfile->getAllRights(); + $pfProfile = new self(); + $a_rights = $pfProfile->getAllRights(); foreach ($a_rights as $data) { ProfileRight::deleteProfileRights([$data['field']]); } } - - + /** + * Lista de todos los derechos del plugin + * + * @return array + */ function getAllRights() { - $a_rights = [ - ['rights' => [UPDATE => __('Update')], - 'label' => __('Manage configuration', 'barcode'), - 'field' => 'plugin_barcode_config' - ], - ['rights' => [CREATE => __('Create')], - 'label' => __('Generation of barcode', 'barcode'), - 'field' => 'plugin_barcode_barcode' - ] + return [ + [ + 'rights' => [UPDATE => __('Update')], + 'label' => __('Manage configuration', 'barcode'), + 'field' => 'plugin_barcode_config', + ], + [ + 'rights' => [CREATE => __('Create')], + 'label' => __('Generation of barcode', 'barcode'), + 'field' => 'plugin_barcode_barcode', + ], ]; - return $a_rights; } - - + /** + * Agrega derechos por defecto a un perfil + * + * @param int $profiles_id ID del perfil + * @param array $rights Mapa de derechos a agregar + */ static function addDefaultProfileInfos($profiles_id, $rights) { $profileRight = new ProfileRight(); foreach ($rights as $right => $value) { if (!countElementsInTable('glpi_profilerights', ['profiles_id' => $profiles_id, 'name' => $right])) { - $myright['profiles_id'] = $profiles_id; - $myright['name'] = $right; - $myright['rights'] = $value; + $myright = [ + 'profiles_id' => $profiles_id, + 'name' => $right, + 'rights' => $value, + ]; $profileRight->add($myright); - - //Add right to the current session + // Actualizar sesión activa $_SESSION['glpiactiveprofile'][$right] = $value; } } } /** - * @param $profiles_id integer + * Crea accesos completos para el primer perfil administrador + * + * @param int $profiles_id ID del perfil */ static function createFirstAccess($profiles_id) { - include_once(Plugin::getPhpDir('barcode')."/inc/profile.class.php"); + include_once(Plugin::getPhpDir('barcode') . "/inc/profile.class.php"); $profile = new self(); foreach ($profile->getAllRights() as $right) { - self::addDefaultProfileInfos($profiles_id, - [$right['field'] => ALLSTANDARDRIGHT]); + self::addDefaultProfileInfos($profiles_id, [$right['field'] => ALLSTANDARDRIGHT]); } } + /** + * Elimina los derechos del plugin de todos los perfiles y de la sesión + */ static function removeRights() { $profile = new self(); foreach ($profile->getAllRights() as $right) { @@ -161,51 +150,11 @@ static function removeRights() { } } - static function migrateProfiles() { - //Get all rights from the old table - $profiles = getAllDataFromTable(getTableForItemType(__CLASS__)); - - //Load mapping of old rights to their new equivalent - $oldrights = self::getOldRightsMappings(); - - //For each old profile : translate old right the new one - foreach ($profiles as $id => $profile) { - switch ($profile['right']) { - case 'r' : - $value = READ; - break; - case 'w': - $value = ALLSTANDARDRIGHT; - break; - case 0: - default: - $value = 0; - break; - } - //Write in glpi_profilerights the new fusioninventory right - if (isset($oldrights[$profile['type']])) { - //There's one new right corresponding to the old one - if (!is_array($oldrights[$profile['type']])) { - self::addDefaultProfileInfos($profile['profiles_id'], - [$oldrights[$profile['type']] => $value]); - } else { - //One old right has been splitted into serveral new ones - foreach ($oldrights[$profile['type']] as $newtype) { - self::addDefaultProfileInfos($profile['profiles_id'], - [$newtype => $value]); - } - } - } - } - } - - - /** - * Init profiles during installation : - * - add rights in profile table for the current user's profile - * - current profile has all rights on the plugin - */ + * Inicializa los perfiles del plugin durante la instalación + * - Registra los derechos en glpi_profilerights + * - El perfil activo del usuario instalador recibe todos los derechos + */ static function initProfile() { $pfProfile = new self(); $profile = new Profile(); @@ -218,28 +167,40 @@ static function initProfile() { } } - // Add all rights to current profile of the user + // Asignar todos los derechos al perfil activo del usuario instalador if (isset($_SESSION['glpiactiveprofile'])) { $dataprofile = []; $dataprofile['id'] = $_SESSION['glpiactiveprofile']['id']; $profile->getFromDB($_SESSION['glpiactiveprofile']['id']); + foreach ($a_rights as $info) { if (is_array($info) - && ((!empty($info['itemtype'])) || (!empty($info['rights']))) - && (!empty($info['label'])) && (!empty($info['field']))) { + && (!empty($info['itemtype']) || !empty($info['rights'])) + && !empty($info['label']) + && !empty($info['field'])) { + + $rights = isset($info['rights']) + ? $info['rights'] + : $profile->getRightsFor($info['itemtype']); - if (isset($info['rights'])) { - $rights = $info['rights']; - } else { - $rights = $profile->getRightsFor($info['itemtype']); - } foreach (array_keys($rights) as $right) { - $dataprofile['_'.$info['field']][$right] = 1; - $_SESSION['glpiactiveprofile'][$data['field']] = $right; + $dataprofile['_' . $info['field']][$right] = 1; + $_SESSION['glpiactiveprofile'][$info['field']] = $right; } } } $profile->update($dataprofile); } } + + /** + * Limpia los perfiles al purgar un perfil GLPI + * (Callback del hook pre_item_purge) + * + * @param Profile $item Objeto Profile que se está purgando + */ + static function cleanProfiles(Profile $item) { + // No hay tabla local de perfiles en esta versión + // Los derechos están en glpi_profilerights manejados por GLPI core + } } diff --git a/inc/qrcode.class.php b/inc/qrcode.class.php index b1df745..79177aa 100644 --- a/inc/qrcode.class.php +++ b/inc/qrcode.class.php @@ -1,46 +1,7 @@ . - - ------------------------------------------------------------------------ - - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2013 - - ------------------------------------------------------------------------ - */ - if (!defined('GLPI_ROOT')) { - die("Sorry. You can't access directly to this file"); + die("Sorry. You can't access directly to this file"); } require_once __DIR__ . '/../vendor/deltalab/phpqrcode/phpqrcode.php'; @@ -50,132 +11,99 @@ class PluginBarcodeQRcode { function generateQRcode($itemtype, $items_id, $rand, $number, $data) { global $CFG_GLPI; - /** @var CommonDBTM $item */ $item = new $itemtype(); $item->getFromDB($items_id); - $itemByInvNumber = $item->fields['otherserial']; - $URLById= 'URL = ' . $CFG_GLPI['url_base'] . $itemtype::getFormURLWithID($items_id, false); - $URLByInvNumber = 'URL = ' . Plugin::getWebDir('barcode', true, true) . '/front/checkItemByInv.php?inventoryNumber='. $itemByInvNumber . '&itemtype=' . $itemtype; - $a_content = []; + $itemByInvNumber = $item->fields['otherserial'] ?? ''; + + $URLById = 'URL = ' . $CFG_GLPI['url_base'] . $itemtype::getFormURLWithID($items_id, false); + $URLByInvNumber = 'URL = ' . $CFG_GLPI['url_base'] + . '/plugins/barcode/front/checkItemByInv.php?inventoryNumber=' + . urlencode($itemByInvNumber) + . '&itemtype=' . urlencode($itemtype); + + $a_content = []; $b_content = []; - $have_content = false; - if ($data['serialnumber']) { - if ($item->fields['serial'] != '') { - $have_content = true; - } - $a_content[] = __("Serial number").' = '.$item->fields['serial']; - if ($data['displayserialnumber']) { - $label = ''; - if ($data['displaylabels']) { - $label = __("Serial number").': '; - } - $b_content[] = $label.$item->fields['serial']; + + if (!empty($data['serialnumber']) && isset($item->fields['serial'])) { + $a_content[] = 'Serial number = ' . $item->fields['serial']; + if (!empty($data['displayserialnumber'])) { + $label = !empty($data['displaylabels']) ? 'Serial: ' : ''; + $b_content[] = $label . $item->fields['serial']; } } - if ($data['inventorynumber']) { - if ($item->fields['otherserial'] != '') { - $have_content = true; - } - $a_content[] = __('Inventory number').' = '.$item->fields['otherserial']; - if ($data['displayinventorynumber']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('Inventory number').': '; - } - $b_content[] = $label.$item->fields['otherserial']; + + if (!empty($data['inventorynumber']) && isset($item->fields['otherserial'])) { + $a_content[] = 'Inventory number = ' . $item->fields['otherserial']; + if (!empty($data['displayinventorynumber'])) { + $label = !empty($data['displaylabels']) ? 'Inventario: ' : ''; + $b_content[] = $label . $item->fields['otherserial']; } } - if ($data['id']) { - if ($item->fields['id'] != '') { - $have_content = true; - } - $a_content[] = __('ID').' = '.$item->fields['id']; - if ($data['displayid']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('ID').': '; - } - $b_content[] = $label.$item->fields['id']; + + if (!empty($data['id'])) { + $a_content[] = 'ID = ' . $item->fields['id']; + if (!empty($data['displayid'])) { + $label = !empty($data['displaylabels']) ? 'ID: ' : ''; + $b_content[] = $label . $item->fields['id']; } } - if (isset($data['uuid']) && $data['uuid']) { - if (isset($item->fields['uuid'])) { - if ($item->fields['uuid'] != '') { - $have_content = true; - } - $a_content[] = __('UUID').' = '.$item->fields['uuid']; - if ($data['displayuuid']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('UUID').': '; - } - $b_content[] = $label.$item->fields['uuid']; - } + + if (!empty($data['uuid']) && isset($item->fields['uuid'])) { + $a_content[] = 'UUID = ' . $item->fields['uuid']; + if (!empty($data['displayuuid'])) { + $label = !empty($data['displaylabels']) ? 'UUID: ' : ''; + $b_content[] = $label . $item->fields['uuid']; } } - if ($data['name']) { - if ($item->fields['name'] != '') { - $have_content = true; - } - $a_content[] = __('Item Name').' = '.$item->fields['name']; - if ($data['displayname']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('Item Name').': '; - } - $b_content[] = $label.$item->fields['name']; + + if (!empty($data['name']) && isset($item->fields['name'])) { + $a_content[] = 'Name = ' . $item->fields['name']; + if (!empty($data['displayname'])) { + $label = !empty($data['displaylabels']) ? 'Nombre: ' : ''; + $b_content[] = $label . $item->fields['name']; } } - if ($data['url'] && !$item->no_form_page) { - if ($data['inventorynumberURL']) { - $a_content[] = $URLByInvNumber; - } else { - $a_content[] = $URLById; - } - if ($data['displayurl']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('Item URL').': '; - } - if ($data['inventorynumberURL']) { - $b_content[] = $label.$URLByInvNumber; - } else { - $b_content[] = $label.$URLById; - } + + if (!empty($data['url']) && !$item->no_form_page) { + $urlValue = !empty($data['inventorynumberURL']) ? $URLByInvNumber : $URLById; + $a_content[] = $urlValue; + if (!empty($data['displayurl'])) { + $label = !empty($data['displaylabels']) ? 'URL: ' : ''; + $b_content[] = $label . $urlValue; } } - if ($data['qrcodedate']) { - $a_content[] = 'QRcode date = '.date('Y-m-d'); - if ($data['displayqrcodedate']) { - $label = ''; - if ($data['displaylabels']) { - $label = __('Date').': '; - } - $b_content[] = $label.date('Y-m-d'); + + if (!empty($data['qrcodedate'])) { + $dateStr = date('Y-m-d'); + $a_content[] = 'QRcode date = ' . $dateStr; + if (!empty($data['displayqrcodedate'])) { + $label = !empty($data['displaylabels']) ? 'Fecha: ' : ''; + $b_content[] = $label . $dateStr; } } - if (count($a_content) > 0) { - $codeContents = implode("\n", $a_content); - QRcode::png($codeContents, - GLPI_PLUGIN_DOC_DIR.'/barcode/_tmp_'.$rand.'-'.$number.'.png', - QR_ECLEVEL_L, - 4); - return [GLPI_PLUGIN_DOC_DIR.'/barcode/_tmp_'.$rand.'-'.$number.'.png',$b_content]; + if (count($a_content) === 0) { + return false; } - return false; - } + $codeContents = implode("\n", $a_content); + $outputPath = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $number . '.png'; + QRcode::png($codeContents, $outputPath, QR_ECLEVEL_L, 4); + + return [$outputPath, $b_content]; + } function cleanQRcodefiles($rand, $number) { for ($i = 0; $i < $number; $i++) { - unlink(GLPI_PLUGIN_DOC_DIR.'/barcode/_tmp_'.$rand.'-'.$i.'.png'); + $tmpFile = GLPI_PLUGIN_DOC_DIR . '/barcode/_tmp_' . $rand . '-' . $i . '.png'; + if (file_exists($tmpFile)) { + @unlink($tmpFile); + } } } - function showFormMassiveAction(MassiveAction $ma) { $fields = []; @@ -183,10 +111,9 @@ function showFormMassiveAction(MassiveAction $ma) { $itemtype = $ma->getItemtype(false); if (is_a($itemtype, CommonDBTM::class, true)) { - /** @var CommonDBTM $item */ $item = new $itemtype(); $item->getEmpty(); - $fields = array_keys($item->fields); + $fields = array_keys($item->fields); $no_form_page = $item->no_form_page; } @@ -194,132 +121,100 @@ function showFormMassiveAction(MassiveAction $ma) { echo '
'; echo ''; - if (in_array('serial', $fields)) { + if (in_array('serial', $fields, true)) { echo ''; - echo ''; - echo ''; echo ''; } else { echo Html::hidden('serialnumber', ['value' => 0]); } - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; echo ''; } else { echo Html::hidden('inventorynumber', ['value' => 0]); } - echo ''; + echo ''; - echo ''; - echo ''; echo ''; - if (in_array('uuid', $fields)) { + if (in_array('uuid', $fields, true)) { echo ''; - echo ''; + echo ''; echo ''; } else { echo Html::hidden('uuid', ['value' => 0]); } - if (in_array('name', $fields)) { + if (in_array('name', $fields, true)) { echo ''; - echo ''; + echo ''; echo ''; } else { echo Html::hidden('name', ['value' => 0]); } + echo ''; - echo ''; echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; if (!$no_form_page) { echo ''; - echo ''; + echo ''; echo ''; } else { echo Html::hidden('url', ['value' => 0]); } echo ''; - echo ''; - echo ''; echo ''; + echo ''; - echo ''; - echo ''; - echo ''; + echo ''; echo ''; echo '
'; - echo __('Serial number')." : "; + echo 'Numero de serial : '; Dropdown::showYesNo("serialnumber", 1, -1, ['width' => '100']); echo ''; - echo __('Display serial number')." : "; + echo 'Mostrar en etiqueta : '; Dropdown::showYesNo("displayserialnumber", 0, -1, ['width' => '100']); echo '
'; - if (in_array('otherserial', $fields)) { + + if (in_array('otherserial', $fields, true)) { echo '
'; - echo __('Inventory number')." : "; + echo 'Numero de inventario : '; Dropdown::showYesNo("inventorynumber", 1, -1, ['width' => '100']); echo ''; - echo __('Display inventory number')." : "; + echo 'Mostrar en etiqueta : '; Dropdown::showYesNo("displayinventorynumber", 1, -1, ['width' => '100']); echo '
'; - echo __('ID')." : "; + echo 'ID : '; Dropdown::showYesNo("id", 1, -1, ['width' => '100']); echo ''; - echo __('Display ID')." : "; + echo 'Mostrar en etiqueta : '; Dropdown::showYesNo("displayid", 0, -1, ['width' => '100']); echo '
'; - echo __('UUID')." : "; + echo 'UUID : '; Dropdown::showYesNo("uuid", 1, -1, ['width' => '100']); echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayuuid", 0, -1, ['width' => '100']); + echo '
'; - echo __('Name')." : "; + echo 'Nombre : '; Dropdown::showYesNo("name", 1, -1, ['width' => '100']); echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayname", 1, -1, ['width' => '100']); + echo '
'; - echo __('URL by inventory number') . " : "; + echo 'URL por numero de inventario : '; Dropdown::showYesNo("inventorynumberURL", 1, -1, ['width' => '100']); echo '
'; - echo __('UUID')." : "; - Dropdown::showYesNo("uuid", 1, -1, ['width' => '100']); - echo ''; - echo __('Display UUID')." : "; - Dropdown::showYesNo("displayuuid", 0, -1, ['width' => '100']); - echo '
'; - echo __('Name')." : "; - Dropdown::showYesNo("name", 1, -1, ['width' => '100']); - echo ''; - echo __('Display name')." : "; - Dropdown::showYesNo("displayname", 1, -1, ['width' => '100']); - echo '
'; - echo __('Web page of the device')." : "; - Dropdown::showYesNo("url", 1, -1, ['width' => '100']); - echo ''; - echo __('Display web page of the device')." : "; - Dropdown::showYesNo("displayurl", 0, -1, ['width' => '100']); - echo '
'; - echo __('Web page of the item')." : "; + echo 'Pagina web del dispositivo : '; Dropdown::showYesNo("url", 1, -1, ['width' => '100']); echo 'Mostrar en etiqueta : '; + Dropdown::showYesNo("displayurl", 0, -1, ['width' => '100']); + echo '
'; - echo __('Date QRcode')." (".date('Y-m-d').") : "; + echo 'Fecha QRcode (' . date('Y-m-d') . ') : '; Dropdown::showYesNo("qrcodedate", 1, -1, ['width' => '100']); echo ''; - echo __('Display date QRcode')." (".date('Y-m-d').") : "; + echo 'Mostrar en etiqueta : '; Dropdown::showYesNo("displayqrcodedate", 0, -1, ['width' => '100']); echo '
  '.__('Note: Currently supporting only up to 2 lines.').''; + echo 'Columna izquierda: incluir dato en el QR code. '; + echo 'Mostrar en etiqueta: mostrar texto visible bajo el codigo.'; + echo '
'; @@ -328,63 +223,47 @@ function showFormMassiveAction(MassiveAction $ma) { PluginBarcodeBarcode::commonShowMassiveAction(); } - - function getSpecificMassiveActions($checkitem = null) { return []; } - - - /** - * @since version 0.85 - * - * @see CommonDBTM::showMassiveActionsSubForm() - **/ static function showMassiveActionsSubForm(MassiveAction $ma) { - switch ($ma->getAction()) { - case 'Generate': $pbQRcode = new self(); $pbQRcode->showFormMassiveAction($ma); return true; - } return false; } - - - static function processMassiveActionsForOneItemtype(MassiveAction $ma, CommonDBTM $item, array $ids) { - global $CFG_GLPI; - + static function processMassiveActionsForOneItemtype( + MassiveAction $ma, + CommonDBTM $item, + array $ids + ) { switch ($ma->getAction()) { - - case 'Generate' : + case 'Generate': $pbQRcode = new PluginBarcodeQRcode(); $rand = mt_rand(); $number = 0; $codes = []; $displayDataCollection = []; - if ($ma->POST['eliminate'] > 0) { - for ($nb=0; $nb < $ma->POST['eliminate']; $nb++) { - $codes[] = ''; - $displayDataCollection[] = ''; - } + + $eliminate = (int)($ma->POST['eliminate'] ?? 0); + for ($nb = 0; $nb < $eliminate; $nb++) { + $codes[] = ''; + $displayDataCollection[] = []; } - if ($ma->POST['type'] == 'QRcode') { - if ($item->isField('inventotynumberURL')) { - $URLtype = 'inventoryURL'; - } else { - $URLtype = 'idURL'; - } + + if ($ma->POST['type'] === 'QRcode') { foreach ($ids as $key) { - $values = $pbQRcode->generateQRcode($item->getType(), $key, $rand, $number, $ma->POST); - $filename = $values[0]; - $displayData = $values[1]; - if ($filename) { - $codes[] = $filename; + $values = $pbQRcode->generateQRcode( + $item->getType(), $key, $rand, $number, $ma->POST + ); + if ($values !== false) { + [$filename, $displayData] = $values; + $codes[] = $filename; $displayDataCollection[] = $displayData; $number++; } @@ -393,33 +272,37 @@ static function processMassiveActionsForOneItemtype(MassiveAction $ma, CommonDBT foreach ($ids as $key) { $item->getFromDB($key); if ($item->isField('otherserial')) { - $codes[] = $item->getField('otherserial'); + $codes[] = $item->getField('otherserial'); + $displayDataCollection[] = []; } } } + if (count($codes) > 0) { - $params['codes'] = $codes; - $params['displayData'] = $displayDataCollection; - $params['type'] = $ma->POST['type']; - $params['size'] = $ma->POST['size']; - $params['border'] = $ma->POST['border']; - $params['orientation'] = $ma->POST['orientation']; - $params['displaylabels'] = $ma->POST['displaylabels']; - $barcode = new PluginBarcodeBarcode(); - $file = $barcode->printPDF($params); - $filePath = explode('/', $file); - $filename = $filePath[count($filePath)-1]; - - $msg = "".__('Generated file', 'barcode').""; + $params = [ + 'codes' => $codes, + 'displayData' => $displayDataCollection, + 'type' => $ma->POST['type'], + 'size' => $ma->POST['size'], + 'border' => $ma->POST['border'], + 'orientation' => $ma->POST['orientation'], + 'displaylabels' => $ma->POST['displaylabels'], + ]; + + $barcode = new PluginBarcodeBarcode(); + $file = $barcode->printPDF($params); + $filePath = explode('/', $file); + $filename = end($filePath); + + $msg = "" + . __('Generated file', 'barcode') . ""; + Session::addMessageAfterRedirect($msg); $pbQRcode->cleanQRcodefiles($rand, $number); } + $ma->itemDone($item->getType(), 0, MassiveAction::ACTION_OK); return; - } - return; } - - } diff --git a/setup.php b/setup.php index c716d21..ea08b8f 100644 --- a/setup.php +++ b/setup.php @@ -2,107 +2,111 @@ /* ------------------------------------------------------------------------ - Barcode - Copyright (C) 2009-2016 by the Barcode plugin Development Team. - - https://forge.indepnet.net/projects/barscode - ------------------------------------------------------------------------ - - LICENSE - - This file is part of barcode plugin project. - - Plugin Barcode is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Plugin Barcode 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 Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Plugin Barcode. If not, see . - + Barcode - Plugin para GLPI + Migrado a GLPI 11.x por Dawing S.A.S. + Original: Copyright (C) 2009-2016 by the Barcode plugin Development Team. ------------------------------------------------------------------------ - @package Plugin Barcode - @author David Durieux - @co-author - @copyright Copyright (c) 2009-2016 Barcode plugin Development team - @license AGPL License 3.0 or (at your option) any later version - http://www.gnu.org/licenses/agpl-3.0-standalone.html - @link https://forge.indepnet.net/projects/barscode - @since 2009 - + LICENSE: AGPL License 3.0 or (at your option) any later version ------------------------------------------------------------------------ */ -define ("PLUGIN_BARCODE_VERSION", "2.7.1"); +define("PLUGIN_BARCODE_VERSION", "3.0.0"); -// Minimal GLPI version, inclusive -define('PLUGIN_BARCODE_MIN_GLPI', '10.0.0'); -// Maximum GLPI version, exclusive -define('PLUGIN_BARCODE_MAX_GLPI', '10.0.99'); +// Versión mínima de GLPI requerida (inclusive) +define('PLUGIN_BARCODE_MIN_GLPI', '11.0.0'); +// Versión máxima de GLPI soportada (exclusiva) +define('PLUGIN_BARCODE_MAX_GLPI', '11.0.99'); -// Init the hooks of the plugins -Needed +/** + * Inicialización de los hooks del plugin - Requerido + */ function plugin_init_barcode() { global $PLUGIN_HOOKS; - require_once(__DIR__ . '/vendor/autoload.php'); + // Cargar el autoloader de Composer + if (file_exists(__DIR__ . '/vendor/autoload.php')) { + require_once(__DIR__ . '/vendor/autoload.php'); + } - $PLUGIN_HOOKS['csrf_compliant']['barcode'] = true; + // NOTA: csrf_compliant fue deprecado en GLPI 11 - eliminado intencionalmente Plugin::registerClass('PluginBarcodeDropdown'); Plugin::registerClass('PluginBarcodeProfile', ['addtabon' => ['Profile']]); - Plugin::registerClass('PluginBarcode'); - - // Display a menu entry ? + Plugin::registerClass('PluginBarcodeBarcode'); if (Session::haveRight('plugin_barcode_barcode', CREATE) || Session::haveRight('plugin_barcode_config', UPDATE)) { + $PLUGIN_HOOKS['pre_item_purge']['barcode'] - = ['Profile' => ['PluginBarcodeProfile','cleanProfiles']]; + = ['Profile' => ['PluginBarcodeProfile', 'cleanProfiles']]; - // Massive Action definition + // Acción masiva habilitada $PLUGIN_HOOKS['use_massive_action']['barcode'] = 1; - $web_dir = '/' . Plugin::getWebDir('barcode', false); - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['title'] = "Search"; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['page'] = $web_dir . '/front/barcode.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['search'] = $web_dir. '/front/barcode.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['add'] = $web_dir. '/front/barcode.form.php'; - $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['config'] = $web_dir. '/index.php'; + // Ruta base del plugin (sin Plugin::getWebDir - deprecado en GLPI 11) + $web_dir = '/plugins/barcode'; + + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['title'] = __('Search'); + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['page'] = $web_dir . '/front/barcode.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['search'] = $web_dir . '/front/barcode.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['add'] = $web_dir . '/front/barcode.form.php'; + $PLUGIN_HOOKS['submenu_entry']['barcode']['options']['optionname']['links']['config'] = $web_dir . '/index.php'; - $PLUGIN_HOOKS["helpdesk_menu_entry"]['barcode'] = true; + $PLUGIN_HOOKS['helpdesk_menu_entry']['barcode'] = true; } - // Config page + // Página de configuración if (Session::haveRight('config', UPDATE)) { $PLUGIN_HOOKS['config_page']['barcode'] = 'front/config.php'; } - //Redirect code - //http://localhost/glpi/index.php?redirect=plugin_barcode_2 to form ID 2 + // Redirección por ID: /index.php?redirect=plugin_barcode_2 $PLUGIN_HOOKS['redirect_page']['barcode'] = 'barcode.form.php'; } +/** + * Versión e información del plugin - Requerido + */ function plugin_version_barcode() { - return [ 'name' => 'Barcode', 'shortname' => 'barcode', 'version' => PLUGIN_BARCODE_VERSION, 'license' => 'AGPLv3+', - 'author' => 'David DURIEUX & - Jean Marc GRISARD & Vincent MAZZONI', + 'author' => 'David DURIEUX & + Jean Marc GRISARD & Vincent MAZZONI + (Migrado a GLPI 11 por Dawing S.A.S.)', 'homepage' => 'https://github.com/pluginsGLPI/barcode', 'requirements' => [ 'glpi' => [ 'min' => PLUGIN_BARCODE_MIN_GLPI, 'max' => PLUGIN_BARCODE_MAX_GLPI, - ] + ], + 'php' => [ + 'min' => '8.1', + ], ] ]; } + +/** + * Verificación de prerequisitos antes de instalar + */ +function plugin_barcode_check_prerequisites() { + if (version_compare(GLPI_VERSION, PLUGIN_BARCODE_MIN_GLPI, 'lt') + || version_compare(GLPI_VERSION, PLUGIN_BARCODE_MAX_GLPI, 'gt')) { + if (method_exists('Plugin', 'messageIncompatible')) { + Plugin::messageIncompatible('core', PLUGIN_BARCODE_MIN_GLPI, PLUGIN_BARCODE_MAX_GLPI); + } + return false; + } + return true; +} + +/** + * Verificación de configuración + */ +function plugin_barcode_check_config($verbose = false) { + return true; +}